diff options
| author | Gordon Ross <gwr@nexenta.com> | 2013-06-26 16:05:44 -0400 |
|---|---|---|
| committer | Gordon Ross <gwr@nexenta.com> | 2015-11-06 12:22:30 -0500 |
| commit | a90cf9f29973990687fa61de9f1f6ea22e924e40 (patch) | |
| tree | 42f77e59c4470ef6d2ba3118ba6c75e43686c398 /usr/src/uts/common/smbsrv/winioctl.h | |
| parent | b24e356b384ccc80805e7150979de2373d44347c (diff) | |
| download | illumos-joyent-a90cf9f29973990687fa61de9f1f6ea22e924e40.tar.gz | |
6399 SMB2 support
Portions contributed by: Alek Pinchuk <alek@nexenta.com>
Portions contributed by: Kevin Crowe <kevin.crowe@nexenta.com>
Portions contributed by: Matt Barden <Matt.Barden@nexenta.com>
Reviewed by: Alek Pinchuk <alek@nexenta.com>
Reviewed by: Bayard Bell <bayard.bell@nexenta.com>
Reviewed by: Dan Fields <dan.fields@nexenta.com>
Reviewed by: Daniel Borek <daniel.borek@nexenta.com>
Reviewed by: Gordon Ross <gordon.ross@nexenta.com>
Reviewed by: Kevin Crowe <kevin.crowe@nexenta.com>
Reviewed by: Matt Barden <matt.barden@nexenta.com>
Reviewed by: Yuri Pankov <Yuri.Pankov@nexenta.com>
Approved by: Garrett D'Amore <garrett@damore.org>
Diffstat (limited to 'usr/src/uts/common/smbsrv/winioctl.h')
| -rw-r--r-- | usr/src/uts/common/smbsrv/winioctl.h | 73 |
1 files changed, 43 insertions, 30 deletions
diff --git a/usr/src/uts/common/smbsrv/winioctl.h b/usr/src/uts/common/smbsrv/winioctl.h index 4564b3e8a3..bbde2e4a6f 100644 --- a/usr/src/uts/common/smbsrv/winioctl.h +++ b/usr/src/uts/common/smbsrv/winioctl.h @@ -21,6 +21,8 @@ /* * Copyright 2009 Sun Microsystems, Inc. All rights reserved. * Use is subject to license terms. + * + * Copyright 2013 Nexenta Systems, Inc. All rights reserved. */ #ifndef _SMBSRV_WINIOCTL_H #define _SMBSRV_WINIOCTL_H @@ -392,25 +394,21 @@ extern "C" { CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 37, METHOD_NEITHER, FILE_ANY_ACCESS) /* FILE_OBJECTID_BUFFER */ #define FSCTL_SET_OBJECT_ID \ - CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 38, METHOD_BUFFERED, \ - FILE_WRITE_ACCESS) + CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 38, METHOD_BUFFERED, FILE_ANY_ACCESS) /* FILE_OBJECTID_BUFFER */ #define FSCTL_GET_OBJECT_ID \ CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 39, METHOD_BUFFERED, FILE_ANY_ACCESS) #define FSCTL_DELETE_OBJECT_ID \ - CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 40, METHOD_BUFFERED, \ - FILE_WRITE_ACCESS) + CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 40, METHOD_BUFFERED, FILE_ANY_ACCESS) /* REPARSE_DATA_BUFFER, */ #define FSCTL_SET_REPARSE_POINT \ - CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 41, METHOD_BUFFERED, \ - FILE_WRITE_ACCESS) + CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 41, METHOD_BUFFERED, FILE_ANY_ACCESS) /* REPARSE_DATA_BUFFER */ #define FSCTL_GET_REPARSE_POINT \ CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 42, METHOD_BUFFERED, FILE_ANY_ACCESS) /* REPARSE_DATA_BUFFER, */ #define FSCTL_DELETE_REPARSE_POINT \ - CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 43, METHOD_BUFFERED, \ - FILE_WRITE_ACCESS) + CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 43, METHOD_BUFFERED, FILE_ANY_ACCESS) /* MFT_ENUM_DATA, */ #define FSCTL_ENUM_USN_DATA \ CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 44, METHOD_NEITHER, FILE_READ_ACCESS) @@ -421,8 +419,7 @@ extern "C" { #define FSCTL_READ_USN_JOURNAL \ CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 46, METHOD_NEITHER, FILE_READ_ACCESS) #define FSCTL_SET_OBJECT_ID_EXTENDED \ - CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 47, METHOD_BUFFERED, \ - FILE_WRITE_ACCESS) + CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 47, METHOD_BUFFERED, FILE_ANY_ACCESS) /* FILE_OBJECTID_BUFFER */ #define FSCTL_CREATE_OR_GET_OBJECT_ID \ CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 48, METHOD_BUFFERED, FILE_ANY_ACCESS) @@ -430,17 +427,15 @@ extern "C" { 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, \ - FILE_WRITE_ACCESS) + CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 50, METHOD_BUFFERED, FILE_WRITE_ACCESS) /* FILE_ALLOCATED_RANGE_BUFFER, FILE_ALLOCATED_RANGE_BUFFER */ #define FSCTL_QUERY_ALLOCATED_RANGES \ CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 51, METHOD_NEITHER, FILE_READ_ACCESS) #define FSCTL_ENABLE_UPGRADE \ - CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 52, METHOD_BUFFERED, \ - FILE_WRITE_ACCESS) + CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 52, METHOD_BUFFERED, FILE_WRITE_ACCESS) /* ENCRYPTION_BUFFER, */ #define FSCTL_SET_ENCRYPTION \ - CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 53, METHOD_BUFFERED, FILE_ANY_ACCESS) + CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 53, METHOD_NEITHER, FILE_ANY_ACCESS) #define FSCTL_ENCRYPTION_FSCTL_IO \ CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 54, METHOD_NEITHER, FILE_ANY_ACCESS) /* ENCRYPTED_DATA_INFO, */ @@ -454,10 +449,10 @@ extern "C" { CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 57, METHOD_NEITHER, FILE_READ_ACCESS) /* Read the Usn Record for a file */ #define FSCTL_READ_FILE_USN_DATA \ - CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 58, METHOD_NEITHER, FILE_READ_ACCESS) + CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 58, METHOD_NEITHER, FILE_ANY_ACCESS) /* Generate Close Usn Record */ #define FSCTL_WRITE_USN_CLOSE_RECORD \ - CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 59, METHOD_NEITHER, FILE_READ_ACCESS) + CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 59, METHOD_NEITHER, FILE_ANY_ACCESS) #define FSCTL_EXTEND_VOLUME \ CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 60, METHOD_BUFFERED, FILE_ANY_ACCESS) #define FSCTL_SIS_COPYFILE \ @@ -465,8 +460,7 @@ extern "C" { #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) + 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 \ @@ -475,6 +469,17 @@ extern "C" { 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) +#define FSCTL_FILE_LEVEL_TRIM \ + CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 130, METHOD_BUFFERED, FILE_WRITE_ACCESS) +#define FSCTL_OFFLOAD_READ \ + CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 153, METHOD_BUFFERED, FILE_READ_ACCESS) +#define FSCTL_OFFLOAD_WRITE \ + CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 154, METHOD_BUFFERED, FILE_WRITE_ACCESS) +#define FSCTL_GET_INTEGRITY_INFORMATION \ + CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 159, METHOD_BUFFERED, FILE_ANY_ACCESS) +#define FSCTL_SET_INTEGRITY_INFORMATION \ + CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 160, METHOD_BUFFERED, \ + FILE_READ_ACCESS | FILE_WRITE_ACCESS) /* FILE_DEVICE_NETWORK_FILE_SYSTEM */ /* Read the snapshot info for Volume Shadow Copy Services */ @@ -485,12 +490,12 @@ extern "C" { #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 \ +#define FSCTL_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 \ + METHOD_BUFFERED, FILE_ANY_ACCESS) +#define FSCTL_LMR_SET_LINK_TRACKING_INFORMATION \ CTL_CODE(FILE_DEVICE_NETWORK_FILE_SYSTEM, 0x3b, \ - METHOD_BUFFERED, FILE_ACCESS_ANY) + METHOD_BUFFERED, FILE_ANY_ACCESS) /* server-side data movement */ #define FSCTL_SRV_COPYCHUNK \ CTL_CODE(FILE_DEVICE_NETWORK_FILE_SYSTEM, 0x3c, \ @@ -507,23 +512,31 @@ extern "C" { 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 \ + METHOD_BUFFERED, FILE_ANY_ACCESS) +#define FSCTL_LMR_REQUEST_RESILIENCY \ CTL_CODE(FILE_DEVICE_NETWORK_FILE_SYSTEM, 0x75, \ METHOD_BUFFERED, FILE_ANY_ACCESS) +#define FSCTL_QUERY_NETWORK_INTERFACE_INFO \ + CTL_CODE(FILE_DEVICE_NETWORK_FILE_SYSTEM, 0x7f, \ + METHOD_BUFFERED, FILE_ANY_ACCESS) +#define FSCTL_VALIDATE_NEGOTIATE_INFO \ + CTL_CODE(FILE_DEVICE_NETWORK_FILE_SYSTEM, 0x81, \ + METHOD_BUFFERED, FILE_ANY_ACCESS) /* FILE_DEVICE_DFS */ #define FSCTL_DFS_GET_REFERRALS \ - CTL_CODE(FILE_DEVICE_DFS, 0x65, METHOD_BUFFERED, FILE_ACCESS_ANY) + CTL_CODE(FILE_DEVICE_DFS, 0x65, METHOD_BUFFERED, FILE_ANY_ACCESS) +#define FSCTL_DFS_GET_REFERRALS_EX \ + CTL_CODE(FILE_DEVICE_DFS, 0x6c, METHOD_BUFFERED, FILE_ANY_ACCESS) /* FILE_DEVICE_NAMED_PIPE */ #define FSCTL_PIPE_PEEK \ - CTL_CODE(FILE_DEVICE_NAMED_PIPE, 0x3, METHOD_BUFFERED, FILE_READ_ACCESS) + CTL_CODE(FILE_DEVICE_NAMED_PIPE, 3, METHOD_BUFFERED, FILE_READ_ACCESS) #define FSCTL_PIPE_TRANSCEIVE \ - CTL_CODE(FILE_DEVICE_NAMED_PIPE, 0x5, \ - METHOD_NEITHER, FILE_READ_ACCESS | FILE_WRITE_ACCESS) + CTL_CODE(FILE_DEVICE_NAMED_PIPE, 5, METHOD_NEITHER, \ + FILE_READ_ACCESS | FILE_WRITE_ACCESS) #define FSCTL_PIPE_WAIT \ - CTL_CODE(FILE_DEVICE_NAMED_PIPE, 0x6, METHOD_BUFFERED, FILE_ANY_ACCESS) + CTL_CODE(FILE_DEVICE_NAMED_PIPE, 6, METHOD_BUFFERED, FILE_ANY_ACCESS) #endif /* _FILESYSTEMFSCTL_ */ |
