diff --git a/src/socket_base.cpp b/src/socket_base.cpp index 8a8b87df..0a7b9ccb 100644 --- a/src/socket_base.cpp +++ b/src/socket_base.cpp @@ -843,7 +843,7 @@ int zmq::socket_base_t::connect (const char *addr_) while (isalnum (*check) || isxdigit (*check) || *check == '.' || *check == '-' || *check == ':' || *check == '%' - || *check == ';' || *check == ']' || *check == '_' + || *check == ';' || *check == '[' || *check == ']' || *check == '_' ) { check++; } diff --git a/tests/test_reqrep_tcp.cpp b/tests/test_reqrep_tcp.cpp index c754ea3b..ba41743a 100644 --- a/tests/test_reqrep_tcp.cpp +++ b/tests/test_reqrep_tcp.cpp @@ -88,7 +88,7 @@ void test_multi_connect_ipv4 (void) assert (rc == 0); rc = zmq_connect (sc, "tcp://127.0.0.1:5561"); assert (rc == 0); - rc = zmq_connect (sc, "tcp://127.0.0.1:5562"); + rc = zmq_connect (sc, "tcp://127.0.0.1:5564;127.0.0.1:5562"); assert (rc == 0); bounce (sb0, sc); @@ -101,7 +101,7 @@ void test_multi_connect_ipv4 (void) rc = zmq_disconnect (sc, "tcp://127.0.0.1:5560"); assert (rc == 0); - rc = zmq_disconnect (sc, "tcp://127.0.0.1:5562"); + rc = zmq_disconnect (sc, "tcp://127.0.0.1:5564;127.0.0.1:5562"); assert (rc == 0); rc = zmq_disconnect (sc, "tcp://127.0.0.1:5561"); assert (rc == 0); @@ -214,7 +214,7 @@ void test_multi_connect_ipv6 (void) assert (rc == 0); rc = zmq_connect (sc, "tcp://[::1]:5561"); assert (rc == 0); - rc = zmq_connect (sc, "tcp://[::1]:5562"); + rc = zmq_connect (sc, "tcp://[::1]:5564;[::1]:5562"); assert (rc == 0); bounce (sb0, sc); @@ -227,7 +227,7 @@ void test_multi_connect_ipv6 (void) rc = zmq_disconnect (sc, "tcp://[::1]:5560"); assert (rc == 0); - rc = zmq_disconnect (sc, "tcp://[::1]:5562"); + rc = zmq_disconnect (sc, "tcp://[::1]:5564;[::1]:5562"); assert (rc == 0); rc = zmq_disconnect (sc, "tcp://[::1]:5561"); assert (rc == 0);