18360efbdSAlfred Perlstein.\" @(#)rpc.3n 1.31 93/08/31 SMI; from SVr4 28360efbdSAlfred Perlstein.\" Copyright 1989 AT&T 38360efbdSAlfred Perlstein.\" $NetBSD: rpc.3,v 1.10 2000/06/02 23:11:12 fvdl Exp $ 47f3dea24SPeter Wemm.\" $FreeBSD$ 58360efbdSAlfred Perlstein.Dd May 7, 1993 61b51e5d0SRuslan Ermilov.Dt RPC 3 71b51e5d0SRuslan Ermilov.Os 81b51e5d0SRuslan Ermilov.Sh NAME 91b51e5d0SRuslan Ermilov.Nm rpc 108360efbdSAlfred Perlstein.Nd library routines for remote procedure calls 111b51e5d0SRuslan Ermilov.Sh LIBRARY 121b51e5d0SRuslan Ermilov.Lb libc 131b51e5d0SRuslan Ermilov.Sh SYNOPSIS 1432eef9aeSRuslan Ermilov.In rpc/rpc.h 1532eef9aeSRuslan Ermilov.In netconfig.h 161b51e5d0SRuslan Ermilov.Sh DESCRIPTION 178360efbdSAlfred PerlsteinThese 188360efbdSAlfred Perlsteinroutines allow C language programs to make procedure 198360efbdSAlfred Perlsteincalls on other machines across a network. 208360efbdSAlfred PerlsteinFirst, the client sends a request to the server. 218360efbdSAlfred PerlsteinOn receipt of the request, the server calls a dispatch routine 228360efbdSAlfred Perlsteinto perform the requested service, and then sends back a reply. 231b51e5d0SRuslan Ermilov.Pp 248360efbdSAlfred PerlsteinAll 258360efbdSAlfred PerlsteinRPC routines require the header 26fe08efe6SRuslan Ermilov.In rpc/rpc.h . 278360efbdSAlfred PerlsteinRoutines that take a 288360efbdSAlfred Perlstein.Vt "struct netconfig" 298360efbdSAlfred Perlsteinalso require that 30fe08efe6SRuslan Ermilov.In netconfig.h 318360efbdSAlfred Perlsteinbe included. 328360efbdSAlfred Perlstein.Sh Nettype 338360efbdSAlfred PerlsteinSome of the high-level 348360efbdSAlfred PerlsteinRPC interface routines take a 358360efbdSAlfred Perlstein.Fa nettype 362efeeba5SRuslan Ermilovstring as one of the arguments 378360efbdSAlfred Perlstein(for example, 381b51e5d0SRuslan Ermilov.Fn clnt_create , 398360efbdSAlfred Perlstein.Fn svc_create , 408360efbdSAlfred Perlstein.Fn rpc_reg , 418360efbdSAlfred Perlstein.Fn rpc_call ) . 428360efbdSAlfred PerlsteinThis string defines a class of transports which can be used 438360efbdSAlfred Perlsteinfor a particular application. 448360efbdSAlfred Perlstein.Pp 452efeeba5SRuslan ErmilovThe 468360efbdSAlfred Perlstein.Fa nettype 472efeeba5SRuslan Ermilovargument 488360efbdSAlfred Perlsteincan be one of the following: 498360efbdSAlfred Perlstein.Bl -tag -width datagram_v 508360efbdSAlfred Perlstein.It netpath 518360efbdSAlfred PerlsteinChoose from the transports which have been 528360efbdSAlfred Perlsteinindicated by their token names in the 538360efbdSAlfred Perlstein.Ev NETPATH 548360efbdSAlfred Perlsteinenvironment variable. 558360efbdSAlfred Perlstein.Ev NETPATH 568360efbdSAlfred Perlsteinis unset or 578360efbdSAlfred Perlstein.Dv NULL , 588360efbdSAlfred Perlsteinit defaults to 598360efbdSAlfred Perlstein.Qq visible . 608360efbdSAlfred Perlstein.Qq netpath 618360efbdSAlfred Perlsteinis the default 628360efbdSAlfred Perlstein.Fa nettype . 638360efbdSAlfred Perlstein.It visible 648360efbdSAlfred PerlsteinChoose the transports which have the visible flag (v) 658360efbdSAlfred Perlsteinset in the 668360efbdSAlfred Perlstein.Pa /etc/netconfig 678360efbdSAlfred Perlsteinfile. 688360efbdSAlfred Perlstein.It circuit_v 698360efbdSAlfred PerlsteinThis is same as 708360efbdSAlfred Perlstein.Qq visible 718360efbdSAlfred Perlsteinexcept that it chooses only the connection oriented transports 728360efbdSAlfred Perlstein(semantics 738360efbdSAlfred Perlstein.Qq tpi_cots 7499064799SGarrett Wollmanor 758360efbdSAlfred Perlstein.Qq tpi_cots_ord ) 768360efbdSAlfred Perlsteinfrom the entries in the 778360efbdSAlfred Perlstein.Pa /etc/netconfig 788360efbdSAlfred Perlsteinfile. 798360efbdSAlfred Perlstein.It datagram_v 808360efbdSAlfred PerlsteinThis is same as 818360efbdSAlfred Perlstein.Qq visible 828360efbdSAlfred Perlsteinexcept that it chooses only the connectionless datagram transports 838360efbdSAlfred Perlstein(semantics 848360efbdSAlfred Perlstein.Qq tpi_clts ) 858360efbdSAlfred Perlsteinfrom the entries in the 868360efbdSAlfred Perlstein.Pa /etc/netconfig 878360efbdSAlfred Perlsteinfile. 888360efbdSAlfred Perlstein.It circuit_n 898360efbdSAlfred PerlsteinThis is same as 908360efbdSAlfred Perlstein.Qq netpath 918360efbdSAlfred Perlsteinexcept that it chooses only the connection oriented datagram transports 928360efbdSAlfred Perlstein(semantics 938360efbdSAlfred Perlstein.Qq tpi_cots 9499064799SGarrett Wollmanor 958360efbdSAlfred Perlstein.Qq tpi_cots_ord ) . 968360efbdSAlfred Perlstein.It datagram_n 978360efbdSAlfred PerlsteinThis is same as 988360efbdSAlfred Perlstein.Qq netpath 998360efbdSAlfred Perlsteinexcept that it chooses only the connectionless datagram transports 1008360efbdSAlfred Perlstein(semantics 1018360efbdSAlfred Perlstein.Qq tpi_clts ) . 1028360efbdSAlfred Perlstein.It udp 1038360efbdSAlfred PerlsteinThis refers to Internet UDP, both version 4 and 6. 1048360efbdSAlfred Perlstein.It tcp 1058360efbdSAlfred PerlsteinThis refers to Internet TCP, both version 4 and 6. 1068360efbdSAlfred Perlstein.El 1071b51e5d0SRuslan Ermilov.Pp 10899064799SGarrett WollmanIf 1098360efbdSAlfred Perlstein.Fa nettype 1108360efbdSAlfred Perlsteinis 1118360efbdSAlfred Perlstein.Dv NULL , 1128360efbdSAlfred Perlsteinit defaults to 1138360efbdSAlfred Perlstein.Qq netpath . 1148360efbdSAlfred PerlsteinThe transports are tried in left to right order in the 1158360efbdSAlfred Perlstein.Ev NETPATH 1168360efbdSAlfred Perlsteinvariable or in top to down order in the 1178360efbdSAlfred Perlstein.Pa /etc/netconfig 1188360efbdSAlfred Perlsteinfile. 1198360efbdSAlfred Perlstein.Sh Derived Types 1208360efbdSAlfred PerlsteinThe derived types used in the RPC interfaces are defined as follows: 1218360efbdSAlfred Perlstein.Bd -literal 1228360efbdSAlfred Perlstein typedef u_int32_t rpcprog_t; 1238360efbdSAlfred Perlstein typedef u_int32_t rpcvers_t; 1248360efbdSAlfred Perlstein typedef u_int32_t rpcproc_t; 1258360efbdSAlfred Perlstein typedef u_int32_t rpcprot_t; 1268360efbdSAlfred Perlstein typedef u_int32_t rpcport_t; 1278360efbdSAlfred Perlstein typedef int32_t rpc_inline_t; 1281b51e5d0SRuslan Ermilov.Ed 1298360efbdSAlfred Perlstein.Sh "Data Structures" 1308360efbdSAlfred PerlsteinSome of the data structures used by the 1318360efbdSAlfred PerlsteinRPC package are shown below. 1328360efbdSAlfred Perlstein.Sh "The AUTH Structure" 1338360efbdSAlfred Perlstein.Bd -literal 1348360efbdSAlfred Perlstein/* 1358360efbdSAlfred Perlstein * Authentication info. Opaque to client. 1368360efbdSAlfred Perlstein */ 1378360efbdSAlfred Perlsteinstruct opaque_auth { 1388360efbdSAlfred Perlstein enum_t oa_flavor; /* flavor of auth */ 1398360efbdSAlfred Perlstein caddr_t oa_base; /* address of more auth stuff */ 1408360efbdSAlfred Perlstein u_int oa_length; /* not to exceed MAX_AUTH_BYTES */ 1418360efbdSAlfred Perlstein}; 1428360efbdSAlfred Perlstein 1438360efbdSAlfred Perlstein/* 1448360efbdSAlfred Perlstein * Auth handle, interface to client side authenticators. 1458360efbdSAlfred Perlstein */ 1468360efbdSAlfred Perlsteintypedef struct { 1478360efbdSAlfred Perlstein struct opaque_auth ah_cred; 1488360efbdSAlfred Perlstein struct opaque_auth ah_verf; 1498360efbdSAlfred Perlstein struct auth_ops { 1508360efbdSAlfred Perlstein void (*ah_nextverf)(\|); 1518360efbdSAlfred Perlstein int (*ah_marshal)(\|); /* nextverf & serialize */ 1528360efbdSAlfred Perlstein int (*ah_validate)(\|); /* validate verifier */ 1538360efbdSAlfred Perlstein int (*ah_refresh)(\|); /* refresh credentials */ 1548360efbdSAlfred Perlstein void (*ah_destroy)(\|); /* destroy this structure */ 1558360efbdSAlfred Perlstein } *ah_ops; 1568360efbdSAlfred Perlstein caddr_t ah_private; 1578360efbdSAlfred Perlstein} AUTH; 1588360efbdSAlfred Perlstein.Ed 1598360efbdSAlfred Perlstein.Sh "The CLIENT Structure" 1608360efbdSAlfred Perlstein.Bd -literal 1618360efbdSAlfred Perlstein/* 1628360efbdSAlfred Perlstein * Client rpc handle. 1638360efbdSAlfred Perlstein * Created by individual implementations. 1648360efbdSAlfred Perlstein * Client is responsible for initializing auth. 1658360efbdSAlfred Perlstein */ 1668360efbdSAlfred Perlstein 1678360efbdSAlfred Perlsteintypedef struct { 1688360efbdSAlfred Perlstein AUTH *cl_auth; /* authenticator */ 1698360efbdSAlfred Perlstein struct clnt_ops { 1708360efbdSAlfred Perlstein enum clnt_stat (*cl_call)(); /* call remote procedure */ 1718360efbdSAlfred Perlstein void (*cl_abort)(); /* abort a call */ 1728360efbdSAlfred Perlstein void (*cl_geterr)(); /* get specific error code */ 1738360efbdSAlfred Perlstein bool_t (*cl_freeres)(); /* frees results */ 1748360efbdSAlfred Perlstein void (*cl_destroy)(); /* destroy this structure */ 1758360efbdSAlfred Perlstein bool_t (*cl_control)(); /* the ioctl() of rpc */ 1768360efbdSAlfred Perlstein } *cl_ops; 1778360efbdSAlfred Perlstein caddr_t cl_private; /* private stuff */ 1788360efbdSAlfred Perlstein char *cl_netid; /* network identifier */ 1798360efbdSAlfred Perlstein char *cl_tp; /* device name */ 1808360efbdSAlfred Perlstein} CLIENT; 1818360efbdSAlfred Perlstein.Ed 1828360efbdSAlfred Perlstein.Sh "The SVCXPRT structure" 1838360efbdSAlfred Perlstein.Bd -literal 1848360efbdSAlfred Perlsteinenum xprt_stat { 1858360efbdSAlfred Perlstein XPRT_DIED, 1868360efbdSAlfred Perlstein XPRT_MOREREQS, 1878360efbdSAlfred Perlstein XPRT_IDLE 1888360efbdSAlfred Perlstein}; 1898360efbdSAlfred Perlstein 1908360efbdSAlfred Perlstein/* 1918360efbdSAlfred Perlstein * Server side transport handle 1928360efbdSAlfred Perlstein */ 1938360efbdSAlfred Perlsteintypedef struct { 1948360efbdSAlfred Perlstein int xp_fd; /* file descriptor for the server handle */ 1958360efbdSAlfred Perlstein u_short xp_port; /* obsolete */ 1968360efbdSAlfred Perlstein const struct xp_ops { 1978360efbdSAlfred Perlstein bool_t (*xp_recv)(); /* receive incoming requests */ 1988360efbdSAlfred Perlstein enum xprt_stat (*xp_stat)(); /* get transport status */ 1998360efbdSAlfred Perlstein bool_t (*xp_getargs)(); /* get arguments */ 2008360efbdSAlfred Perlstein bool_t (*xp_reply)(); /* send reply */ 2018360efbdSAlfred Perlstein bool_t (*xp_freeargs)(); /* free mem allocated for args */ 2028360efbdSAlfred Perlstein void (*xp_destroy)(); /* destroy this struct */ 2038360efbdSAlfred Perlstein } *xp_ops; 2048360efbdSAlfred Perlstein int xp_addrlen; /* length of remote addr. Obsolete */ 2058360efbdSAlfred Perlstein struct sockaddr_in xp_raddr; /* Obsolete */ 2068360efbdSAlfred Perlstein const struct xp_ops2 { 2078360efbdSAlfred Perlstein bool_t (*xp_control)(); /* catch-all function */ 2088360efbdSAlfred Perlstein } *xp_ops2; 2098360efbdSAlfred Perlstein char *xp_tp; /* transport provider device name */ 2108360efbdSAlfred Perlstein char *xp_netid; /* network identifier */ 2118360efbdSAlfred Perlstein struct netbuf xp_ltaddr; /* local transport address */ 2128360efbdSAlfred Perlstein struct netbuf xp_rtaddr; /* remote transport address */ 2138360efbdSAlfred Perlstein struct opaque_auth xp_verf; /* raw response verifier */ 2148360efbdSAlfred Perlstein caddr_t xp_p1; /* private: for use by svc ops */ 2158360efbdSAlfred Perlstein caddr_t xp_p2; /* private: for use by svc ops */ 2168360efbdSAlfred Perlstein caddr_t xp_p3; /* private: for use by svc lib */ 2178360efbdSAlfred Perlstein int xp_type /* transport type */ 2188360efbdSAlfred Perlstein} SVCXPRT; 2198360efbdSAlfred Perlstein.Ed 2208360efbdSAlfred Perlstein.Sh "The svc_reg structure" 2218360efbdSAlfred Perlstein.Bd -literal 2228360efbdSAlfred Perlsteinstruct svc_req { 2238360efbdSAlfred Perlstein rpcprog_t rq_prog; /* service program number */ 2248360efbdSAlfred Perlstein rpcvers_t rq_vers; /* service protocol version */ 2258360efbdSAlfred Perlstein rpcproc_t rq_proc; /* the desired procedure */ 2268360efbdSAlfred Perlstein struct opaque_auth rq_cred; /* raw creds from the wire */ 2278360efbdSAlfred Perlstein caddr_t rq_clntcred; /* read only cooked cred */ 2288360efbdSAlfred Perlstein SVCXPRT *rq_xprt; /* associated transport */ 2298360efbdSAlfred Perlstein}; 2308360efbdSAlfred Perlstein.Ed 2318360efbdSAlfred Perlstein.Sh "The XDR structure" 2328360efbdSAlfred Perlstein.Bd -literal 2338360efbdSAlfred Perlstein/* 2348360efbdSAlfred Perlstein * XDR operations. 2358360efbdSAlfred Perlstein * XDR_ENCODE causes the type to be encoded into the stream. 2368360efbdSAlfred Perlstein * XDR_DECODE causes the type to be extracted from the stream. 2378360efbdSAlfred Perlstein * XDR_FREE can be used to release the space allocated by an XDR_DECODE 2388360efbdSAlfred Perlstein * request. 2398360efbdSAlfred Perlstein */ 2408360efbdSAlfred Perlsteinenum xdr_op { 2418360efbdSAlfred Perlstein XDR_ENCODE=0, 2428360efbdSAlfred Perlstein XDR_DECODE=1, 2438360efbdSAlfred Perlstein XDR_FREE=2 2448360efbdSAlfred Perlstein}; 2458360efbdSAlfred Perlstein/* 2468360efbdSAlfred Perlstein * This is the number of bytes per unit of external data. 2478360efbdSAlfred Perlstein */ 2488360efbdSAlfred Perlstein#define BYTES_PER_XDR_UNIT (4) 2498360efbdSAlfred Perlstein#define RNDUP(x) ((((x) + BYTES_PER_XDR_UNIT - 1) / 2508360efbdSAlfred Perlstein BYTES_PER_XDR_UNIT) \e * BYTES_PER_XDR_UNIT) 2518360efbdSAlfred Perlstein 2528360efbdSAlfred Perlstein/* 2538360efbdSAlfred Perlstein * A xdrproc_t exists for each data type which is to be encoded or 2548360efbdSAlfred Perlstein * decoded. The second argument to the xdrproc_t is a pointer to 2558360efbdSAlfred Perlstein * an opaque pointer. The opaque pointer generally points to a 2568360efbdSAlfred Perlstein * structure of the data type to be decoded. If this points to 0, 2578360efbdSAlfred Perlstein * then the type routines should allocate dynamic storage of the 2588360efbdSAlfred Perlstein * appropriate size and return it. 2598360efbdSAlfred Perlstein * bool_t (*xdrproc_t)(XDR *, caddr_t *); 2608360efbdSAlfred Perlstein */ 2618360efbdSAlfred Perlsteintypedef bool_t (*xdrproc_t)(); 2628360efbdSAlfred Perlstein 2638360efbdSAlfred Perlstein/* 2648360efbdSAlfred Perlstein * The XDR handle. 2658360efbdSAlfred Perlstein * Contains operation which is being applied to the stream, 2668360efbdSAlfred Perlstein * an operations vector for the particular implementation 2678360efbdSAlfred Perlstein */ 2688360efbdSAlfred Perlsteintypedef struct { 2698360efbdSAlfred Perlstein enum xdr_op x_op; /* operation; fast additional param */ 2708360efbdSAlfred Perlstein struct xdr_ops { 2718360efbdSAlfred Perlstein bool_t (*x_getlong)(); /* get a long from underlying stream */ 2728360efbdSAlfred Perlstein bool_t (*x_putlong)(); /* put a long to underlying stream */ 2738360efbdSAlfred Perlstein bool_t (*x_getbytes)(); /* get bytes from underlying stream */ 2748360efbdSAlfred Perlstein bool_t (*x_putbytes)(); /* put bytes to underlying stream */ 2758360efbdSAlfred Perlstein u_int (*x_getpostn)(); /* returns bytes off from beginning */ 2768360efbdSAlfred Perlstein bool_t (*x_setpostn)(); /* lets you reposition the stream */ 2778360efbdSAlfred Perlstein long * (*x_inline)(); /* buf quick ptr to buffered data */ 2788360efbdSAlfred Perlstein void (*x_destroy)(); /* free privates of this xdr_stream */ 2798360efbdSAlfred Perlstein } *x_ops; 2808360efbdSAlfred Perlstein caddr_t x_public; /* users' data */ 2818360efbdSAlfred Perlstein caddr_t x_private; /* pointer to private data */ 2828360efbdSAlfred Perlstein caddr_t x_base; /* private used for position info */ 283d7f15c94SJacques Vidrine u_int x_handy; /* extra private word */ 2848360efbdSAlfred Perlstein} XDR; 2858360efbdSAlfred Perlstein 2868360efbdSAlfred Perlstein/* 2878360efbdSAlfred Perlstein * The netbuf structure. This structure is defined in <xti.h> on SysV 2888360efbdSAlfred Perlstein * systems, but NetBSD / FreeBSD do not use XTI. 2898360efbdSAlfred Perlstein * 2908360efbdSAlfred Perlstein * Usually, buf will point to a struct sockaddr, and len and maxlen 2918360efbdSAlfred Perlstein * will contain the length and maximum length of that socket address, 2928360efbdSAlfred Perlstein * respectively. 2938360efbdSAlfred Perlstein */ 2948360efbdSAlfred Perlsteinstruct netbuf { 2958360efbdSAlfred Perlstein unsigned int maxlen; 2968360efbdSAlfred Perlstein unsigned int len; 2978360efbdSAlfred Perlstein void *buf; 2988360efbdSAlfred Perlstein}; 2998360efbdSAlfred Perlstein 3008360efbdSAlfred Perlstein/* 30157bd0fc6SJens Schweikhardt * The format of the address and options arguments of the XTI t_bind call. 3028360efbdSAlfred Perlstein * Only provided for compatibility, it should not be used other than 3038360efbdSAlfred Perlstein * as an argument to svc_tli_create(). 3048360efbdSAlfred Perlstein */ 3058360efbdSAlfred Perlstein 3068360efbdSAlfred Perlsteinstruct t_bind { 3078360efbdSAlfred Perlstein struct netbuf addr; 3088360efbdSAlfred Perlstein unsigned int qlen; 3098360efbdSAlfred Perlstein}; 3108360efbdSAlfred Perlstein.Ed 3118360efbdSAlfred Perlstein.Sh "Index to Routines" 3128360efbdSAlfred PerlsteinThe following table lists RPC routines and the manual reference 3138360efbdSAlfred Perlsteinpages on which they are described: 3141b51e5d0SRuslan Ermilov.Pp 3158360efbdSAlfred Perlstein.Bl -tag -width "authunix_create_default()" -compact 3168360efbdSAlfred Perlstein.It Em "RPC Routine" 3178360efbdSAlfred Perlstein.Em "Manual Reference Page" 3181b51e5d0SRuslan Ermilov.Pp 3198360efbdSAlfred Perlstein.It Fn auth_destroy 3208360efbdSAlfred Perlstein.Xr rpc_clnt_auth 3 3218360efbdSAlfred Perlstein.It Fn authdes_create 3228360efbdSAlfred Perlstein.Xr rpc_soc 3 3238360efbdSAlfred Perlstein.It Fn authnone_create 3248360efbdSAlfred Perlstein.Xr rpc_clnt_auth 3 3258360efbdSAlfred Perlstein.It Fn authsys_create 3268360efbdSAlfred Perlstein.Xr rpc_clnt_auth 3 3278360efbdSAlfred Perlstein.It Fn authsys_create_default 3288360efbdSAlfred Perlstein.Xr rpc_clnt_auth 3 3298360efbdSAlfred Perlstein.It Fn authunix_create 3308360efbdSAlfred Perlstein.Xr rpc_soc 3 3318360efbdSAlfred Perlstein.It Fn authunix_create_default 3328360efbdSAlfred Perlstein.Xr rpc_soc 3 3338360efbdSAlfred Perlstein.It Fn callrpc 3348360efbdSAlfred Perlstein.Xr rpc_soc 3 3358360efbdSAlfred Perlstein.It Fn clnt_broadcast 3368360efbdSAlfred Perlstein.Xr rpc_soc 3 3378360efbdSAlfred Perlstein.It Fn clnt_call 3388360efbdSAlfred Perlstein.Xr rpc_clnt_calls 3 3398360efbdSAlfred Perlstein.It Fn clnt_control 3408360efbdSAlfred Perlstein.Xr rpc_clnt_create 3 3418360efbdSAlfred Perlstein.It Fn clnt_create 3428360efbdSAlfred Perlstein.Xr rpc_clnt_create 3 34362947a57SAlfred Perlstein.It Fn clnt_create_timed 34462947a57SAlfred Perlstein.Xr rpc_clnt_create 3 34562947a57SAlfred Perlstein.It Fn clnt_create_vers 34662947a57SAlfred Perlstein.Xr rpc_clnt_create 3 34762947a57SAlfred Perlstein.It Fn clnt_create_vers_timed 34862947a57SAlfred Perlstein.Xr rpc_clnt_create 3 3498360efbdSAlfred Perlstein.It Fn clnt_destroy 3508360efbdSAlfred Perlstein.Xr rpc_clnt_create 3 3518360efbdSAlfred Perlstein.It Fn clnt_dg_create 3528360efbdSAlfred Perlstein.Xr rpc_clnt_create 3 3538360efbdSAlfred Perlstein.It Fn clnt_freeres 3548360efbdSAlfred Perlstein.Xr rpc_clnt_calls 3 3558360efbdSAlfred Perlstein.It Fn clnt_geterr 3568360efbdSAlfred Perlstein.Xr rpc_clnt_calls 3 3578360efbdSAlfred Perlstein.It Fn clnt_pcreateerror 3588360efbdSAlfred Perlstein.Xr rpc_clnt_create 3 3598360efbdSAlfred Perlstein.It Fn clnt_perrno 3608360efbdSAlfred Perlstein.Xr rpc_clnt_calls 3 3618360efbdSAlfred Perlstein.It Fn clnt_perror 3628360efbdSAlfred Perlstein.Xr rpc_clnt_calls 3 3638360efbdSAlfred Perlstein.It Fn clnt_raw_create 3648360efbdSAlfred Perlstein.Xr rpc_clnt_create 3 3658360efbdSAlfred Perlstein.It Fn clnt_spcreateerror 3668360efbdSAlfred Perlstein.Xr rpc_clnt_create 3 3678360efbdSAlfred Perlstein.It Fn clnt_sperrno 3688360efbdSAlfred Perlstein.Xr rpc_clnt_calls 3 3698360efbdSAlfred Perlstein.It Fn clnt_sperror 3708360efbdSAlfred Perlstein.Xr rpc_clnt_calls 3 3718360efbdSAlfred Perlstein.It Fn clnt_tli_create 3728360efbdSAlfred Perlstein.Xr rpc_clnt_create 3 3738360efbdSAlfred Perlstein.It Fn clnt_tp_create 3748360efbdSAlfred Perlstein.Xr rpc_clnt_create 3 37562947a57SAlfred Perlstein.It Fn clnt_tp_create_timed 37662947a57SAlfred Perlstein.Xr rpc_clnt_create 3 3778360efbdSAlfred Perlstein.It Fn clnt_udpcreate 3788360efbdSAlfred Perlstein.Xr rpc_soc 3 3798360efbdSAlfred Perlstein.It Fn clnt_vc_create 3808360efbdSAlfred Perlstein.Xr rpc_clnt_create 3 3818360efbdSAlfred Perlstein.It Fn clntraw_create 3828360efbdSAlfred Perlstein.Xr rpc_soc 3 3838360efbdSAlfred Perlstein.It Fn clnttcp_create 3848360efbdSAlfred Perlstein.Xr rpc_soc 3 3858360efbdSAlfred Perlstein.It Fn clntudp_bufcreate 3868360efbdSAlfred Perlstein.Xr rpc_soc 3 3878360efbdSAlfred Perlstein.It Fn get_myaddress 3888360efbdSAlfred Perlstein.Xr rpc_soc 3 3898360efbdSAlfred Perlstein.It Fn pmap_getmaps 3908360efbdSAlfred Perlstein.Xr rpc_soc 3 3918360efbdSAlfred Perlstein.It Fn pmap_getport 3928360efbdSAlfred Perlstein.Xr rpc_soc 3 3938360efbdSAlfred Perlstein.It Fn pmap_rmtcall 3948360efbdSAlfred Perlstein.Xr rpc_soc 3 3958360efbdSAlfred Perlstein.It Fn pmap_set 3968360efbdSAlfred Perlstein.Xr rpc_soc 3 3978360efbdSAlfred Perlstein.It Fn pmap_unset 3988360efbdSAlfred Perlstein.Xr rpc_soc 3 3998360efbdSAlfred Perlstein.It Fn registerrpc 4008360efbdSAlfred Perlstein.Xr rpc_soc 3 4018360efbdSAlfred Perlstein.It Fn rpc_broadcast 4028360efbdSAlfred Perlstein.Xr rpc_clnt_calls 3 4038360efbdSAlfred Perlstein.It Fn rpc_broadcast_exp 4048360efbdSAlfred Perlstein.Xr rpc_clnt_calls 3 4058360efbdSAlfred Perlstein.It Fn rpc_call 4068360efbdSAlfred Perlstein.Xr rpc_clnt_calls 3 4078360efbdSAlfred Perlstein.It Fn rpc_reg 4088360efbdSAlfred Perlstein.Xr rpc_svc_calls 3 4098360efbdSAlfred Perlstein.It Fn svc_create 4108360efbdSAlfred Perlstein.Xr rpc_svc_create 3 4118360efbdSAlfred Perlstein.It Fn svc_destroy 4128360efbdSAlfred Perlstein.Xr rpc_svc_create 3 4138360efbdSAlfred Perlstein.It Fn svc_dg_create 4148360efbdSAlfred Perlstein.Xr rpc_svc_create 3 4158360efbdSAlfred Perlstein.It Fn svc_dg_enablecache 4168360efbdSAlfred Perlstein.Xr rpc_svc_calls 3 4178360efbdSAlfred Perlstein.It Fn svc_fd_create 4188360efbdSAlfred Perlstein.Xr rpc_svc_create 3 4198360efbdSAlfred Perlstein.It Fn svc_fds 4208360efbdSAlfred Perlstein.Xr rpc_soc 3 4218360efbdSAlfred Perlstein.It Fn svc_freeargs 4228360efbdSAlfred Perlstein.Xr rpc_svc_reg 3 4238360efbdSAlfred Perlstein.It Fn svc_getargs 4248360efbdSAlfred Perlstein.Xr rpc_svc_reg 3 4258360efbdSAlfred Perlstein.It Fn svc_getcaller 4268360efbdSAlfred Perlstein.Xr rpc_soc 3 4278360efbdSAlfred Perlstein.It Fn svc_getreq 4288360efbdSAlfred Perlstein.Xr rpc_soc 3 4298360efbdSAlfred Perlstein.It Fn svc_getreqset 4308360efbdSAlfred Perlstein.Xr rpc_svc_calls 3 4318360efbdSAlfred Perlstein.It Fn svc_getrpccaller 4328360efbdSAlfred Perlstein.Xr rpc_svc_calls 3 4338360efbdSAlfred Perlstein.It Fn svc_kerb_reg 4348360efbdSAlfred Perlstein.Xr kerberos_rpc 3 4358360efbdSAlfred Perlstein.It Fn svc_raw_create 4368360efbdSAlfred Perlstein.Xr rpc_svc_create 3 4378360efbdSAlfred Perlstein.It Fn svc_reg 4388360efbdSAlfred Perlstein.Xr rpc_svc_calls 3 4398360efbdSAlfred Perlstein.It Fn svc_register 4408360efbdSAlfred Perlstein.Xr rpc_soc 3 4418360efbdSAlfred Perlstein.It Fn svc_run 4428360efbdSAlfred Perlstein.Xr rpc_svc_reg 3 4438360efbdSAlfred Perlstein.It Fn svc_sendreply 4448360efbdSAlfred Perlstein.Xr rpc_svc_reg 3 4458360efbdSAlfred Perlstein.It Fn svc_tli_create 4468360efbdSAlfred Perlstein.Xr rpc_svc_create 3 4478360efbdSAlfred Perlstein.It Fn svc_tp_create 4488360efbdSAlfred Perlstein.Xr rpc_svc_create 3 4498360efbdSAlfred Perlstein.It Fn svc_unreg 4508360efbdSAlfred Perlstein.Xr rpc_svc_calls 3 4518360efbdSAlfred Perlstein.It Fn svc_unregister 4528360efbdSAlfred Perlstein.Xr rpc_soc 3 4538360efbdSAlfred Perlstein.It Fn svc_vc_create 4548360efbdSAlfred Perlstein.Xr rpc_svc_create 3 4558360efbdSAlfred Perlstein.It Fn svcerr_auth 4568360efbdSAlfred Perlstein.Xr rpc_svc_err 3 4578360efbdSAlfred Perlstein.It Fn svcerr_decode 4588360efbdSAlfred Perlstein.Xr rpc_svc_err 3 4598360efbdSAlfred Perlstein.It Fn svcerr_noproc 4608360efbdSAlfred Perlstein.Xr rpc_svc_err 3 4618360efbdSAlfred Perlstein.It Fn svcerr_noprog 4628360efbdSAlfred Perlstein.Xr rpc_svc_err 3 4638360efbdSAlfred Perlstein.It Fn svcerr_progvers 4648360efbdSAlfred Perlstein.Xr rpc_svc_err 3 4658360efbdSAlfred Perlstein.It Fn svcerr_systemerr 4668360efbdSAlfred Perlstein.Xr rpc_svc_err 3 4678360efbdSAlfred Perlstein.It Fn svcerr_weakauth 4688360efbdSAlfred Perlstein.Xr rpc_svc_err 3 4698360efbdSAlfred Perlstein.It Fn svcfd_create 4708360efbdSAlfred Perlstein.Xr rpc_soc 3 4718360efbdSAlfred Perlstein.It Fn svcraw_create 4728360efbdSAlfred Perlstein.Xr rpc_soc 3 4738360efbdSAlfred Perlstein.It Fn svctcp_create 4748360efbdSAlfred Perlstein.Xr rpc_soc 3 4758360efbdSAlfred Perlstein.It Fn svcudp_bufcreate 4768360efbdSAlfred Perlstein.Xr rpc_soc 3 4778360efbdSAlfred Perlstein.It Fn svcudp_create 4788360efbdSAlfred Perlstein.Xr rpc_soc 3 4798360efbdSAlfred Perlstein.It Fn xdr_accepted_reply 4808360efbdSAlfred Perlstein.Xr rpc_xdr 3 4818360efbdSAlfred Perlstein.It Fn xdr_authsys_parms 4828360efbdSAlfred Perlstein.Xr rpc_xdr 3 4838360efbdSAlfred Perlstein.It Fn xdr_authunix_parms 4848360efbdSAlfred Perlstein.Xr rpc_soc 3 4858360efbdSAlfred Perlstein.It Fn xdr_callhdr 4868360efbdSAlfred Perlstein.Xr rpc_xdr 3 4878360efbdSAlfred Perlstein.It Fn xdr_callmsg 4888360efbdSAlfred Perlstein.Xr rpc_xdr 3 4898360efbdSAlfred Perlstein.It Fn xdr_opaque_auth 4908360efbdSAlfred Perlstein.Xr rpc_xdr 3 4918360efbdSAlfred Perlstein.It Fn xdr_rejected_reply 4928360efbdSAlfred Perlstein.Xr rpc_xdr 3 4938360efbdSAlfred Perlstein.It Fn xdr_replymsg 4948360efbdSAlfred Perlstein.Xr rpc_xdr 3 4958360efbdSAlfred Perlstein.It Fn xprt_register 4968360efbdSAlfred Perlstein.Xr rpc_svc_calls 3 4978360efbdSAlfred Perlstein.It Fn xprt_unregister 4988360efbdSAlfred Perlstein.Xr rpc_svc_calls 3 4998360efbdSAlfred Perlstein.El 5008360efbdSAlfred Perlstein.Sh FILES 5018360efbdSAlfred Perlstein.Bl -tag -width /etc/netconfig 5028360efbdSAlfred Perlstein.It Pa /etc/netconfig 5031b51e5d0SRuslan Ermilov.El 5041b51e5d0SRuslan Ermilov.Sh SEE ALSO 5058360efbdSAlfred Perlstein.Xr getnetconfig 3 , 5068360efbdSAlfred Perlstein.Xr getnetpath 3 , 5075521ff5aSRuslan Ermilov.Xr rpcbind 3 , 5088360efbdSAlfred Perlstein.Xr rpc_clnt_auth 3 , 5098360efbdSAlfred Perlstein.Xr rpc_clnt_calls 3 , 5108360efbdSAlfred Perlstein.Xr rpc_clnt_create 3 , 5118360efbdSAlfred Perlstein.Xr rpc_svc_calls 3 , 5128360efbdSAlfred Perlstein.Xr rpc_svc_create 3 , 5138360efbdSAlfred Perlstein.Xr rpc_svc_err 3 , 5148360efbdSAlfred Perlstein.Xr rpc_svc_reg 3 , 5158360efbdSAlfred Perlstein.Xr rpc_xdr 3 , 5168360efbdSAlfred Perlstein.Xr xdr 3 , 5178360efbdSAlfred Perlstein.Xr netconfig 5 518