Windows server implementations reserve all bits not specified in the following table<50>.
| Value | Meaning |
FILE_DIRECTORY_FILE 0x00000001 | The file being created or opened is a directory file. With this option, the CreateDisposition field MUST be set to FILE_CREATE, FILE_OPEN, or FILE_OPEN_IF. When this bit field is set, other compatible CreateOptions include only the following: FILE_WRITE_THROUGH, FILE_OPEN_FOR_BACKUP_INTENT, and FILE_OPEN_BY_FILE_ID.
|
FILE_WRITE_THROUGH 0x00000002 | Applications that write data to the file MUST actually transfer the data into the file before any write request is considered complete. If FILE_NO_INTERMEDIATE_BUFFERING is set, the server assumes that FILE_WRITE_THROUGH is set in the create request.
|
FILE_SEQUENTIAL_ONLY 0x00000004 | This option indicates that access to the file may be sequential. The server may use this information to influence its caching and read-ahead strategy for this file. The file may in fact be accessed randomly, but the server may optimize its caching and read-ahead policy for sequential access.
|
FILE_NO_INTERMEDIATE_BUFFERING 0x00000008 | The file SHOULD NOT be cached or buffered in an internal buffer by the server. This option is incompatible when the FILE_APPEND_DATA bit field is set in the DesiredAccess field.
|
FILE_SYNCHRONOUS_IO_ALERT 0x00000010 | This flag MUST be ignored by the server, and clients SHOULD set this to 0.<51>
|
FILE_SYNCHRONOUS_IO_NONALERT 0x00000020 | This flag MUST be ignored by the server, and clients SHOULD set this to 0.<52>
|
FILE_NON_DIRECTORY_FILE 0x00000040 | If the file being opened is a directory, the server MUST fail the request with STATUS_FILE_IS_A_DIRECTORY in the Status field of the SMB header in the server response.
|
FILE_CREATE_TREE_CONNECTION 0x00000080 | This option SHOULD NOT be sent by the clients, and this option MUST be ignored by the server.
|
FILE_COMPLETE_IF_OPLOCKED 0x00000100 | This option SHOULD NOT be sent by the clients, and this option MUST be ignored by the server.
|
FILE_NO_EA_KNOWLEDGE 0x00000200 | The application that initiated the client's request does not understand extended attributes (EAs). If the EAs on an existing file being opened indicate that the caller SHOULD understand EAs to correctly interpret the file, the server SHOULD fail this request with STATUS_ACCESS_DENIED in the Status field of the SMB header in the server response.
|
FILE_OPEN_FOR_RECOVERY 0x00000400 | This option SHOULD NOT be sent by the clients, and this option MUST be ignored if received by the server.
|
FILE_RANDOM_ACCESS 0x00000800 | Indicates that access to the file may be random. The server may use this information to influence its caching and read-ahead strategy for this file. This is a hint to the server that sequential read-ahead operations may not be appropriate on the file.
|
FILE_DELETE_ON_CLOSE 0x00001000 | The file SHOULD be automatically deleted when the last open request on this file is closed. When this option is set, the DesiredAccess field MUST include the DELETE flag. This option is often used for temporary files.
|
FILE_OPEN_BY_FILE_ID 0x00002000 | Opens a file based on the FileId. If this option is set, the server MUST fail the request with STATUS_NOT_SUPPORTED in the Status field of the SMB header in the server response.
|
FILE_OPEN_FOR_BACKUP_INTENT 0x00004000 | The file is being opened or created for the purposes of either a backup or a restore operation. Thus, the server may make appropriate checks to ensure that the caller is capable of overriding whatever security checks have been placed on the file to allow a backup or restore operation to occur. The server may choose to check for certain access rights to the file before checking the DesiredAccess field.
|
FILE_NO_COMPRESSION 0x00008000 | When a new file is created, the file MUST not be compressed even it is on a compressed volume. The flag MUST be ignored when opening an existing file.
|
FILE_RESERVE_OPFILTER 0x00100000 | This option SHOULD NOT be sent by the clients, and this option MUST be ignored if received by the server.
|
FILE_OPEN_REPARSE_POINT 0x00200000 | If the file or directory being opened is a reparse point, this option requests that the server open the reparse point itself, rather than the target to which the reparse point points.
|
FILE_OPEN_NO_RECALL 0x00400000 | In a hierarchical storage management environment, this option requests that the file SHOULD NOT be recalled from tertiary storage such as tape. A file recall can take up to several minutes in a hierarchical storage management environment. The clients can specify this option to avoid such delays.
|
FILE_OPEN_FOR_FREE_SPACE_QUERY 0x00800000 | This option SHOULD NOT be sent by the clients, and this option MUST be ignored if received by the server.
|