rpc_register(3ncs) [ultrix man page]
rpc_register(3ncs) rpc_register(3ncs) Name rpc_register - register an interface (server only) Syntax #include <idl/c/rpc.h> void rpc_$register(ifspec, epv, status) rpc_$if_spec_t *ifspec; rpc_$epv_t epv; status_$t *status; Arguments ifspec The interface being registered. epv The entry point vector (EPV) for the operations in the interface. The EPV is always defined in the server stub that is generated by the NIDL compiler from an interface definition. 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 registers an interface with the RPC runtime library. After an interface is registered, the RPC runtime library will pass requests for that interface to the server. You can call several times with the same interface (for example, from various subroutines of the same server), but each call must specify the same EPV. Each registration increments a reference count for the registered interface; an equal number of routines are then required to unregister the interface. Examples The following statement registers the bank interface with the bank server host's RPC runtime library: rpc_$register (&bank_$if_spec, bank_$server_epv, &status); Diagnostics This section lists status codes for errors returned by this routine in rpc_$op_rng_error The requested operation does not correspond to a valid operation in the requested interface. rpc_$too_many_ifs The maximum number of interfaces is already registered with the RPC runtime library; the server must unregister some interface before it registers an additional interface. rpc_$not_in_call An internal error. rpc_$you_crashed This error can occur if a server has crashed and restarted. A client RPC runtime library sends the error to the server if the client makes a remote procedure call before the server crashes, then receives a response after the server restarts. rpc_$proto_error An internal protocol error. rpc_$illegal_register You are trying to register an interface that is already registered and you are using an EPV different from the one used when the interface was first registered. An interface can be multiply registered, but you must use the same EPV in each routine. rpc_$bad_pkt The server or client has received an ill-formed packet. Files See Also intro(3ncs), rpc_register_mgr(3ncs), rpc_register_object(3ncs), rpc_unregister(3ncs) rpc_register(3ncs)
Check Out this Related Man Page
rpc_name_to_sockaddr(3ncs) rpc_name_to_sockaddr(3ncs) Name rpc_name_to_sockaddr - convert a host name and port number to a socket address (client or server) Syntax #include <idl/c/rpc.h> void rpc_$name_to_sockaddr(name, nlength, port, family, sockaddr, slength, status) unsigned char name; unsigned long nlength; unsigned long port; unsigned long family; socket_$addr_t *sockaddr; unsigned long *slength; status_$t *status; Arguments name A string that contains a host name and, optionally, a port and an address family. The format is family:host[port], where family: and [port] are optional. If you specify a family as part of the name parameter, you must specify socket_$unspec in the family parameter. The family part of the name parameter is ip; host is the host name; port is an integer port number. nlength The number of characters in name. port The socket port number. This parameter should have the value rpc_$unbound_port if you are not specifying a well-known port; in this case, the returned socket address will specify the Local Location Broker (LLB) forwarding port at host. If you specify the port number in the name parameter, this parameter is ignored. family The address family to use for the socket address. This value corresponds to the communications protocol used to access the socket and determines how the sockaddr is expressed. If you specify the address family in the name parameter, this parameter must have the value socket_$unspec. sockaddr The socket address corresponding to name, port, and family. 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 provides the socket address for a socket, given the host name, the port number, and the address family. You can specify the socket address information either as one text string in the name parameter or by passing each of the three elements as separate parameters( name, port, and family ); in the latter case, the name parameter should contain only the hostname. Diagnostics This section lists status codes for errors returned by this routine in rpc_$not_in_call An internal error. rpc_$proto_error An internal protocol error. This routine has been superseded by the routine. Files See Also intro(3ncs), rpc_sockaddr_to_name(3ncs), socket_from_name(3ncs) rpc_name_to_sockaddr(3ncs)