aboutsummaryrefslogtreecommitdiff
path: root/src/sp/transport/tls
diff options
context:
space:
mode:
Diffstat (limited to 'src/sp/transport/tls')
-rw-r--r--src/sp/transport/tls/tls_tran_test.c128
1 files changed, 36 insertions, 92 deletions
diff --git a/src/sp/transport/tls/tls_tran_test.c b/src/sp/transport/tls/tls_tran_test.c
index d2425b09..ee11d8b9 100644
--- a/src/sp/transport/tls/tls_tran_test.c
+++ b/src/sp/transport/tls/tls_tran_test.c
@@ -49,18 +49,15 @@ tls_client_config(void)
static void
test_tls_wild_card_connect_fail(void)
{
- nng_socket s;
- nng_tls_config *c;
- char addr[NNG_MAXADDRLEN];
+ nng_socket s;
+ nng_dialer d;
+ char addr[NNG_MAXADDRLEN];
NUTS_OPEN(s);
- c = tls_client_config();
- nng_socket_set_ptr(s, NNG_OPT_TLS_CONFIG, c);
(void) snprintf(
addr, sizeof(addr), "tls+tcp://*:%u", nuts_next_port());
- NUTS_FAIL(nng_dial(s, addr, NULL, 0), NNG_EADDRINVAL);
+ NUTS_FAIL(nng_dialer_create(&d, s, addr), NNG_EADDRINVAL);
NUTS_CLOSE(s);
- nng_tls_config_free(c);
}
void
@@ -68,6 +65,8 @@ 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;
@@ -81,11 +80,13 @@ test_tls_wild_card_bind(void)
NUTS_OPEN(s1);
NUTS_OPEN(s2);
(void) snprintf(addr, sizeof(addr), "tls+tcp4://*:%u", port);
- nng_socket_set_ptr(s1, NNG_OPT_TLS_CONFIG, sc);
- nng_socket_set_ptr(s2, NNG_OPT_TLS_CONFIG, cc);
- NUTS_PASS(nng_listen(s1, addr, NULL, 0));
+ NUTS_PASS(nng_listener_create(&l, s1, addr));
+ NUTS_PASS(nng_listener_set_ptr(l, NNG_OPT_TLS_CONFIG, sc));
+ NUTS_PASS(nng_listener_start(l, 0));
(void) snprintf(addr, sizeof(addr), "tls+tcp://127.0.0.1:%u", port);
- NUTS_PASS(nng_dial(s2, addr, NULL, 0));
+ NUTS_PASS(nng_dialer_create(&d, s2, addr));
+ NUTS_PASS(nng_dialer_set_ptr(d, NNG_OPT_TLS_CONFIG, cc));
+ NUTS_PASS(nng_dialer_start(d, 0));
NUTS_CLOSE(s2);
NUTS_CLOSE(s1);
nng_tls_config_free(cc);
@@ -100,22 +101,25 @@ test_tls_port_zero_bind(void)
nng_tls_config *c1, *c2;
nng_sockaddr sa;
nng_listener l;
+ nng_dialer d;
char *addr;
c1 = tls_server_config();
c2 = tls_client_config();
NUTS_OPEN(s1);
NUTS_OPEN(s2);
- nng_socket_set_ptr(s1, NNG_OPT_TLS_CONFIG, c1);
- nng_socket_set_ptr(s2, NNG_OPT_TLS_CONFIG, c2);
- NUTS_PASS(nng_listen(s1, "tls+tcp://127.0.0.1:0", &l, 0));
+ NUTS_PASS(nng_listener_create(&l, s1, "tls+tcp://127.0.0.1:0"));
+ NUTS_PASS(nng_listener_set_ptr(l, NNG_OPT_TLS_CONFIG, c1));
+ NUTS_PASS(nng_listener_start(l, 0));
NUTS_PASS(nng_listener_get_string(l, NNG_OPT_URL, &addr));
NUTS_TRUE(memcmp(addr, "tls+tcp://", 6) == 0);
NUTS_PASS(nng_listener_get_addr(l, NNG_OPT_LOCADDR, &sa));
NUTS_TRUE(sa.s_in.sa_family == NNG_AF_INET);
NUTS_TRUE(sa.s_in.sa_port != 0);
NUTS_TRUE(sa.s_in.sa_addr = nuts_be32(0x7f000001));
- NUTS_PASS(nng_dial(s2, addr, NULL, 0));
+ NUTS_PASS(nng_dialer_create(&d, s2, addr));
+ NUTS_PASS(nng_dialer_set_ptr(d, NNG_OPT_TLS_CONFIG, c2));
+ NUTS_PASS(nng_dialer_start(d, 0));
nng_strfree(addr);
NUTS_CLOSE(s2);
NUTS_CLOSE(s1);
@@ -130,6 +134,8 @@ test_tls_local_address_connect(void)
nng_socket s1;
nng_socket s2;
nng_tls_config *c1, *c2;
+ nng_dialer d;
+ nng_listener l;
char addr[NNG_MAXADDRLEN];
uint16_t port;
@@ -137,14 +143,16 @@ test_tls_local_address_connect(void)
c2 = tls_client_config();
NUTS_OPEN(s1);
NUTS_OPEN(s2);
- nng_socket_set_ptr(s1, NNG_OPT_TLS_CONFIG, c1);
- nng_socket_set_ptr(s2, NNG_OPT_TLS_CONFIG, c2);
port = nuts_next_port();
(void) snprintf(addr, sizeof(addr), "tls+tcp://127.0.0.1:%u", port);
- NUTS_PASS(nng_listen(s1, addr, NULL, 0));
+ NUTS_PASS(nng_listener_create(&l, s1, addr));
+ NUTS_PASS(nng_listener_set_ptr(l, NNG_OPT_TLS_CONFIG, c1));
+ NUTS_PASS(nng_listener_start(l, 0));
(void) snprintf(
addr, sizeof(addr), "tls+tcp://127.0.0.1;127.0.0.1:%u", port);
- NUTS_PASS(nng_dial(s2, addr, NULL, 0));
+ NUTS_PASS(nng_dialer_create(&d, s2, addr));
+ NUTS_PASS(nng_dialer_set_ptr(d, NNG_OPT_TLS_CONFIG, c2));
+ NUTS_PASS(nng_dialer_start(d, 0));
NUTS_CLOSE(s2);
NUTS_CLOSE(s1);
nng_tls_config_free(c1);
@@ -152,47 +160,11 @@ test_tls_local_address_connect(void)
}
void
-test_tls_bad_local_interface(void)
-{
- nng_socket s1;
- nng_tls_config *c1;
- int rv;
-
- c1 = tls_client_config();
- NUTS_OPEN(s1);
- nng_socket_set_ptr(s1, NNG_OPT_TLS_CONFIG, c1);
- nng_tls_config_free(c1); // ref count held by socket
- rv = nng_dial(s1, "tcp://bogus1;127.0.0.1:80", NULL, 0),
- NUTS_TRUE(rv != 0);
- NUTS_TRUE(rv != NNG_ECONNREFUSED);
- NUTS_CLOSE(s1);
-}
-
-void
-test_tls_non_local_address(void)
-{
- nng_socket s1;
- nng_tls_config *c1;
-
- c1 = tls_client_config();
- NUTS_OPEN(s1);
- nng_socket_set_ptr(s1, NNG_OPT_TLS_CONFIG, c1);
- NUTS_FAIL(nng_dial(s1, "tls+tcp://8.8.8.8;127.0.0.1:80", NULL, 0),
- NNG_EADDRINVAL);
- NUTS_CLOSE(s1);
- nng_tls_config_free(c1);
-}
-
-void
test_tls_malformed_address(void)
{
- nng_socket s1;
- nng_tls_config *c1;
+ nng_socket s1;
NUTS_OPEN(s1);
- c1 = tls_client_config();
- nng_socket_set_ptr(s1, NNG_OPT_TLS_CONFIG, c1);
- nng_tls_config_free(c1);
NUTS_FAIL(
nng_dial(s1, "tls+tcp://127.0.0.1", NULL, 0), NNG_EADDRINVAL);
NUTS_FAIL(
@@ -222,10 +194,6 @@ test_tls_no_delay_option(void)
lc = tls_server_config();
NUTS_OPEN(s);
-#ifndef NNG_ELIDE_DEPRECATED
- NUTS_PASS(nng_socket_get_bool(s, NNG_OPT_TCP_NODELAY, &v));
- NUTS_TRUE(v);
-#endif
NUTS_PASS(nng_dialer_create(&d, s, addr));
NUTS_PASS(nng_dialer_set_ptr(d, NNG_OPT_TLS_CONFIG, dc));
NUTS_PASS(nng_dialer_get_bool(d, NNG_OPT_TCP_NODELAY, &v));
@@ -258,17 +226,6 @@ test_tls_no_delay_option(void)
NUTS_PASS(nng_dialer_close(d));
NUTS_PASS(nng_listener_close(l));
- // Make sure socket wide defaults apply.
-#ifndef NNG_ELIDE_DEPRECATED
- NUTS_PASS(nng_socket_set_bool(s, NNG_OPT_TCP_NODELAY, true));
- v = false;
- NUTS_PASS(nng_socket_get_bool(s, NNG_OPT_TCP_NODELAY, &v));
- NUTS_TRUE(v);
- NUTS_PASS(nng_socket_set_bool(s, NNG_OPT_TCP_NODELAY, false));
- NUTS_PASS(nng_dialer_create(&d, s, addr));
- NUTS_PASS(nng_dialer_get_bool(d, NNG_OPT_TCP_NODELAY, &v));
- NUTS_TRUE(v == false);
-#endif
NUTS_CLOSE(s);
nng_tls_config_free(lc);
nng_tls_config_free(dc);
@@ -289,10 +246,6 @@ test_tls_keep_alive_option(void)
lc = tls_server_config();
NUTS_ADDR(addr, "tls+tcp");
NUTS_OPEN(s);
-#ifndef NNG_ELIDE_DEPRECATED
- NUTS_PASS(nng_socket_get_bool(s, NNG_OPT_TCP_KEEPALIVE, &v));
- NUTS_TRUE(v == false);
-#endif
NUTS_PASS(nng_dialer_create(&d, s, addr));
NUTS_PASS(nng_dialer_set_ptr(d, NNG_OPT_TLS_CONFIG, dc));
NUTS_PASS(nng_dialer_get_bool(d, NNG_OPT_TCP_KEEPALIVE, &v));
@@ -317,17 +270,6 @@ test_tls_keep_alive_option(void)
NUTS_PASS(nng_dialer_close(d));
NUTS_PASS(nng_listener_close(l));
- // Make sure socket wide defaults apply.
-#ifndef NNG_ELIDE_DEPRECATED
- NUTS_PASS(nng_socket_set_bool(s, NNG_OPT_TCP_KEEPALIVE, false));
- v = true;
- NUTS_PASS(nng_socket_get_bool(s, NNG_OPT_TCP_KEEPALIVE, &v));
- NUTS_TRUE(v == false);
- NUTS_PASS(nng_socket_set_bool(s, NNG_OPT_TCP_KEEPALIVE, true));
- NUTS_PASS(nng_dialer_create(&d, s, addr));
- NUTS_PASS(nng_dialer_get_bool(d, NNG_OPT_TCP_KEEPALIVE, &v));
- NUTS_TRUE(v);
-#endif
NUTS_CLOSE(s);
nng_tls_config_free(lc);
nng_tls_config_free(dc);
@@ -342,6 +284,7 @@ test_tls_recv_max(void)
nng_socket s1;
nng_tls_config *c0, *c1;
nng_listener l;
+ nng_dialer d;
size_t sz;
char *addr;
@@ -360,8 +303,9 @@ test_tls_recv_max(void)
NUTS_PASS(nng_listener_start(l, 0));
NUTS_OPEN(s1);
- NUTS_PASS(nng_socket_set_ptr(s1, NNG_OPT_TLS_CONFIG, c1));
- NUTS_PASS(nng_dial(s1, addr, NULL, 0));
+ NUTS_PASS(nng_dialer_create(&d, s1, addr));
+ NUTS_PASS(nng_dialer_set_ptr(d, NNG_OPT_TLS_CONFIG, c1));
+ NUTS_PASS(nng_dialer_start(d, 0));
NUTS_PASS(nng_send(s1, msg, 95, 0));
NUTS_PASS(nng_socket_set_ms(s1, NNG_OPT_SENDTIMEO, 100));
NUTS_PASS(nng_recv(s0, buf, &sz, 0));
@@ -383,6 +327,7 @@ test_tls_psk(void)
nng_socket s1;
nng_tls_config *c0, *c1;
nng_listener l;
+ nng_dialer d;
size_t sz;
char *addr;
uint8_t key[32];
@@ -402,8 +347,9 @@ test_tls_psk(void)
NUTS_PASS(nng_listener_start(l, 0));
NUTS_OPEN(s1);
- NUTS_PASS(nng_socket_set_ptr(s1, NNG_OPT_TLS_CONFIG, c1));
- NUTS_PASS(nng_dial(s1, addr, NULL, 0));
+ NUTS_PASS(nng_dialer_create(&d, s1, addr));
+ NUTS_PASS(nng_dialer_set_ptr(d, NNG_OPT_TLS_CONFIG, c1));
+ NUTS_PASS(nng_dialer_start(d, 0));
NUTS_PASS(nng_send(s1, msg, 95, 0));
NUTS_PASS(nng_recv(s0, buf, &sz, 0));
NUTS_TRUE(sz == 95);
@@ -419,8 +365,6 @@ NUTS_TESTS = {
{ "tls wild card bind", test_tls_wild_card_bind },
{ "tls port zero bind", test_tls_port_zero_bind },
{ "tls local address connect", test_tls_local_address_connect },
- { "tls bad local interface", test_tls_bad_local_interface },
- { "tls non-local address", test_tls_non_local_address },
{ "tls malformed address", test_tls_malformed_address },
{ "tls no delay option", test_tls_no_delay_option },
{ "tls keep alive option", test_tls_keep_alive_option },