smb_fscc/lib.rs
1//! ## File System Control Codes ([MS-FSCC](https://learn.microsoft.com/en-us/openspecs/windows_protocols/ms-fscc/efbfe127-73ad-4140-9967-ec6500e66d5e)) For SMB
2//!
3//! The FSCC types are widely used in SMB messages.
4//! This module contains implementation of many structs supported in SMB from the FSCC specification,
5//! to allow a wide variety of SMB operations, with a well defined, convenient typing system,
6//! and with an extensive set of structures.
7//!
8//! This crate also contains common utility structures to wrap around common FSCC structures.
9//!
10//! The crate contains the following implementations:
11//! * File information [`QueryFileInfo`], [`SetFileInfo`]
12//! * File system information [`QueryFileSystemInfo`], [`SetFileSystemInfo`]
13//! * Directory query types [`QueryDirectoryInfo`]
14//! * Change notifications [`FileNotifyInformation`]
15//! * Access masks [`FileAccessMask`], [`DirAccessMask`]
16
17#![allow(unused_parens)]
18#![forbid(unsafe_code)]
19
20mod access_masks;
21mod chained_list;
22mod common_info;
23mod directory_info;
24mod error;
25mod file_attributes;
26mod filesystem_info;
27mod info_classes;
28mod notify;
29mod query_file_info;
30mod quota;
31mod set_file_info;
32
33pub use access_masks::*;
34pub use chained_list::{CHAINED_ITEM_PREFIX_SIZE, ChainedItemList};
35pub use common_info::*;
36pub use directory_info::*;
37pub use error::SmbFsccError;
38pub use file_attributes::*;
39pub use filesystem_info::*;
40pub use info_classes::*;
41pub use notify::*;
42pub use query_file_info::*;
43pub use quota::*;
44pub use set_file_info::*;