diff options
Diffstat (limited to 'src/nng.c')
| -rw-r--r-- | src/nng.c | 33 |
1 files changed, 33 insertions, 0 deletions
@@ -11,6 +11,7 @@ #include "nng/nng.h" #include "core/nng_impl.h" #include "core/platform.h" +#include "core/socket.h" // This file provides the "public" API. This is a thin wrapper around // internal API functions. We use the public prefix instead of internal, @@ -1142,6 +1143,38 @@ nng_socket_get_addr(nng_socket id, const char *n, nng_sockaddr *v) } int +nng_socket_get_recv_poll_fd(nng_socket id, int *fdp) +{ + int rv; + nni_sock *sock; + + if (((rv = nni_init()) != 0) || + ((rv = nni_sock_find(&sock, id.id)) != 0)) { + return (rv); + } + + rv = nni_sock_get_recv_fd(sock, fdp); + nni_sock_rele(sock); + return (rv); +} + +int +nng_socket_get_send_poll_fd(nng_socket id, int *fdp) +{ + int rv; + nni_sock *sock; + + if (((rv = nni_init()) != 0) || + ((rv = nni_sock_find(&sock, id.id)) != 0)) { + return (rv); + } + + rv = nni_sock_get_send_fd(sock, fdp); + nni_sock_rele(sock); + return (rv); +} + +int nng_pipe_notify(nng_socket s, nng_pipe_ev ev, nng_pipe_cb cb, void *arg) { int rv; |
