]> Pileus Git - ~andy/fetchmail/blob - smb.h
eb5e382e68d20d180b6ca34c9ea5a261291c93a9
[~andy/fetchmail] / smb.h
1 typedef unsigned short uint16;
2 typedef unsigned       uint32;
3 typedef unsigned char  uint8;
4
5 typedef struct
6 {
7 uint16  len;
8 uint16  maxlen;
9 uint32  offset;
10 }tSmbStrHeader;
11
12 typedef struct
13 {
14 char          ident[8];
15 uint32        msgType;
16 uint32        flags;
17 tSmbStrHeader    user;
18 tSmbStrHeader    domain;
19 uint8         buffer[1024];
20 uint32        bufIndex;
21 }tSmbNtlmAuthRequest;
22
23 typedef struct
24 {
25 char          ident[8];
26 uint32        msgType;
27 tSmbStrHeader    uDomain;
28 uint32        flags;
29 uint8         challengeData[8];
30 uint8         reserved[8];
31 tSmbStrHeader    emptyString;
32 uint8         buffer[1024];
33 uint32        bufIndex;
34 }tSmbNtlmAuthChallenge;
35
36
37 typedef struct
38 {
39 char          ident[8];
40 uint32        msgType;
41 tSmbStrHeader    lmResponse;
42 tSmbStrHeader    ntResponse;
43 tSmbStrHeader    uDomain;
44 tSmbStrHeader    uUser;
45 tSmbStrHeader    uWks;
46 tSmbStrHeader    sessionKey;
47 uint32        flags;
48 uint8         buffer[1024];
49 uint32        bufIndex;
50 }tSmbNtlmAuthResponse;
51
52 #define SmbLength(ptr) (((ptr)->buffer - (uint8*)(ptr)) + (ptr)->bufIndex)