]> git.ipfire.org Git - thirdparty/kernel/linux.git/commitdiff
smb: move list of FileSystemAttributes to common/fscc.h
authorChenXiaoSong <chenxiaosong@kylinos.cn>
Sun, 2 Nov 2025 07:30:54 +0000 (15:30 +0800)
committerSteve French <stfrench@microsoft.com>
Mon, 1 Dec 2025 03:11:45 +0000 (21:11 -0600)
These definitions are exactly the same on both client and server,
so move them to new common header file.

Signed-off-by: ChenXiaoSong <chenxiaosong@kylinos.cn>
Acked-by: Namjae Jeon <linkinjeon@kernel.org>
Signed-off-by: Steve French <stfrench@microsoft.com>
fs/smb/client/cifsglob.h
fs/smb/client/cifspdu.h
fs/smb/common/fscc.h [new file with mode: 0644]
fs/smb/server/smb_common.h

index 4d0aca8097c111c2da7de85b5284f93279e2fb5a..0c76e0a313862429d72d3f05f04f7c8392194d0f 100644 (file)
@@ -26,6 +26,7 @@
 #include <uapi/linux/cifs/cifs_mount.h>
 #include "../common/smbglob.h"
 #include "../common/smb2pdu.h"
+#include "../common/fscc.h"
 #include "smb2pdu.h"
 #include <linux/filelock.h>
 
index 1e16ef6f0ff5507a0a2b59b6193de807f0090df5..7816bd3da8d71e523786132a5b4a4a59d4de60ff 100644 (file)
@@ -2100,33 +2100,6 @@ typedef struct {
 /* minimum includes first three fields, and empty FS Name */
 #define MIN_FS_ATTR_INFO_SIZE 12
 
-
-/* List of FileSystemAttributes - see 2.5.1 of MS-FSCC */
-#define FILE_SUPPORTS_SPARSE_VDL       0x10000000 /* faster nonsparse extend */
-#define FILE_SUPPORTS_BLOCK_REFCOUNTING        0x08000000 /* allow ioctl dup extents */
-#define FILE_SUPPORT_INTEGRITY_STREAMS 0x04000000
-#define FILE_SUPPORTS_USN_JOURNAL      0x02000000
-#define FILE_SUPPORTS_OPEN_BY_FILE_ID  0x01000000
-#define FILE_SUPPORTS_EXTENDED_ATTRIBUTES 0x00800000
-#define FILE_SUPPORTS_HARD_LINKS       0x00400000
-#define FILE_SUPPORTS_TRANSACTIONS     0x00200000
-#define FILE_SEQUENTIAL_WRITE_ONCE     0x00100000
-#define FILE_READ_ONLY_VOLUME          0x00080000
-#define FILE_NAMED_STREAMS             0x00040000
-#define FILE_SUPPORTS_ENCRYPTION       0x00020000
-#define FILE_SUPPORTS_OBJECT_IDS       0x00010000
-#define FILE_VOLUME_IS_COMPRESSED      0x00008000
-#define FILE_SUPPORTS_POSIX_UNLINK_RENAME 0x00000400
-#define FILE_RETURNS_CLEANUP_RESULT_INFO  0x00000200
-#define FILE_SUPPORTS_REMOTE_STORAGE   0x00000100
-#define FILE_SUPPORTS_REPARSE_POINTS   0x00000080
-#define FILE_SUPPORTS_SPARSE_FILES     0x00000040
-#define FILE_VOLUME_QUOTAS             0x00000020
-#define FILE_FILE_COMPRESSION          0x00000010
-#define FILE_PERSISTENT_ACLS           0x00000008
-#define FILE_UNICODE_ON_DISK           0x00000004
-#define FILE_CASE_PRESERVED_NAMES      0x00000002
-#define FILE_CASE_SENSITIVE_SEARCH     0x00000001
 typedef struct {
        __le32 Attributes;
        __le32 MaxPathNameComponentLength;
diff --git a/fs/smb/common/fscc.h b/fs/smb/common/fscc.h
new file mode 100644 (file)
index 0000000..c8bfb87
--- /dev/null
@@ -0,0 +1,42 @@
+/* SPDX-License-Identifier: LGPL-2.1 */
+/*
+ *
+ *   Copyright (c) International Business Machines  Corp., 2009, 2013
+ *                 Etersoft, 2012
+ *                 2018 Samsung Electronics Co., Ltd.
+ *   Author(s): Steve French (sfrench@us.ibm.com)
+ *              Pavel Shilovsky (pshilovsky@samba.org) 2012
+ *              Namjae Jeon (linkinjeon@kernel.org)
+ *
+ */
+#ifndef _COMMON_SMB_FSCC_H
+#define _COMMON_SMB_FSCC_H
+
+/* List of FileSystemAttributes - see MS-FSCC 2.5.1 */
+#define FILE_SUPPORTS_SPARSE_VDL       0x10000000 /* faster nonsparse extend */
+#define FILE_SUPPORTS_BLOCK_REFCOUNTING        0x08000000 /* allow ioctl dup extents */
+#define FILE_SUPPORT_INTEGRITY_STREAMS 0x04000000
+#define FILE_SUPPORTS_USN_JOURNAL      0x02000000
+#define FILE_SUPPORTS_OPEN_BY_FILE_ID  0x01000000
+#define FILE_SUPPORTS_EXTENDED_ATTRIBUTES 0x00800000
+#define FILE_SUPPORTS_HARD_LINKS       0x00400000
+#define FILE_SUPPORTS_TRANSACTIONS     0x00200000
+#define FILE_SEQUENTIAL_WRITE_ONCE     0x00100000
+#define FILE_READ_ONLY_VOLUME          0x00080000
+#define FILE_NAMED_STREAMS             0x00040000
+#define FILE_SUPPORTS_ENCRYPTION       0x00020000
+#define FILE_SUPPORTS_OBJECT_IDS       0x00010000
+#define FILE_VOLUME_IS_COMPRESSED      0x00008000
+#define FILE_SUPPORTS_POSIX_UNLINK_RENAME 0x00000400
+#define FILE_RETURNS_CLEANUP_RESULT_INFO  0x00000200
+#define FILE_SUPPORTS_REMOTE_STORAGE   0x00000100
+#define FILE_SUPPORTS_REPARSE_POINTS   0x00000080
+#define FILE_SUPPORTS_SPARSE_FILES     0x00000040
+#define FILE_VOLUME_QUOTAS             0x00000020
+#define FILE_FILE_COMPRESSION          0x00000010
+#define FILE_PERSISTENT_ACLS           0x00000008
+#define FILE_UNICODE_ON_DISK           0x00000004
+#define FILE_CASE_PRESERVED_NAMES      0x00000002
+#define FILE_CASE_SENSITIVE_SEARCH     0x00000001
+
+#endif /* _COMMON_SMB_FSCC_H */
index c5df18d679b5f2df2e8dcc90d1ef1327cec7f593..653e369efbe876c751194750c1057ab907434ff4 100644 (file)
@@ -12,6 +12,7 @@
 #include "nterr.h"
 #include "../common/smbglob.h"
 #include "../common/smb2pdu.h"
+#include "../common/fscc.h"
 #include "smb2pdu.h"
 
 /* ksmbd's Specific ERRNO */
 #define ATTR_NO_BUFFERING              0x20000000
 #define ATTR_WRITE_THROUGH             0x80000000
 
-/* List of FileSystemAttributes - see 2.5.1 of MS-FSCC */
-#define FILE_SUPPORTS_SPARSE_VDL       0x10000000 /* faster nonsparse extend */
-#define FILE_SUPPORTS_BLOCK_REFCOUNTING        0x08000000 /* allow ioctl dup extents */
-#define FILE_SUPPORT_INTEGRITY_STREAMS 0x04000000
-#define FILE_SUPPORTS_USN_JOURNAL      0x02000000
-#define FILE_SUPPORTS_OPEN_BY_FILE_ID  0x01000000
-#define FILE_SUPPORTS_EXTENDED_ATTRIBUTES 0x00800000
-#define FILE_SUPPORTS_HARD_LINKS       0x00400000
-#define FILE_SUPPORTS_TRANSACTIONS     0x00200000
-#define FILE_SEQUENTIAL_WRITE_ONCE     0x00100000
-#define FILE_READ_ONLY_VOLUME          0x00080000
-#define FILE_NAMED_STREAMS             0x00040000
-#define FILE_SUPPORTS_ENCRYPTION       0x00020000
-#define FILE_SUPPORTS_OBJECT_IDS       0x00010000
-#define FILE_VOLUME_IS_COMPRESSED      0x00008000
-#define FILE_SUPPORTS_POSIX_UNLINK_RENAME 0x00000400
-#define FILE_RETURNS_CLEANUP_RESULT_INFO  0x00000200
-#define FILE_SUPPORTS_REMOTE_STORAGE   0x00000100
-#define FILE_SUPPORTS_REPARSE_POINTS   0x00000080
-#define FILE_SUPPORTS_SPARSE_FILES     0x00000040
-#define FILE_VOLUME_QUOTAS             0x00000020
-#define FILE_FILE_COMPRESSION          0x00000010
-#define FILE_PERSISTENT_ACLS           0x00000008
-#define FILE_UNICODE_ON_DISK           0x00000004
-#define FILE_CASE_PRESERVED_NAMES      0x00000002
-#define FILE_CASE_SENSITIVE_SEARCH     0x00000001
-
 /* Combinations of file access permission bits */
 #define SET_FILE_READ_RIGHTS (FILE_READ_DATA | FILE_READ_EA \
                | FILE_READ_ATTRIBUTES \