2.2.8.3.10 SMB_QUERY_FILE_ALL_INFO

This information level structure is used in TRANS2_QUERY_PATH_INFORMATION (section 2.2.6.6) and TRANS2_QUERY_FILE_INFORMATION (section 2.2.6.8) responses to return the SMB_QUERY_FILE_BASIC_INFO, SMB_QUERY_FILE_STANDARD_INFO, SMB_QUERY_FILE_EA_INFO, and SMB_QUERY_FILE_NAME_INFO data as well as access flags, access mode, and alignment information in a single request for the file specified in the request.

 SMB_QUERY_FILE_ALL_INFO 
   {
   FILETIME          CreationTime;
   FILETIME          LastAccessTime;
   FILETIME          LastWriteTime;
   FILETIME          LastChangeTime;
   SMB_EXT_FILE_ATTR ExtFileAttributes;
   ULONG             Reserved1;
   LARGE_INTEGER     AllocationSize
   LARGE_INTEGER     EndOfFile;
   ULONG             NumberOfLinks;
   UCHAR             DeletePending;
   UCHAR             Directory;
   USHORT            Reserved2;
   ULONG             EaSize;
   ULONG             FileNameLength;
   WCHAR             FileName[FileNameLength/2];
   }
  

CreationTime: (8 bytes): This field contains the date and time when the file was created.

LastAccessTime: (8 bytes): This field contains the date and time when the file was last accessed.

LastWriteTime: (8 bytes): This field contains the date and time when data was last written to the file.

LastChangeTime: (8 bytes): This field contains the date and time when the file was last changed.

ExtFileAttributes: (4 bytes): This field contains the extended file attributes of the file, encoded as an SMB_EXT_FILE_ATTR (section 2.2.1.2.3) data type.

Reserved1: (4 bytes): Reserved. This field SHOULD be set to 0x00000000 by the server and MUST be ignored by the client.

AllocationSize: (8 bytes): This field contains the number of bytes that are allocated to the file.

EndOfFile: (8 bytes): This field contains the offset, in bytes, from the start of the file to the first byte after the end of the file.

NumberOfLinks: (4 bytes): This field contains the number of hard links to the file.

DeletePending: (1 byte): This field indicates whether there is a delete action pending for the file.

Directory: (1 byte): This field indicates whether the file is a directory.

Reserved2: (2 bytes): Reserved. This field SHOULD be set to 0x0000 by the server and MUST be ignored by the client.

EaSize: (4 bytes): This field MUST contain the length of a file's list of extended attributes in bytes.

FileNameLength: (4 bytes): This field MUST contain the length, in bytes, of the FileName field.

FileName: (variable): This field contains the name of the file.