The Fn svc_create function registers itself with the rpcbind service (see rpcbind(8)). The Fa dispatch function is called when there is a remote procedure call for the given Fa prognum and Fa versnum ; this requires calling Fn svc_run (see Fn svc_run in rpc_svc_reg3). If Fn svc_create succeeds, it returns the number of server handles it created, otherwise it returns 0 and an error message is logged.
Warning: since connectionless-based RPC messages can only hold limited amount of encoded data, this transport cannot be used for procedures that take large arguments or return huge results.
Note: Fn svc_run should not be called when the raw interface is being used.
Note: the Vt t_bind structure comes from the TLI/XTI SysV interface, which Nx does not use. The structure is defined in In rpc/types.h for compatibility as:
struct t_bind { struct netbuf addr; /* network address, see rpc(3) */ unsigned int qlen; /* queue length (for listen(2)) */ };
In the case where the default address is chosen, the number of outstanding connect requests is set to 8 for connection-oriented transports. The user may specify the size of the send and receive buffers with the arguments Fa sendsz and Fa recvsz ; values of 0 choose suitable defaults. This routine returns NULL if it fails, and an error message is logged. The server is not registered with the rpcbind(8) service.