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