From db5467e6c3b502f6e93a6f6c5d1f2a8f86a8eaa5 Mon Sep 17 00:00:00 2001 From: Garrett D'Amore Date: Sat, 9 Nov 2024 08:32:33 -0800 Subject: Add new functions for socket identity. These functions were added in the main branch for NNG 2.0, and we add them here to facilitate converting any code that happened to use the options (`NNG_OPT_PROTO`, `NNG_OPT_PROTONAME`, `NNG_OPT_PEER`, `NNG_OPT_PEERNAME`, and `NNG_OPT_RAW`. Its unlikely that many applications need this, but providing these as a transition aid may help applications start adopting new APIs now. --- include/nng/nng.h | 18 ++++++++++++++---- 1 file changed, 14 insertions(+), 4 deletions(-) (limited to 'include') diff --git a/include/nng/nng.h b/include/nng/nng.h index f8fb2cac..6ae2af54 100644 --- a/include/nng/nng.h +++ b/include/nng/nng.h @@ -250,6 +250,14 @@ NNG_DECL int nng_socket_get_ptr(nng_socket, const char *, void **); NNG_DECL int nng_socket_get_ms(nng_socket, const char *, nng_duration *); NNG_DECL int nng_socket_get_addr(nng_socket, const char *, nng_sockaddr *); +// These functions are used on a socket to get information about it's +// identity, and the identity of the peer. Few applications need these. +NNG_DECL int nng_socket_proto_id(nng_socket id, uint16_t *); +NNG_DECL int nng_socket_peer_id(nng_socket id, uint16_t *); +NNG_DECL int nng_socket_proto_name(nng_socket id, const char **); +NNG_DECL int nng_socket_peer_name(nng_socket id, const char **); +NNG_DECL int nng_socket_raw(nng_socket, bool *); + // Utility function for getting a printable form of the socket address // for display in logs, etc. It is not intended to be parsed, and the // display format may change without notice. Generally you should alow @@ -1439,10 +1447,12 @@ NNG_DECL int nng_pipe_getopt_string( NNG_DECL void nng_closeall(void) NNG_DEPRECATED; // THese functions are deprecated, but they really serve no useful purpose. -NNG_DECL int nng_stream_set_addr( - nng_stream *, const char *, const nng_sockaddr *) NNG_DEPRECATED; -NNG_DECL int nng_ctx_get_addr(nng_ctx, const char *, nng_sockaddr *) NNG_DEPRECATED; -NNG_DECL int nng_ctx_set_addr(nng_ctx, const char *, const nng_sockaddr *) NNG_DEPRECATED; +NNG_DECL int nng_stream_set_addr( + nng_stream *, const char *, const nng_sockaddr *) NNG_DEPRECATED; +NNG_DECL int nng_ctx_get_addr( + nng_ctx, const char *, nng_sockaddr *) NNG_DEPRECATED; +NNG_DECL int nng_ctx_set_addr( + nng_ctx, const char *, const nng_sockaddr *) NNG_DEPRECATED; #endif // NNG_ELIDE_DEPRECATED -- cgit v1.2.3-70-g09d2