From 48d0c0340f16b580443b3aba53c8bf618572fa6a Mon Sep 17 00:00:00 2001 From: Garrett D'Amore Date: Sun, 17 Nov 2024 11:40:37 -0800 Subject: remove NNG_OPT_SOCKNAME (and socket names altogether) This functionality was provided principally for libnanomsg compatibility. This saves some memory and eliminates some pointless functionality. While here, updated the socket options documentation to remove references to options already removed. --- src/core/sock_test.c | 81 --------------------------------------------------- src/core/socket.c | 40 ------------------------- src/core/stats_test.c | 10 ------- 3 files changed, 131 deletions(-) (limited to 'src/core') diff --git a/src/core/sock_test.c b/src/core/sock_test.c index 1fe94e4c..4267704b 100644 --- a/src/core/sock_test.c +++ b/src/core/sock_test.c @@ -93,76 +93,6 @@ test_socket_base(void) NUTS_CLOSE(s1); } -void -test_socket_name(void) -{ - nng_socket s1; - char *str; - long id; - char *end; - char *name; - - NUTS_OPEN(s1); - NUTS_PASS(nng_socket_get_string(s1, NNG_OPT_SOCKNAME, &name)); - NUTS_TRUE(strlen(name) > 0); - NUTS_TRUE(strlen(name) < 64); - id = strtol(name, &end, 10); - NUTS_TRUE(id == (long) s1.id); - NUTS_TRUE(end != NULL && *end == '\0'); - nng_strfree(name); - - NUTS_PASS(nng_socket_set_string(s1, NNG_OPT_SOCKNAME, "hello")); - NUTS_PASS(nng_socket_get_string(s1, NNG_OPT_SOCKNAME, &name)); - NUTS_MATCH(name, "hello"); - nng_strfree(name); - - char buf[128]; - memset(buf, 'A', 128); - buf[127] = 0; - - // strings must not be too long - NUTS_FAIL( - nng_socket_set_string(s1, NNG_OPT_SOCKNAME, buf), NNG_EINVAL); - memset(buf, 'A', 64); - buf[64] = 0; - NUTS_FAIL( - nng_socket_set_string(s1, NNG_OPT_SOCKNAME, buf), NNG_EINVAL); - buf[63] = 0; - NUTS_PASS(nng_socket_set_string(s1, NNG_OPT_SOCKNAME, buf)); - NUTS_PASS(nng_socket_set_string(s1, NNG_OPT_SOCKNAME, "hello")); - - NUTS_PASS(nng_socket_get_string(s1, NNG_OPT_SOCKNAME, &str)); - NUTS_ASSERT(str != NULL); - NUTS_TRUE(strlen(str) == 5); - NUTS_MATCH(str, "hello"); - nng_strfree(str); - - NUTS_CLOSE(s1); -} - -void -test_socket_name_oversize(void) -{ - nng_socket s1; - char buf[256]; // 64 is max - size_t sz = sizeof(buf); - char *name; - - memset(buf, 'A', sz); - NUTS_OPEN(s1); - - buf[sz - 1] = '\0'; - NUTS_FAIL( - nng_socket_set_string(s1, NNG_OPT_SOCKNAME, buf), NNG_EINVAL); - - strcpy(buf, "hello"); - NUTS_PASS(nng_socket_set_string(s1, NNG_OPT_SOCKNAME, buf)); - NUTS_PASS(nng_socket_get_string(s1, NNG_OPT_SOCKNAME, &name)); - NUTS_MATCH(name, "hello"); - nng_strfree(name); - NUTS_CLOSE(s1); -} - void test_send_recv(void) { @@ -402,12 +332,7 @@ test_listener_options(void) nng_listener_set_bool(l, NNG_OPT_RECVMAXSZ, true), NNG_EBADTYPE); // Cannot set inappropriate options - NUTS_FAIL( - nng_listener_set_string(l, NNG_OPT_SOCKNAME, "1"), NNG_ENOTSUP); - NUTS_FAIL(nng_listener_set_ms(l, NNG_OPT_RECONNMINT, 1), NNG_ENOTSUP); - NUTS_FAIL(nng_listener_set_string(l, NNG_OPT_SOCKNAME, "bogus"), - NNG_ENOTSUP); // Read only options NUTS_FAIL(nng_listener_set_string(l, NNG_OPT_URL, "inproc://junk"), @@ -436,11 +361,7 @@ test_dialer_options(void) nng_dialer_set_bool(d, NNG_OPT_RECVMAXSZ, true), NNG_EBADTYPE); // Cannot set inappropriate options - NUTS_FAIL( - nng_dialer_set_string(d, NNG_OPT_SOCKNAME, "1"), NNG_ENOTSUP); NUTS_FAIL(nng_dialer_set_ms(d, NNG_OPT_SENDTIMEO, 1), NNG_ENOTSUP); - NUTS_FAIL( - nng_dialer_set_string(d, NNG_OPT_SOCKNAME, "bogus"), NNG_ENOTSUP); // Read only options NUTS_FAIL(nng_dialer_set_string(d, NNG_OPT_URL, "inproc://junk"), @@ -542,8 +463,6 @@ NUTS_TESTS = { { "send timeout", test_send_timeout }, { "send non-block", test_send_nonblock }, { "socket base", test_socket_base }, - { "socket name", test_socket_name }, - { "socket name oversize", test_socket_name_oversize }, { "send recv", test_send_recv }, { "send recv zero length", test_send_recv_zero_length }, { "connection refused", test_connection_refused }, diff --git a/src/core/socket.c b/src/core/socket.c index c92a1c3b..9b4ed308 100644 --- a/src/core/socket.c +++ b/src/core/socket.c @@ -93,7 +93,6 @@ struct nni_socket { nni_duration s_reconn; // reconnect time nni_duration s_reconnmax; // max reconnect time size_t s_rcvmaxsz; // max receive size - char s_name[64]; // socket name (legacy compat) nni_list s_listeners; // active listeners nni_list s_dialers; // active dialers @@ -109,7 +108,6 @@ struct nni_socket { #ifdef NNG_ENABLE_STATS nni_stat_item st_root; // socket scope nni_stat_item st_id; // socket id - nni_stat_item st_name; // socket name nni_stat_item st_protocol; // socket protocol nni_stat_item st_dialers; // number of dialers nni_stat_item st_listeners; // number of listeners @@ -255,27 +253,6 @@ sock_get_sendbuf(void *s, void *buf, size_t *szp, nni_type t) return (nni_copyout_int(len, buf, szp, t)); } -static int -sock_get_sockname(void *s, void *buf, size_t *szp, nni_type t) -{ - return (nni_copyout_str(SOCK(s)->s_name, buf, szp, t)); -} - -static int -sock_set_sockname(void *s, const void *buf, size_t sz, nni_type t) -{ - int rv; - NNI_ARG_UNUSED(sz); - rv = - (nni_copyin_str(SOCK(s)->s_name, buf, sizeof(SOCK(s)->s_name), t)); -#ifdef NNG_ENABLE_STATS - if (rv == 0) { - nni_stat_set_string(&SOCK(s)->st_name, SOCK(s)->s_name); - } -#endif - return (rv); -} - static const nni_option sock_options[] = { { .o_name = NNG_OPT_RECVTIMEO, @@ -297,11 +274,6 @@ static const nni_option sock_options[] = { .o_get = sock_get_sendbuf, .o_set = sock_set_sendbuf, }, - { - .o_name = NNG_OPT_SOCKNAME, - .o_get = sock_get_sockname, - .o_set = sock_set_sockname, - }, { .o_name = NNG_OPT_RECONNMINT, .o_get = sock_get_reconnmint, @@ -423,12 +395,6 @@ sock_stats_init(nni_sock *s) .si_desc = "socket identifier", .si_type = NNG_STAT_ID, }; - static const nni_stat_info name_info = { - .si_name = "name", - .si_desc = "socket name", - .si_type = NNG_STAT_STRING, - .si_alloc = true, - }; static const nni_stat_info protocol_info = { .si_name = "protocol", .si_desc = "socket protocol", @@ -492,7 +458,6 @@ sock_stats_init(nni_sock *s) nni_stat_init(&s->st_root, &root_info); sock_stat_init(s, &s->st_id, &id_info); - sock_stat_init(s, &s->st_name, &name_info); sock_stat_init(s, &s->st_protocol, &protocol_info); sock_stat_init(s, &s->st_dialers, &dialers_info); sock_stat_init(s, &s->st_listeners, &listeners_info); @@ -504,7 +469,6 @@ sock_stats_init(nni_sock *s) sock_stat_init(s, &s->st_rx_bytes, &rx_bytes_info); nni_stat_set_id(&s->st_id, (int) s->s_id); - nni_stat_set_string(&s->st_name, s->s_name); nni_stat_set_string(&s->st_protocol, nni_sock_proto_name(s)); } #endif @@ -634,15 +598,11 @@ nni_sock_open(nni_sock **sockp, const nni_proto *proto) } nni_mtx_unlock(&sock_lk); - // Set the socket name. - (void) snprintf(s->s_name, sizeof(s->s_name), "%u", s->s_id); - #ifdef NNG_ENABLE_STATS // Set up basic stat values. The socket id wasn't // known at stat creation time, so we set it now. nni_stat_set_id(&s->st_id, (int) s->s_id); nni_stat_set_id(&s->st_root, (int) s->s_id); - nni_stat_set_string(&s->st_name, s->s_name); // Add our stats chain. nni_stat_register(&s->st_root); diff --git a/src/core/stats_test.c b/src/core/stats_test.c index e15b4001..8912d44e 100644 --- a/src/core/stats_test.c +++ b/src/core/stats_test.c @@ -25,7 +25,6 @@ test_stats_socket(void) NUTS_OPEN(s1); NUTS_OPEN(s2); - nng_socket_set_string(s2, NNG_OPT_SOCKNAME, "second"); NUTS_MARRY(s1, s2); NUTS_SEND(s1, "ping"); NUTS_RECV(s2, "ping"); @@ -37,14 +36,6 @@ test_stats_socket(void) NUTS_ASSERT(st1 != NULL); NUTS_ASSERT(st2 != NULL); NUTS_ASSERT(st1 != st2); - item = nng_stat_find(st1, "name"); - NUTS_ASSERT(item != NULL); - NUTS_ASSERT(nng_stat_string(item) != NULL); - NUTS_MATCH(nng_stat_string(item), "1"); - item = nng_stat_find(st2, "name"); - NUTS_ASSERT(item != NULL); - NUTS_ASSERT(nng_stat_string(item) != NULL); - NUTS_MATCH(nng_stat_string(item), "second"); item = nng_stat_find(st1, "tx_msgs"); NUTS_ASSERT(item != NULL); NUTS_ASSERT(nng_stat_value(item) == 1); @@ -71,7 +62,6 @@ test_stats_dump(void) NUTS_OPEN(s1); NUTS_OPEN(s2); - nng_socket_set_string(s2, NNG_OPT_SOCKNAME, "second"); NUTS_MARRY(s1, s2); NUTS_SEND(s1, "ping"); NUTS_RECV(s2, "ping"); -- cgit v1.2.3-70-g09d2