diff options
| author | Garrett D'Amore <garrett@damore.org> | 2024-11-18 01:17:24 -0800 |
|---|---|---|
| committer | Garrett D'Amore <garrett@damore.org> | 2024-11-18 08:33:05 -0800 |
| commit | ca6cfe359fa55a5a7f4b6ae73500ffd98e6ee968 (patch) | |
| tree | d69a9af2e88c9bf5bc0d565bdd2ea975f2723d52 /src/sp | |
| parent | e54e2b1a98abfdb75232a9b3218714ce34c9a34f (diff) | |
| download | nng-ca6cfe359fa55a5a7f4b6ae73500ffd98e6ee968.tar.gz nng-ca6cfe359fa55a5a7f4b6ae73500ffd98e6ee968.tar.bz2 nng-ca6cfe359fa55a5a7f4b6ae73500ffd98e6ee968.zip | |
URL refactor part 1.
This eliminates most (but not all) of the dynamic allocations
associated with URL objects. A number of convenience fields
on the URL are removed, but we are able to use common buffer
for most of the details.
Diffstat (limited to 'src/sp')
| -rw-r--r-- | src/sp/transport/socket/sockfd.c | 2 | ||||
| -rw-r--r-- | src/sp/transport/tcp/tcp_test.c | 13 | ||||
| -rw-r--r-- | src/sp/transport/tls/tls_tran_test.c | 54 | ||||
| -rw-r--r-- | src/sp/transport/udp/udp_tran_test.c | 13 | ||||
| -rw-r--r-- | src/sp/transport/ws/ws_test.c | 4 |
5 files changed, 6 insertions, 80 deletions
diff --git a/src/sp/transport/socket/sockfd.c b/src/sp/transport/socket/sockfd.c index 2db052ac..2313d12d 100644 --- a/src/sp/transport/socket/sockfd.c +++ b/src/sp/transport/socket/sockfd.c @@ -817,7 +817,7 @@ sfd_tran_listener_init(void **lp, nng_url *url, nni_listener *nlistener) nni_sock *sock = nni_listener_sock(nlistener); // Check for invalid URL components -- we only accept a bare scheme - if ((strlen(url->u_host) != 0) || (strlen(url->u_path) != 0) || + if ((strlen(url->u_hostname) != 0) || (strlen(url->u_path) != 0) || (url->u_fragment != NULL) || (url->u_userinfo != NULL) || (url->u_query != NULL)) { return (NNG_EADDRINVAL); diff --git a/src/sp/transport/tcp/tcp_test.c b/src/sp/transport/tcp/tcp_test.c index 57c612b7..c80a259f 100644 --- a/src/sp/transport/tcp/tcp_test.c +++ b/src/sp/transport/tcp/tcp_test.c @@ -10,6 +10,7 @@ // found online at https://opensource.org/licenses/MIT. // +#include "nng/nng.h" #include <nuts.h> // TCP tests. @@ -30,19 +31,9 @@ void test_tcp_wild_card_bind(void) { nng_socket s1; - nng_socket s2; - char addr[NNG_MAXADDRLEN]; - uint16_t port; - - port = nuts_next_port(); NUTS_OPEN(s1); - NUTS_OPEN(s2); - (void) snprintf(addr, sizeof(addr), "tcp4://*:%u", port); - NUTS_PASS(nng_listen(s1, addr, NULL, 0)); - (void) snprintf(addr, sizeof(addr), "tcp://127.0.0.1:%u", port); - NUTS_PASS(nng_dial(s2, addr, NULL, 0)); - NUTS_CLOSE(s2); + NUTS_FAIL(nng_listen(s1, "tcp4://*:8080", NULL, 0), NNG_EADDRINVAL); NUTS_CLOSE(s1); } diff --git a/src/sp/transport/tls/tls_tran_test.c b/src/sp/transport/tls/tls_tran_test.c index d6e94899..be049e05 100644 --- a/src/sp/transport/tls/tls_tran_test.c +++ b/src/sp/transport/tls/tls_tran_test.c @@ -46,58 +46,6 @@ tls_client_config(void) return (c); } -static void -test_tls_wild_card_connect_fail(void) -{ - nng_socket s; - nng_dialer d; - char addr[NNG_MAXADDRLEN]; - - NUTS_OPEN(s); - (void) snprintf( - addr, sizeof(addr), "tls+tcp://*:%u", nuts_next_port()); - NUTS_FAIL(nng_dialer_create(&d, s, addr), NNG_EADDRINVAL); - NUTS_CLOSE(s); -} - -void -test_tls_wild_card_bind(void) -{ - nng_socket s1; - nng_socket s2; - nng_listener l; - nng_dialer d; - char addr[NNG_MAXADDRLEN]; - uint16_t port; - nng_tls_config *cc; - nng_tls_config *sc; - nng_tls_config *other; - - port = nuts_next_port(); - - sc = tls_server_config(); - cc = tls_client_config(); - - NUTS_OPEN(s1); - NUTS_OPEN(s2); - (void) snprintf(addr, sizeof(addr), "tls+tcp4://*:%u", port); - NUTS_PASS(nng_listener_create(&l, s1, addr)); - NUTS_PASS(nng_listener_set_tls(l, sc)); - NUTS_PASS(nng_listener_get_tls(l, &other)); - NUTS_TRUE(sc == other); - NUTS_PASS(nng_listener_start(l, 0)); - (void) snprintf(addr, sizeof(addr), "tls+tcp://127.0.0.1:%u", port); - NUTS_PASS(nng_dialer_create(&d, s2, addr)); - NUTS_PASS(nng_dialer_set_tls(d, cc)); - NUTS_PASS(nng_dialer_get_tls(d, &other)); - NUTS_TRUE(cc == other); - NUTS_PASS(nng_dialer_start(d, 0)); - NUTS_CLOSE(s2); - NUTS_CLOSE(s1); - nng_tls_config_free(cc); - nng_tls_config_free(sc); -} - void test_tls_port_zero_bind(void) { @@ -329,8 +277,6 @@ test_tls_psk(void) NUTS_TESTS = { - { "tls wild card connect fail", test_tls_wild_card_connect_fail }, - { "tls wild card bind", test_tls_wild_card_bind }, { "tls port zero bind", test_tls_port_zero_bind }, { "tls malformed address", test_tls_malformed_address }, { "tls no delay option", test_tls_no_delay_option }, diff --git a/src/sp/transport/udp/udp_tran_test.c b/src/sp/transport/udp/udp_tran_test.c index 151c2783..781c6ad9 100644 --- a/src/sp/transport/udp/udp_tran_test.c +++ b/src/sp/transport/udp/udp_tran_test.c @@ -29,20 +29,9 @@ void test_udp_wild_card_bind(void) { nng_socket s1; - nng_socket s2; - char addr[NNG_MAXADDRLEN]; - uint16_t port; - - port = nuts_next_port(); NUTS_OPEN(s1); - NUTS_OPEN(s2); - (void) snprintf(addr, sizeof(addr), "udp4://*:%u", port); - NUTS_PASS(nng_listen(s1, addr, NULL, 0)); - nng_msleep(500); - (void) snprintf(addr, sizeof(addr), "udp://127.0.0.1:%u", port); - NUTS_PASS(nng_dial(s2, addr, NULL, 0)); - NUTS_CLOSE(s2); + NUTS_FAIL(nng_listen(s1, "udp://*:8080", NULL, 0), NNG_EADDRINVAL); NUTS_CLOSE(s1); } diff --git a/src/sp/transport/ws/ws_test.c b/src/sp/transport/ws/ws_test.c index 0f514cfe..23158e3f 100644 --- a/src/sp/transport/ws/ws_test.c +++ b/src/sp/transport/ws/ws_test.c @@ -1,5 +1,5 @@ // -// Copyright 2020 Staysail Systems, Inc. <info@staysail.tech> +// Copyright 2024 Staysail Systems, Inc. <info@staysail.tech> // Copyright 2018 Cody Piersall <cody.piersall@gmail.com> // // This software is supplied under the terms of the MIT License, a @@ -99,7 +99,7 @@ test_wild_card_host(void) port = nuts_next_port(); // we use ws4 to ensure 127.0.0.1 binding - snprintf(addr, sizeof(addr), "ws4://*:%u/test", port); + snprintf(addr, sizeof(addr), "ws4://:%u/test", port); NUTS_PASS(nng_listen(s1, addr, NULL, 0)); nng_msleep(100); |
