rpc_localaddr — discover local endpoint address for an RPC client


int rpc_localaddr (struct rpc_clnt * clnt,
 struct sockaddr * buf,
 size_t buflen);


struct rpc_clnt * clnt

RPC client structure

struct sockaddr * buf

target buffer

size_t buflen

size of target buffer, in bytes


Returns zero and fills in buf and buflen if successful; otherwise, a negative errno is returned.

This works even if the underlying transport is not currently connected, or if the upper layer never previously provided a source address.

The result of this function call is transient: multiple calls in succession may give different results, depending on how local networking configuration changes over time.