xref: /csrg-svn/usr.sbin/amd/rpcx/amq_clnt.c (revision 44928)
1*44928Smckusick /*
2*44928Smckusick  * $Id: amq_clnt.c,v 5.2 90/06/23 22:20:16 jsp Rel $
3*44928Smckusick  *
4*44928Smckusick  * Copyright (c) 1990 Jan-Simon Pendry
5*44928Smckusick  * Copyright (c) 1990 Imperial College of Science, Technology & Medicine
6*44928Smckusick  * Copyright (c) 1990 The Regents of the University of California.
7*44928Smckusick  * All rights reserved.
8*44928Smckusick  *
9*44928Smckusick  * This code is derived from software contributed to Berkeley by
10*44928Smckusick  * Jan-Simon Pendry at Imperial College, London.
11*44928Smckusick  *
12*44928Smckusick  * %sccs.include.redist.c%
13*44928Smckusick  *
14*44928Smckusick  *	@(#)amq_clnt.c	5.1 (Berkeley) 07/19/90
15*44928Smckusick  */
16*44928Smckusick 
17*44928Smckusick #include "am.h"
18*44928Smckusick #include "amq.h"
19*44928Smckusick 
20*44928Smckusick /* Default timeout can be changed using clnt_control() */
21*44928Smckusick static struct timeval TIMEOUT = { 25, 0 };
22*44928Smckusick 
23*44928Smckusick voidp
24*44928Smckusick amqproc_null_1(argp, clnt)
25*44928Smckusick 	voidp argp;
26*44928Smckusick 	CLIENT *clnt;
27*44928Smckusick {
28*44928Smckusick 	static char res;
29*44928Smckusick 
30*44928Smckusick 	bzero((char *)&res, sizeof(res));
31*44928Smckusick 	if (clnt_call(clnt, AMQPROC_NULL, xdr_void, argp, xdr_void, &res, TIMEOUT) != RPC_SUCCESS) {
32*44928Smckusick 		return (NULL);
33*44928Smckusick 	}
34*44928Smckusick 	return ((voidp)&res);
35*44928Smckusick }
36*44928Smckusick 
37*44928Smckusick 
38*44928Smckusick amq_mount_tree_p *
39*44928Smckusick amqproc_mnttree_1(argp, clnt)
40*44928Smckusick 	amq_string *argp;
41*44928Smckusick 	CLIENT *clnt;
42*44928Smckusick {
43*44928Smckusick 	static amq_mount_tree_p res;
44*44928Smckusick 
45*44928Smckusick 	bzero((char *)&res, sizeof(res));
46*44928Smckusick 	if (clnt_call(clnt, AMQPROC_MNTTREE, xdr_amq_string, argp, xdr_amq_mount_tree_p, &res, TIMEOUT) != RPC_SUCCESS) {
47*44928Smckusick 		return (NULL);
48*44928Smckusick 	}
49*44928Smckusick 	return (&res);
50*44928Smckusick }
51*44928Smckusick 
52*44928Smckusick 
53*44928Smckusick voidp
54*44928Smckusick amqproc_umnt_1(argp, clnt)
55*44928Smckusick 	amq_string *argp;
56*44928Smckusick 	CLIENT *clnt;
57*44928Smckusick {
58*44928Smckusick 	static char res;
59*44928Smckusick 
60*44928Smckusick 	bzero((char *)&res, sizeof(res));
61*44928Smckusick 	if (clnt_call(clnt, AMQPROC_UMNT, xdr_amq_string, argp, xdr_void, &res, TIMEOUT) != RPC_SUCCESS) {
62*44928Smckusick 		return (NULL);
63*44928Smckusick 	}
64*44928Smckusick 	return ((voidp)&res);
65*44928Smckusick }
66*44928Smckusick 
67*44928Smckusick 
68*44928Smckusick amq_mount_stats *
69*44928Smckusick amqproc_stats_1(argp, clnt)
70*44928Smckusick 	voidp argp;
71*44928Smckusick 	CLIENT *clnt;
72*44928Smckusick {
73*44928Smckusick 	static amq_mount_stats res;
74*44928Smckusick 
75*44928Smckusick 	bzero((char *)&res, sizeof(res));
76*44928Smckusick 	if (clnt_call(clnt, AMQPROC_STATS, xdr_void, argp, xdr_amq_mount_stats, &res, TIMEOUT) != RPC_SUCCESS) {
77*44928Smckusick 		return (NULL);
78*44928Smckusick 	}
79*44928Smckusick 	return (&res);
80*44928Smckusick }
81*44928Smckusick 
82*44928Smckusick 
83*44928Smckusick amq_mount_tree_list *
84*44928Smckusick amqproc_export_1(argp, clnt)
85*44928Smckusick 	voidp argp;
86*44928Smckusick 	CLIENT *clnt;
87*44928Smckusick {
88*44928Smckusick 	static amq_mount_tree_list res;
89*44928Smckusick 
90*44928Smckusick 	bzero((char *)&res, sizeof(res));
91*44928Smckusick 	if (clnt_call(clnt, AMQPROC_EXPORT, xdr_void, argp, xdr_amq_mount_tree_list, &res, TIMEOUT) != RPC_SUCCESS) {
92*44928Smckusick 		return (NULL);
93*44928Smckusick 	}
94*44928Smckusick 	return (&res);
95*44928Smckusick }
96*44928Smckusick 
97*44928Smckusick int *
98*44928Smckusick amqproc_setopt_1(argp, clnt)
99*44928Smckusick 	amq_setopt *argp;
100*44928Smckusick 	CLIENT *clnt;
101*44928Smckusick {
102*44928Smckusick 	static int res;
103*44928Smckusick 
104*44928Smckusick 	bzero((char *)&res, sizeof(res));
105*44928Smckusick 	if (clnt_call(clnt, AMQPROC_SETOPT, xdr_amq_setopt, argp, xdr_int, &res, TIMEOUT) != RPC_SUCCESS) {
106*44928Smckusick 		return (NULL);
107*44928Smckusick 	}
108*44928Smckusick 	return (&res);
109*44928Smckusick }
110*44928Smckusick 
111*44928Smckusick 
112*44928Smckusick amq_mount_info_list *
113*44928Smckusick amqproc_getmntfs_1(argp, clnt)
114*44928Smckusick 	voidp argp;
115*44928Smckusick 	CLIENT *clnt;
116*44928Smckusick {
117*44928Smckusick 	static amq_mount_info_list res;
118*44928Smckusick 
119*44928Smckusick 	bzero((char *)&res, sizeof(res));
120*44928Smckusick 	if (clnt_call(clnt, AMQPROC_GETMNTFS, xdr_void, argp, xdr_amq_mount_info_list, &res, TIMEOUT) != RPC_SUCCESS) {
121*44928Smckusick 		return (NULL);
122*44928Smckusick 	}
123*44928Smckusick 	return (&res);
124*44928Smckusick }
125*44928Smckusick 
126