Branch oldpackages for 14.07
[14.07/packages.git] / net / openl2tp / src / l2tp_rpc_server.c
1 /*
2  * Please do not edit this file.
3  * It was generated using rpcgen.
4  */
5
6 #include "l2tp_rpc.h"
7 #include <stdio.h>
8 #include <stdlib.h>
9 #include <rpc/pmap_clnt.h>
10 #include <string.h>
11 #include <memory.h>
12 #include <sys/socket.h>
13 #include <netinet/in.h>
14 #include <syslog.h>
15
16 #ifndef SIG_PF
17 #define SIG_PF void(*)(int)
18 #endif
19 #define OPTSTRING(_var) _var.optstring_u.value
20 #define OPTSTRING_PTR(_var) ((_var.valid == 1) ? _var.optstring_u.value : NULL)
21
22 int
23 _l2tp_app_info_get_1 (void  *argp, void *result, struct svc_req *rqstp)
24 {
25         return (l2tp_app_info_get_1_svc(result, rqstp));
26 }
27
28 int
29 _l2tp_system_modify_1 (struct l2tp_api_system_msg_data  *argp, void *result, struct svc_req *rqstp)
30 {
31         return (l2tp_system_modify_1_svc(*argp, result, rqstp));
32 }
33
34 int
35 _l2tp_system_get_1 (void  *argp, void *result, struct svc_req *rqstp)
36 {
37         return (l2tp_system_get_1_svc(result, rqstp));
38 }
39
40 int
41 _l2tp_peer_profile_create_1 (struct l2tp_api_peer_profile_msg_data  *argp, void *result, struct svc_req *rqstp)
42 {
43         return (l2tp_peer_profile_create_1_svc(*argp, result, rqstp));
44 }
45
46 int
47 _l2tp_peer_profile_delete_1 (char * *argp, void *result, struct svc_req *rqstp)
48 {
49         return (l2tp_peer_profile_delete_1_svc(*argp, result, rqstp));
50 }
51
52 int
53 _l2tp_peer_profile_modify_1 (struct l2tp_api_peer_profile_msg_data  *argp, void *result, struct svc_req *rqstp)
54 {
55         return (l2tp_peer_profile_modify_1_svc(*argp, result, rqstp));
56 }
57
58 int
59 _l2tp_peer_profile_get_1 (char * *argp, void *result, struct svc_req *rqstp)
60 {
61         return (l2tp_peer_profile_get_1_svc(*argp, result, rqstp));
62 }
63
64 int
65 _l2tp_peer_profile_list_1 (void  *argp, void *result, struct svc_req *rqstp)
66 {
67         return (l2tp_peer_profile_list_1_svc(result, rqstp));
68 }
69
70 int
71 _l2tp_tunnel_create_1 (struct l2tp_api_tunnel_msg_data  *argp, void *result, struct svc_req *rqstp)
72 {
73         return (l2tp_tunnel_create_1_svc(*argp, result, rqstp));
74 }
75
76 int
77 _l2tp_tunnel_delete_1 (l2tp_tunnel_delete_1_argument *argp, void *result, struct svc_req *rqstp)
78 {
79         return (l2tp_tunnel_delete_1_svc(argp->tunnel_id, argp->tunnel_name, argp->reason, result, rqstp));
80 }
81
82 int
83 _l2tp_tunnel_modify_1 (struct l2tp_api_tunnel_msg_data  *argp, void *result, struct svc_req *rqstp)
84 {
85         return (l2tp_tunnel_modify_1_svc(*argp, result, rqstp));
86 }
87
88 int
89 _l2tp_tunnel_get_1 (l2tp_tunnel_get_1_argument *argp, void *result, struct svc_req *rqstp)
90 {
91         return (l2tp_tunnel_get_1_svc(argp->tunnel_id, argp->tunnel_name, result, rqstp));
92 }
93
94 int
95 _l2tp_tunnel_list_1 (void  *argp, void *result, struct svc_req *rqstp)
96 {
97         return (l2tp_tunnel_list_1_svc(result, rqstp));
98 }
99
100 int
101 _l2tp_tunnel_profile_create_1 (struct l2tp_api_tunnel_profile_msg_data  *argp, void *result, struct svc_req *rqstp)
102 {
103         return (l2tp_tunnel_profile_create_1_svc(*argp, result, rqstp));
104 }
105
106 int
107 _l2tp_tunnel_profile_delete_1 (char * *argp, void *result, struct svc_req *rqstp)
108 {
109         return (l2tp_tunnel_profile_delete_1_svc(*argp, result, rqstp));
110 }
111
112 int
113 _l2tp_tunnel_profile_modify_1 (struct l2tp_api_tunnel_profile_msg_data  *argp, void *result, struct svc_req *rqstp)
114 {
115         return (l2tp_tunnel_profile_modify_1_svc(*argp, result, rqstp));
116 }
117
118 int
119 _l2tp_tunnel_profile_get_1 (char * *argp, void *result, struct svc_req *rqstp)
120 {
121         return (l2tp_tunnel_profile_get_1_svc(*argp, result, rqstp));
122 }
123
124 int
125 _l2tp_tunnel_profile_list_1 (void  *argp, void *result, struct svc_req *rqstp)
126 {
127         return (l2tp_tunnel_profile_list_1_svc(result, rqstp));
128 }
129
130 int
131 _l2tp_session_create_1 (struct l2tp_api_session_msg_data  *argp, void *result, struct svc_req *rqstp)
132 {
133         return (l2tp_session_create_1_svc(*argp, result, rqstp));
134 }
135
136 int
137 _l2tp_session_delete_1 (l2tp_session_delete_1_argument *argp, void *result, struct svc_req *rqstp)
138 {
139         return (l2tp_session_delete_1_svc(argp->tunnel_id, argp->tunnel_name, argp->session_id, argp->session_name, argp->reason, result, rqstp));
140 }
141
142 int
143 _l2tp_session_modify_1 (struct l2tp_api_session_msg_data  *argp, void *result, struct svc_req *rqstp)
144 {
145         return (l2tp_session_modify_1_svc(*argp, result, rqstp));
146 }
147
148 int
149 _l2tp_session_get_1 (l2tp_session_get_1_argument *argp, void *result, struct svc_req *rqstp)
150 {
151         return (l2tp_session_get_1_svc(argp->tunnel_id, argp->tunnel_name, argp->session_id, argp->session_name, result, rqstp));
152 }
153
154 int
155 _l2tp_session_list_1 (l2tp_session_list_1_argument *argp, void *result, struct svc_req *rqstp)
156 {
157         return (l2tp_session_list_1_svc(argp->tunnel_id, argp->tunnel_name, result, rqstp));
158 }
159
160 int
161 _l2tp_session_incall_ind_1 (struct l2tp_api_session_incall_msg_data  *argp, void *result, struct svc_req *rqstp)
162 {
163         return (l2tp_session_incall_ind_1_svc(*argp, result, rqstp));
164 }
165
166 int
167 _l2tp_session_profile_create_1 (struct l2tp_api_session_profile_msg_data  *argp, void *result, struct svc_req *rqstp)
168 {
169         return (l2tp_session_profile_create_1_svc(*argp, result, rqstp));
170 }
171
172 int
173 _l2tp_session_profile_delete_1 (char * *argp, void *result, struct svc_req *rqstp)
174 {
175         return (l2tp_session_profile_delete_1_svc(*argp, result, rqstp));
176 }
177
178 int
179 _l2tp_session_profile_modify_1 (struct l2tp_api_session_profile_msg_data  *argp, void *result, struct svc_req *rqstp)
180 {
181         return (l2tp_session_profile_modify_1_svc(*argp, result, rqstp));
182 }
183
184 int
185 _l2tp_session_profile_get_1 (char * *argp, void *result, struct svc_req *rqstp)
186 {
187         return (l2tp_session_profile_get_1_svc(*argp, result, rqstp));
188 }
189
190 int
191 _l2tp_session_profile_list_1 (void  *argp, void *result, struct svc_req *rqstp)
192 {
193         return (l2tp_session_profile_list_1_svc(result, rqstp));
194 }
195
196 int
197 _l2tp_ppp_profile_create_1 (struct l2tp_api_ppp_profile_msg_data  *argp, void *result, struct svc_req *rqstp)
198 {
199         return (l2tp_ppp_profile_create_1_svc(*argp, result, rqstp));
200 }
201
202 int
203 _l2tp_ppp_profile_delete_1 (char * *argp, void *result, struct svc_req *rqstp)
204 {
205         return (l2tp_ppp_profile_delete_1_svc(*argp, result, rqstp));
206 }
207
208 int
209 _l2tp_ppp_profile_modify_1 (struct l2tp_api_ppp_profile_msg_data  *argp, void *result, struct svc_req *rqstp)
210 {
211         return (l2tp_ppp_profile_modify_1_svc(*argp, result, rqstp));
212 }
213
214 int
215 _l2tp_ppp_profile_get_1 (char * *argp, void *result, struct svc_req *rqstp)
216 {
217         return (l2tp_ppp_profile_get_1_svc(*argp, result, rqstp));
218 }
219
220 int
221 _l2tp_ppp_profile_list_1 (void  *argp, void *result, struct svc_req *rqstp)
222 {
223         return (l2tp_ppp_profile_list_1_svc(result, rqstp));
224 }
225
226 int
227 _l2tp_peer_get_1 (l2tp_peer_get_1_argument *argp, void *result, struct svc_req *rqstp)
228 {
229         return (l2tp_peer_get_1_svc(argp->local_addr, argp->peer_addr, result, rqstp));
230 }
231
232 int
233 _l2tp_peer_list_1 (void  *argp, void *result, struct svc_req *rqstp)
234 {
235         return (l2tp_peer_list_1_svc(result, rqstp));
236 }
237
238 int
239 _l2tp_user_list_1 (void  *argp, void *result, struct svc_req *rqstp)
240 {
241         return (l2tp_user_list_1_svc(result, rqstp));
242 }
243
244 int
245 _l2tp_peer_profile_unset_1 (struct l2tp_api_peer_profile_unset_msg_data  *argp, void *result, struct svc_req *rqstp)
246 {
247         return (l2tp_peer_profile_unset_1_svc(*argp, result, rqstp));
248 }
249
250 int
251 _l2tp_tunnel_profile_unset_1 (struct l2tp_api_tunnel_profile_unset_msg_data  *argp, void *result, struct svc_req *rqstp)
252 {
253         return (l2tp_tunnel_profile_unset_1_svc(*argp, result, rqstp));
254 }
255
256 int
257 _l2tp_session_profile_unset_1 (struct l2tp_api_session_profile_unset_msg_data  *argp, void *result, struct svc_req *rqstp)
258 {
259         return (l2tp_session_profile_unset_1_svc(*argp, result, rqstp));
260 }
261
262 int
263 _l2tp_ppp_profile_unset_1 (struct l2tp_api_ppp_profile_unset_msg_data  *argp, void *result, struct svc_req *rqstp)
264 {
265         return (l2tp_ppp_profile_unset_1_svc(*argp, result, rqstp));
266 }
267
268 int
269 _l2tp_test_log_1 (char * *argp, void *result, struct svc_req *rqstp)
270 {
271         return (l2tp_test_log_1_svc(*argp, result, rqstp));
272 }
273
274 int
275 _l2tp_test_modify_1 (struct l2tp_api_test_msg_data  *argp, void *result, struct svc_req *rqstp)
276 {
277         return (l2tp_test_modify_1_svc(*argp, result, rqstp));
278 }
279
280 int
281 _l2tp_test_get_1 (void  *argp, void *result, struct svc_req *rqstp)
282 {
283         return (l2tp_test_get_1_svc(result, rqstp));
284 }
285
286 void
287 l2tp_prog_1(struct svc_req *rqstp, register SVCXPRT *transp)
288 {
289         union {
290                 struct l2tp_api_system_msg_data l2tp_system_modify_1_arg;
291                 struct l2tp_api_peer_profile_msg_data l2tp_peer_profile_create_1_arg;
292                 char *l2tp_peer_profile_delete_1_arg;
293                 struct l2tp_api_peer_profile_msg_data l2tp_peer_profile_modify_1_arg;
294                 char *l2tp_peer_profile_get_1_arg;
295                 struct l2tp_api_tunnel_msg_data l2tp_tunnel_create_1_arg;
296                 l2tp_tunnel_delete_1_argument l2tp_tunnel_delete_1_arg;
297                 struct l2tp_api_tunnel_msg_data l2tp_tunnel_modify_1_arg;
298                 l2tp_tunnel_get_1_argument l2tp_tunnel_get_1_arg;
299                 struct l2tp_api_tunnel_profile_msg_data l2tp_tunnel_profile_create_1_arg;
300                 char *l2tp_tunnel_profile_delete_1_arg;
301                 struct l2tp_api_tunnel_profile_msg_data l2tp_tunnel_profile_modify_1_arg;
302                 char *l2tp_tunnel_profile_get_1_arg;
303                 struct l2tp_api_session_msg_data l2tp_session_create_1_arg;
304                 l2tp_session_delete_1_argument l2tp_session_delete_1_arg;
305                 struct l2tp_api_session_msg_data l2tp_session_modify_1_arg;
306                 l2tp_session_get_1_argument l2tp_session_get_1_arg;
307                 l2tp_session_list_1_argument l2tp_session_list_1_arg;
308                 struct l2tp_api_session_incall_msg_data l2tp_session_incall_ind_1_arg;
309                 struct l2tp_api_session_profile_msg_data l2tp_session_profile_create_1_arg;
310                 char *l2tp_session_profile_delete_1_arg;
311                 struct l2tp_api_session_profile_msg_data l2tp_session_profile_modify_1_arg;
312                 char *l2tp_session_profile_get_1_arg;
313                 struct l2tp_api_ppp_profile_msg_data l2tp_ppp_profile_create_1_arg;
314                 char *l2tp_ppp_profile_delete_1_arg;
315                 struct l2tp_api_ppp_profile_msg_data l2tp_ppp_profile_modify_1_arg;
316                 char *l2tp_ppp_profile_get_1_arg;
317                 l2tp_peer_get_1_argument l2tp_peer_get_1_arg;
318                 struct l2tp_api_peer_profile_unset_msg_data l2tp_peer_profile_unset_1_arg;
319                 struct l2tp_api_tunnel_profile_unset_msg_data l2tp_tunnel_profile_unset_1_arg;
320                 struct l2tp_api_session_profile_unset_msg_data l2tp_session_profile_unset_1_arg;
321                 struct l2tp_api_ppp_profile_unset_msg_data l2tp_ppp_profile_unset_1_arg;
322                 char *l2tp_test_log_1_arg;
323                 struct l2tp_api_test_msg_data l2tp_test_modify_1_arg;
324         } argument;
325         union {
326                 struct l2tp_api_app_msg_data l2tp_app_info_get_1_res;
327                 int l2tp_system_modify_1_res;
328                 struct l2tp_api_system_msg_data l2tp_system_get_1_res;
329                 int l2tp_peer_profile_create_1_res;
330                 int l2tp_peer_profile_delete_1_res;
331                 int l2tp_peer_profile_modify_1_res;
332                 struct l2tp_api_peer_profile_msg_data l2tp_peer_profile_get_1_res;
333                 struct l2tp_api_peer_profile_list_msg_data l2tp_peer_profile_list_1_res;
334                 int l2tp_tunnel_create_1_res;
335                 int l2tp_tunnel_delete_1_res;
336                 int l2tp_tunnel_modify_1_res;
337                 struct l2tp_api_tunnel_msg_data l2tp_tunnel_get_1_res;
338                 struct l2tp_api_tunnel_list_msg_data l2tp_tunnel_list_1_res;
339                 int l2tp_tunnel_profile_create_1_res;
340                 int l2tp_tunnel_profile_delete_1_res;
341                 int l2tp_tunnel_profile_modify_1_res;
342                 struct l2tp_api_tunnel_profile_msg_data l2tp_tunnel_profile_get_1_res;
343                 struct l2tp_api_tunnel_profile_list_msg_data l2tp_tunnel_profile_list_1_res;
344                 int l2tp_session_create_1_res;
345                 int l2tp_session_delete_1_res;
346                 int l2tp_session_modify_1_res;
347                 struct l2tp_api_session_msg_data l2tp_session_get_1_res;
348                 struct l2tp_api_session_list_msg_data l2tp_session_list_1_res;
349                 int l2tp_session_incall_ind_1_res;
350                 int l2tp_session_profile_create_1_res;
351                 int l2tp_session_profile_delete_1_res;
352                 int l2tp_session_profile_modify_1_res;
353                 struct l2tp_api_session_profile_msg_data l2tp_session_profile_get_1_res;
354                 struct l2tp_api_session_profile_list_msg_data l2tp_session_profile_list_1_res;
355                 int l2tp_ppp_profile_create_1_res;
356                 int l2tp_ppp_profile_delete_1_res;
357                 int l2tp_ppp_profile_modify_1_res;
358                 struct l2tp_api_ppp_profile_msg_data l2tp_ppp_profile_get_1_res;
359                 struct l2tp_api_ppp_profile_list_msg_data l2tp_ppp_profile_list_1_res;
360                 struct l2tp_api_peer_msg_data l2tp_peer_get_1_res;
361                 struct l2tp_api_peer_list_msg_data l2tp_peer_list_1_res;
362                 struct l2tp_api_user_list_msg_data l2tp_user_list_1_res;
363                 int l2tp_peer_profile_unset_1_res;
364                 int l2tp_tunnel_profile_unset_1_res;
365                 int l2tp_session_profile_unset_1_res;
366                 int l2tp_ppp_profile_unset_1_res;
367                 int l2tp_test_log_1_res;
368                 int l2tp_test_modify_1_res;
369                 struct l2tp_api_test_msg_data l2tp_test_get_1_res;
370         } result;
371         bool_t retval;
372         xdrproc_t _xdr_argument, _xdr_result;
373         bool_t (*local)(char *, void *, struct svc_req *);
374
375         if (l2tp_api_rpc_check_request(transp) < 0) return; switch (rqstp->rq_proc) {
376         case NULLPROC:
377                 (void) svc_sendreply (transp, (xdrproc_t) xdr_void, (char *)NULL);
378                 return;
379
380         case L2TP_APP_INFO_GET:
381                 _xdr_argument = (xdrproc_t) xdr_void;
382                 _xdr_result = (xdrproc_t) xdr_l2tp_api_app_msg_data;
383                 local = (bool_t (*) (char *, void *,  struct svc_req *))_l2tp_app_info_get_1;
384                 break;
385
386         case L2TP_SYSTEM_MODIFY:
387                 _xdr_argument = (xdrproc_t) xdr_l2tp_api_system_msg_data;
388                 _xdr_result = (xdrproc_t) xdr_int;
389                 local = (bool_t (*) (char *, void *,  struct svc_req *))_l2tp_system_modify_1;
390                 break;
391
392         case L2TP_SYSTEM_GET:
393                 _xdr_argument = (xdrproc_t) xdr_void;
394                 _xdr_result = (xdrproc_t) xdr_l2tp_api_system_msg_data;
395                 local = (bool_t (*) (char *, void *,  struct svc_req *))_l2tp_system_get_1;
396                 break;
397
398         case L2TP_PEER_PROFILE_CREATE:
399                 _xdr_argument = (xdrproc_t) xdr_l2tp_api_peer_profile_msg_data;
400                 _xdr_result = (xdrproc_t) xdr_int;
401                 local = (bool_t (*) (char *, void *,  struct svc_req *))_l2tp_peer_profile_create_1;
402                 break;
403
404         case L2TP_PEER_PROFILE_DELETE:
405                 _xdr_argument = (xdrproc_t) xdr_wrapstring;
406                 _xdr_result = (xdrproc_t) xdr_int;
407                 local = (bool_t (*) (char *, void *,  struct svc_req *))_l2tp_peer_profile_delete_1;
408                 break;
409
410         case L2TP_PEER_PROFILE_MODIFY:
411                 _xdr_argument = (xdrproc_t) xdr_l2tp_api_peer_profile_msg_data;
412                 _xdr_result = (xdrproc_t) xdr_int;
413                 local = (bool_t (*) (char *, void *,  struct svc_req *))_l2tp_peer_profile_modify_1;
414                 break;
415
416         case L2TP_PEER_PROFILE_GET:
417                 _xdr_argument = (xdrproc_t) xdr_wrapstring;
418                 _xdr_result = (xdrproc_t) xdr_l2tp_api_peer_profile_msg_data;
419                 local = (bool_t (*) (char *, void *,  struct svc_req *))_l2tp_peer_profile_get_1;
420                 break;
421
422         case L2TP_PEER_PROFILE_LIST:
423                 _xdr_argument = (xdrproc_t) xdr_void;
424                 _xdr_result = (xdrproc_t) xdr_l2tp_api_peer_profile_list_msg_data;
425                 local = (bool_t (*) (char *, void *,  struct svc_req *))_l2tp_peer_profile_list_1;
426                 break;
427
428         case L2TP_TUNNEL_CREATE:
429                 _xdr_argument = (xdrproc_t) xdr_l2tp_api_tunnel_msg_data;
430                 _xdr_result = (xdrproc_t) xdr_int;
431                 local = (bool_t (*) (char *, void *,  struct svc_req *))_l2tp_tunnel_create_1;
432                 break;
433
434         case L2TP_TUNNEL_DELETE:
435                 _xdr_argument = (xdrproc_t) xdr_l2tp_tunnel_delete_1_argument;
436                 _xdr_result = (xdrproc_t) xdr_int;
437                 local = (bool_t (*) (char *, void *,  struct svc_req *))_l2tp_tunnel_delete_1;
438                 break;
439
440         case L2TP_TUNNEL_MODIFY:
441                 _xdr_argument = (xdrproc_t) xdr_l2tp_api_tunnel_msg_data;
442                 _xdr_result = (xdrproc_t) xdr_int;
443                 local = (bool_t (*) (char *, void *,  struct svc_req *))_l2tp_tunnel_modify_1;
444                 break;
445
446         case L2TP_TUNNEL_GET:
447                 _xdr_argument = (xdrproc_t) xdr_l2tp_tunnel_get_1_argument;
448                 _xdr_result = (xdrproc_t) xdr_l2tp_api_tunnel_msg_data;
449                 local = (bool_t (*) (char *, void *,  struct svc_req *))_l2tp_tunnel_get_1;
450                 break;
451
452         case L2TP_TUNNEL_LIST:
453                 _xdr_argument = (xdrproc_t) xdr_void;
454                 _xdr_result = (xdrproc_t) xdr_l2tp_api_tunnel_list_msg_data;
455                 local = (bool_t (*) (char *, void *,  struct svc_req *))_l2tp_tunnel_list_1;
456                 break;
457
458         case L2TP_TUNNEL_PROFILE_CREATE:
459                 _xdr_argument = (xdrproc_t) xdr_l2tp_api_tunnel_profile_msg_data;
460                 _xdr_result = (xdrproc_t) xdr_int;
461                 local = (bool_t (*) (char *, void *,  struct svc_req *))_l2tp_tunnel_profile_create_1;
462                 break;
463
464         case L2TP_TUNNEL_PROFILE_DELETE:
465                 _xdr_argument = (xdrproc_t) xdr_wrapstring;
466                 _xdr_result = (xdrproc_t) xdr_int;
467                 local = (bool_t (*) (char *, void *,  struct svc_req *))_l2tp_tunnel_profile_delete_1;
468                 break;
469
470         case L2TP_TUNNEL_PROFILE_MODIFY:
471                 _xdr_argument = (xdrproc_t) xdr_l2tp_api_tunnel_profile_msg_data;
472                 _xdr_result = (xdrproc_t) xdr_int;
473                 local = (bool_t (*) (char *, void *,  struct svc_req *))_l2tp_tunnel_profile_modify_1;
474                 break;
475
476         case L2TP_TUNNEL_PROFILE_GET:
477                 _xdr_argument = (xdrproc_t) xdr_wrapstring;
478                 _xdr_result = (xdrproc_t) xdr_l2tp_api_tunnel_profile_msg_data;
479                 local = (bool_t (*) (char *, void *,  struct svc_req *))_l2tp_tunnel_profile_get_1;
480                 break;
481
482         case L2TP_TUNNEL_PROFILE_LIST:
483                 _xdr_argument = (xdrproc_t) xdr_void;
484                 _xdr_result = (xdrproc_t) xdr_l2tp_api_tunnel_profile_list_msg_data;
485                 local = (bool_t (*) (char *, void *,  struct svc_req *))_l2tp_tunnel_profile_list_1;
486                 break;
487
488         case L2TP_SESSION_CREATE:
489                 _xdr_argument = (xdrproc_t) xdr_l2tp_api_session_msg_data;
490                 _xdr_result = (xdrproc_t) xdr_int;
491                 local = (bool_t (*) (char *, void *,  struct svc_req *))_l2tp_session_create_1;
492                 break;
493
494         case L2TP_SESSION_DELETE:
495                 _xdr_argument = (xdrproc_t) xdr_l2tp_session_delete_1_argument;
496                 _xdr_result = (xdrproc_t) xdr_int;
497                 local = (bool_t (*) (char *, void *,  struct svc_req *))_l2tp_session_delete_1;
498                 break;
499
500         case L2TP_SESSION_MODIFY:
501                 _xdr_argument = (xdrproc_t) xdr_l2tp_api_session_msg_data;
502                 _xdr_result = (xdrproc_t) xdr_int;
503                 local = (bool_t (*) (char *, void *,  struct svc_req *))_l2tp_session_modify_1;
504                 break;
505
506         case L2TP_SESSION_GET:
507                 _xdr_argument = (xdrproc_t) xdr_l2tp_session_get_1_argument;
508                 _xdr_result = (xdrproc_t) xdr_l2tp_api_session_msg_data;
509                 local = (bool_t (*) (char *, void *,  struct svc_req *))_l2tp_session_get_1;
510                 break;
511
512         case L2TP_SESSION_LIST:
513                 _xdr_argument = (xdrproc_t) xdr_l2tp_session_list_1_argument;
514                 _xdr_result = (xdrproc_t) xdr_l2tp_api_session_list_msg_data;
515                 local = (bool_t (*) (char *, void *,  struct svc_req *))_l2tp_session_list_1;
516                 break;
517
518         case L2TP_SESSION_INCALL_IND:
519                 _xdr_argument = (xdrproc_t) xdr_l2tp_api_session_incall_msg_data;
520                 _xdr_result = (xdrproc_t) xdr_int;
521                 local = (bool_t (*) (char *, void *,  struct svc_req *))_l2tp_session_incall_ind_1;
522                 break;
523
524         case L2TP_SESSION_PROFILE_CREATE:
525                 _xdr_argument = (xdrproc_t) xdr_l2tp_api_session_profile_msg_data;
526                 _xdr_result = (xdrproc_t) xdr_int;
527                 local = (bool_t (*) (char *, void *,  struct svc_req *))_l2tp_session_profile_create_1;
528                 break;
529
530         case L2TP_SESSION_PROFILE_DELETE:
531                 _xdr_argument = (xdrproc_t) xdr_wrapstring;
532                 _xdr_result = (xdrproc_t) xdr_int;
533                 local = (bool_t (*) (char *, void *,  struct svc_req *))_l2tp_session_profile_delete_1;
534                 break;
535
536         case L2TP_SESSION_PROFILE_MODIFY:
537                 _xdr_argument = (xdrproc_t) xdr_l2tp_api_session_profile_msg_data;
538                 _xdr_result = (xdrproc_t) xdr_int;
539                 local = (bool_t (*) (char *, void *,  struct svc_req *))_l2tp_session_profile_modify_1;
540                 break;
541
542         case L2TP_SESSION_PROFILE_GET:
543                 _xdr_argument = (xdrproc_t) xdr_wrapstring;
544                 _xdr_result = (xdrproc_t) xdr_l2tp_api_session_profile_msg_data;
545                 local = (bool_t (*) (char *, void *,  struct svc_req *))_l2tp_session_profile_get_1;
546                 break;
547
548         case L2TP_SESSION_PROFILE_LIST:
549                 _xdr_argument = (xdrproc_t) xdr_void;
550                 _xdr_result = (xdrproc_t) xdr_l2tp_api_session_profile_list_msg_data;
551                 local = (bool_t (*) (char *, void *,  struct svc_req *))_l2tp_session_profile_list_1;
552                 break;
553
554         case L2TP_PPP_PROFILE_CREATE:
555                 _xdr_argument = (xdrproc_t) xdr_l2tp_api_ppp_profile_msg_data;
556                 _xdr_result = (xdrproc_t) xdr_int;
557                 local = (bool_t (*) (char *, void *,  struct svc_req *))_l2tp_ppp_profile_create_1;
558                 break;
559
560         case L2TP_PPP_PROFILE_DELETE:
561                 _xdr_argument = (xdrproc_t) xdr_wrapstring;
562                 _xdr_result = (xdrproc_t) xdr_int;
563                 local = (bool_t (*) (char *, void *,  struct svc_req *))_l2tp_ppp_profile_delete_1;
564                 break;
565
566         case L2TP_PPP_PROFILE_MODIFY:
567                 _xdr_argument = (xdrproc_t) xdr_l2tp_api_ppp_profile_msg_data;
568                 _xdr_result = (xdrproc_t) xdr_int;
569                 local = (bool_t (*) (char *, void *,  struct svc_req *))_l2tp_ppp_profile_modify_1;
570                 break;
571
572         case L2TP_PPP_PROFILE_GET:
573                 _xdr_argument = (xdrproc_t) xdr_wrapstring;
574                 _xdr_result = (xdrproc_t) xdr_l2tp_api_ppp_profile_msg_data;
575                 local = (bool_t (*) (char *, void *,  struct svc_req *))_l2tp_ppp_profile_get_1;
576                 break;
577
578         case L2TP_PPP_PROFILE_LIST:
579                 _xdr_argument = (xdrproc_t) xdr_void;
580                 _xdr_result = (xdrproc_t) xdr_l2tp_api_ppp_profile_list_msg_data;
581                 local = (bool_t (*) (char *, void *,  struct svc_req *))_l2tp_ppp_profile_list_1;
582                 break;
583
584         case L2TP_PEER_GET:
585                 _xdr_argument = (xdrproc_t) xdr_l2tp_peer_get_1_argument;
586                 _xdr_result = (xdrproc_t) xdr_l2tp_api_peer_msg_data;
587                 local = (bool_t (*) (char *, void *,  struct svc_req *))_l2tp_peer_get_1;
588                 break;
589
590         case L2TP_PEER_LIST:
591                 _xdr_argument = (xdrproc_t) xdr_void;
592                 _xdr_result = (xdrproc_t) xdr_l2tp_api_peer_list_msg_data;
593                 local = (bool_t (*) (char *, void *,  struct svc_req *))_l2tp_peer_list_1;
594                 break;
595
596         case L2TP_USER_LIST:
597                 _xdr_argument = (xdrproc_t) xdr_void;
598                 _xdr_result = (xdrproc_t) xdr_l2tp_api_user_list_msg_data;
599                 local = (bool_t (*) (char *, void *,  struct svc_req *))_l2tp_user_list_1;
600                 break;
601
602         case L2TP_PEER_PROFILE_UNSET:
603                 _xdr_argument = (xdrproc_t) xdr_l2tp_api_peer_profile_unset_msg_data;
604                 _xdr_result = (xdrproc_t) xdr_int;
605                 local = (bool_t (*) (char *, void *,  struct svc_req *))_l2tp_peer_profile_unset_1;
606                 break;
607
608         case L2TP_TUNNEL_PROFILE_UNSET:
609                 _xdr_argument = (xdrproc_t) xdr_l2tp_api_tunnel_profile_unset_msg_data;
610                 _xdr_result = (xdrproc_t) xdr_int;
611                 local = (bool_t (*) (char *, void *,  struct svc_req *))_l2tp_tunnel_profile_unset_1;
612                 break;
613
614         case L2TP_SESSION_PROFILE_UNSET:
615                 _xdr_argument = (xdrproc_t) xdr_l2tp_api_session_profile_unset_msg_data;
616                 _xdr_result = (xdrproc_t) xdr_int;
617                 local = (bool_t (*) (char *, void *,  struct svc_req *))_l2tp_session_profile_unset_1;
618                 break;
619
620         case L2TP_PPP_PROFILE_UNSET:
621                 _xdr_argument = (xdrproc_t) xdr_l2tp_api_ppp_profile_unset_msg_data;
622                 _xdr_result = (xdrproc_t) xdr_int;
623                 local = (bool_t (*) (char *, void *,  struct svc_req *))_l2tp_ppp_profile_unset_1;
624                 break;
625
626         case L2TP_TEST_LOG:
627                 _xdr_argument = (xdrproc_t) xdr_wrapstring;
628                 _xdr_result = (xdrproc_t) xdr_int;
629                 local = (bool_t (*) (char *, void *,  struct svc_req *))_l2tp_test_log_1;
630                 break;
631
632         case L2TP_TEST_MODIFY:
633                 _xdr_argument = (xdrproc_t) xdr_l2tp_api_test_msg_data;
634                 _xdr_result = (xdrproc_t) xdr_int;
635                 local = (bool_t (*) (char *, void *,  struct svc_req *))_l2tp_test_modify_1;
636                 break;
637
638         case L2TP_TEST_GET:
639                 _xdr_argument = (xdrproc_t) xdr_void;
640                 _xdr_result = (xdrproc_t) xdr_l2tp_api_test_msg_data;
641                 local = (bool_t (*) (char *, void *,  struct svc_req *))_l2tp_test_get_1;
642                 break;
643
644         default:
645                 svcerr_noproc (transp);
646                 return;
647         }
648         memset ((char *)&argument, 0, sizeof (argument));
649         if (!svc_getargs (transp, (xdrproc_t) _xdr_argument, (caddr_t) &argument)) {
650                 svcerr_decode (transp);
651                 return;
652         }
653         retval = (bool_t) (*local)((char *)&argument, (void *)&result, rqstp);
654         if (retval > 0 && !svc_sendreply(transp, (xdrproc_t) _xdr_result, (char *)&result)) {
655                 svcerr_systemerr (transp);
656         }
657         if (!svc_freeargs (transp, (xdrproc_t) _xdr_argument, (caddr_t) &argument)) {
658                 syslog (LOG_ERR, "%s", "unable to free arguments");
659                 exit (1);
660         }
661         if (!l2tp_prog_1_freeresult (transp, _xdr_result, (caddr_t) &result))
662                 syslog (LOG_ERR, "%s", "unable to free results");
663
664         return;
665 }