|
xdrpp
RFC4506 XDR compiler and message library
|
A wrapper around xdr::msg_sock that separates calls from replies. More...
#include <msgsock.h>
Public Types | |
| using | rcb_t = msg_sock::rcb_t |
Public Member Functions | |
| template<typename T > | |
| rpc_sock (pollset &ps, sock_t s, T &&t, size_t maxmsglen=msg_sock::default_maxmsglen) | |
| rpc_sock (pollset &ps, sock_t s) | |
| template<typename T > | |
| void | set_servcb (T &&scb) |
| uint32_t | get_xid () |
| void | send_call (msg_ptr &b, rcb_t cb) |
| void | send_call (msg_ptr &&b, rcb_t cb) |
| void | send_reply (msg_ptr &&b) |
Public Attributes | |
| std::unique_ptr< msg_sock > | ms_ |
| rcb_t | servcb_ |
A wrapper around xdr::msg_sock that separates calls from replies.
Incoming calls are forwarded to whatever callback is registered with rpc_sock::set_servcb, while replies are matched up to callbacks set with rpc_sock::send_call. Calls sent via rpc_sock::send_call should already have a unique xid generated by rpc_sock::get_xid().
1.8.13