diff options
Diffstat (limited to 'usr/src/uts/common/smbsrv/winioctl.h')
| -rw-r--r-- | usr/src/uts/common/smbsrv/winioctl.h | 72 |
1 files changed, 64 insertions, 8 deletions
diff --git a/usr/src/uts/common/smbsrv/winioctl.h b/usr/src/uts/common/smbsrv/winioctl.h index 67150ca387..4564b3e8a3 100644 --- a/usr/src/uts/common/smbsrv/winioctl.h +++ b/usr/src/uts/common/smbsrv/winioctl.h @@ -305,10 +305,11 @@ extern "C" { #define _FILESYSTEMFSCTL_ /* * The following is a list of the native file system fsctls followed by - * additional network file system fsctls. Some values have been - * decommissioned. + * additional network file system fsctls, DFS fsctls and Named Pipe fsctls. + * Some values have been decommissioned. */ +/* FILE_DEVICE_FILE_SYSTEM */ #define FSCTL_REQUEST_OPLOCK_LEVEL_1 \ CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 0, METHOD_BUFFERED, FILE_ANY_ACCESS) #define FSCTL_REQUEST_OPLOCK_LEVEL_2 \ @@ -351,17 +352,14 @@ extern "C" { CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 20, METHOD_BUFFERED, FILE_ANY_ACCESS) #define FSCTL_INVALIDATE_VOLUMES \ CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 21, METHOD_BUFFERED, FILE_ANY_ACCESS) - /* FSCTL_QUERY_FAT_BPB_BUFFER */ #define FSCTL_QUERY_FAT_BPB \ CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 22, METHOD_BUFFERED, FILE_ANY_ACCESS) #define FSCTL_REQUEST_FILTER_OPLOCK \ CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 23, METHOD_BUFFERED, FILE_ANY_ACCESS) - /* FILESYSTEM_STATISTICS */ #define FSCTL_FILESYSTEM_GET_STATISTICS \ CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 24, METHOD_BUFFERED, FILE_ANY_ACCESS) - /* NTFS_VOLUME_DATA_BUFFER */ #define FSCTL_GET_NTFS_VOLUME_DATA \ CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 25, METHOD_BUFFERED, FILE_ANY_ACCESS) @@ -429,8 +427,7 @@ extern "C" { #define FSCTL_CREATE_OR_GET_OBJECT_ID \ CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 48, METHOD_BUFFERED, FILE_ANY_ACCESS) #define FSCTL_SET_SPARSE \ - CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 49, METHOD_BUFFERED, \ - FILE_WRITE_ACCESS) + CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 49, METHOD_BUFFERED, FILE_ANY_ACCESS) /* FILE_ZERO_DATA_INFORMATION, */ #define FSCTL_SET_ZERO_DATA \ CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 50, METHOD_BUFFERED, \ @@ -463,11 +460,70 @@ extern "C" { CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 59, METHOD_NEITHER, FILE_READ_ACCESS) #define FSCTL_EXTEND_VOLUME \ CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 60, METHOD_BUFFERED, FILE_ANY_ACCESS) - +#define FSCTL_SIS_COPYFILE \ + CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 64, METHOD_BUFFERED, FILE_ANY_ACCESS) +#define FSCTL_RECALL_FILE \ + CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 69, METHOD_NEITHER, FILE_ANY_ACCESS) +#define FSCTL_SET_DEFECT_MANAGEMENT \ + CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 77, \ + METHOD_BUFFERED, FILE_WRITE_ACCESS) +#define FSCTL_QUERY_SPARING_INFO \ + CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 78, METHOD_BUFFERED, FILE_ANY_ACCESS) +#define FSCTL_QUERY_ON_DISK_VOLUME_INFO \ + CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 79, METHOD_BUFFERED, FILE_ANY_ACCESS) +#define FSCTL_SET_ZERO_ON_DEALLOCATION \ + CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 101, METHOD_BUFFERED, FILE_ANY_ACCESS) +#define FSCTL_SET_SHORT_NAME_BEHAVIOR \ + CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 109, METHOD_BUFFERED, FILE_ANY_ACCESS) + +/* FILE_DEVICE_NETWORK_FILE_SYSTEM */ /* Read the snapshot info for Volume Shadow Copy Services */ #define FSCTL_SRV_ENUMERATE_SNAPSHOTS \ CTL_CODE(FILE_DEVICE_NETWORK_FILE_SYSTEM, 0x19, \ METHOD_BUFFERED, FILE_READ_ACCESS) +/* Retrieve an opaque file reference for server-side data movement */ +#define FSCTL_SRV_REQUEST_RESUME_KEY \ + CTL_CODE(FILE_DEVICE_NETWORK_FILE_SYSTEM, 0x1e, \ + METHOD_BUFFERED, FILE_ANY_ACCESS) +#define FSCTL_SRV_LMR_GET_LINK_TRACKING_INFORMATION \ + CTL_CODE(FILE_DEVICE_NETWORK_FILE_SYSTEM, 0x3a, \ + METHOD_BUFFERED, FILE_ACCESS_ANY) +#define FSCTL_SRV_LMR_SET_LINK_TRACKING_INFORMATION \ + CTL_CODE(FILE_DEVICE_NETWORK_FILE_SYSTEM, 0x3b, \ + METHOD_BUFFERED, FILE_ACCESS_ANY) +/* server-side data movement */ +#define FSCTL_SRV_COPYCHUNK \ + CTL_CODE(FILE_DEVICE_NETWORK_FILE_SYSTEM, 0x3c, \ + METHOD_OUT_DIRECT, FILE_READ_ACCESS) +/* server-side data movement */ +#define FSCTL_SRV_COPYCHUNK_WRITE \ + CTL_CODE(FILE_DEVICE_NETWORK_FILE_SYSTEM, 0x3c, \ + METHOD_OUT_DIRECT, FILE_WRITE_ACCESS) +#define FSCTL_SRV_NOTIFY_TRANSACTION \ + CTL_CODE(FILE_DEVICE_NETWORK_FILE_SYSTEM, 0x46, \ + METHOD_BUFFERED, FILE_WRITE_ACCESS) +#define FSCTL_SRV_READ_HASH \ + CTL_CODE(FILE_DEVICE_NETWORK_FILE_SYSTEM, 0x6e, \ + METHOD_NEITHER, FILE_READ_ACCESS) +#define FSCTL_SRV_UNKNOWN_x71 \ + CTL_CODE(FILE_DEVICE_NETWORK_FILE_SYSTEM, 0x71, \ + METHOD_BUFFERED, FILE_ACCESS_ANY) +#define FSCTL_SRV_LMR_REQUEST_RESILIENCY \ + CTL_CODE(FILE_DEVICE_NETWORK_FILE_SYSTEM, 0x75, \ + METHOD_BUFFERED, FILE_ANY_ACCESS) + +/* FILE_DEVICE_DFS */ +#define FSCTL_DFS_GET_REFERRALS \ + CTL_CODE(FILE_DEVICE_DFS, 0x65, METHOD_BUFFERED, FILE_ACCESS_ANY) + +/* FILE_DEVICE_NAMED_PIPE */ +#define FSCTL_PIPE_PEEK \ + CTL_CODE(FILE_DEVICE_NAMED_PIPE, 0x3, METHOD_BUFFERED, FILE_READ_ACCESS) +#define FSCTL_PIPE_TRANSCEIVE \ + CTL_CODE(FILE_DEVICE_NAMED_PIPE, 0x5, \ + METHOD_NEITHER, FILE_READ_ACCESS | FILE_WRITE_ACCESS) +#define FSCTL_PIPE_WAIT \ + CTL_CODE(FILE_DEVICE_NAMED_PIPE, 0x6, METHOD_BUFFERED, FILE_ANY_ACCESS) #endif /* _FILESYSTEMFSCTL_ */ |
