|
@ -42,12 +42,12 @@ TEST_IMPL(tcp_bind_error_addrinuse) { |
|
|
ASSERT(0 == uv_ip4_addr("0.0.0.0", TEST_PORT, &addr)); |
|
|
ASSERT(0 == uv_ip4_addr("0.0.0.0", TEST_PORT, &addr)); |
|
|
r = uv_tcp_init(uv_default_loop(), &server1); |
|
|
r = uv_tcp_init(uv_default_loop(), &server1); |
|
|
ASSERT(r == 0); |
|
|
ASSERT(r == 0); |
|
|
r = uv_tcp_bind(&server1, (const struct sockaddr*) &addr); |
|
|
r = uv_tcp_bind(&server1, (const struct sockaddr*) &addr, 0); |
|
|
ASSERT(r == 0); |
|
|
ASSERT(r == 0); |
|
|
|
|
|
|
|
|
r = uv_tcp_init(uv_default_loop(), &server2); |
|
|
r = uv_tcp_init(uv_default_loop(), &server2); |
|
|
ASSERT(r == 0); |
|
|
ASSERT(r == 0); |
|
|
r = uv_tcp_bind(&server2, (const struct sockaddr*) &addr); |
|
|
r = uv_tcp_bind(&server2, (const struct sockaddr*) &addr, 0); |
|
|
ASSERT(r == 0); |
|
|
ASSERT(r == 0); |
|
|
|
|
|
|
|
|
r = uv_listen((uv_stream_t*)&server1, 128, NULL); |
|
|
r = uv_listen((uv_stream_t*)&server1, 128, NULL); |
|
@ -78,7 +78,7 @@ TEST_IMPL(tcp_bind_error_addrnotavail_1) { |
|
|
ASSERT(r == 0); |
|
|
ASSERT(r == 0); |
|
|
|
|
|
|
|
|
/* It seems that Linux is broken here - bind succeeds. */ |
|
|
/* It seems that Linux is broken here - bind succeeds. */ |
|
|
r = uv_tcp_bind(&server, (const struct sockaddr*) &addr); |
|
|
r = uv_tcp_bind(&server, (const struct sockaddr*) &addr, 0); |
|
|
ASSERT(r == 0 || r == UV_EADDRNOTAVAIL); |
|
|
ASSERT(r == 0 || r == UV_EADDRNOTAVAIL); |
|
|
|
|
|
|
|
|
uv_close((uv_handle_t*)&server, close_cb); |
|
|
uv_close((uv_handle_t*)&server, close_cb); |
|
@ -101,7 +101,7 @@ TEST_IMPL(tcp_bind_error_addrnotavail_2) { |
|
|
|
|
|
|
|
|
r = uv_tcp_init(uv_default_loop(), &server); |
|
|
r = uv_tcp_init(uv_default_loop(), &server); |
|
|
ASSERT(r == 0); |
|
|
ASSERT(r == 0); |
|
|
r = uv_tcp_bind(&server, (const struct sockaddr*) &addr); |
|
|
r = uv_tcp_bind(&server, (const struct sockaddr*) &addr, 0); |
|
|
ASSERT(r == UV_EADDRNOTAVAIL); |
|
|
ASSERT(r == UV_EADDRNOTAVAIL); |
|
|
|
|
|
|
|
|
uv_close((uv_handle_t*)&server, close_cb); |
|
|
uv_close((uv_handle_t*)&server, close_cb); |
|
@ -126,7 +126,7 @@ TEST_IMPL(tcp_bind_error_fault) { |
|
|
|
|
|
|
|
|
r = uv_tcp_init(uv_default_loop(), &server); |
|
|
r = uv_tcp_init(uv_default_loop(), &server); |
|
|
ASSERT(r == 0); |
|
|
ASSERT(r == 0); |
|
|
r = uv_tcp_bind(&server, (const struct sockaddr*) garbage_addr); |
|
|
r = uv_tcp_bind(&server, (const struct sockaddr*) garbage_addr, 0); |
|
|
ASSERT(r == UV_EINVAL); |
|
|
ASSERT(r == UV_EINVAL); |
|
|
|
|
|
|
|
|
uv_close((uv_handle_t*)&server, close_cb); |
|
|
uv_close((uv_handle_t*)&server, close_cb); |
|
@ -152,9 +152,9 @@ TEST_IMPL(tcp_bind_error_inval) { |
|
|
|
|
|
|
|
|
r = uv_tcp_init(uv_default_loop(), &server); |
|
|
r = uv_tcp_init(uv_default_loop(), &server); |
|
|
ASSERT(r == 0); |
|
|
ASSERT(r == 0); |
|
|
r = uv_tcp_bind(&server, (const struct sockaddr*) &addr1); |
|
|
r = uv_tcp_bind(&server, (const struct sockaddr*) &addr1, 0); |
|
|
ASSERT(r == 0); |
|
|
ASSERT(r == 0); |
|
|
r = uv_tcp_bind(&server, (const struct sockaddr*) &addr2); |
|
|
r = uv_tcp_bind(&server, (const struct sockaddr*) &addr2, 0); |
|
|
ASSERT(r == UV_EINVAL); |
|
|
ASSERT(r == UV_EINVAL); |
|
|
|
|
|
|
|
|
uv_close((uv_handle_t*)&server, close_cb); |
|
|
uv_close((uv_handle_t*)&server, close_cb); |
|
@ -177,7 +177,7 @@ TEST_IMPL(tcp_bind_localhost_ok) { |
|
|
|
|
|
|
|
|
r = uv_tcp_init(uv_default_loop(), &server); |
|
|
r = uv_tcp_init(uv_default_loop(), &server); |
|
|
ASSERT(r == 0); |
|
|
ASSERT(r == 0); |
|
|
r = uv_tcp_bind(&server, (const struct sockaddr*) &addr); |
|
|
r = uv_tcp_bind(&server, (const struct sockaddr*) &addr, 0); |
|
|
ASSERT(r == 0); |
|
|
ASSERT(r == 0); |
|
|
|
|
|
|
|
|
MAKE_VALGRIND_HAPPY(); |
|
|
MAKE_VALGRIND_HAPPY(); |
|
|