trans2.h
来自「samba最新软件」· C头文件 代码 · 共 472 行 · 第 1/2 页
H
472 行
/* seems to be the file size - perhaps valid data size? filemon shows 'InheritContentIndexInfo'*/#define SMB_SFILEINFO_1039 1039/* OLE_INFORMATION? */#define SMB_SFILEINFO_1040 1040/* trans2 findfirst levels *//*w2k3 TRANS2ALIASES:Checking for FINDFIRST aliases Found level 1 (0x001) of size 68 (0x44) Found level 2 (0x002) of size 70 (0x46) Found level 257 (0x101) of size 108 (0x6c) Found level 258 (0x102) of size 116 (0x74) Found level 259 (0x103) of size 60 (0x3c) Found level 260 (0x104) of size 140 (0x8c) Found level 261 (0x105) of size 124 (0x7c) Found level 262 (0x106) of size 148 (0x94)Found 8 levels with success statusFound 0 aliased levels*/#define SMB_FIND_STANDARD 1#define SMB_FIND_EA_SIZE 2#define SMB_FIND_EA_LIST 3#define SMB_FIND_DIRECTORY_INFO 0x101#define SMB_FIND_FULL_DIRECTORY_INFO 0x102#define SMB_FIND_NAME_INFO 0x103#define SMB_FIND_BOTH_DIRECTORY_INFO 0x104#define SMB_FIND_ID_FULL_DIRECTORY_INFO 0x105#define SMB_FIND_ID_BOTH_DIRECTORY_INFO 0x106#define SMB_FIND_UNIX_INFO 0x202#define SMB_FIND_UNIX_INFO2 0x20b/* flags on trans2 findfirst/findnext that control search */#define FLAG_TRANS2_FIND_CLOSE 0x1#define FLAG_TRANS2_FIND_CLOSE_IF_END 0x2#define FLAG_TRANS2_FIND_REQUIRE_RESUME 0x4#define FLAG_TRANS2_FIND_CONTINUE 0x8#define FLAG_TRANS2_FIND_BACKUP_INTENT 0x10/* * DeviceType and Characteristics returned in a * SMB_QFS_DEVICE_INFO call. */#define QFS_DEVICETYPE_CD_ROM 0x2#define QFS_DEVICETYPE_CD_ROM_FILE_SYSTEM 0x3#define QFS_DEVICETYPE_DISK 0x7#define QFS_DEVICETYPE_DISK_FILE_SYSTEM 0x8#define QFS_DEVICETYPE_FILE_SYSTEM 0x9/* Characteristics. */#define QFS_TYPE_REMOVABLE_MEDIA 0x1#define QFS_TYPE_READ_ONLY_DEVICE 0x2#define QFS_TYPE_FLOPPY 0x4#define QFS_TYPE_WORM 0x8#define QFS_TYPE_REMOTE 0x10#define QFS_TYPE_MOUNTED 0x20#define QFS_TYPE_VIRTUAL 0x40/* * Thursby MAC extensions.... *//* * MAC CIFS Extensions have the range 0x300 - 0x2FF reserved. * Supposedly Microsoft have agreed to this. */#define MIN_MAC_INFO_LEVEL 0x300#define MAX_MAC_INFO_LEVEL 0x3FF#define SMB_QFS_MAC_FS_INFO 0x301/* UNIX CIFS Extensions - created by HP *//* * UNIX CIFS Extensions have the range 0x200 - 0x2FF reserved. * Supposedly Microsoft have agreed to this. */#define MIN_UNIX_INFO_LEVEL 0x200#define MAX_UNIX_INFO_LEVEL 0x2FF#define INFO_LEVEL_IS_UNIX(level) (((level) >= MIN_UNIX_INFO_LEVEL) && ((level) <= MAX_UNIX_INFO_LEVEL))#define SMB_MODE_NO_CHANGE 0xFFFFFFFF /* file mode value which */ /* means "don't change it" */#define SMB_UID_NO_CHANGE 0xFFFFFFFF#define SMB_GID_NO_CHANGE 0xFFFFFFFF#define SMB_SIZE_NO_CHANGE_LO 0xFFFFFFFF#define SMB_SIZE_NO_CHANGE_HI 0xFFFFFFFF #define SMB_TIME_NO_CHANGE_LO 0xFFFFFFFF#define SMB_TIME_NO_CHANGE_HI 0xFFFFFFFF/*UNIX_BASIC info level:Offset Size Name0 LARGE_INTEGER EndOfFile File size8 LARGE_INTEGER Blocks Number of bytes used on disk (st_blocks).16 LARGE_INTEGER CreationTime Creation time24 LARGE_INTEGER LastAccessTime Last access time32 LARGE_INTEGER LastModificationTime Last modification time40 LARGE_INTEGER Uid Numeric user id for the owner48 LARGE_INTEGER Gid Numeric group id of owner56 ULONG Type Enumeration specifying the pathname type: 0 -- File 1 -- Directory 2 -- Symbolic link 3 -- Character device 4 -- Block device 5 -- FIFO (named pipe) 6 -- Unix domain socket60 LARGE_INTEGER devmajor Major device number if type is device68 LARGE_INTEGER devminor Minor device number if type is device76 LARGE_INTEGER uniqueid This is a server-assigned unique id for the file. The client will typically map this onto an inode number. The scope of uniqueness is the share.84 LARGE_INTEGER permissions Standard UNIX file permissions - see below.92 LARGE_INTEGER nlinks The number of directory entries that map to this entry (number of hard links)100 - end.*//*SMB_QUERY_FILE_UNIX_INFO2 is SMB_QUERY_FILE_UNIX_BASIC with createtime and file flags appended. The corresponding info level forfindfirst/findnext is SMB_FIND_FILE_UNIX_UNIX2.Size Offset Value---------------------0 LARGE_INTEGER EndOfFile File size8 LARGE_INTEGER Blocks Number of blocks used on disk16 LARGE_INTEGER ChangeTime Attribute change time24 LARGE_INTEGER LastAccessTime Last access time32 LARGE_INTEGER LastModificationTime Last modification time40 LARGE_INTEGER Uid Numeric user id for the owner48 LARGE_INTEGER Gid Numeric group id of owner56 ULONG Type Enumeration specifying the file type60 LARGE_INTEGER devmajor Major device number if type is device68 LARGE_INTEGER devminor Minor device number if type is device76 LARGE_INTEGER uniqueid This is a server-assigned unique id84 LARGE_INTEGER permissions Standard UNIX permissions92 LARGE_INTEGER nlinks Number of hard link)100 LARGE_INTEGER CreationTime Create/birth time108 ULONG FileFlags File flags enumeration112 ULONG FileFlagsMask Mask of valid flags*//* UNIX filetype mappings. */#define UNIX_TYPE_FILE 0#define UNIX_TYPE_DIR 1#define UNIX_TYPE_SYMLINK 2#define UNIX_TYPE_CHARDEV 3#define UNIX_TYPE_BLKDEV 4#define UNIX_TYPE_FIFO 5#define UNIX_TYPE_SOCKET 6#define UNIX_TYPE_UNKNOWN 0xFFFFFFFF/* * Oh this is fun. "Standard UNIX permissions" has no * meaning in POSIX. We need to define the mapping onto * and off the wire as this was not done in the original HP * spec. JRA. */#define UNIX_X_OTH 0000001#define UNIX_W_OTH 0000002#define UNIX_R_OTH 0000004#define UNIX_X_GRP 0000010#define UNIX_W_GRP 0000020#define UNIX_R_GRP 0000040#define UNIX_X_USR 0000100#define UNIX_W_USR 0000200#define UNIX_R_USR 0000400#define UNIX_STICKY 0001000#define UNIX_SET_GID 0002000#define UNIX_SET_UID 0004000/* Masks for the above */#define UNIX_OTH_MASK 0000007#define UNIX_GRP_MASK 0000070#define UNIX_USR_MASK 0000700#define UNIX_PERM_MASK 0000777#define UNIX_EXTRA_MASK 0007000#define UNIX_ALL_MASK 0007777/* Flags for the file_flags field in UNIX_INFO2: */#define EXT_SECURE_DELETE 0x00000001#define EXT_ENABLE_UNDELETE 0x00000002#define EXT_SYNCHRONOUS 0x00000004#define EXT_IMMUTABLE 0x00000008#define EXT_OPEN_APPEND_ONLY 0x00000010#define EXT_DO_NOT_BACKUP 0x00000020#define EXT_NO_UPDATE_ATIME 0x00000040#define EXT_HIDDEN 0x00000080#define SMB_QFILEINFO_UNIX_LINK 0x201#define SMB_SFILEINFO_UNIX_LINK 0x201#define SMB_SFILEINFO_UNIX_HLINK 0x203/* Info level for QVOLINFO - returns version of CIFS UNIX extensions, plus 64-bits worth of capability fun :-).*/#define SMB_QUERY_CIFS_UNIX_INFO 0x200/* Returns the following. UINT16 major version number UINT16 minor version number LARGE_INTEGER capability bitfield*/#define CIFS_UNIX_MAJOR_VERSION 1#define CIFS_UNIX_MINOR_VERSION 0#define CIFS_UNIX_FCNTL_LOCKS_CAP 0x1#define CIFS_UNIX_POSIX_ACLS_CAP 0x2/* ... more as we think of them :-). */#endif
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?