diff options
Diffstat (limited to 'src/nu_server.h')
-rwxr-xr-x | src/nu_server.h | 24 |
1 files changed, 23 insertions, 1 deletions
diff --git a/src/nu_server.h b/src/nu_server.h index 89fe2e9..f305430 100755 --- a/src/nu_server.h +++ b/src/nu_server.h | |||
@@ -16,6 +16,7 @@ typedef unsigned long DWORD; | |||
16 | typedef int64_t QWORD; | 16 | typedef int64_t QWORD; |
17 | 17 | ||
18 | #define SKIPSTRING( str ) ((BYTE*)(str)) + 1 + strlen( (str) ) | 18 | #define SKIPSTRING( str ) ((BYTE*)(str)) + 1 + strlen( (str) ) |
19 | // Get Network byte order half word | ||
19 | #define GETNWORD(addr) (*((BYTE*)(addr)) | 256 * ((BYTE*)(addr))[1] ) | 20 | #define GETNWORD(addr) (*((BYTE*)(addr)) | 256 * ((BYTE*)(addr))[1] ) |
20 | 21 | ||
21 | #include "nu_defines.h" | 22 | #include "nu_defines.h" |
@@ -81,9 +82,30 @@ typedef struct { | |||
81 | } SMB_TRANSACTION_BYTES; | 82 | } SMB_TRANSACTION_BYTES; |
82 | 83 | ||
83 | typedef struct { | 84 | typedef struct { |
85 | BYTE WordCount; /* 14 + SetupCount */ | ||
86 | BYTE TotalParameterCount [2]; | ||
87 | BYTE TotalDataCount [2]; | ||
88 | BYTE MaxParameterCount [2]; | ||
89 | BYTE MaxDataCount [2]; | ||
90 | BYTE MaxSetupCount; | ||
91 | BYTE Reserved; | ||
92 | BYTE Flags [2]; | ||
93 | BYTE Timeout [4]; | ||
94 | BYTE Reserved2 [2]; | ||
95 | |||
96 | BYTE ParameterCount [2]; | ||
97 | BYTE ParameterOffset [2]; | ||
98 | BYTE DataCount [2]; | ||
99 | BYTE DataOffset [2]; | ||
100 | BYTE SetupCount; | ||
101 | BYTE Reserved3; | ||
102 | BYTE Setup [0]; | ||
103 | } SMB_PARAMS_TRANSACTION2; | ||
104 | |||
105 | typedef struct { | ||
84 | BYTE cmd; | 106 | BYTE cmd; |
85 | SMB_COMMAND_FLAG flags; | 107 | SMB_COMMAND_FLAG flags; |
86 | SMB_STATUS (*handler)(SMB_HEADER *header, SMB_DATA *data); | 108 | SMB_STATUS (*handler)(SMB_HEADER **header, SMB_DATA *data); |
87 | } SMB_COMMAND_HANDLER; | 109 | } SMB_COMMAND_HANDLER; |
88 | 110 | ||
89 | #endif | 111 | #endif |