PORTMAPv3: Add NULL and DUMP commands. Also add portmap example client.
[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
57struct pmap3_mapping {
58 u_int prog;
59 u_int vers;
60 char *netid;
61 char *addr;
62 char *owner;
63};
64typedef struct pmap3_mapping pmap3_mapping;
65
66struct pmap3_mapping_list {
67 pmap3_mapping map;
68 struct pmap3_mapping_list *next;
69};
70typedef struct pmap3_mapping_list pmap3_mapping_list;
71
72struct pmap3_dump_result {
73 struct pmap3_mapping_list *list;
74};
75typedef struct pmap3_dump_result pmap3_dump_result;
8ae943f6 76
763cd6e3
RS
77#define PMAP_PROGRAM 100000
78#define PMAP_V2 2
79
80#if defined(__STDC__) || defined(__cplusplus)
0f0e352f
RS
81#define PMAP2_NULL 0
82extern void * pmap2_null_2(void *, CLIENT *);
83extern void * pmap2_null_2_svc(void *, struct svc_req *);
84#define PMAP2_SET 1
4edd7830
RS
85extern bool_t * pmap2_set_2(pmap2_mapping *, CLIENT *);
86extern bool_t * pmap2_set_2_svc(pmap2_mapping *, struct svc_req *);
0f0e352f 87#define PMAP2_UNSET 2
4edd7830
RS
88extern bool_t * pmap2_unset_2(pmap2_mapping *, CLIENT *);
89extern bool_t * pmap2_unset_2_svc(pmap2_mapping *, struct svc_req *);
0f0e352f 90#define PMAP2_GETPORT 3
4edd7830
RS
91extern u_int * pmap2_getport_2(pmap2_mapping *, CLIENT *);
92extern u_int * pmap2_getport_2_svc(pmap2_mapping *, struct svc_req *);
0f0e352f 93#define PMAP2_DUMP 4
4edd7830
RS
94extern pmap2_dump_result * pmap2_dump_2(void *, CLIENT *);
95extern pmap2_dump_result * pmap2_dump_2_svc(void *, struct svc_req *);
0f0e352f 96#define PMAP2_CALLIT 5
4edd7830
RS
97extern pmap2_call_result * pmap2_callit_2(pmap2_call_args *, CLIENT *);
98extern pmap2_call_result * pmap2_callit_2_svc(pmap2_call_args *, struct svc_req *);
763cd6e3
RS
99extern int pmap_program_2_freeresult (SVCXPRT *, zdrproc_t, caddr_t);
100
101#else /* K&R C */
0f0e352f
RS
102#define PMAP2_NULL 0
103extern void * pmap2_null_2();
104extern void * pmap2_null_2_svc();
105#define PMAP2_SET 1
106extern bool_t * pmap2_set_2();
107extern bool_t * pmap2_set_2_svc();
108#define PMAP2_UNSET 2
109extern bool_t * pmap2_unset_2();
110extern bool_t * pmap2_unset_2_svc();
111#define PMAP2_GETPORT 3
112extern u_int * pmap2_getport_2();
113extern u_int * pmap2_getport_2_svc();
114#define PMAP2_DUMP 4
4edd7830
RS
115extern pmap2_dump_result * pmap2_dump_2();
116extern pmap2_dump_result * pmap2_dump_2_svc();
0f0e352f 117#define PMAP2_CALLIT 5
4edd7830
RS
118extern pmap2_call_result * pmap2_callit_2();
119extern pmap2_call_result * pmap2_callit_2_svc();
763cd6e3
RS
120extern int pmap_program_2_freeresult ();
121#endif /* K&R C */
4edd7830
RS
122#define PMAP_V3 3
123
124#if defined(__STDC__) || defined(__cplusplus)
125#define PMAP3_NULL 0
126extern void * pmap3_null_3(void *, CLIENT *);
127extern void * pmap3_null_3_svc(void *, struct svc_req *);
128#define PMAP3_DUMP 4
129extern pmap3_dump_result * pmap3_dump_3(void *, CLIENT *);
130extern pmap3_dump_result * pmap3_dump_3_svc(void *, struct svc_req *);
131extern int pmap_program_3_freeresult (SVCXPRT *, zdrproc_t, caddr_t);
132
133#else /* K&R C */
134#define PMAP3_NULL 0
135extern void * pmap3_null_3();
136extern void * pmap3_null_3_svc();
137#define PMAP3_DUMP 4
138extern pmap3_dump_result * pmap3_dump_3();
139extern pmap3_dump_result * pmap3_dump_3_svc();
140extern int pmap_program_3_freeresult ();
141#endif /* K&R C */
763cd6e3
RS
142
143/* the zdr functions */
144
145#if defined(__STDC__) || defined(__cplusplus)
4edd7830
RS
146extern bool_t zdr_pmap2_mapping (ZDR *, pmap2_mapping*);
147extern bool_t zdr_pmap2_call_args (ZDR *, pmap2_call_args*);
148extern bool_t zdr_pmap2_call_result (ZDR *, pmap2_call_result*);
149extern bool_t zdr_pmap2_mapping_list (ZDR *, pmap2_mapping_list*);
150extern bool_t zdr_pmap2_dump_result (ZDR *, pmap2_dump_result*);
151extern bool_t zdr_pmap3_mapping (ZDR *, pmap3_mapping*);
152extern bool_t zdr_pmap3_mapping_list (ZDR *, pmap3_mapping_list*);
153extern bool_t zdr_pmap3_dump_result (ZDR *, pmap3_dump_result*);
763cd6e3
RS
154
155#else /* K&R C */
4edd7830
RS
156extern bool_t zdr_pmap2_mapping ();
157extern bool_t zdr_pmap2_call_args ();
158extern bool_t zdr_pmap2_call_result ();
159extern bool_t zdr_pmap2_mapping_list ();
160extern bool_t zdr_pmap2_dump_result ();
161extern bool_t zdr_pmap3_mapping ();
162extern bool_t zdr_pmap3_mapping_list ();
163extern bool_t zdr_pmap3_dump_result ();
763cd6e3
RS
164
165#endif /* K&R C */
166
167#ifdef __cplusplus
168}
169#endif
170
171#endif /* !_PORTMAP_H_RPCGEN */