rpc_use_family(3ncs) rpc_use_family(3ncs)
Name
rpc_use_family - create a socket of a specified address family for a remote procedure call (RPC) server (server only)
Syntax
#include <idl/c/rpc.h>
void rpc_$use_family(family, sockaddr, slength, status)
unsigned long family;
socket_$addr_t *sockaddr;
unsigned long *slength;
status_$t *status;
Arguments
family The address family of the socket to be created. The value must be one of socket_$internet or socket_$unspec.
sockaddr The socket address of the socket on which the server will listen.
slength The length, in bytes, of sockaddr.
status The completion status. If the completion status returned in is equal to status_$ok , then the routine that supplied it was
successful.
Description
The routine creates a socket for a server without specifying its port number. The RPC runtime software assigns a port number. If a server
must listen on a particular well-known port, use to create the socket.
A server listens on one socket per address family, regardless of how many interfaces that it exports. Therefore, servers should make this
call once per supported address family.
Examples
The following statement creates a server's socket:
rpc_$use_family (family, &saddr, &slen, &status);
Diagnostics
This section lists status codes for errors returned by this routine in
rpc_$cant_create_sock
The RPC runtime library was unable to create a socket.
rpc_$not_in_call An internal error.
rpc_$proto_error An internal protocol error.
rpc_$too_many_sockets
The server is trying to use more than the maximum number of sockets that is allowed; it has called or too many times.
rpc_$addr_in_use The address and port specified in an routine are already in use. This is caused by multiple calls to with the same
well-known port.
Files
See Also
intro(3ncs), rpc_use_family_wk(3ncs)
rpc_use_family(3ncs)