aboutsummaryrefslogtreecommitdiff
path: root/tests/test_echo_udp_send_recv.c
diff options
context:
space:
mode:
authorAndreas Schneider <asn@samba.org>2014-08-29 10:33:16 +0200
committerAndreas Schneider <asn@samba.org>2014-09-01 09:48:32 +0200
commit0c921aa3129a5b1b0ff9c7fae2c0b2ca6bde7510 (patch)
tree3f597d91648f3e2b71ae58fc13a6cce5e3763c9c /tests/test_echo_udp_send_recv.c
parentfa6fee05250c844eb0e00ee47b87ea2e5cd383bf (diff)
downloadsocket_wrapper-0c921aa3129a5b1b0ff9c7fae2c0b2ca6bde7510.tar.gz
socket_wrapper-0c921aa3129a5b1b0ff9c7fae2c0b2ca6bde7510.tar.xz
socket_wrapper-0c921aa3129a5b1b0ff9c7fae2c0b2ca6bde7510.zip
tests: Fix type punning warnings.
Signed-off-by: Andreas Schneider <asn@samba.org> Reviewed-by: Stefan Metzmacher <metze@samba.org>
Diffstat (limited to 'tests/test_echo_udp_send_recv.c')
-rw-r--r--tests/test_echo_udp_send_recv.c28
1 files changed, 14 insertions, 14 deletions
diff --git a/tests/test_echo_udp_send_recv.c b/tests/test_echo_udp_send_recv.c
index 9dd208b..435d1b9 100644
--- a/tests/test_echo_udp_send_recv.c
+++ b/tests/test_echo_udp_send_recv.c
@@ -34,8 +34,9 @@ static void teardown(void **state)
static void test_send_recv_ipv4(void **state)
{
- struct sockaddr_in sin;
- socklen_t slen = sizeof(struct sockaddr_in);
+ struct torture_address addr = {
+ .sa_socklen = sizeof(struct sockaddr_in),
+ };
ssize_t ret;
int rc;
int i;
@@ -46,16 +47,15 @@ static void test_send_recv_ipv4(void **state)
s = socket(AF_INET, SOCK_DGRAM, IPPROTO_UDP);
assert_int_not_equal(s, -1);
- ZERO_STRUCT(sin);
- sin.sin_family = AF_INET;
- sin.sin_port = htons(torture_server_port());
+ addr.sa.in.sin_family = AF_INET;
+ addr.sa.in.sin_port = htons(torture_server_port());
rc = inet_pton(AF_INET,
torture_server_address(AF_INET),
- &sin.sin_addr);
+ &addr.sa.in.sin_addr);
assert_int_equal(rc, 1);
- rc = connect(s, (struct sockaddr *)&sin, slen);
+ rc = connect(s, &addr.sa.s, addr.sa_socklen);
assert_int_equal(rc, 0);
for (i = 0; i < 10; i++) {
@@ -85,8 +85,9 @@ static void test_send_recv_ipv4(void **state)
#ifdef HAVE_IPV6
static void test_send_recv_ipv6(void **state)
{
- struct sockaddr_in6 sin6;
- socklen_t slen = sizeof(struct sockaddr_in6);
+ struct torture_address addr = {
+ .sa_socklen = sizeof(struct sockaddr_in6),
+ };
ssize_t ret;
int rc;
int i;
@@ -97,16 +98,15 @@ static void test_send_recv_ipv6(void **state)
s = socket(AF_INET6, SOCK_DGRAM, IPPROTO_UDP);
assert_int_not_equal(s, -1);
- ZERO_STRUCT(sin6);
- sin6.sin6_family = AF_INET6;
- sin6.sin6_port = htons(torture_server_port());
+ addr.sa.in6.sin6_family = AF_INET6;
+ addr.sa.in6.sin6_port = htons(torture_server_port());
rc = inet_pton(AF_INET6,
torture_server_address(AF_INET6),
- &sin6.sin6_addr);
+ &addr.sa.in6.sin6_addr);
assert_int_equal(rc, 1);
- rc = connect(s, (struct sockaddr *)&sin6, slen);
+ rc = connect(s, &addr.sa.s, addr.sa_socklen);
assert_int_equal(rc, 0);
for (i = 0; i < 10; i++) {