-template<class R> int
-rpcc::call_m(unsigned int proc, marshall &req, R & r, TO to)
-{
- unmarshall u;
- int intret = call1(proc, req, u, to);
- if (intret < 0) return intret;
- u >> r;
- if (u.okdone() != true) {
- fprintf(stderr, "rpcc::call_m: failed to unmarshall the reply."
- "You are probably calling RPC 0x%x with wrong return "
- "type.\n", proc);
- VERIFY(0);
- return rpc_const::unmarshal_reply_failure;
- }
- return intret;
-}
-
-template<class R, typename... Args> inline int
-rpcc::call(unsigned int proc, R & r, const Args&... args)
-{
- return call_timeout(proc, rpcc::to_max, r, args...);
-}
-
-template<class R, typename... Args> inline int
-rpcc::call_timeout(unsigned int proc, const rpcc::TO to, R & r, const Args&... args)
-{
- marshall m{args...};
- return call_m(proc, m, r, to);
-}
-
-bool operator<(const sockaddr_in &a, const sockaddr_in &b);
-