aboutsummaryrefslogtreecommitdiffstats
path: root/libntlm-0.21/ntlm.h
diff options
context:
space:
mode:
authorRob Funk <rfunk@funknet.net>2004-06-08 03:59:01 +0000
committerRob Funk <rfunk@funknet.net>2004-06-08 03:59:01 +0000
commitd78b61e3efaea197a6e5b2b72bf2981a9ed69461 (patch)
tree1704e13ce5d767d59868a2d5e834cb2e988ed90f /libntlm-0.21/ntlm.h
parentd9e84e176fe538e110d9612f9832d69846e8d3e7 (diff)
downloadfetchmail-d78b61e3efaea197a6e5b2b72bf2981a9ed69461.tar.gz
fetchmail-d78b61e3efaea197a6e5b2b72bf2981a9ed69461.tar.bz2
fetchmail-d78b61e3efaea197a6e5b2b72bf2981a9ed69461.zip
Add files from ESR's dev directory that weren't under version control
svn path=/trunk/; revision=3881
Diffstat (limited to 'libntlm-0.21/ntlm.h')
-rw-r--r--libntlm-0.21/ntlm.h68
1 files changed, 68 insertions, 0 deletions
diff --git a/libntlm-0.21/ntlm.h b/libntlm-0.21/ntlm.h
new file mode 100644
index 00000000..3f6d206f
--- /dev/null
+++ b/libntlm-0.21/ntlm.h
@@ -0,0 +1,68 @@
+typedef unsigned short uint16;
+typedef unsigned int uint32;
+typedef unsigned char uint8;
+
+
+/*
+ * These structures are byte-order dependant, and should not
+ * be manipulated except by the use of the routines provided
+ */
+
+typedef struct
+{
+uint16 len;
+uint16 maxlen;
+uint32 offset;
+}tSmbStrHeader;
+
+typedef struct
+{
+char ident[8];
+uint32 msgType;
+uint32 flags;
+tSmbStrHeader user;
+tSmbStrHeader domain;
+uint8 buffer[1024];
+uint32 bufIndex;
+}tSmbNtlmAuthRequest;
+
+typedef struct
+{
+char ident[8];
+uint32 msgType;
+tSmbStrHeader uDomain;
+uint32 flags;
+uint8 challengeData[8];
+uint8 reserved[8];
+tSmbStrHeader emptyString;
+uint8 buffer[1024];
+uint32 bufIndex;
+}tSmbNtlmAuthChallenge;
+
+
+typedef struct
+{
+char ident[8];
+uint32 msgType;
+tSmbStrHeader lmResponse;
+tSmbStrHeader ntResponse;
+tSmbStrHeader uDomain;
+tSmbStrHeader uUser;
+tSmbStrHeader uWks;
+tSmbStrHeader sessionKey;
+uint32 flags;
+uint8 buffer[1024];
+uint32 bufIndex;
+}tSmbNtlmAuthResponse;
+
+/* public: */
+
+#define SmbLength(ptr) (((ptr)->buffer - (uint8*)(ptr)) + (ptr)->bufIndex)
+
+extern void dumpSmbNtlmAuthRequest(FILE *fp, tSmbNtlmAuthRequest *request);
+extern void dumpSmbNtlmAuthChallenge(FILE *fp, tSmbNtlmAuthChallenge *challenge);
+extern void dumpSmbNtlmAuthResponse(FILE *fp, tSmbNtlmAuthResponse *response);
+
+extern void buildSmbNtlmAuthRequest(tSmbNtlmAuthRequest *request, char *user, char *domain);
+extern void buildSmbNtlmAuthResponse(tSmbNtlmAuthChallenge *challenge, tSmbNtlmAuthResponse *response, char *user, char *password);
+