1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
|
/*
Copyright (c) 2012 Gluster, Inc. <http://www.gluster.com>
This file is part of GlusterFS.
GlusterFS is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published
by the Free Software Foundation; either version 3 of the License,
or (at your option) any later version.
GlusterFS is distributed in the hope that it will be useful, but
WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program. If not, see
<http://www.gnu.org/licenses/>.
*/
/*
* Please do not edit this file.
* It was generated using rpcgen.
*/
#ifndef _NLM_H_RPCGEN
#define _NLM_H_RPCGEN
#include <rpc/rpc.h>
#ifdef __cplusplus
extern "C" {
#endif
#define MAXNETOBJ_SZ 1024
#define LM_MAXSTRLEN 1024
#define MAXNAMELEN 1025
/*
* The following enums are actually bit encoded for efficient
* boolean algebra.... DON'T change them.....
*/
enum fsh_mode {
fsm_DN = 0,
fsm_DR = 1,
fsm_DW = 2,
fsm_DRW = 3,
};
typedef enum fsh_mode fsh_mode;
enum fsh_access {
fsa_NONE = 0,
fsa_R = 1,
fsa_W = 2,
fsa_RW = 3,
};
typedef enum fsh_access fsh_access;
/* definitions for NLM version 4 */
enum nlm4_stats {
nlm4_granted = 0,
nlm4_denied = 1,
nlm4_denied_nolock = 2,
nlm4_blocked = 3,
nlm4_denied_grace_period = 4,
nlm4_deadlck = 5,
nlm4_rofs = 6,
nlm4_stale_fh = 7,
nlm4_fbig = 8,
nlm4_failed = 9,
};
typedef enum nlm4_stats nlm4_stats;
struct nlm4_stat {
nlm4_stats stat;
};
typedef struct nlm4_stat nlm4_stat;
struct nlm4_holder {
bool_t exclusive;
u_int32_t svid;
netobj oh;
u_int64_t l_offset;
u_int64_t l_len;
};
typedef struct nlm4_holder nlm4_holder;
struct nlm4_lock {
char *caller_name;
netobj fh;
netobj oh;
u_int32_t svid;
u_int64_t l_offset;
u_int64_t l_len;
};
typedef struct nlm4_lock nlm4_lock;
struct nlm4_share {
char *caller_name;
netobj fh;
netobj oh;
fsh_mode mode;
fsh_access access;
};
typedef struct nlm4_share nlm4_share;
struct nlm4_testrply {
nlm4_stats stat;
union {
struct nlm4_holder holder;
} nlm4_testrply_u;
};
typedef struct nlm4_testrply nlm4_testrply;
struct nlm4_testres {
netobj cookie;
nlm4_testrply stat;
};
typedef struct nlm4_testres nlm4_testres;
struct nlm4_testargs {
netobj cookie;
bool_t exclusive;
struct nlm4_lock alock;
};
typedef struct nlm4_testargs nlm4_testargs;
struct nlm4_res {
netobj cookie;
nlm4_stat stat;
};
typedef struct nlm4_res nlm4_res;
struct nlm4_lockargs {
netobj cookie;
bool_t block;
bool_t exclusive;
struct nlm4_lock alock;
bool_t reclaim;
int state;
};
typedef struct nlm4_lockargs nlm4_lockargs;
struct nlm4_cancargs {
netobj cookie;
bool_t block;
bool_t exclusive;
struct nlm4_lock alock;
};
typedef struct nlm4_cancargs nlm4_cancargs;
struct nlm4_unlockargs {
netobj cookie;
struct nlm4_lock alock;
};
typedef struct nlm4_unlockargs nlm4_unlockargs;
struct nlm4_shareargs {
netobj cookie;
nlm4_share share;
bool_t reclaim;
};
typedef struct nlm4_shareargs nlm4_shareargs;
struct nlm4_shareres {
netobj cookie;
nlm4_stats stat;
int sequence;
};
typedef struct nlm4_shareres nlm4_shareres;
#define NLM4_NULL 0
#define NLM4_TEST 1
#define NLM4_LOCK 2
#define NLM4_CANCEL 3
#define NLM4_UNLOCK 4
#define NLM4_GRANTED 5
#define NLM4_TEST_MSG 6
#define NLM4_LOCK_MSG 7
#define NLM4_CANCEL_MSG 8
#define NLM4_UNLOCK_MSG 9
#define NLM4_GRANTED_MSG 10
#define NLM4_TEST_RES 11
#define NLM4_LOCK_RES 12
#define NLM4_CANCEL_RES 13
#define NLM4_UNLOCK_RES 14
#define NLM4_GRANTED_RES 15
#define NLM4_SM_NOTIFY 16
#define NLM4_SHARE 20
#define NLM4_UNSHARE 21
#define NLM4_NM_LOCK 22
#define NLM4_FREE_ALL 23
#define NLM4_PROC_COUNT 24
/* the xdr functions */
#if defined(__STDC__) || defined(__cplusplus)
extern bool_t xdr_netobj (XDR *, netobj*);
extern bool_t xdr_fsh_mode (XDR *, fsh_mode*);
extern bool_t xdr_fsh_access (XDR *, fsh_access*);
extern bool_t xdr_nlm4_stats (XDR *, nlm4_stats*);
extern bool_t xdr_nlm4_stat (XDR *, nlm4_stat*);
extern bool_t xdr_nlm4_holder (XDR *, nlm4_holder*);
extern bool_t xdr_nlm4_lock (XDR *, nlm4_lock*);
extern bool_t xdr_nlm4_share (XDR *, nlm4_share*);
extern bool_t xdr_nlm4_testrply (XDR *, nlm4_testrply*);
extern bool_t xdr_nlm4_testres (XDR *, nlm4_testres*);
extern bool_t xdr_nlm4_testargs (XDR *, nlm4_testargs*);
extern bool_t xdr_nlm4_res (XDR *, nlm4_res*);
extern bool_t xdr_nlm4_lockargs (XDR *, nlm4_lockargs*);
extern bool_t xdr_nlm4_cancargs (XDR *, nlm4_cancargs*);
extern bool_t xdr_nlm4_unlockargs (XDR *, nlm4_unlockargs*);
extern bool_t xdr_nlm4_shareargs (XDR *, nlm4_shareargs*);
extern bool_t xdr_nlm4_shareres (XDR *, nlm4_shareres*);
#else /* K&R C */
extern bool_t xdr_netobj ();
extern bool_t xdr_fsh_mode ();
extern bool_t xdr_fsh_access ();
extern bool_t xdr_nlm4_stats ();
extern bool_t xdr_nlm4_stat ();
extern bool_t xdr_nlm4_holder ();
extern bool_t xdr_nlm4_lock ();
extern bool_t xdr_nlm4_share ();
extern bool_t xdr_nlm4_testrply ();
extern bool_t xdr_nlm4_testres ();
extern bool_t xdr_nlm4_testargs ();
extern bool_t xdr_nlm4_res ();
extern bool_t xdr_nlm4_lockargs ();
extern bool_t xdr_nlm4_cancargs ();
extern bool_t xdr_nlm4_unlockargs ();
extern bool_t xdr_nlm4_shareargs ();
extern bool_t xdr_nlm4_shareres ();
#endif /* K&R C */
#ifdef __cplusplus
}
#endif
#endif /* !_NLM_H_RPCGEN */
|