50#define SMB_PORTS "445 139"
60#define smb_ss_field 18
89 size_t (*
direct) (
void *cd,
const char **inbuf,
size_t *inbytesleft,
90 char **outbuf,
size_t *outbytesleft);
91 size_t (*
pull) (
void *cd,
const char **inbuf,
size_t *inbytesleft,
92 char **outbuf,
size_t *outbytesleft);
93 size_t (*
push) (
void *cd,
const char **inbuf,
size_t *inbytesleft,
94 char **outbuf,
size_t *outbytesleft);
100#define STR_TERMINATE 1
104#define STR_NOALIGN 16
105#define STR_TERMINATE_ASCII 128
108#define NEGOTIATE_SECURITY_USER_LEVEL 0x01
109#define NEGOTIATE_SECURITY_CHALLENGE_RESPONSE 0x02
110#define NEGOTIATE_SECURITY_SIGNATURES_ENABLED 0x04
111#define NEGOTIATE_SECURITY_SIGNATURES_REQUIRED 0x08
115#define FLAGS2_LONG_PATH_COMPONENTS 0x0001
116#define FLAGS2_EXTENDED_ATTRIBUTES 0x0002
117#define FLAGS2_SMB_SECURITY_SIGNATURES 0x0004
118#define FLAGS2_UNKNOWN_BIT4 0x0010
119#define FLAGS2_IS_LONG_NAME 0x0040
120#define FLAGS2_EXTENDED_SECURITY 0x0800
121#define FLAGS2_DFS_PATHNAMES 0x1000
122#define FLAGS2_READ_PERMIT_EXECUTE 0x2000
123#define FLAGS2_32_BIT_ERROR_CODES 0x4000
124#define FLAGS2_UNICODE_STRINGS 0x8000
126#define FLAGS2_WIN2K_SIGNATURE 0xC852
129#define TCONX_FLAG_EXTENDED_RESPONSE 0x8
133#define CAP_RAW_MODE 0x0001
134#define CAP_MPX_MODE 0x0002
135#define CAP_UNICODE 0x0004
136#define CAP_LARGE_FILES 0x0008
137#define CAP_NT_SMBS 0x0010
138#define CAP_RPC_REMOTE_APIS 0x0020
139#define CAP_STATUS32 0x0040
140#define CAP_LEVEL_II_OPLOCKS 0x0080
141#define CAP_LOCK_AND_READ 0x0100
142#define CAP_NT_FIND 0x0200
143#define CAP_DFS 0x1000
144#define CAP_W2K_SMBS 0x2000
145#define CAP_LARGE_READX 0x4000
146#define CAP_LARGE_WRITEX 0x8000
150#define CAP_EXTENDED_SECURITY 0x80000000
164#ifdef WORDS_BIGENDIAN
171#define UCS2_CHAR(c) ((c) << UCS2_SHIFT)
174#define UCS2_TO_CHAR(c) (((c) >> UCS2_SHIFT) & 0xff)
178#define COPY_UCS2_CHAR(dest, src) \
179 (((unsigned char *) (dest))[0] = ((unsigned char *) (src))[0], \
180 ((unsigned char *) (dest))[1] = ((unsigned char *) (src))[1], (dest))
186#define SMB_MALLOC_P(type) (type *) malloc (sizeof (type))
188#define SMB_REALLOC(p, s) \
189 Realloc ((p), (s), True)
191#define SMB_MALLOC(s) malloc (s)
194#define SMB_STRDUP(s) strdup (s)
195#define SMB_STRNDUP(s, n) strndup (s, n)
197#define smb_len(buf) \
198 (PVAL (buf, 3) | (PVAL (buf, 2) << 8) | ((PVAL (buf, 1) & 1) << 16))
201#define MIN(a, b) ((a) < (b) ? (a) : (b))
Unix SMB/CIFS implementation. charset defines.
protocol_types
Definition: smb.h:154
@ PROTOCOL_LANMAN2
Definition: smb.h:159
@ PROTOCOL_COREPLUS
Definition: smb.h:157
@ PROTOCOL_CORE
Definition: smb.h:156
@ PROTOCOL_LANMAN1
Definition: smb.h:158
@ PROTOCOL_NT1
Definition: smb.h:160
@ PROTOCOL_NONE
Definition: smb.h:155
struct _smb_iconv_t * smb_iconv_t
uint64_t NTTIME
Definition: smb.h:183
char * from_name
Definition: smb.h:96
void * cd_direct
Definition: smb.h:95
size_t(* push)(void *cd, const char **inbuf, size_t *inbytesleft, char **outbuf, size_t *outbytesleft)
Definition: smb.h:93
size_t(* pull)(void *cd, const char **inbuf, size_t *inbytesleft, char **outbuf, size_t *outbytesleft)
Definition: smb.h:91
size_t(* direct)(void *cd, const char **inbuf, size_t *inbytesleft, char **outbuf, size_t *outbytesleft)
Definition: smb.h:89
char * to_name
Definition: smb.h:96
void * cd_pull
Definition: smb.h:95
void * cd_push
Definition: smb.h:95