aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/compat/nanomsg/compat_tcp_test.c29
-rw-r--r--src/core/sock_test.c71
-rw-r--r--src/core/socket.c83
-rw-r--r--src/platform/posix/posix_tcpdial.c3
-rw-r--r--src/platform/posix/posix_tcplisten.c3
-rw-r--r--src/platform/windows/win_tcpdial.c1
-rw-r--r--src/sp/transport/tcp/tcp_test.c30
-rw-r--r--src/sp/transport/tls/tls_tran_test.c128
8 files changed, 57 insertions, 291 deletions
diff --git a/src/compat/nanomsg/compat_tcp_test.c b/src/compat/nanomsg/compat_tcp_test.c
index d090463f..a23c878d 100644
--- a/src/compat/nanomsg/compat_tcp_test.c
+++ b/src/compat/nanomsg/compat_tcp_test.c
@@ -94,32 +94,6 @@ test_bad_addresses(void)
}
void
-test_no_delay(void)
-{
- int s;
- int opt;
- size_t sz;
- NUTS_TRUE((s = nn_socket(AF_SP, NN_PAIR)) >= 0);
-
- sz = sizeof(opt);
- NUTS_NN_PASS(nn_getsockopt(s, NN_TCP, NN_TCP_NODELAY, &opt, &sz));
- NUTS_TRUE(sz == sizeof(opt));
- NUTS_TRUE(opt == 0);
- opt = 2;
- NUTS_NN_FAIL(
- nn_setsockopt(s, NN_TCP, NN_TCP_NODELAY, &opt, sz), EINVAL);
-
- opt = 1;
- NUTS_NN_PASS(nn_setsockopt(s, NN_TCP, NN_TCP_NODELAY, &opt, sz));
-
- opt = 3;
- NUTS_NN_PASS(nn_getsockopt(s, NN_TCP, NN_TCP_NODELAY, &opt, &sz));
- NUTS_TRUE(sz == sizeof(opt));
- NUTS_TRUE(opt == 1);
- NUTS_NN_PASS(nn_close(s));
-}
-
-void
test_ping_pong(void)
{
int sb, sc, p1, p2;
@@ -201,7 +175,7 @@ test_max_recv_size(void)
int n;
size_t sz;
char buf[64];
- char *addr;
+ char *addr;
NUTS_ADDR(addr, "tcp");
@@ -251,7 +225,6 @@ TEST_LIST = {
{ "compat tcp connect and close ", test_connect_and_close },
{ "compat tcp bind and connect ", test_bind_and_connect },
{ "compat tcp invalid addresses", test_bad_addresses },
- { "compat tcp no delay option", test_no_delay },
{ "compat tcp ping pong", test_ping_pong },
{ "compat tcp pair reject", test_pair_reject },
{ "compat tcp addr in use", test_addr_in_use },
diff --git a/src/core/sock_test.c b/src/core/sock_test.c
index fbf70537..f785d9c0 100644
--- a/src/core/sock_test.c
+++ b/src/core/sock_test.c
@@ -15,7 +15,7 @@ test_recv_timeout(void)
{
nng_socket s1;
uint64_t now;
- nng_msg * msg = NULL;
+ nng_msg *msg = NULL;
NUTS_OPEN(s1);
NUTS_PASS(nng_socket_set_ms(s1, NNG_OPT_RECVTIMEO, 10));
@@ -32,7 +32,7 @@ test_recv_nonblock(void)
{
nng_socket s1;
uint64_t now;
- nng_msg * msg = NULL;
+ nng_msg *msg = NULL;
NUTS_OPEN(s1);
NUTS_PASS(nng_socket_set_ms(s1, NNG_OPT_RECVTIMEO, 10));
@@ -48,7 +48,7 @@ test_send_timeout(void)
{
nng_socket s1;
uint64_t now;
- nng_msg * msg;
+ nng_msg *msg;
NUTS_OPEN(s1);
NUTS_PASS(nng_msg_alloc(&msg, 0));
@@ -66,7 +66,7 @@ test_send_nonblock(void)
{
nng_socket s1;
uint64_t now;
- nng_msg * msg;
+ nng_msg *msg;
NUTS_OPEN(s1);
NUTS_PASS(nng_msg_alloc(&msg, 0));
@@ -108,9 +108,9 @@ test_socket_name(void)
{
nng_socket s1;
char name[128]; // 64 is max
- char * str;
+ char *str;
long id;
- char * end;
+ char *end;
size_t sz;
sz = sizeof(name);
@@ -175,8 +175,8 @@ test_send_recv(void)
int len;
size_t sz;
nng_duration to = 3000; // 3 seconds
- char * buf;
- char * a = "inproc://t1";
+ char *buf;
+ char *a = "inproc://t1";
NUTS_OPEN(s1);
NUTS_OPEN(s2);
@@ -215,8 +215,8 @@ test_send_recv_zero_length(void)
int len;
size_t sz;
nng_duration to = 3000; // 3 seconds
- char * buf;
- char * a = "inproc://send-recv-zero-length";
+ char *buf;
+ char *a = "inproc://send-recv-zero-length";
NUTS_OPEN(s1);
NUTS_OPEN(s2);
@@ -259,11 +259,11 @@ test_connection_refused(void)
void
test_late_connection(void)
{
- char * buf;
+ char *buf;
size_t sz;
nng_socket s1;
nng_socket s2;
- char * a = "inproc://asy";
+ char *a = "inproc://asy";
NUTS_OPEN(s1);
NUTS_OPEN(s2);
@@ -287,7 +287,7 @@ test_late_connection(void)
void
test_address_busy(void)
{
- char * a = "inproc://eaddrinuse";
+ char *a = "inproc://eaddrinuse";
nng_listener l = NNG_LISTENER_INITIALIZER;
nng_dialer d = NNG_DIALER_INITIALIZER;
nng_socket s1;
@@ -323,7 +323,7 @@ test_endpoint_types(void)
nng_listener l = NNG_LISTENER_INITIALIZER;
nng_dialer d2;
nng_listener l2;
- char * a = "inproc://mumble...";
+ char *a = "inproc://mumble...";
bool b;
NUTS_OPEN(s1);
@@ -400,30 +400,10 @@ test_listener_options(void)
NUTS_OPEN(s1);
-#ifndef NNG_ELIDE_DEPRECATED
- // Create a listener with the specified options
- NUTS_PASS(nng_socket_set_size(s1, NNG_OPT_RECVMAXSZ, 543));
NUTS_PASS(nng_listener_create(&l, s1, "inproc://listener_opts"));
- NUTS_PASS(nng_listener_get_size(l, NNG_OPT_RECVMAXSZ, &sz));
- NUTS_TRUE(sz == 543);
-
- // Verify endpoint overrides
NUTS_PASS(nng_listener_set_size(l, NNG_OPT_RECVMAXSZ, 678));
NUTS_PASS(nng_listener_get_size(l, NNG_OPT_RECVMAXSZ, &sz));
NUTS_TRUE(sz == 678);
- NUTS_PASS(nng_socket_get_size(s1, NNG_OPT_RECVMAXSZ, &sz));
- NUTS_TRUE(sz == 543);
-
- // And socket overrides again
- NUTS_PASS(nng_socket_set_size(s1, NNG_OPT_RECVMAXSZ, 911));
- NUTS_PASS(nng_listener_get_size(l, NNG_OPT_RECVMAXSZ, &sz));
- NUTS_TRUE(sz == 911);
-#else
- NUTS_PASS(nng_listener_create(&l, s1, "inproc://listener_opts"));
- NUTS_PASS(nng_listener_set_size(l, NNG_OPT_RECVMAXSZ, 678));
- NUTS_PASS(nng_listener_get_size(l, NNG_OPT_RECVMAXSZ, &sz));
- NUTS_TRUE(sz == 678);
-#endif
// Cannot set invalid options
NUTS_FAIL(nng_listener_set_size(l, "BAD_OPT", 1), NNG_ENOTSUP);
@@ -456,31 +436,10 @@ test_dialer_options(void)
NUTS_OPEN(s1);
-#ifndef NNG_ELIDE_DEPRECATED
- // NOTE: This test will fail if eliding deprecated behavior.
- // Create a dialer with the specified options
- NUTS_PASS(nng_socket_set_size(s1, NNG_OPT_RECVMAXSZ, 543));
NUTS_PASS(nng_dialer_create(&d, s1, "inproc://dialer_opts"));
- NUTS_PASS(nng_dialer_get_size(d, NNG_OPT_RECVMAXSZ, &sz));
- NUTS_TRUE(sz == 543);
-
- // Verify endpoint overrides
NUTS_PASS(nng_dialer_set_size(d, NNG_OPT_RECVMAXSZ, 678));
NUTS_PASS(nng_dialer_get_size(d, NNG_OPT_RECVMAXSZ, &sz));
NUTS_TRUE(sz == 678);
- NUTS_PASS(nng_socket_get_size(s1, NNG_OPT_RECVMAXSZ, &sz));
- NUTS_TRUE(sz == 543);
-
- // And socket overrides again
- NUTS_PASS(nng_socket_set_size(s1, NNG_OPT_RECVMAXSZ, 911));
- NUTS_PASS(nng_dialer_get_size(d, NNG_OPT_RECVMAXSZ, &sz));
- NUTS_TRUE(sz == 911);
-#else
- NUTS_PASS(nng_dialer_create(&d, s1, "inproc://dialer_opts"));
- NUTS_PASS(nng_dialer_set_size(d, NNG_OPT_RECVMAXSZ, 678));
- NUTS_PASS(nng_dialer_get_size(d, NNG_OPT_RECVMAXSZ, &sz));
- NUTS_TRUE(sz == 678);
-#endif
// Cannot set invalid options
NUTS_FAIL(nng_dialer_set_size(d, "BAD_OPT", 1), NNG_ENOTSUP);
@@ -588,7 +547,7 @@ test_size_options(void)
nng_socket s1;
size_t val;
size_t sz;
- char * opt;
+ char *opt;
char *cases[] = {
NNG_OPT_RECVMAXSZ,
diff --git a/src/core/socket.c b/src/core/socket.c
index c4e16f70..88a11382 100644
--- a/src/core/socket.c
+++ b/src/core/socket.c
@@ -1036,57 +1036,6 @@ nni_sock_setopt(
0) {
return (rv);
}
-
-#if !defined(NNG_ELIDE_DEPRECATED)
- // TCP options, set via socket is deprecated.
- } else if ((strcmp(name, NNG_OPT_TCP_KEEPALIVE) == 0) ||
- (strcmp(name, NNG_OPT_TCP_NODELAY)) == 0) {
- if ((rv = nni_copyin_bool(NULL, v, sz, t)) != 0) {
- return (rv);
- }
-#endif
-
-#if defined(NNG_SUPP_TLS) && !defined(NNG_ELIDE_DEPRECATED)
- // TLS options may not be supported if TLS is not
- // compiled in. Supporting all these is deprecated.
- } else if (strcmp(name, NNG_OPT_TLS_CONFIG) == 0) {
- nng_tls_config *tc;
- if ((rv = nni_copyin_ptr((void **) &tc, v, sz, t)) != 0) {
- return (rv);
- }
- // place a hold on this configuration object
- nng_tls_config_hold(tc);
-
- } else if ((strcmp(name, NNG_OPT_TLS_SERVER_NAME) == 0) ||
- (strcmp(name, NNG_OPT_TLS_CA_FILE) == 0) ||
- (strcmp(name, NNG_OPT_TLS_CERT_KEY_FILE) == 0)) {
- if ((t != NNI_TYPE_OPAQUE) && (t != NNI_TYPE_STRING)) {
- return (NNG_EBADTYPE);
- }
- if (nni_strnlen(v, sz) >= sz) {
- return (NNG_EINVAL);
- }
- } else if ((strcmp(name, NNG_OPT_TLS_AUTH_MODE) == 0)) {
- // 0, 1, or 2 (none, optional, required)
- if ((rv = nni_copyin_int(NULL, v, sz, 0, 2, t)) != 0) {
- return (rv);
- }
-#endif
-
-#if defined(NNG_PLATFORM_POSIX) && !defined(NNG_ELIDE_DEPRECATED)
- } else if (strcmp(name, NNG_OPT_IPC_PERMISSIONS) == 0) {
- // UNIX mode bits are 0777, but allow set id and sticky bits
- if ((rv = nni_copyin_int(NULL, v, sz, 0, 07777, t)) != 0) {
- return (rv);
- }
-#endif
-
-#if defined(NNG_PLATFORM_WINDOWS) && !defined(NNG_ELIDE_DEPRECATED)
- } else if (strcmp(name, NNG_OPT_IPC_SECURITY_DESCRIPTOR) == 0) {
- if ((rv = nni_copyin_ptr(NULL, v, sz, t)) == 0) {
- return (rv);
- }
-#endif
}
// Prepare a copy of the socket option.
@@ -1122,38 +1071,6 @@ nni_sock_setopt(
}
}
-#ifndef NNG_ELIDE_DEPRECATED
- nni_dialer *d;
- nni_listener *l;
-
- // Apply the options. Failure to set any option on any
- // transport (other than ENOTSUP) stops the operation
- // altogether. Its important that transport wide checks
- // properly pre-validate.
- NNI_LIST_FOREACH (&s->s_listeners, l) {
- int x;
- x = nni_listener_setopt(l, optv->name, optv->data, sz, t);
- if (x != NNG_ENOTSUP) {
- if ((rv = x) != 0) {
- nni_mtx_unlock(&s->s_mx);
- nni_free_opt(optv);
- return (rv);
- }
- }
- }
- NNI_LIST_FOREACH (&s->s_dialers, d) {
- int x;
- x = nni_dialer_setopt(d, optv->name, optv->data, sz, t);
- if (x != NNG_ENOTSUP) {
- if ((rv = x) != 0) {
- nni_mtx_unlock(&s->s_mx);
- nni_free_opt(optv);
- return (rv);
- }
- }
- }
-#endif
-
if (rv == 0) {
// Remove and toss the old value; we are using a new one.
if (oldv != NULL) {
diff --git a/src/platform/posix/posix_tcpdial.c b/src/platform/posix/posix_tcpdial.c
index cf3d9368..6aea8ae5 100644
--- a/src/platform/posix/posix_tcpdial.c
+++ b/src/platform/posix/posix_tcpdial.c
@@ -37,7 +37,8 @@ nni_tcp_dialer_init(nni_tcp_dialer **dp)
return (NNG_ENOMEM);
}
nni_mtx_init(&d->mtx);
- d->closed = false;
+ d->closed = false;
+ d->nodelay = true;
nni_aio_list_init(&d->connq);
nni_atomic_init_bool(&d->fini);
nni_atomic_init64(&d->ref);
diff --git a/src/platform/posix/posix_tcplisten.c b/src/platform/posix/posix_tcplisten.c
index 95be4beb..a38411c5 100644
--- a/src/platform/posix/posix_tcplisten.c
+++ b/src/platform/posix/posix_tcplisten.c
@@ -1,5 +1,5 @@
//
-// Copyright 2020 Staysail Systems, Inc. <info@staysail.tech>
+// Copyright 2024 Staysail Systems, Inc. <info@staysail.tech>
// Copyright 2018 Capitar IT Group BV <info@capitar.com>
// Copyright 2018 Devolutions <info@devolutions.net>
//
@@ -56,6 +56,7 @@ nni_tcp_listener_init(nni_tcp_listener **lp)
l->pfd = NULL;
l->closed = false;
l->started = false;
+ l->nodelay = true;
nni_aio_list_init(&l->acceptq);
*lp = l;
diff --git a/src/platform/windows/win_tcpdial.c b/src/platform/windows/win_tcpdial.c
index bc5d6f5d..dbdd0762 100644
--- a/src/platform/windows/win_tcpdial.c
+++ b/src/platform/windows/win_tcpdial.c
@@ -43,6 +43,7 @@ nni_tcp_dialer_init(nni_tcp_dialer **dp)
ZeroMemory(d, sizeof(*d));
nni_mtx_init(&d->mtx);
nni_aio_list_init(&d->aios);
+ d->nodelay = true;
// Create a scratch socket for use with ioctl.
s = socket(AF_INET6, SOCK_STREAM, IPPROTO_TCP);
diff --git a/src/sp/transport/tcp/tcp_test.c b/src/sp/transport/tcp/tcp_test.c
index 005fd2b0..5a4e5647 100644
--- a/src/sp/transport/tcp/tcp_test.c
+++ b/src/sp/transport/tcp/tcp_test.c
@@ -144,10 +144,6 @@ test_tcp_no_delay_option(void)
NUTS_ADDR(addr, "tcp");
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_get_bool(d, NNG_OPT_TCP_NODELAY, &v));
NUTS_TRUE(v);
@@ -178,17 +174,6 @@ test_tcp_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);
}
@@ -204,10 +189,6 @@ test_tcp_keep_alive_option(void)
NUTS_ADDR(addr, "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_get_bool(d, NNG_OPT_TCP_KEEPALIVE, &v));
NUTS_TRUE(v == false);
@@ -230,17 +211,6 @@ test_tcp_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);
}
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 },