fs/smb/common/fscc.h
Source file repositories/reference/linux-study-clean/fs/smb/common/fscc.h
File Facts
- System
- Linux kernel
- Corpus path
fs/smb/common/fscc.h- Extension
.h- Size
- 18773 bytes
- Lines
- 585
- Domain
- Core OS
- Bucket
- VFS And Filesystem Core
- Inferred role
- Core OS: implementation source
- Status
- source implementation candidate
Why This File Exists
Core operating-system implementation surface: boot, tasks, memory, VFS, syscall-facing interfaces, synchronization, credentials, and isolation.
- Core operating-system implementation surface: boot, tasks, memory, VFS, syscall-facing interfaces, synchronization, credentials, and isolation.
- Defines or uses C structs; map object ownership, embedded links, reference counts, and lock ownership.
Dependency Surface
- No C-style include directives detected by the generator.
Detected Declarations
struct reparse_data_bufferstruct reparse_guid_data_bufferstruct reparse_mount_point_data_bufferstruct reparse_symlink_data_bufferstruct reparse_nfs_data_bufferstruct reparse_wsl_symlink_data_bufferstruct duplicate_extents_to_filestruct duplicate_extents_to_file_exstruct compress_ioctlstruct fsctl_get_integrity_information_rspstruct file_allocated_range_bufferstruct fsctl_query_file_regions_reqstruct file_region_infostruct fsctl_query_file_region_rspstruct fsctl_query_on_disk_vol_info_rspstruct fsctl_set_integrity_information_reqstruct fsctl_set_integrity_info_ex_reqstruct file_zero_data_informationstruct smb2_file_all_infostruct smb2_file_eof_infostruct smb2_file_internal_infostruct smb2_file_link_infostruct smb2_file_network_open_infostruct smb2_file_rename_infostruct smb2_fs_control_infostruct smb2_fs_full_size_infostruct smb3_fs_ss_infostruct filesystem_vol_infostruct file_notify_information
Annotated Snippet
struct reparse_data_buffer {
__le32 ReparseTag;
__le16 ReparseDataLength;
__u16 Reserved;
__u8 DataBuffer[]; /* Variable Length */
} __packed;
struct reparse_guid_data_buffer {
__le32 ReparseTag;
__le16 ReparseDataLength;
__u16 Reserved;
__u8 ReparseGuid[16];
__u8 DataBuffer[]; /* Variable Length */
} __packed;
struct reparse_mount_point_data_buffer {
__le32 ReparseTag;
__le16 ReparseDataLength;
__u16 Reserved;
__le16 SubstituteNameOffset;
__le16 SubstituteNameLength;
__le16 PrintNameOffset;
__le16 PrintNameLength;
__u8 PathBuffer[]; /* Variable Length */
} __packed;
#define SYMLINK_FLAG_RELATIVE 0x00000001
struct reparse_symlink_data_buffer {
__le32 ReparseTag;
__le16 ReparseDataLength;
__u16 Reserved;
__le16 SubstituteNameOffset;
__le16 SubstituteNameLength;
__le16 PrintNameOffset;
__le16 PrintNameLength;
__le32 Flags;
__u8 PathBuffer[]; /* Variable Length */
} __packed;
/* For IO_REPARSE_TAG_NFS - see MS-FSCC 2.1.2.6 */
#define NFS_SPECFILE_LNK 0x00000000014B4E4C
#define NFS_SPECFILE_CHR 0x0000000000524843
#define NFS_SPECFILE_BLK 0x00000000004B4C42
#define NFS_SPECFILE_FIFO 0x000000004F464946
#define NFS_SPECFILE_SOCK 0x000000004B434F53
struct reparse_nfs_data_buffer {
__le32 ReparseTag;
__le16 ReparseDataLength;
__u16 Reserved;
__le64 InodeType; /* NFS_SPECFILE_* */
__u8 DataBuffer[];
} __packed;
/* For IO_REPARSE_TAG_LX_SYMLINK - see MS-FSCC 2.1.2.7 */
struct reparse_wsl_symlink_data_buffer {
__le32 ReparseTag;
__le16 ReparseDataLength;
__u16 Reserved;
__le32 Version; /* Always 2 */
__u8 Target[]; /* Variable Length UTF-8 string without nul-term */
} __packed;
/* See MS-FSCC 2.3.7 */
struct duplicate_extents_to_file {
__u64 PersistentFileHandle; /* source file handle, opaque endianness */
__u64 VolatileFileHandle;
__le64 SourceFileOffset;
__le64 TargetFileOffset;
__le64 ByteCount; /* Bytes to be copied */
} __packed;
/* See MS-FSCC 2.3.9 */
#define DUPLICATE_EXTENTS_DATA_EX_SOURCE_ATOMIC 0x00000001
struct duplicate_extents_to_file_ex {
__le64 StructureSize; /* MUST be set to 0x30 */
__u64 PersistentFileHandle; /* source file handle, opaque endianness */
__u64 VolatileFileHandle;
__le64 SourceFileOffset;
__le64 TargetFileOffset;
__le64 ByteCount; /* Bytes to be copied */
__le32 Flags;
__le32 Reserved;
} __packed;
/*
* compression state flags
* See MS-FSCC 2.3.18
* MS-FSCC 2.3.67
* MS-FSCC 2.4.9
Annotation
- Detected declarations: `struct reparse_data_buffer`, `struct reparse_guid_data_buffer`, `struct reparse_mount_point_data_buffer`, `struct reparse_symlink_data_buffer`, `struct reparse_nfs_data_buffer`, `struct reparse_wsl_symlink_data_buffer`, `struct duplicate_extents_to_file`, `struct duplicate_extents_to_file_ex`, `struct compress_ioctl`, `struct fsctl_get_integrity_information_rsp`.
- Atlas domain: Core OS / VFS And Filesystem Core.
- Implementation status: source implementation candidate.
Implementation Notes
- This generated page is the file-by-file coverage layer; curated subsystem chapters should link here when they synthesize a multi-file control flow.
- Core OS pages should be promoted from atlas-only to deep-reviewed when they explain data structures, invariants, locking, lifecycle, and C implementation snippets.
- Driver-family pages are intentionally pattern-oriented unless they are part of the selected PCIe/NVMe representative device path.