The client interface to the Portmapper service for a remote call and broadcast service. This routine allows a program to do a lookup and call in one step. Format #include <rpc/pmap_clnt.h> enum clnt_stat pmap_rmtcall(struct sockaddr_in *addr, u_long prognum, u_long versnum, u_long procnum, xdrproc_t inproc, char * in xdrproc_t outproc, char * out, struct timeval timeout, u_long *port );
1 – Arguments
addr A pointer to a sockaddr_in structure containing the Internet address of the host where the remote Portmapper resides. prognum The program number associated with the remote procedure. versnum The version number associated with the remote procedure. procnum The procedure number associated with the remote procedure. inproc The XDR routine used to encode the remote procedure's arguments. in A pointer to the remote procedure's arguments. outproc The XDR routine used to decode the remote procedure's results. out A pointer to the remote procedure's results. timeout A timeval structure describing the time allowed for the results to return to the client. port A pointer to a location for the returned port number. Modified to the remote program's port number if the pmap_rmtcall routine succeeds.
2 – Description
A client interface to the Portmapper, which instructs the Portmapper on the host at the Internet address *addr to make a call on your behalf to a procedure on that host. Use this procedure for a ping operation and nothing else. You can use the clnt_perrno routine to print any error message. NOTE If the requested procedure is not registered with the remote Portmapper, the remote Portmapper does not reply to the request. The call to pmap_rmtcall will eventually time out. The pmap_rmtcall does not perform authentication.
3 – Return Values
enum clnt_stat Returns the buffer containing the status of the operation.