ReactOS  0.4.11-dev-433-g473ca91
from_kernel.h
Go to the documentation of this file.
1 /* NFSv4.1 client for Windows
2  * Copyright 2012 The Regents of the University of Michigan
3  *
4  * Olga Kornievskaia <aglo@umich.edu>
5  * Casey Bodley <cbodley@umich.edu>
6  *
7  * This library is free software; you can redistribute it and/or modify it
8  * under the terms of the GNU Lesser General Public License as published by
9  * the Free Software Foundation; either version 2.1 of the License, or (at
10  * your option) any later version.
11  *
12  * This library is distributed in the hope that it will be useful, but
13  * without any warranty; without even the implied warranty of merchantability
14  * or fitness for a particular purpose. See the GNU Lesser General Public
15  * License for more details.
16  *
17  * You should have received a copy of the GNU Lesser General Public License
18  * along with this library; if not, write to the Free Software Foundation,
19  * Inc., 51 Franklin Street, Fifth Floor, Boston, MA
20  */
21 
22 #ifndef _NFS41_DAEMON_
23 #define _NFS41_DAEMON_
24 
25 #define FILE_DIRECTORY_FILE 0x00000001
26 #define FILE_WRITE_THROUGH 0x00000002
27 #define FILE_SEQUENTIAL_ONLY 0x00000004
28 #define FILE_NO_INTERMEDIATE_BUFFERING 0x00000008
29 
30 #define FILE_SYNCHRONOUS_IO_ALERT 0x00000010
31 #define FILE_SYNCHRONOUS_IO_NONALERT 0x00000020
32 #define FILE_NON_DIRECTORY_FILE 0x00000040
33 #define FILE_CREATE_TREE_CONNECTION 0x00000080
34 
35 #define FILE_COMPLETE_IF_OPLOCKED 0x00000100
36 #define FILE_NO_EA_KNOWLEDGE 0x00000200
37 #define FILE_OPEN_REMOTE_INSTANCE 0x00000400
38 #define FILE_RANDOM_ACCESS 0x00000800
39 
40 #define FILE_DELETE_ON_CLOSE 0x00001000
41 #define FILE_OPEN_BY_FILE_ID 0x00002000
42 #define FILE_OPEN_FOR_BACKUP_INTENT 0x00004000
43 #define FILE_NO_COMPRESSION 0x00008000
44 
45 #define FILE_RESERVE_OPFILTER 0x00100000
46 #define FILE_OPEN_REPARSE_POINT 0x00200000
47 #define FILE_OPEN_NO_RECALL 0x00400000
48 #define FILE_OPEN_FOR_FREE_SPACE_QUERY 0x00800000
49 
50 #define FILE_COPY_STRUCTURED_STORAGE 0x00000041
51 #define FILE_STRUCTURED_STORAGE 0x00000441
52 
53 #define FILE_SUPERSEDE 0x00000000
54 #define FILE_OPEN 0x00000001
55 #define FILE_CREATE 0x00000002
56 #define FILE_OPEN_IF 0x00000003
57 #define FILE_OVERWRITE 0x00000004
58 #define FILE_OVERWRITE_IF 0x00000005
59 #define FILE_MAXIMUM_DISPOSITION 0x00000005
60 
114 
115 
116 /* kernel structures for QueryDirectory results */
117 typedef struct _FILE_NAMES_INFORMATION {
123 
124 typedef struct _FILE_DIRECTORY_INFO {
137 
154 
155 typedef struct _FILE_FULL_DIR_INFO {
169 
170 typedef struct _FILE_ID_FULL_DIR_INFO {
185 
186 typedef struct _FILE_LINK_INFORMATION {
192 
200 
201 typedef struct _FILE_GET_EA_INFORMATION {
206 
216 
217 /* wdm.h */
218 typedef enum _FSINFOCLASS {
231 
232 /* ntifs.h */
233 #define FILE_CASE_SENSITIVE_SEARCH 0x00000001
234 #define FILE_CASE_PRESERVED_NAMES 0x00000002
235 #define FILE_UNICODE_ON_DISK 0x00000004
236 #define FILE_PERSISTENT_ACLS 0x00000008
237 #define FILE_FILE_COMPRESSION 0x00000010
238 #define FILE_VOLUME_QUOTAS 0x00000020
239 #define FILE_SUPPORTS_SPARSE_FILES 0x00000040
240 #define FILE_SUPPORTS_REPARSE_POINTS 0x00000080
241 #define FILE_SUPPORTS_REMOTE_STORAGE 0x00000100
242 #define FILE_VOLUME_IS_COMPRESSED 0x00008000
243 #define FILE_SUPPORTS_OBJECT_IDS 0x00010000
244 #define FILE_SUPPORTS_ENCRYPTION 0x00020000
245 #define FILE_NAMED_STREAMS 0x00040000
246 #define FILE_READ_ONLY_VOLUME 0x00080000
247 #define FILE_SEQUENTIAL_WRITE_ONCE 0x00100000
248 #define FILE_SUPPORTS_TRANSACTIONS 0x00200000
249 #define FILE_SUPPORTS_HARD_LINKS 0x00400000
250 #define FILE_SUPPORTS_EXTENDED_ATTRIBUTES 0x00800000
251 #define FILE_SUPPORTS_OPEN_BY_FILE_ID 0x01000000
252 #define FILE_SUPPORTS_USN_JOURNAL 0x02000000
253 
260 
261 /* ntddk.h */
268 
276 
280 #endif
LARGE_INTEGER CreationTime
Definition: from_kernel.h:158
LARGE_INTEGER ChangeTime
Definition: from_kernel.h:130
struct _FILE_INTERNAL_INFORMATION * PFILE_INTERNAL_INFORMATION
LARGE_INTEGER TotalAllocationUnits
Definition: from_kernel.h:263
struct _FILE_INTERNAL_INFORMATION FILE_INTERNAL_INFORMATION
struct _FILE_FS_FULL_SIZE_INFORMATION FILE_FS_FULL_SIZE_INFORMATION
struct _FILE_BOTH_DIR_INFORMATION * PFILE_BOTH_DIR_INFORMATION
LARGE_INTEGER LastAccessTime
Definition: from_kernel.h:128
struct _FILE_FULL_EA_INFORMATION * PFILE_FULL_EA_INFORMATION
__wchar_t WCHAR
Definition: xmlstorage.h:180
char CHAR
Definition: xmlstorage.h:175
LARGE_INTEGER EndOfFile
Definition: from_kernel.h:177
struct _FILE_GET_EA_INFORMATION * PFILE_GET_EA_INFORMATION
struct _FILE_FS_FULL_SIZE_INFORMATION * PFILE_FS_FULL_SIZE_INFORMATION
LARGE_INTEGER LastWriteTime
Definition: from_kernel.h:129
LARGE_INTEGER ChangeTime
Definition: from_kernel.h:161
LARGE_INTEGER CreationTime
Definition: from_kernel.h:127
struct _FILE_FS_ATTRIBUTE_INFORMATION FILE_FS_ATTRIBUTE_INFORMATION
struct _FILE_FULL_DIR_INFO FILE_FULL_DIR_INFO
struct _FILE_NETWORK_OPEN_INFORMATION FILE_NETWORK_OPEN_INFORMATION
LARGE_INTEGER LastAccessTime
Definition: from_kernel.h:159
struct _FILE_FULL_DIR_INFO * PFILE_FULL_DIR_INFO
LARGE_INTEGER EndOfFile
Definition: from_kernel.h:131
LARGE_INTEGER FileId
Definition: from_kernel.h:182
LARGE_INTEGER ActualAvailableAllocationUnits
Definition: from_kernel.h:272
LARGE_INTEGER LastWriteTime
Definition: from_kernel.h:143
long LONG
Definition: pedump.c:60
enum _FILE_INFORMATION_CLASS * PFILE_INFORMATION_CLASS
LARGE_INTEGER AvailableAllocationUnits
Definition: from_kernel.h:264
LARGE_INTEGER AllocationSize
Definition: from_kernel.h:146
LARGE_INTEGER AllocationSize
Definition: from_kernel.h:178
struct _FILE_DIRECTORY_INFO FILE_DIRECTORY_INFO
_FSINFOCLASS
Definition: from_kernel.h:218
struct _FILE_NAMES_INFORMATION * PFILE_NAMES_INFORMATION
struct _FILE_BOTH_DIR_INFORMATION FILE_BOTH_DIR_INFORMATION
enum _FSINFOCLASS FS_INFORMATION_CLASS
struct _FILE_FS_SIZE_INFORMATION * PFILE_FS_SIZE_INFORMATION
enum _FILE_INFORMATION_CLASS FILE_INFORMATION_CLASS
Definition: directory.c:44
unsigned char BOOLEAN
char CCHAR
Definition: typedefs.h:50
enum _FSINFOCLASS * PFS_INFORMATION_CLASS
struct _FILE_FS_ATTRIBUTE_INFORMATION * PFILE_FS_ATTRIBUTE_INFORMATION
struct _FILE_NAMES_INFORMATION FILE_NAMES_INFORMATION
unsigned char UCHAR
Definition: xmlstorage.h:181
struct _FILE_ID_FULL_DIR_INFO * PFILE_ID_FULL_DIR_INFO
struct _FILE_FULL_EA_INFORMATION FILE_FULL_EA_INFORMATION
struct _FILE_ID_FULL_DIR_INFO FILE_ID_FULL_DIR_INFO
LARGE_INTEGER LastWriteTime
Definition: from_kernel.h:160
struct _FILE_FS_SIZE_INFORMATION FILE_FS_SIZE_INFORMATION
LARGE_INTEGER LastWriteTime
Definition: from_kernel.h:175
DWORD *typedef HANDLE
Definition: winlogon.h:61
unsigned short USHORT
Definition: pedump.c:61
struct _FILE_GET_EA_INFORMATION FILE_GET_EA_INFORMATION
struct _FILE_LINK_INFORMATION * PFILE_LINK_INFORMATION
struct _FILE_NETWORK_OPEN_INFORMATION * PFILE_NETWORK_OPEN_INFORMATION
LARGE_INTEGER ChangeTime
Definition: from_kernel.h:176
LARGE_INTEGER LastAccessTime
Definition: from_kernel.h:174
LARGE_INTEGER AllocationSize
Definition: from_kernel.h:132
LARGE_INTEGER CreationTime
Definition: from_kernel.h:141
struct _FILE_LINK_INFORMATION FILE_LINK_INFORMATION
LARGE_INTEGER EndOfFile
Definition: from_kernel.h:162
LARGE_INTEGER CreationTime
Definition: from_kernel.h:173
unsigned int ULONG
Definition: retypes.h:1
LARGE_INTEGER LastAccessTime
Definition: from_kernel.h:142
struct _FILE_DIRECTORY_INFO * PFILE_DIRECTORY_INFO
LARGE_INTEGER AllocationSize
Definition: from_kernel.h:163
LARGE_INTEGER CallerAvailableAllocationUnits
Definition: from_kernel.h:271
LARGE_INTEGER TotalAllocationUnits
Definition: from_kernel.h:270
_FILE_INFORMATION_CLASS
Definition: from_kernel.h:61