37#define SMB_PORTS "445 139"
47#define smb_ss_field 18
76 size_t (*
direct) (
void *cd,
const char **inbuf,
size_t *inbytesleft,
77 char **outbuf,
size_t *outbytesleft);
78 size_t (*
pull) (
void *cd,
const char **inbuf,
size_t *inbytesleft,
79 char **outbuf,
size_t *outbytesleft);
80 size_t (*
push) (
void *cd,
const char **inbuf,
size_t *inbytesleft,
81 char **outbuf,
size_t *outbytesleft);
87#define STR_TERMINATE 1
92#define STR_TERMINATE_ASCII 128
95#define NEGOTIATE_SECURITY_USER_LEVEL 0x01
96#define NEGOTIATE_SECURITY_CHALLENGE_RESPONSE 0x02
97#define NEGOTIATE_SECURITY_SIGNATURES_ENABLED 0x04
98#define NEGOTIATE_SECURITY_SIGNATURES_REQUIRED 0x08
102#define FLAGS2_LONG_PATH_COMPONENTS 0x0001
103#define FLAGS2_EXTENDED_ATTRIBUTES 0x0002
104#define FLAGS2_SMB_SECURITY_SIGNATURES 0x0004
105#define FLAGS2_UNKNOWN_BIT4 0x0010
106#define FLAGS2_IS_LONG_NAME 0x0040
107#define FLAGS2_EXTENDED_SECURITY 0x0800
108#define FLAGS2_DFS_PATHNAMES 0x1000
109#define FLAGS2_READ_PERMIT_EXECUTE 0x2000
110#define FLAGS2_32_BIT_ERROR_CODES 0x4000
111#define FLAGS2_UNICODE_STRINGS 0x8000
113#define FLAGS2_WIN2K_SIGNATURE 0xC852
116#define TCONX_FLAG_EXTENDED_RESPONSE 0x8
120#define CAP_RAW_MODE 0x0001
121#define CAP_MPX_MODE 0x0002
122#define CAP_UNICODE 0x0004
123#define CAP_LARGE_FILES 0x0008
124#define CAP_NT_SMBS 0x0010
125#define CAP_RPC_REMOTE_APIS 0x0020
126#define CAP_STATUS32 0x0040
127#define CAP_LEVEL_II_OPLOCKS 0x0080
128#define CAP_LOCK_AND_READ 0x0100
129#define CAP_NT_FIND 0x0200
130#define CAP_DFS 0x1000
131#define CAP_W2K_SMBS 0x2000
132#define CAP_LARGE_READX 0x4000
133#define CAP_LARGE_WRITEX 0x8000
137#define CAP_EXTENDED_SECURITY 0x80000000
151#ifdef WORDS_BIGENDIAN
158#define UCS2_CHAR(c) ((c) << UCS2_SHIFT)
161#define UCS2_TO_CHAR(c) (((c) >> UCS2_SHIFT) & 0xff)
165#define COPY_UCS2_CHAR(dest, src) \
166 (((unsigned char *) (dest))[0] = ((unsigned char *) (src))[0], \
167 ((unsigned char *) (dest))[1] = ((unsigned char *) (src))[1], (dest))
173#define SMB_MALLOC_P(type) (type *) malloc (sizeof (type))
175#define SMB_REALLOC(p, s) \
176 Realloc ((p), (s), True)
178#define SMB_MALLOC(s) malloc (s)
181#define SMB_STRDUP(s) strdup (s)
182#define SMB_STRNDUP(s, n) strndup (s, n)
184#define smb_len(buf) \
185 (PVAL (buf, 3) | (PVAL (buf, 2) << 8) | ((PVAL (buf, 1) & 1) << 16))
188#define MIN(a, b) ((a) < (b) ? (a) : (b))
Unix SMB/CIFS implementation. charset defines.
protocol_types
Definition smb.h:141
@ PROTOCOL_LANMAN2
Definition smb.h:146
@ PROTOCOL_COREPLUS
Definition smb.h:144
@ PROTOCOL_CORE
Definition smb.h:143
@ PROTOCOL_LANMAN1
Definition smb.h:145
@ PROTOCOL_NT1
Definition smb.h:147
@ PROTOCOL_NONE
Definition smb.h:142
struct _smb_iconv_t * smb_iconv_t
uint64_t NTTIME
Definition smb.h:170
char * from_name
Definition smb.h:83
void * cd_direct
Definition smb.h:82
size_t(* push)(void *cd, const char **inbuf, size_t *inbytesleft, char **outbuf, size_t *outbytesleft)
Definition smb.h:80
size_t(* pull)(void *cd, const char **inbuf, size_t *inbytesleft, char **outbuf, size_t *outbytesleft)
Definition smb.h:78
size_t(* direct)(void *cd, const char **inbuf, size_t *inbytesleft, char **outbuf, size_t *outbytesleft)
Definition smb.h:76
char * to_name
Definition smb.h:83
void * cd_pull
Definition smb.h:82
void * cd_push
Definition smb.h:82