ReactOS
0.4.15-dev-5606-gf34e425
nfs41_driver.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_DRIVER_
23
#define _NFS41_DRIVER_
24
25
#define NFS41_DEVICE_NAME L"\\Device\\nfs41_driver"
26
#define NFS41_SHADOW_DEVICE_NAME L"\\??\\nfs41_driver"
27
#define NFS41_USER_DEVICE_NAME L"\\\\.\\nfs41_driver"
28
#define NFS41_USER_DEVICE_NAME_A "\\\\.\\nfs41_driver"
29
#define NFS41_PROVIDER_NAME_A "NFS41 Network"
30
#define NFS41_PROVIDER_NAME_U L"NFS41 Network"
31
32
#define NFS41_PIPE_NAME L"\\Device\\nfs41_pipe"
33
#define NFS41_SHADOW_PIPE_NAME L"\\??\\nfs41_pipe"
34
#define NFS41_USER_PIPE_NAME L"\\\\.\\nfs41_pipe"
35
36
#define NFS41_SHARED_MEMORY_NAME L"\\BaseNamedObjects\\nfs41_shared_memory"
37
#define NFS41_USER_SHARED_MEMORY_NAME "Global\\nfs41_shared_memory"
38
39
// See "Defining I/O Control Codes" in WDK docs
40
#define _RDR_CTL_CODE(code, method) \
41
CTL_CODE(FILE_DEVICE_NETWORK_REDIRECTOR, 0x800 | (code), method, FILE_ANY_ACCESS)
42
43
#define IOCTL_NFS41_START _RDR_CTL_CODE(0, METHOD_BUFFERED)
44
#define IOCTL_NFS41_STOP _RDR_CTL_CODE(1, METHOD_NEITHER)
45
#define IOCTL_NFS41_GETSTATE _RDR_CTL_CODE(3, METHOD_NEITHER)
46
#define IOCTL_NFS41_ADDCONN _RDR_CTL_CODE(4, METHOD_BUFFERED)
47
#define IOCTL_NFS41_DELCONN _RDR_CTL_CODE(5, METHOD_BUFFERED)
48
#define IOCTL_NFS41_READ _RDR_CTL_CODE(6, METHOD_BUFFERED)
49
#define IOCTL_NFS41_WRITE _RDR_CTL_CODE(7, METHOD_BUFFERED)
50
#define IOCTL_NFS41_INVALCACHE _RDR_CTL_CODE(8, METHOD_BUFFERED)
51
52
typedef
enum
_nfs41_opcodes
{
53
NFS41_MOUNT
,
54
NFS41_UNMOUNT
,
55
NFS41_OPEN
,
56
NFS41_CLOSE
,
57
NFS41_READ
,
58
NFS41_WRITE
,
59
NFS41_LOCK
,
60
NFS41_UNLOCK
,
61
NFS41_DIR_QUERY
,
62
NFS41_FILE_QUERY
,
63
NFS41_FILE_SET
,
64
NFS41_EA_GET
,
65
NFS41_EA_SET
,
66
NFS41_SYMLINK
,
67
NFS41_VOLUME_QUERY
,
68
NFS41_ACL_QUERY
,
69
NFS41_ACL_SET
,
70
NFS41_SHUTDOWN
,
71
INVALID_OPCODE
72
}
nfs41_opcodes
;
73
74
enum
rpcsec_flavors
{
75
RPCSEC_AUTH_SYS
,
76
RPCSEC_AUTHGSS_KRB5
,
77
RPCSEC_AUTHGSS_KRB5I
,
78
RPCSEC_AUTHGSS_KRB5P
79
};
80
81
typedef
enum
_nfs41_init_driver_state
{
82
NFS41_INIT_DRIVER_STARTABLE
,
83
NFS41_INIT_DRIVER_START_IN_PROGRESS
,
84
NFS41_INIT_DRIVER_STARTED
85
}
nfs41_init_driver_state
;
86
87
typedef
enum
_nfs41_start_driver_state
{
88
NFS41_START_DRIVER_STARTABLE
,
89
NFS41_START_DRIVER_START_IN_PROGRESS
,
90
NFS41_START_DRIVER_STARTED
,
91
NFS41_START_DRIVER_STOPPED
92
}
nfs41_start_driver_state
;
93
#endif
NFS41_VOLUME_QUERY
Definition:
nfs41_driver.h:67
NFS41_CLOSE
Definition:
nfs41_driver.h:56
nfs41_opcodes
enum _nfs41_opcodes nfs41_opcodes
NFS41_OPEN
Definition:
nfs41_driver.h:55
NFS41_FILE_QUERY
Definition:
nfs41_driver.h:62
NFS41_ACL_SET
Definition:
nfs41_driver.h:69
NFS41_START_DRIVER_STARTABLE
Definition:
nfs41_driver.h:88
NFS41_SYMLINK
Definition:
nfs41_driver.h:66
nfs41_init_driver_state
enum _nfs41_init_driver_state nfs41_init_driver_state
RPCSEC_AUTH_SYS
Definition:
nfs41_driver.h:75
RPCSEC_AUTHGSS_KRB5I
Definition:
nfs41_driver.h:77
NFS41_LOCK
Definition:
nfs41_driver.h:59
NFS41_UNLOCK
Definition:
nfs41_driver.h:60
NFS41_START_DRIVER_STOPPED
Definition:
nfs41_driver.h:91
NFS41_EA_SET
Definition:
nfs41_driver.h:65
nfs41_start_driver_state
enum _nfs41_start_driver_state nfs41_start_driver_state
NFS41_SHUTDOWN
Definition:
nfs41_driver.h:70
_nfs41_start_driver_state
_nfs41_start_driver_state
Definition:
nfs41_driver.h:87
NFS41_INIT_DRIVER_START_IN_PROGRESS
Definition:
nfs41_driver.h:83
NFS41_INIT_DRIVER_STARTED
Definition:
nfs41_driver.h:84
NFS41_EA_GET
Definition:
nfs41_driver.h:64
rpcsec_flavors
rpcsec_flavors
Definition:
nfs41_driver.h:74
NFS41_UNMOUNT
Definition:
nfs41_driver.h:54
INVALID_OPCODE
Definition:
nfs41_driver.h:71
NFS41_START_DRIVER_START_IN_PROGRESS
Definition:
nfs41_driver.h:89
NFS41_ACL_QUERY
Definition:
nfs41_driver.h:68
_nfs41_opcodes
_nfs41_opcodes
Definition:
nfs41_driver.h:52
NFS41_DIR_QUERY
Definition:
nfs41_driver.h:61
NFS41_READ
Definition:
nfs41_driver.h:57
NFS41_WRITE
Definition:
nfs41_driver.h:58
NFS41_MOUNT
Definition:
nfs41_driver.h:53
RPCSEC_AUTHGSS_KRB5
Definition:
nfs41_driver.h:76
NFS41_FILE_SET
Definition:
nfs41_driver.h:63
NFS41_START_DRIVER_STARTED
Definition:
nfs41_driver.h:90
RPCSEC_AUTHGSS_KRB5P
Definition:
nfs41_driver.h:78
NFS41_INIT_DRIVER_STARTABLE
Definition:
nfs41_driver.h:82
_nfs41_init_driver_state
_nfs41_init_driver_state
Definition:
nfs41_driver.h:81
drivers
filesystems
nfs
nfs41_driver.h
Generated on Thu Jan 26 2023 06:07:43 for ReactOS by
1.8.15