This request is used to set information about a specific file or subdirectory given a handle to the file or subdirectory.
| Client Request ========================== |
Value ========================================== |
| WordCount | 15 |
| MaxSetupCount | 0 |
| SetupCount | 1 |
| Setup[0] | TRANS2_SET_FILE_INFORMATION |
| Parameter Block Encoding ========================== |
Description ========================================== |
| USHORT Fid; | Handle of file for request |
| USHORT InformationLevel; | Level of information requested |
| USHORT Reserved; | Ignored by the server |
The following informationlevels may be set:
| Information Level ================================ |
Value ===== |
| SMB_INFO_STANDARD | 1 |
| SMB_INFO_QUERY_EA_SIZE | 2 |
| SMB_SET_FILE_BASIC_INFO | 0x101 |
| SMB_SET_FILE_DISPOSITION_INFO | 0x102 |
| SMB_SET_FILE_ALLOCATION_INFO | 0x103 |
| SMB_SET_FILE_END_OF_FILE_INFO | 0x104 |
The two levels below 0x101 are as described in the NT_SET_PATH_INFORMATION transaction. The requested information is placed in the Data portion of the transaction response. For the information levels greater than 0x100, the transaction response has 1 parameter word which should be ignored by the client.
typedef struct {
BOOLEAN DeleteFile;
} FILE_DISPOSITION_INFORMATION;
typedef struct {
LARGE_INTEGER AllocationSize;
} FILE_ALLOCATION_INFORMATION;
typedef struct {
LARGE_INTEGER EndOfFile;
} FILE_END_OF_FILE_INFORMATION,