summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--sys/netsmb/smb.h72
1 files changed, 64 insertions, 8 deletions
diff --git a/sys/netsmb/smb.h b/sys/netsmb/smb.h
index 6ea128b..7dbe912 100644
--- a/sys/netsmb/smb.h
+++ b/sys/netsmb/smb.h
@@ -98,17 +98,30 @@ enum smb_dialects {
*/
#define SMB_SM_USER 0x01 /* server in the user security mode */
#define SMB_SM_ENCRYPT 0x02 /* use challenge/response */
+#define SMB_SM_SIGS 0x04
+#define SMB_SM_SIGS_REQUIRE 0x08
/*
* NTLM capabilities
*/
-#define SMB_CAP_RAW_MODE 0x0001
-#define SMB_CAP_MPX_MODE 0x0002
-#define SMB_CAP_UNICODE 0x0004
-#define SMB_CAP_LARGE_FILES 0x0008 /* 64 bit offsets supported */
-#define SMB_CAP_NT_SMBS 0x0010
-#define SMB_CAP_NT_FIND 0x0200
-#define SMB_CAP_EXT_SECURITY 0x80000000
+#define SMB_CAP_RAW_MODE 0x0001
+#define SMB_CAP_MPX_MODE 0x0002
+#define SMB_CAP_UNICODE 0x0004
+#define SMB_CAP_LARGE_FILES 0x0008 /* 64 bit offsets supported */
+#define SMB_CAP_NT_SMBS 0x0010
+#define SMB_CAP_RPC_REMOTE_APIS 0x0020
+#define SMB_CAP_STATUS32 0x0040
+#define SMB_CAP_LEVEL_II_OPLOCKS 0x0080
+#define SMB_CAP_LOCK_AND_READ 0x0100
+#define SMB_CAP_NT_FIND 0x0200
+#define SMB_CAP_DFS 0x1000
+#define SMB_CAP_INFOLEVEL_PASSTHRU 0x2000
+#define SMB_CAP_LARGE_READX 0x4000
+#define SMB_CAP_LARGE_WRITEX 0x8000
+#define SMB_CAP_UNIX 0x00800000
+#define SMB_CAP_BULK_TRANSFER 0x20000000
+#define SMB_CAP_COMPRESSED_DATA 0x40000000
+#define SMB_CAP_EXT_SECURITY 0x80000000
/*
* File attributes
@@ -126,11 +139,12 @@ enum smb_dialects {
#define SMB_EFA_RDONLY 0x0001
#define SMB_EFA_HIDDEN 0x0002
#define SMB_EFA_SYSTEM 0x0004
+#define SMB_EFA_DIRECTORY 0x0010
#define SMB_EFA_ARCHIVE 0x0020
#define SMB_EFA_NORMAL 0x0080
#define SMB_EFA_TEMPORARY 0x0100
#define SMB_EFA_COMPRESSED 0x0800
-#define SMB_EFA_POSIX_SEMANTICS 0x00100000
+#define SMB_EFA_POSIX_SEMANTICS 0x01000000
#define SMB_EFA_BACKUP_SEMANTICS 0x02000000
#define SMB_EFA_DELETE_ON_CLOSE 0x04000000
#define SMB_EFA_SEQUENTIAL_SCAN 0x08000000
@@ -253,6 +267,28 @@ enum smb_dialects {
#define SMB_QUERY_FS_ATTRIBUTE_INFO 0x105
/*
+ * SMB_TRANS2_QUERY_PATH levels
+ */
+#define SMB_QUERY_FILE_STANDARD 1
+#define SMB_QUERY_FILE_EA_SIZE 2
+#define SMB_QUERY_FILE_EAS_FROM_LIST 3
+#define SMB_QUERY_FILE_ALL_EAS 4
+#define SMB_QUERY_FILE_IS_NAME_VALID 6
+#define SMB_QUERY_FILE_BASIC_INFO 0x101
+#define SMB_QUERY_FILE_STANDARD_INFO 0x102
+#define SMB_QUERY_FILE_EA_INFO 0x103
+#define SMB_QUERY_FILE_NAME_INFO 0x104
+#define SMB_QUERY_FILE_ALL_INFO 0x107
+#define SMB_QUERY_FILE_ALT_NAME_INFO 0x108
+#define SMB_QUERY_FILE_STREAM_INFO 0x109
+#define SMB_QUERY_FILE_COMPRESSION_INFO 0x10b
+#define SMB_QUERY_FILE_UNIX_BASIC 0x200
+#define SMB_QUERY_FILE_UNIX_LINK 0x201
+#define SMB_QUERY_FILE_MAC_DT_GET_APPL 0x306
+#define SMB_QUERY_FILE_MAC_DT_GET_ICON 0x307
+#define SMB_QUERY_FILE_MAC_DT_GET_ICON_INFO 0x308
+
+/*
* SMB_TRANS2_FIND_FIRST2 information levels
*/
#define SMB_INFO_STANDARD 1
@@ -323,14 +359,33 @@ enum smb_dialects {
#define ERRnofiles 18 /* no more files found in file search */
#define ERRbadshare 32 /* Share mode can't be granted */
#define ERRlock 33 /* A lock request conflicts with existing lock */
+#define ERRunsup 50 /* unsupported - Win 95 */
+#define ERRnoipc 66 /* ipc unsupported */
+#define ERRnosuchshare 67 /* invalid share name */
#define ERRfilexists 80 /* The file named in the request already exists */
#define ERRquota 112 /* W2K returns this if quota space exceeds */
+#define ERRcannotopen 110 /* cannot open the file */
+#define ERRinvalidname 123
+#define ERRunknownlevel 124
+#define ERRnotlocked 158 /* region was not locked by this context */
+#define ERRrename 183
+#define ERRbadpipe 230 /* named pipe invalid */
+#define ERRpipebusy 231 /* all pipe instances are busy */
+#define ERRpipeclosing 232 /* close in progress */
+#define ERRnotconnected 233 /* nobody on other end of pipe */
+#define ERRmoredata 234 /* more data to be returned */
+#define ERRbaddirectory 267 /* invalid directory name */
+#define ERReasunsupported 282 /* extended attributes not supported */
+#define ERRunknownipc 2142
+#define ERRbuftoosmall 2123
+#define ERRnosuchprintjob 2151
/*
* Error codes for the ERRSRV class
*/
#define ERRerror 1 /* Non-specific error code */
#define ERRbadpw 2 /* Bad password */
+#define ERRbadtype 3 /* reserved */
#define ERRaccess 4 /* The client doesn't have enough access rights */
#define ERRinvnid 5 /* The Tid specified in a command is invalid */
#define ERRinvnetname 6 /* Invalid server name in the tree connect */
@@ -382,6 +437,7 @@ enum smb_dialects {
#define ERRwrongdisk 34 /* The wrong disk was found in a drive */
#define ERRFCBunavail 35 /* No FCBs available */
#define ERRsharebufexc 36 /* A sharing buffer has been exceeded */
+#define ERRdiskfull 39
/*
* RAP error codes (it seems that they returned not only by RAP)
OpenPOWER on IntegriCloud