1/*	$NetBSD: clnt_soc.h,v 1.1 2000/06/02 22:57:55 fvdl Exp $	*/
2
3/*-
4 * SPDX-License-Identifier: BSD-3-Clause
5 *
6 * Copyright (c) 2009, Sun Microsystems, Inc.
7 * All rights reserved.
8 *
9 * Redistribution and use in source and binary forms, with or without
10 * modification, are permitted provided that the following conditions are met:
11 * - Redistributions of source code must retain the above copyright notice,
12 *   this list of conditions and the following disclaimer.
13 * - Redistributions in binary form must reproduce the above copyright notice,
14 *   this list of conditions and the following disclaimer in the documentation
15 *   and/or other materials provided with the distribution.
16 * - Neither the name of Sun Microsystems, Inc. nor the names of its
17 *   contributors may be used to endorse or promote products derived
18 *   from this software without specific prior written permission.
19 *
20 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
21 * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
22 * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
23 * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
24 * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
25 * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
26 * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
27 * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
28 * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
29 * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
30 * POSSIBILITY OF SUCH DAMAGE.
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(struct sockaddr_in *, u_long, u_long, int *,
67			      u_int, u_int);
68__END_DECLS
69
70/*
71 * Raw (memory) rpc.
72 */
73__BEGIN_DECLS
74extern CLIENT *clntraw_create(u_long, u_long);
75__END_DECLS
76
77
78/*
79 * UDP based rpc.
80 * CLIENT *
81 * clntudp_create(raddr, program, version, wait, sockp)
82 *	struct sockaddr_in *raddr;
83 *	u_long program;
84 *	u_long version;
85 *	struct timeval wait;
86 *	int *sockp;
87 *
88 * Same as above, but you specify max packet sizes.
89 * CLIENT *
90 * clntudp_bufcreate(raddr, program, version, wait, sockp, sendsz, recvsz)
91 *	struct sockaddr_in *raddr;
92 *	u_long program;
93 *	u_long version;
94 *	struct timeval wait;
95 *	int *sockp;
96 *	u_int sendsz;
97 *	u_int recvsz;
98 */
99__BEGIN_DECLS
100extern CLIENT *clntudp_create(struct sockaddr_in *, u_long, u_long,
101			      struct timeval, int *);
102extern CLIENT *clntudp_bufcreate(struct sockaddr_in *, u_long, u_long,
103				 struct timeval, int *, u_int, u_int);
104__END_DECLS
105
106#endif /* _RPC_CLNT_SOC_H */
107