Skip to content

Commit fc111fb

Browse files
committed
cifs: update FSCTL definitions
Add some missing defines used by ksmbd to the client version of smbfsctl.h, and add a missing newer define mentioned in the protocol definitions (MS-FSCC). This will also make it easier to move to common code. Reviewed-by: Ronnie Sahlberg <[email protected]> Signed-off-by: Steve French <[email protected]>
1 parent 9c849ce commit fc111fb

File tree

1 file changed

+13
-3
lines changed

1 file changed

+13
-3
lines changed

fs/cifs/smbfsctl.h

Lines changed: 13 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
/* SPDX-License-Identifier: LGPL-2.1 */
1+
/* SPDX-License-Identifier: LGPL-2.1+ */
22
/*
33
* fs/cifs/smbfsctl.h: SMB, CIFS, SMB2 FSCTL definitions
44
*
@@ -19,11 +19,14 @@
1919
* could be invoked from tools via a specialized hook into the VFS rather
2020
* than via the standard vfs entry points
2121
*
22-
* See MS-SMB2 Section 2.2.31 (last checked June 2013, all of that list are
22+
* See MS-SMB2 Section 2.2.31 (last checked September 2021, all of that list are
2323
* below). Additional detail on less common ones can be found in MS-FSCC
2424
* section 2.3.
2525
*/
2626

27+
#ifndef __SMBFSCTL_H
28+
#define __SMBFSCTL_H
29+
2730
/*
2831
* FSCTL values are 32 bits and are constructed as
2932
* <device 16bits> <access 2bits> <function 12bits> <method 2bits>
@@ -91,6 +94,7 @@
9194
#define FSCTL_SET_ZERO_ON_DEALLOC 0x00090194 /* BB add struct */
9295
#define FSCTL_SET_SHORT_NAME_BEHAVIOR 0x000901B4 /* BB add struct */
9396
#define FSCTL_GET_INTEGRITY_INFORMATION 0x0009027C
97+
#define FSCTL_GET_REFS_VOLUME_DATA 0x000902D8 /* See MS-FSCC 2.3.24 */
9498
#define FSCTL_GET_RETRIEVAL_POINTERS_AND_REFCOUNT 0x000903d3
9599
#define FSCTL_GET_RETRIEVAL_POINTER_COUNT 0x0009042b
96100
#define FSCTL_QUERY_ALLOCATED_RANGES 0x000940CF
@@ -146,7 +150,13 @@
146150
#define IO_REPARSE_TAG_LX_CHR 0x80000025
147151
#define IO_REPARSE_TAG_LX_BLK 0x80000026
148152

153+
#define IO_REPARSE_TAG_LX_SYMLINK_LE cpu_to_le32(0xA000001D)
154+
#define IO_REPARSE_TAG_AF_UNIX_LE cpu_to_le32(0x80000023)
155+
#define IO_REPARSE_TAG_LX_FIFO_LE cpu_to_le32(0x80000024)
156+
#define IO_REPARSE_TAG_LX_CHR_LE cpu_to_le32(0x80000025)
157+
#define IO_REPARSE_TAG_LX_BLK_LE cpu_to_le32(0x80000026)
158+
149159
/* fsctl flags */
150160
/* If Flags is set to this value, the request is an FSCTL not ioctl request */
151161
#define SMB2_0_IOCTL_IS_FSCTL 0x00000001
152-
162+
#endif /* __SMBFSCTL_H */

0 commit comments

Comments
 (0)