rpc_use_family_wk(3ncs)rpc_use_family_wk(3ncs)Namerpc_use_family_wk - create a socket with a well-known port for a remote
procedure call (RPC) server (server only)
Syntax
#include <idl/c/rpc.h>
void rpc_$use_family_wk(family, ifspec, sockaddr, slength, status)
unsigned long family;
rpc_$if_spec_t *ifspec;
socket_$addr_t *sockaddr;
unsigned long *slength;
status_$t *status;
Arguments
family The address family of the socket to be created. This
value corresponds to the communications protocol used to
access the socket and determines how the sockaddr is
expressed. The value must be one of socket_$unspec or
socket_$internet.
ifspec The interface that will be registered by the server.
Typically, this parameter is the interface if_spec gen‐
erated by the NIDL compiler from the interface defini‐
tion; the well-known port is specified as an interface
attribute.
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 that uses the port specified through the
if_spec parameter. Use this routine to create a socket only if a
server must listen on a particular well-known port. Otherwise, use
A server listens on one socket per address family, regardless of how
many interfaces that it exports. Therefore, servers that use well-
known ports should make this call once per supported address family.
Examples
The following statement creates the well-known socket identified by for
an array processor server:
rpc_$use_family_wk (socket_$internet, &matrix$if_spec,
&sockaddr, &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_$bad_pkt The server or client has received an ill-formed
packet.
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.
FilesSee Alsointro(3ncs), rpc_use_family(3ncs)rpc_use_family_wk(3ncs)