xref: /dragonfly/usr.sbin/rpc.lockd/test.c (revision 86d7f5d3)
1*86d7f5d3SJohn Marino /*
2*86d7f5d3SJohn Marino  * @(#)nlm_prot.x 1.8 87/09/21 Copyr 1987 Sun Micro
3*86d7f5d3SJohn Marino  * @(#)nlm_prot.x	2.1 88/08/01 4.0 RPCSRC
4*86d7f5d3SJohn Marino  * $NetBSD: test.c,v 1.2 1997/10/18 04:01:21 lukem Exp $
5*86d7f5d3SJohn Marino  * $FreeBSD: src/usr.sbin/rpc.lockd/test.c,v 1.5 2001/03/19 12:50:09 alfred Exp $
6*86d7f5d3SJohn Marino  * $DragonFly: src/usr.sbin/rpc.lockd/test.c,v 1.3 2005/11/25 00:32:49 swildner Exp $
7*86d7f5d3SJohn Marino  */
8*86d7f5d3SJohn Marino 
9*86d7f5d3SJohn Marino #include <rpc/rpc.h>
10*86d7f5d3SJohn Marino #include <rpcsvc/nlm_prot.h>
11*86d7f5d3SJohn Marino 
12*86d7f5d3SJohn Marino /* Default timeout can be changed using clnt_control() */
13*86d7f5d3SJohn Marino static struct timeval TIMEOUT = { 0, 0 };
14*86d7f5d3SJohn Marino 
15*86d7f5d3SJohn Marino nlm_testres *
nlm_test_1(struct nlm_testargs * argp,CLIENT * clnt)16*86d7f5d3SJohn Marino nlm_test_1(struct nlm_testargs *argp, CLIENT *clnt)
17*86d7f5d3SJohn Marino {
18*86d7f5d3SJohn Marino 	static nlm_testres res;
19*86d7f5d3SJohn Marino 
20*86d7f5d3SJohn Marino 	bzero((char *)&res, sizeof(res));
21*86d7f5d3SJohn Marino 	if (clnt_call(clnt, NLM_TEST, xdr_nlm_testargs, argp, xdr_nlm_testres, &res, TIMEOUT) != RPC_SUCCESS) {
22*86d7f5d3SJohn Marino 		return (NULL);
23*86d7f5d3SJohn Marino 	}
24*86d7f5d3SJohn Marino 	return (&res);
25*86d7f5d3SJohn Marino }
26*86d7f5d3SJohn Marino 
27*86d7f5d3SJohn Marino 
28*86d7f5d3SJohn Marino nlm_res *
nlm_lock_1(struct nlm_lockargs * argp,CLIENT * clnt)29*86d7f5d3SJohn Marino nlm_lock_1(struct nlm_lockargs *argp, CLIENT *clnt)
30*86d7f5d3SJohn Marino {
31*86d7f5d3SJohn Marino 	enum clnt_stat st;
32*86d7f5d3SJohn Marino 	static nlm_res res;
33*86d7f5d3SJohn Marino 
34*86d7f5d3SJohn Marino 	bzero((char *)&res, sizeof(res));
35*86d7f5d3SJohn Marino 	if (st = clnt_call(clnt, NLM_LOCK, xdr_nlm_lockargs, argp, xdr_nlm_res, &res, TIMEOUT) != RPC_SUCCESS) {
36*86d7f5d3SJohn Marino 		printf("clnt_call returns %d\n", st);
37*86d7f5d3SJohn Marino 		clnt_perror(clnt, "humbug");
38*86d7f5d3SJohn Marino 		return (NULL);
39*86d7f5d3SJohn Marino 	}
40*86d7f5d3SJohn Marino 	return (&res);
41*86d7f5d3SJohn Marino }
42*86d7f5d3SJohn Marino 
43*86d7f5d3SJohn Marino 
44*86d7f5d3SJohn Marino nlm_res *
nlm_cancel_1(struct nlm_cancargs * argp,CLIENT * clnt)45*86d7f5d3SJohn Marino nlm_cancel_1(struct nlm_cancargs *argp, CLIENT *clnt)
46*86d7f5d3SJohn Marino {
47*86d7f5d3SJohn Marino 	static nlm_res res;
48*86d7f5d3SJohn Marino 
49*86d7f5d3SJohn Marino 	bzero((char *)&res, sizeof(res));
50*86d7f5d3SJohn Marino 	if (clnt_call(clnt, NLM_CANCEL, xdr_nlm_cancargs, argp, xdr_nlm_res, &res, TIMEOUT) != RPC_SUCCESS) {
51*86d7f5d3SJohn Marino 		return (NULL);
52*86d7f5d3SJohn Marino 	}
53*86d7f5d3SJohn Marino 	return (&res);
54*86d7f5d3SJohn Marino }
55*86d7f5d3SJohn Marino 
56*86d7f5d3SJohn Marino 
57*86d7f5d3SJohn Marino nlm_res *
nlm_unlock_1(struct nlm_unlockargs * argp,CLIENT * clnt)58*86d7f5d3SJohn Marino nlm_unlock_1(struct nlm_unlockargs *argp, CLIENT *clnt)
59*86d7f5d3SJohn Marino {
60*86d7f5d3SJohn Marino 	static nlm_res res;
61*86d7f5d3SJohn Marino 
62*86d7f5d3SJohn Marino 	bzero((char *)&res, sizeof(res));
63*86d7f5d3SJohn Marino 	if (clnt_call(clnt, NLM_UNLOCK, xdr_nlm_unlockargs, argp, xdr_nlm_res, &res, TIMEOUT) != RPC_SUCCESS) {
64*86d7f5d3SJohn Marino 		return (NULL);
65*86d7f5d3SJohn Marino 	}
66*86d7f5d3SJohn Marino 	return (&res);
67*86d7f5d3SJohn Marino }
68*86d7f5d3SJohn Marino 
69*86d7f5d3SJohn Marino 
70*86d7f5d3SJohn Marino nlm_res *
nlm_granted_1(struct nlm_testargs * argp,CLIENT * clnt)71*86d7f5d3SJohn Marino nlm_granted_1(struct nlm_testargs *argp, CLIENT *clnt)
72*86d7f5d3SJohn Marino {
73*86d7f5d3SJohn Marino 	static nlm_res res;
74*86d7f5d3SJohn Marino 
75*86d7f5d3SJohn Marino 	bzero((char *)&res, sizeof(res));
76*86d7f5d3SJohn Marino 	if (clnt_call(clnt, NLM_GRANTED, xdr_nlm_testargs, argp, xdr_nlm_res, &res, TIMEOUT) != RPC_SUCCESS) {
77*86d7f5d3SJohn Marino 		return (NULL);
78*86d7f5d3SJohn Marino 	}
79*86d7f5d3SJohn Marino 	return (&res);
80*86d7f5d3SJohn Marino }
81*86d7f5d3SJohn Marino 
82*86d7f5d3SJohn Marino 
83*86d7f5d3SJohn Marino void *
nlm_test_msg_1(struct nlm_testargs * argp,CLIENT * clnt)84*86d7f5d3SJohn Marino nlm_test_msg_1(struct nlm_testargs *argp, CLIENT *clnt)
85*86d7f5d3SJohn Marino {
86*86d7f5d3SJohn Marino 	static char res;
87*86d7f5d3SJohn Marino 
88*86d7f5d3SJohn Marino 	bzero((char *)&res, sizeof(res));
89*86d7f5d3SJohn Marino 	if (clnt_call(clnt, NLM_TEST_MSG, xdr_nlm_testargs, argp, xdr_void, &res, TIMEOUT) != RPC_SUCCESS) {
90*86d7f5d3SJohn Marino 		return (NULL);
91*86d7f5d3SJohn Marino 	}
92*86d7f5d3SJohn Marino 	return ((void *)&res);
93*86d7f5d3SJohn Marino }
94*86d7f5d3SJohn Marino 
95*86d7f5d3SJohn Marino 
96*86d7f5d3SJohn Marino void *
nlm_lock_msg_1(struct nlm_lockargs * argp,CLIENT * clnt)97*86d7f5d3SJohn Marino nlm_lock_msg_1(struct nlm_lockargs *argp, CLIENT *clnt)
98*86d7f5d3SJohn Marino {
99*86d7f5d3SJohn Marino 	static char res;
100*86d7f5d3SJohn Marino 
101*86d7f5d3SJohn Marino 	bzero((char *)&res, sizeof(res));
102*86d7f5d3SJohn Marino 	if (clnt_call(clnt, NLM_LOCK_MSG, xdr_nlm_lockargs, argp, xdr_void, NULL, TIMEOUT) != RPC_SUCCESS) {
103*86d7f5d3SJohn Marino 		clnt_perror(clnt, "nlm_lock_msg_1");
104*86d7f5d3SJohn Marino 		return (NULL);
105*86d7f5d3SJohn Marino 	}
106*86d7f5d3SJohn Marino 	return ((void *)&res);
107*86d7f5d3SJohn Marino }
108*86d7f5d3SJohn Marino 
109*86d7f5d3SJohn Marino 
110*86d7f5d3SJohn Marino void *
nlm_cancel_msg_1(struct nlm_cancargs * argp,CLIENT * clnt)111*86d7f5d3SJohn Marino nlm_cancel_msg_1(struct nlm_cancargs *argp, CLIENT *clnt)
112*86d7f5d3SJohn Marino {
113*86d7f5d3SJohn Marino 	static char res;
114*86d7f5d3SJohn Marino 
115*86d7f5d3SJohn Marino 	bzero((char *)&res, sizeof(res));
116*86d7f5d3SJohn Marino 	if (clnt_call(clnt, NLM_CANCEL_MSG, xdr_nlm_cancargs, argp, xdr_void, &res, TIMEOUT) != RPC_SUCCESS) {
117*86d7f5d3SJohn Marino 		return (NULL);
118*86d7f5d3SJohn Marino 	}
119*86d7f5d3SJohn Marino 	return ((void *)&res);
120*86d7f5d3SJohn Marino }
121*86d7f5d3SJohn Marino 
122*86d7f5d3SJohn Marino 
123*86d7f5d3SJohn Marino void *
nlm_unlock_msg_1(struct nlm_unlockargs * argp,CLIENT * clnt)124*86d7f5d3SJohn Marino nlm_unlock_msg_1(struct nlm_unlockargs *argp, CLIENT *clnt)
125*86d7f5d3SJohn Marino {
126*86d7f5d3SJohn Marino 	static char res;
127*86d7f5d3SJohn Marino 
128*86d7f5d3SJohn Marino 	bzero((char *)&res, sizeof(res));
129*86d7f5d3SJohn Marino 	if (clnt_call(clnt, NLM_UNLOCK_MSG, xdr_nlm_unlockargs, argp, xdr_void, &res, TIMEOUT) != RPC_SUCCESS) {
130*86d7f5d3SJohn Marino 		return (NULL);
131*86d7f5d3SJohn Marino 	}
132*86d7f5d3SJohn Marino 	return ((void *)&res);
133*86d7f5d3SJohn Marino }
134*86d7f5d3SJohn Marino 
135*86d7f5d3SJohn Marino 
136*86d7f5d3SJohn Marino void *
nlm_granted_msg_1(struct nlm_testargs * argp,CLIENT * clnt)137*86d7f5d3SJohn Marino nlm_granted_msg_1(struct nlm_testargs *argp, CLIENT *clnt)
138*86d7f5d3SJohn Marino {
139*86d7f5d3SJohn Marino 	static char res;
140*86d7f5d3SJohn Marino 
141*86d7f5d3SJohn Marino 	bzero((char *)&res, sizeof(res));
142*86d7f5d3SJohn Marino 	if (clnt_call(clnt, NLM_GRANTED_MSG, xdr_nlm_testargs, argp, xdr_void, &res, TIMEOUT) != RPC_SUCCESS) {
143*86d7f5d3SJohn Marino 		return (NULL);
144*86d7f5d3SJohn Marino 	}
145*86d7f5d3SJohn Marino 	return ((void *)&res);
146*86d7f5d3SJohn Marino }
147*86d7f5d3SJohn Marino 
148*86d7f5d3SJohn Marino 
149*86d7f5d3SJohn Marino void *
nlm_test_res_1(nlm_testres * argp,CLIENT * clnt)150*86d7f5d3SJohn Marino nlm_test_res_1(nlm_testres *argp, CLIENT *clnt)
151*86d7f5d3SJohn Marino {
152*86d7f5d3SJohn Marino 	static char res;
153*86d7f5d3SJohn Marino 
154*86d7f5d3SJohn Marino 	bzero((char *)&res, sizeof(res));
155*86d7f5d3SJohn Marino 	if (clnt_call(clnt, NLM_TEST_RES, xdr_nlm_testres, argp, xdr_void, &res, TIMEOUT) != RPC_SUCCESS) {
156*86d7f5d3SJohn Marino 		return (NULL);
157*86d7f5d3SJohn Marino 	}
158*86d7f5d3SJohn Marino 	return ((void *)&res);
159*86d7f5d3SJohn Marino }
160*86d7f5d3SJohn Marino 
161*86d7f5d3SJohn Marino 
162*86d7f5d3SJohn Marino void *
nlm_lock_res_1(nlm_res * argp,CLIENT * clnt)163*86d7f5d3SJohn Marino nlm_lock_res_1(nlm_res *argp, CLIENT *clnt)
164*86d7f5d3SJohn Marino {
165*86d7f5d3SJohn Marino 	static char res;
166*86d7f5d3SJohn Marino 
167*86d7f5d3SJohn Marino 	bzero((char *)&res, sizeof(res));
168*86d7f5d3SJohn Marino 	if (clnt_call(clnt, NLM_LOCK_RES, xdr_nlm_res, argp, xdr_void, &res, TIMEOUT) != RPC_SUCCESS) {
169*86d7f5d3SJohn Marino 		return (NULL);
170*86d7f5d3SJohn Marino 	}
171*86d7f5d3SJohn Marino 	return ((void *)&res);
172*86d7f5d3SJohn Marino }
173*86d7f5d3SJohn Marino 
174*86d7f5d3SJohn Marino 
175*86d7f5d3SJohn Marino void *
nlm_cancel_res_1(nlm_res * argp,CLIENT * clnt)176*86d7f5d3SJohn Marino nlm_cancel_res_1(nlm_res *argp, CLIENT *clnt)
177*86d7f5d3SJohn Marino {
178*86d7f5d3SJohn Marino 	static char res;
179*86d7f5d3SJohn Marino 
180*86d7f5d3SJohn Marino 	bzero((char *)&res, sizeof(res));
181*86d7f5d3SJohn Marino 	if (clnt_call(clnt, NLM_CANCEL_RES, xdr_nlm_res, argp, xdr_void, &res, TIMEOUT) != RPC_SUCCESS) {
182*86d7f5d3SJohn Marino 		return (NULL);
183*86d7f5d3SJohn Marino 	}
184*86d7f5d3SJohn Marino 	return ((void *)&res);
185*86d7f5d3SJohn Marino }
186*86d7f5d3SJohn Marino 
187*86d7f5d3SJohn Marino 
188*86d7f5d3SJohn Marino void *
nlm_unlock_res_1(nlm_res * argp,CLIENT * clnt)189*86d7f5d3SJohn Marino nlm_unlock_res_1(nlm_res *argp, CLIENT *clnt)
190*86d7f5d3SJohn Marino {
191*86d7f5d3SJohn Marino 	static char res;
192*86d7f5d3SJohn Marino 
193*86d7f5d3SJohn Marino 	bzero((char *)&res, sizeof(res));
194*86d7f5d3SJohn Marino 	if (clnt_call(clnt, NLM_UNLOCK_RES, xdr_nlm_res, argp, xdr_void, &res, TIMEOUT) != RPC_SUCCESS) {
195*86d7f5d3SJohn Marino 		return (NULL);
196*86d7f5d3SJohn Marino 	}
197*86d7f5d3SJohn Marino 	return ((void *)&res);
198*86d7f5d3SJohn Marino }
199*86d7f5d3SJohn Marino 
200*86d7f5d3SJohn Marino 
201*86d7f5d3SJohn Marino void *
nlm_granted_res_1(nlm_res * argp,CLIENT * clnt)202*86d7f5d3SJohn Marino nlm_granted_res_1(nlm_res *argp, CLIENT *clnt)
203*86d7f5d3SJohn Marino {
204*86d7f5d3SJohn Marino 	static char res;
205*86d7f5d3SJohn Marino 
206*86d7f5d3SJohn Marino 	bzero((char *)&res, sizeof(res));
207*86d7f5d3SJohn Marino 	if (clnt_call(clnt, NLM_GRANTED_RES, xdr_nlm_res, argp, xdr_void, &res, TIMEOUT) != RPC_SUCCESS) {
208*86d7f5d3SJohn Marino 		return (NULL);
209*86d7f5d3SJohn Marino 	}
210*86d7f5d3SJohn Marino 	return ((void *)&res);
211*86d7f5d3SJohn Marino }
212*86d7f5d3SJohn Marino 
213*86d7f5d3SJohn Marino 
214*86d7f5d3SJohn Marino nlm_shareres *
nlm_share_3(nlm_shareargs * argp,CLIENT * clnt)215*86d7f5d3SJohn Marino nlm_share_3(nlm_shareargs *argp, CLIENT *clnt)
216*86d7f5d3SJohn Marino {
217*86d7f5d3SJohn Marino 	static nlm_shareres res;
218*86d7f5d3SJohn Marino 
219*86d7f5d3SJohn Marino 	bzero((char *)&res, sizeof(res));
220*86d7f5d3SJohn Marino 	if (clnt_call(clnt, NLM_SHARE, xdr_nlm_shareargs, argp, xdr_nlm_shareres, &res, TIMEOUT) != RPC_SUCCESS) {
221*86d7f5d3SJohn Marino 		return (NULL);
222*86d7f5d3SJohn Marino 	}
223*86d7f5d3SJohn Marino 	return (&res);
224*86d7f5d3SJohn Marino }
225*86d7f5d3SJohn Marino 
226*86d7f5d3SJohn Marino 
227*86d7f5d3SJohn Marino nlm_shareres *
nlm_unshare_3(nlm_shareargs * argp,CLIENT * clnt)228*86d7f5d3SJohn Marino nlm_unshare_3(nlm_shareargs *argp, CLIENT *clnt)
229*86d7f5d3SJohn Marino {
230*86d7f5d3SJohn Marino 	static nlm_shareres res;
231*86d7f5d3SJohn Marino 
232*86d7f5d3SJohn Marino 	bzero((char *)&res, sizeof(res));
233*86d7f5d3SJohn Marino 	if (clnt_call(clnt, NLM_UNSHARE, xdr_nlm_shareargs, argp, xdr_nlm_shareres, &res, TIMEOUT) != RPC_SUCCESS) {
234*86d7f5d3SJohn Marino 		return (NULL);
235*86d7f5d3SJohn Marino 	}
236*86d7f5d3SJohn Marino 	return (&res);
237*86d7f5d3SJohn Marino }
238*86d7f5d3SJohn Marino 
239*86d7f5d3SJohn Marino 
240*86d7f5d3SJohn Marino nlm_res *
nlm_nm_lock_3(nlm_lockargs * argp,CLIENT * clnt)241*86d7f5d3SJohn Marino nlm_nm_lock_3(nlm_lockargs *argp, CLIENT *clnt)
242*86d7f5d3SJohn Marino {
243*86d7f5d3SJohn Marino 	static nlm_res res;
244*86d7f5d3SJohn Marino 
245*86d7f5d3SJohn Marino 	bzero((char *)&res, sizeof(res));
246*86d7f5d3SJohn Marino 	if (clnt_call(clnt, NLM_NM_LOCK, xdr_nlm_lockargs, argp, xdr_nlm_res, &res, TIMEOUT) != RPC_SUCCESS) {
247*86d7f5d3SJohn Marino 		return (NULL);
248*86d7f5d3SJohn Marino 	}
249*86d7f5d3SJohn Marino 	return (&res);
250*86d7f5d3SJohn Marino }
251*86d7f5d3SJohn Marino 
252*86d7f5d3SJohn Marino 
253*86d7f5d3SJohn Marino void *
nlm_free_all_3(nlm_notify * argp,CLIENT * clnt)254*86d7f5d3SJohn Marino nlm_free_all_3(nlm_notify *argp, CLIENT *clnt)
255*86d7f5d3SJohn Marino {
256*86d7f5d3SJohn Marino 	static char res;
257*86d7f5d3SJohn Marino 
258*86d7f5d3SJohn Marino 	bzero((char *)&res, sizeof(res));
259*86d7f5d3SJohn Marino 	if (clnt_call(clnt, NLM_FREE_ALL, xdr_nlm_notify, argp, xdr_void, &res, TIMEOUT) != RPC_SUCCESS) {
260*86d7f5d3SJohn Marino 		return (NULL);
261*86d7f5d3SJohn Marino 	}
262*86d7f5d3SJohn Marino 	return ((void *)&res);
263*86d7f5d3SJohn Marino }
264*86d7f5d3SJohn Marino 
265*86d7f5d3SJohn Marino 
266*86d7f5d3SJohn Marino int
main(int argc,char ** argv)267*86d7f5d3SJohn Marino main(int argc, char **argv)
268*86d7f5d3SJohn Marino {
269*86d7f5d3SJohn Marino 	CLIENT *cli;
270*86d7f5d3SJohn Marino 	nlm_res res_block;
271*86d7f5d3SJohn Marino 	nlm_res *out;
272*86d7f5d3SJohn Marino 	nlm_lockargs arg;
273*86d7f5d3SJohn Marino 	struct timeval tim;
274*86d7f5d3SJohn Marino 
275*86d7f5d3SJohn Marino 	printf("Creating client for host %s\n", argv[1]);
276*86d7f5d3SJohn Marino 	cli = clnt_create(argv[1], NLM_PROG, NLM_VERS, "udp");
277*86d7f5d3SJohn Marino 	if (!cli) {
278*86d7f5d3SJohn Marino 		errx(1, "Failed to create client\n");
279*86d7f5d3SJohn Marino 		/* NOTREACHED */
280*86d7f5d3SJohn Marino 	}
281*86d7f5d3SJohn Marino 	clnt_control(cli, CLGET_TIMEOUT, &tim);
282*86d7f5d3SJohn Marino 	printf("Default timeout was %d.%d\n", tim.tv_sec, tim.tv_usec);
283*86d7f5d3SJohn Marino 	tim.tv_usec = -1;
284*86d7f5d3SJohn Marino 	tim.tv_sec = -1;
285*86d7f5d3SJohn Marino 	clnt_control(cli, CLSET_TIMEOUT, &tim);
286*86d7f5d3SJohn Marino 	clnt_control(cli, CLGET_TIMEOUT, &tim);
287*86d7f5d3SJohn Marino 	printf("timeout now %d.%d\n", tim.tv_sec, tim.tv_usec);
288*86d7f5d3SJohn Marino 
289*86d7f5d3SJohn Marino 
290*86d7f5d3SJohn Marino 	arg.cookie.n_len = 4;
291*86d7f5d3SJohn Marino 	arg.cookie.n_bytes = "hello";
292*86d7f5d3SJohn Marino 	arg.block = 0;
293*86d7f5d3SJohn Marino 	arg.exclusive = 0;
294*86d7f5d3SJohn Marino 	arg.reclaim = 0;
295*86d7f5d3SJohn Marino 	arg.state = 0x1234;
296*86d7f5d3SJohn Marino 	arg.alock.caller_name = "localhost";
297*86d7f5d3SJohn Marino 	arg.alock.fh.n_len = 32;
298*86d7f5d3SJohn Marino 	arg.alock.fh.n_bytes = "\x04\x04\x02\x00\x01\x00\x00\x00\x0c\x00\x00\x00\xff\xff\xff\xd0\x16\x00\x00\x5b\x7c\xff\xff\xff\xec\x2f\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x19\x54\xef\xbf\xd7\x94";
299*86d7f5d3SJohn Marino 	arg.alock.oh.n_len = 8;
300*86d7f5d3SJohn Marino 	arg.alock.oh.n_bytes = "\x00\x00\x02\xff\xff\xff\xd3";
301*86d7f5d3SJohn Marino 	arg.alock.svid = 0x5678;
302*86d7f5d3SJohn Marino 	arg.alock.l_offset = 0;
303*86d7f5d3SJohn Marino 	arg.alock.l_len = 100;
304*86d7f5d3SJohn Marino 
305*86d7f5d3SJohn Marino 	res_block.stat.stat = nlm_granted;
306*86d7f5d3SJohn Marino 	res_block.cookie.n_bytes = "hello";
307*86d7f5d3SJohn Marino 	res_block.cookie.n_len = 5;
308*86d7f5d3SJohn Marino 
309*86d7f5d3SJohn Marino #if 0
310*86d7f5d3SJohn Marino 	if (nlm_lock_res_1(&res_block, cli))
311*86d7f5d3SJohn Marino 		printf("Success!\n");
312*86d7f5d3SJohn Marino 	else
313*86d7f5d3SJohn Marino 		printf("Fail\n");
314*86d7f5d3SJohn Marino #else
315*86d7f5d3SJohn Marino 	if (out = nlm_lock_msg_1(&arg, cli)) {
316*86d7f5d3SJohn Marino 		printf("Success!\n");
317*86d7f5d3SJohn Marino 		printf("out->stat = %d", out->stat);
318*86d7f5d3SJohn Marino 	} else {
319*86d7f5d3SJohn Marino 		printf("Fail\n");
320*86d7f5d3SJohn Marino 	}
321*86d7f5d3SJohn Marino #endif
322*86d7f5d3SJohn Marino 
323*86d7f5d3SJohn Marino 	return 0;
324*86d7f5d3SJohn Marino }
325