xref: /netbsd/include/rpc/clnt_soc.h (revision bf9ec67e)
1 /*	$NetBSD: clnt_soc.h,v 1.1 2000/06/02 22:57:55 fvdl Exp $	*/
2 
3 /*
4  * Sun RPC is a product of Sun Microsystems, Inc. and is provided for
5  * unrestricted use provided that this legend is included on all tape
6  * media and as a part of the software program in whole or part.  Users
7  * may copy or modify Sun RPC without charge, but are not authorized
8  * to license or distribute it to anyone else except as part of a product or
9  * program developed by the user.
10  *
11  * SUN RPC IS PROVIDED AS IS WITH NO WARRANTIES OF ANY KIND INCLUDING THE
12  * WARRANTIES OF DESIGN, MERCHANTIBILITY AND FITNESS FOR A PARTICULAR
13  * PURPOSE, OR ARISING FROM A COURSE OF DEALING, USAGE OR TRADE PRACTICE.
14  *
15  * Sun RPC is provided with no support and without any obligation on the
16  * part of Sun Microsystems, Inc. to assist in its use, correction,
17  * modification or enhancement.
18  *
19  * SUN MICROSYSTEMS, INC. SHALL HAVE NO LIABILITY WITH RESPECT TO THE
20  * INFRINGEMENT OF COPYRIGHTS, TRADE SECRETS OR ANY PATENTS BY SUN RPC
21  * OR ANY PART THEREOF.
22  *
23  * In no event will Sun Microsystems, Inc. be liable for any lost revenue
24  * or profits or other special, indirect and consequential damages, even if
25  * Sun has been advised of the possibility of such damages.
26  *
27  * Sun Microsystems, Inc.
28  * 2550 Garcia Avenue
29  * Mountain View, California  94043
30  */
31 /*
32  * Copyright (c) 1984 - 1991 by Sun Microsystems, Inc.
33  */
34 
35 /*
36  * clnt.h - Client side remote procedure call interface.
37  */
38 
39 #ifndef _RPC_CLNT_SOC_H
40 #define _RPC_CLNT_SOC_H
41 
42 /* derived from clnt_soc.h 1.3 88/12/17 SMI     */
43 
44 /*
45  * All the following declarations are only for backward compatibility
46  * with TS-RPC.
47  */
48 
49 #include <sys/cdefs.h>
50 
51 #define UDPMSGSIZE      8800    /* rpc imposed limit on udp msg size */
52 
53 /*
54  * TCP based rpc
55  * CLIENT *
56  * clnttcp_create(raddr, prog, vers, sockp, sendsz, recvsz)
57  *	struct sockaddr_in *raddr;
58  *	u_long prog;
59  *	u_long version;
60  *	register int *sockp;
61  *	u_int sendsz;
62  *	u_int recvsz;
63  */
64 __BEGIN_DECLS
65 extern CLIENT *clnttcp_create	__P((struct sockaddr_in *,
66 				     u_long,
67 				     u_long,
68 				     int *,
69 				     u_int,
70 				     u_int));
71 __END_DECLS
72 
73 /*
74  * Raw (memory) rpc.
75  */
76 __BEGIN_DECLS
77 extern CLIENT *clntraw_create   __P((u_long, u_long));
78 __END_DECLS
79 
80 
81 /*
82  * UDP based rpc.
83  * CLIENT *
84  * clntudp_create(raddr, program, version, wait, sockp)
85  *	struct sockaddr_in *raddr;
86  *	u_long program;
87  *	u_long version;
88  *	struct timeval wait;
89  *	int *sockp;
90  *
91  * Same as above, but you specify max packet sizes.
92  * CLIENT *
93  * clntudp_bufcreate(raddr, program, version, wait, sockp, sendsz, recvsz)
94  *	struct sockaddr_in *raddr;
95  *	u_long program;
96  *	u_long version;
97  *	struct timeval wait;
98  *	int *sockp;
99  *	u_int sendsz;
100  *	u_int recvsz;
101  */
102 __BEGIN_DECLS
103 extern CLIENT *clntudp_create	__P((struct sockaddr_in *,
104 				     u_long,
105 				     u_long,
106 				     struct timeval,
107 				     int *));
108 extern CLIENT *clntudp_bufcreate __P((struct sockaddr_in *,
109 				     u_long,
110 				     u_long,
111 				     struct timeval,
112 				     int *,
113 				     u_int,
114 				     u_int));
115 __END_DECLS
116 
117 #endif /* _RPC_CLNT_SOC_H */
118