00001 00002 00003 #ifndef RPC_SRV_HH 00004 #define RPC_SRV_HH 00005 00006 #include "cms.hh" /* class CMS */ 00007 #include "cms_srv.hh" /* class CMS_SERVER_REMOTE_PORT,CMS_SERVER */ 00008 #include <rpc/rpc.h> /* SVCXPRT, svc_req */ 00009 00010 #define NUMBER_OF_RPC_SERVER_PROCS 7 00011 00012 00013 class CMS_SERVER_REMOTE_RPC_PORT:public CMS_SERVER_REMOTE_PORT 00014 { 00015 public: 00016 CMS_SERVER_REMOTE_RPC_PORT (CMS_SERVER *); 00017 virtual ~ CMS_SERVER_REMOTE_RPC_PORT (); 00018 void run (); 00019 void register_port (); 00020 void unregister_port (); 00021 int accept_local_port_cms (CMS *); 00022 protected: 00023 SVCXPRT * xprt; /* External Port structure. */ 00024 unsigned long prog_num; /* RPC Program Number. */ 00025 static void dispatch (svc_req * request, SVCXPRT * dispatch_xprt); 00026 }; 00027 00028 00029 #endif /* RPC_SRV_HH */