1dba7a33eSGarrett Wollman /* 2dba7a33eSGarrett Wollman * Sun RPC is a product of Sun Microsystems, Inc. and is provided for 3dba7a33eSGarrett Wollman * unrestricted use provided that this legend is included on all tape 4dba7a33eSGarrett Wollman * media and as a part of the software program in whole or part. Users 5dba7a33eSGarrett Wollman * may copy or modify Sun RPC without charge, but are not authorized 6dba7a33eSGarrett Wollman * to license or distribute it to anyone else except as part of a product or 7dba7a33eSGarrett Wollman * program developed by the user. 8dba7a33eSGarrett Wollman * 9dba7a33eSGarrett Wollman * SUN RPC IS PROVIDED AS IS WITH NO WARRANTIES OF ANY KIND INCLUDING THE 1071d9c781SMike Pritchard * WARRANTIES OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR 11dba7a33eSGarrett Wollman * PURPOSE, OR ARISING FROM A COURSE OF DEALING, USAGE OR TRADE PRACTICE. 12dba7a33eSGarrett Wollman * 13dba7a33eSGarrett Wollman * Sun RPC is provided with no support and without any obligation on the 14dba7a33eSGarrett Wollman * part of Sun Microsystems, Inc. to assist in its use, correction, 15dba7a33eSGarrett Wollman * modification or enhancement. 16dba7a33eSGarrett Wollman * 17dba7a33eSGarrett Wollman * SUN MICROSYSTEMS, INC. SHALL HAVE NO LIABILITY WITH RESPECT TO THE 18dba7a33eSGarrett Wollman * INFRINGEMENT OF COPYRIGHTS, TRADE SECRETS OR ANY PATENTS BY SUN RPC 19dba7a33eSGarrett Wollman * OR ANY PART THEREOF. 20dba7a33eSGarrett Wollman * 21dba7a33eSGarrett Wollman * In no event will Sun Microsystems, Inc. be liable for any lost revenue 22dba7a33eSGarrett Wollman * or profits or other special, indirect and consequential damages, even if 23dba7a33eSGarrett Wollman * Sun has been advised of the possibility of such damages. 24dba7a33eSGarrett Wollman * 25dba7a33eSGarrett Wollman * Sun Microsystems, Inc. 26dba7a33eSGarrett Wollman * 2550 Garcia Avenue 27dba7a33eSGarrett Wollman * Mountain View, California 94043 2886b9a9ccSGarrett Wollman * 2986b9a9ccSGarrett Wollman * from: @(#)rpc.h 1.9 88/02/08 SMI 3086b9a9ccSGarrett Wollman * from: @(#)rpc.h 2.4 89/07/11 4.0 RPCSRC 31a4add9a9SPeter Wemm * $FreeBSD$ 32dba7a33eSGarrett Wollman */ 33dba7a33eSGarrett Wollman 34dba7a33eSGarrett Wollman /* 35dba7a33eSGarrett Wollman * rpc.h, Just includes the billions of rpc header files necessary to 36dba7a33eSGarrett Wollman * do remote procedure calling. 37dba7a33eSGarrett Wollman * 38dba7a33eSGarrett Wollman * Copyright (C) 1984, Sun Microsystems, Inc. 39dba7a33eSGarrett Wollman */ 4086b9a9ccSGarrett Wollman #ifndef _RPC_RPC_H 4186b9a9ccSGarrett Wollman #define _RPC_RPC_H 42dba7a33eSGarrett Wollman 43dba7a33eSGarrett Wollman #include <rpc/types.h> /* some typedefs */ 44dba7a33eSGarrett Wollman #include <netinet/in.h> 45dba7a33eSGarrett Wollman 46dba7a33eSGarrett Wollman /* external data representation interfaces */ 47dba7a33eSGarrett Wollman #include <rpc/xdr.h> /* generic (de)serializer */ 48dba7a33eSGarrett Wollman 49dba7a33eSGarrett Wollman /* Client side only authentication */ 50dba7a33eSGarrett Wollman #include <rpc/auth.h> /* generic authenticator (client side) */ 51dba7a33eSGarrett Wollman 52dba7a33eSGarrett Wollman /* Client side (mostly) remote procedure call */ 53dba7a33eSGarrett Wollman #include <rpc/clnt.h> /* generic rpc stuff */ 54dba7a33eSGarrett Wollman 55dba7a33eSGarrett Wollman /* semi-private protocol headers */ 56dba7a33eSGarrett Wollman #include <rpc/rpc_msg.h> /* protocol for rpc messages */ 57dba7a33eSGarrett Wollman #include <rpc/auth_unix.h> /* protocol for unix style cred */ 58dba7a33eSGarrett Wollman /* 59dba7a33eSGarrett Wollman * Uncomment-out the next line if you are building the rpc library with 60dba7a33eSGarrett Wollman * DES Authentication (see the README file in the secure_rpc/ directory). 61dba7a33eSGarrett Wollman */ 62e4f13e77SPoul-Henning Kamp #include <rpc/auth_des.h> /* protocol for des style cred */ 63dba7a33eSGarrett Wollman 64dba7a33eSGarrett Wollman /* Server side only remote procedure callee */ 65dba7a33eSGarrett Wollman #include <rpc/svc.h> /* service manager and multiplexer */ 66dba7a33eSGarrett Wollman #include <rpc/svc_auth.h> /* service side authenticator */ 67dba7a33eSGarrett Wollman 68dba7a33eSGarrett Wollman /* 69dba7a33eSGarrett Wollman * COMMENT OUT THE NEXT INCLUDE (or add to the #ifndef) IF RUNNING ON 70dba7a33eSGarrett Wollman * A VERSION OF UNIX THAT USES SUN'S NFS SOURCE. These systems will 71dba7a33eSGarrett Wollman * already have the structures defined by <rpc/netdb.h> included in <netdb.h>. 72dba7a33eSGarrett Wollman */ 73dba7a33eSGarrett Wollman /* routines for parsing /etc/rpc */ 74dba7a33eSGarrett Wollman 75dba7a33eSGarrett Wollman struct rpcent { 76dba7a33eSGarrett Wollman char *r_name; /* name of server for this rpc program */ 77dba7a33eSGarrett Wollman char **r_aliases; /* alias list */ 78dba7a33eSGarrett Wollman int r_number; /* rpc program number */ 79dba7a33eSGarrett Wollman }; 80dba7a33eSGarrett Wollman 8186b9a9ccSGarrett Wollman __BEGIN_DECLS 8286b9a9ccSGarrett Wollman extern struct rpcent *getrpcbyname __P((char *)); 8386b9a9ccSGarrett Wollman extern struct rpcent *getrpcbynumber __P((int)); 8486b9a9ccSGarrett Wollman extern struct rpcent *getrpcent __P((void)); 8570de0abfSPeter Wemm extern int getrpcport __P((char *host, int prognum, int versnum, int proto)); 8686b9a9ccSGarrett Wollman extern void setrpcent __P((int)); 8786b9a9ccSGarrett Wollman extern void endrpcent __P((void)); 8870de0abfSPeter Wemm 8970de0abfSPeter Wemm extern int bindresvport __P((int, struct sockaddr_in *)); 9070de0abfSPeter Wemm extern int get_myaddress __P((struct sockaddr_in *)); 9186b9a9ccSGarrett Wollman __END_DECLS 92dba7a33eSGarrett Wollman 9386b9a9ccSGarrett Wollman #endif /* !_RPC_RPC_H */ 94