The svc_run() call accepts RPC requests and calls the appropriate service using svc_getreq(). The svc_run() call does not return control to the caller.
Syntax
#include <rpc\rpc.h> void svc_run()
Examples
#define RMTPROGNUM (u_long)0x3fffffffL #define RMTPROGVER (u_long)0x1L ... SVCXPRT *transp; transp = svcudp_create(RPC_ANYSOCK); if (transp == NULL) { fprintf(stderr, "can't create an RPC server transport\n"); exit(-1); } pmap_unset(RMTPROGNUM, RMTPROGVER); if (!svc_register(transp, RMTPROGNUM, RMTPROGVER, rmtprog, IPPROTO_UDP)) { fprintf(stderr, "can't register rmtprog() service\n"); exit(-1); } printf("rmtprog() service registered.\n"); svc_run(); printf("Error:svc_run should never reach this point \n"); exit(1); ...
rmtprog(rqstp, transp) struct svc_req *rqstp; SVCXPRT *transp; { ... }
Related Calls