aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSteve Holme <steve_holme@hotmail.com>2014-08-10 13:58:44 +0100
committerSteve Holme <steve_holme@hotmail.com>2014-08-14 01:29:12 +0100
commit3ec253532ebda3c4cfffaf3f82dec583ec24ec1a (patch)
treeeec2277c4063fab1698b5a360dfde4be145d460a
parent215f932e4925a402df10f8a3de469079cf9b617f (diff)
urldata: Introduced a GSSAPI (Kerberos V5) data structure
Added a kerberos5data structure which is similar in nature to the ntlmdata and negotiatedata structures.
-rw-r--r--lib/urldata.h17
1 files changed, 17 insertions, 0 deletions
diff --git a/lib/urldata.h b/lib/urldata.h
index 0fbcf7451..fca47cef5 100644
--- a/lib/urldata.h
+++ b/lib/urldata.h
@@ -425,6 +425,19 @@ typedef enum {
#include <iconv.h>
#endif
+/* Struct used for GSSAPI (Kerberos V5) authentication */
+#if defined(USE_WINDOWS_SSPI)
+struct kerberos5data {
+ CredHandle *credentials;
+ CtxtHandle *context;
+ TCHAR *spn;
+ SEC_WINNT_AUTH_IDENTITY identity;
+ SEC_WINNT_AUTH_IDENTITY *p_identity;
+ size_t token_max;
+ BYTE *output_token;
+};
+#endif;
+
/* Struct used for NTLM challenge-response authentication */
struct ntlmdata {
curlntlm state;
@@ -973,6 +986,10 @@ struct connectdata {
struct sockaddr_in local_addr;
#endif
+#if defined(USE_WINDOWS_SSPI) /* Consider moving some of the above GSS-API */
+ struct kerberos5data krb5; /* variables into the structure definition, */
+#endif /* however, some of them are ftp specific. */
+
/* the two following *_inuse fields are only flags, not counters in any way.
If TRUE it means the channel is in use, and if FALSE it means the channel
is up for grabs by one. */