PORTMAP: Add support for PORTMAP v3 CALLIT
[deb_libnfs.git] / portmap / libnfs-raw-portmap.h
CommitLineData
763cd6e3
RS
1/*
2 * Please do not edit this file.
3 * It was generated using rpcgen.
4 */
5
6#ifndef _PORTMAP_H_RPCGEN
7#define _PORTMAP_H_RPCGEN
8
8ae943f6
RS
9
10
763cd6e3
RS
11
12#ifdef __cplusplus
13extern "C" {
14#endif
15
16#define PMAP_PORT 111
17
4edd7830 18struct pmap2_mapping {
763cd6e3
RS
19 u_int prog;
20 u_int vers;
21 u_int prot;
22 u_int port;
23};
4edd7830 24typedef struct pmap2_mapping pmap2_mapping;
763cd6e3 25
4edd7830 26struct pmap2_call_args {
763cd6e3
RS
27 u_int prog;
28 u_int vers;
29 u_int proc;
30 struct {
31 u_int args_len;
32 char *args_val;
33 } args;
34};
4edd7830 35typedef struct pmap2_call_args pmap2_call_args;
763cd6e3 36
4edd7830 37struct pmap2_call_result {
763cd6e3
RS
38 u_int port;
39 struct {
40 u_int res_len;
41 char *res_val;
42 } res;
43};
4edd7830 44typedef struct pmap2_call_result pmap2_call_result;
763cd6e3 45
4edd7830
RS
46struct pmap2_mapping_list {
47 pmap2_mapping map;
48 struct pmap2_mapping_list *next;
8ae943f6 49};
4edd7830 50typedef struct pmap2_mapping_list pmap2_mapping_list;
8ae943f6 51
4edd7830
RS
52struct pmap2_dump_result {
53 struct pmap2_mapping_list *list;
8ae943f6 54};
4edd7830
RS
55typedef struct pmap2_dump_result pmap2_dump_result;
56
7fbedfde
RS
57struct pmap3_getaddr_result {
58 char *addr;
59};
60typedef struct pmap3_getaddr_result pmap3_getaddr_result;
61
4edd7830
RS
62struct pmap3_mapping {
63 u_int prog;
64 u_int vers;
65 char *netid;
66 char *addr;
67 char *owner;
68};
69typedef struct pmap3_mapping pmap3_mapping;
70
71struct pmap3_mapping_list {
72 pmap3_mapping map;
73 struct pmap3_mapping_list *next;
74};
75typedef struct pmap3_mapping_list pmap3_mapping_list;
76
77struct pmap3_dump_result {
78 struct pmap3_mapping_list *list;
79};
80typedef struct pmap3_dump_result pmap3_dump_result;
8ae943f6 81
b71f7e82
RS
82struct pmap3_call_args {
83 u_int prog;
84 u_int vers;
85 u_int proc;
86 struct {
87 u_int args_len;
88 char *args_val;
89 } args;
90};
91typedef struct pmap3_call_args pmap3_call_args;
92
93struct pmap3_call_result {
94 u_int port;
95 struct {
96 u_int res_len;
97 char *res_val;
98 } res;
99};
100typedef struct pmap3_call_result pmap3_call_result;
101
763cd6e3
RS
102#define PMAP_PROGRAM 100000
103#define PMAP_V2 2
104
105#if defined(__STDC__) || defined(__cplusplus)
0f0e352f
RS
106#define PMAP2_NULL 0
107extern void * pmap2_null_2(void *, CLIENT *);
108extern void * pmap2_null_2_svc(void *, struct svc_req *);
109#define PMAP2_SET 1
4edd7830
RS
110extern bool_t * pmap2_set_2(pmap2_mapping *, CLIENT *);
111extern bool_t * pmap2_set_2_svc(pmap2_mapping *, struct svc_req *);
0f0e352f 112#define PMAP2_UNSET 2
4edd7830
RS
113extern bool_t * pmap2_unset_2(pmap2_mapping *, CLIENT *);
114extern bool_t * pmap2_unset_2_svc(pmap2_mapping *, struct svc_req *);
0f0e352f 115#define PMAP2_GETPORT 3
4edd7830
RS
116extern u_int * pmap2_getport_2(pmap2_mapping *, CLIENT *);
117extern u_int * pmap2_getport_2_svc(pmap2_mapping *, struct svc_req *);
0f0e352f 118#define PMAP2_DUMP 4
4edd7830
RS
119extern pmap2_dump_result * pmap2_dump_2(void *, CLIENT *);
120extern pmap2_dump_result * pmap2_dump_2_svc(void *, struct svc_req *);
0f0e352f 121#define PMAP2_CALLIT 5
4edd7830
RS
122extern pmap2_call_result * pmap2_callit_2(pmap2_call_args *, CLIENT *);
123extern pmap2_call_result * pmap2_callit_2_svc(pmap2_call_args *, struct svc_req *);
763cd6e3
RS
124extern int pmap_program_2_freeresult (SVCXPRT *, zdrproc_t, caddr_t);
125
126#else /* K&R C */
0f0e352f
RS
127#define PMAP2_NULL 0
128extern void * pmap2_null_2();
129extern void * pmap2_null_2_svc();
130#define PMAP2_SET 1
131extern bool_t * pmap2_set_2();
132extern bool_t * pmap2_set_2_svc();
133#define PMAP2_UNSET 2
134extern bool_t * pmap2_unset_2();
135extern bool_t * pmap2_unset_2_svc();
136#define PMAP2_GETPORT 3
137extern u_int * pmap2_getport_2();
138extern u_int * pmap2_getport_2_svc();
139#define PMAP2_DUMP 4
4edd7830
RS
140extern pmap2_dump_result * pmap2_dump_2();
141extern pmap2_dump_result * pmap2_dump_2_svc();
0f0e352f 142#define PMAP2_CALLIT 5
4edd7830
RS
143extern pmap2_call_result * pmap2_callit_2();
144extern pmap2_call_result * pmap2_callit_2_svc();
763cd6e3
RS
145extern int pmap_program_2_freeresult ();
146#endif /* K&R C */
4edd7830
RS
147#define PMAP_V3 3
148
149#if defined(__STDC__) || defined(__cplusplus)
150#define PMAP3_NULL 0
151extern void * pmap3_null_3(void *, CLIENT *);
152extern void * pmap3_null_3_svc(void *, struct svc_req *);
d731e94c
RS
153#define PMAP3_SET 1
154extern bool_t * pmap3_set_3(pmap3_mapping *, CLIENT *);
155extern bool_t * pmap3_set_3_svc(pmap3_mapping *, struct svc_req *);
156#define PMAP3_UNSET 2
157extern bool_t * pmap3_unset_3(pmap3_mapping *, CLIENT *);
158extern bool_t * pmap3_unset_3_svc(pmap3_mapping *, struct svc_req *);
7fbedfde
RS
159#define PMAP3_GETADDR 3
160extern pmap3_getaddr_result * pmap3_getaddr_3(pmap3_mapping *, CLIENT *);
161extern pmap3_getaddr_result * pmap3_getaddr_3_svc(pmap3_mapping *, struct svc_req *);
4edd7830
RS
162#define PMAP3_DUMP 4
163extern pmap3_dump_result * pmap3_dump_3(void *, CLIENT *);
164extern pmap3_dump_result * pmap3_dump_3_svc(void *, struct svc_req *);
b71f7e82
RS
165#define PMAP3_CALLIT 5
166extern pmap3_call_result * pmap3_callit_3(pmap3_call_args *, CLIENT *);
167extern pmap3_call_result * pmap3_callit_3_svc(pmap3_call_args *, struct svc_req *);
5245608a
RS
168#define PMAP3_GETTIME 6
169extern u_int * pmap3_gettime_3(void *, CLIENT *);
170extern u_int * pmap3_gettime_3_svc(void *, struct svc_req *);
4edd7830
RS
171extern int pmap_program_3_freeresult (SVCXPRT *, zdrproc_t, caddr_t);
172
173#else /* K&R C */
174#define PMAP3_NULL 0
175extern void * pmap3_null_3();
176extern void * pmap3_null_3_svc();
d731e94c
RS
177#define PMAP3_SET 1
178extern bool_t * pmap3_set_3();
179extern bool_t * pmap3_set_3_svc();
180#define PMAP3_UNSET 2
181extern bool_t * pmap3_unset_3();
182extern bool_t * pmap3_unset_3_svc();
7fbedfde
RS
183#define PMAP3_GETADDR 3
184extern pmap3_getaddr_result * pmap3_getaddr_3();
185extern pmap3_getaddr_result * pmap3_getaddr_3_svc();
4edd7830
RS
186#define PMAP3_DUMP 4
187extern pmap3_dump_result * pmap3_dump_3();
188extern pmap3_dump_result * pmap3_dump_3_svc();
b71f7e82
RS
189#define PMAP3_CALLIT 5
190extern pmap3_call_result * pmap3_callit_3();
191extern pmap3_call_result * pmap3_callit_3_svc();
5245608a
RS
192#define PMAP3_GETTIME 6
193extern u_int * pmap3_gettime_3();
194extern u_int * pmap3_gettime_3_svc();
4edd7830
RS
195extern int pmap_program_3_freeresult ();
196#endif /* K&R C */
763cd6e3
RS
197
198/* the zdr functions */
199
200#if defined(__STDC__) || defined(__cplusplus)
4edd7830
RS
201extern bool_t zdr_pmap2_mapping (ZDR *, pmap2_mapping*);
202extern bool_t zdr_pmap2_call_args (ZDR *, pmap2_call_args*);
203extern bool_t zdr_pmap2_call_result (ZDR *, pmap2_call_result*);
204extern bool_t zdr_pmap2_mapping_list (ZDR *, pmap2_mapping_list*);
205extern bool_t zdr_pmap2_dump_result (ZDR *, pmap2_dump_result*);
7fbedfde 206extern bool_t zdr_pmap3_getaddr_result (ZDR *, pmap3_getaddr_result*);
4edd7830
RS
207extern bool_t zdr_pmap3_mapping (ZDR *, pmap3_mapping*);
208extern bool_t zdr_pmap3_mapping_list (ZDR *, pmap3_mapping_list*);
209extern bool_t zdr_pmap3_dump_result (ZDR *, pmap3_dump_result*);
b71f7e82
RS
210extern bool_t zdr_pmap3_call_args (ZDR *, pmap3_call_args*);
211extern bool_t zdr_pmap3_call_result (ZDR *, pmap3_call_result*);
763cd6e3
RS
212
213#else /* K&R C */
4edd7830
RS
214extern bool_t zdr_pmap2_mapping ();
215extern bool_t zdr_pmap2_call_args ();
216extern bool_t zdr_pmap2_call_result ();
217extern bool_t zdr_pmap2_mapping_list ();
218extern bool_t zdr_pmap2_dump_result ();
7fbedfde 219extern bool_t zdr_pmap3_getaddr_result ();
4edd7830
RS
220extern bool_t zdr_pmap3_mapping ();
221extern bool_t zdr_pmap3_mapping_list ();
222extern bool_t zdr_pmap3_dump_result ();
b71f7e82
RS
223extern bool_t zdr_pmap3_call_args ();
224extern bool_t zdr_pmap3_call_result ();
763cd6e3
RS
225
226#endif /* K&R C */
227
228#ifdef __cplusplus
229}
230#endif
231
232#endif /* !_PORTMAP_H_RPCGEN */