diff --git a/samples/net/sockets/echo_client/src/tcp.c b/samples/net/sockets/echo_client/src/tcp.c index eee8994425ccf5..b8abce4036b4ba 100644 --- a/samples/net/sockets/echo_client/src/tcp.c +++ b/samples/net/sockets/echo_client/src/tcp.c @@ -87,16 +87,16 @@ static int compare_tcp_data(struct data *data, const char *buf, uint32_t receive return 0; } -static int start_tcp_proto(struct data *data, struct sockaddr *addr, - socklen_t addrlen) +static int start_tcp_proto(struct data *data, sa_family_t family, + struct sockaddr *addr, socklen_t addrlen) { int optval; int ret; #if defined(CONFIG_NET_SOCKETS_SOCKOPT_TLS) - data->tcp.sock = socket(addr->sa_family, SOCK_STREAM, IPPROTO_TLS_1_2); + data->tcp.sock = socket(family, SOCK_STREAM, IPPROTO_TLS_1_2); #else - data->tcp.sock = socket(addr->sa_family, SOCK_STREAM, IPPROTO_TCP); + data->tcp.sock = socket(family, SOCK_STREAM, IPPROTO_TCP); #endif if (data->tcp.sock < 0) { LOG_ERR("Failed to create TCP socket (%s): %d", data->proto, @@ -108,7 +108,7 @@ static int start_tcp_proto(struct data *data, struct sockaddr *addr, struct sockaddr proxy_addr; socklen_t proxy_addrlen; - if (addr->sa_family == AF_INET) { + if (family == AF_INET) { struct sockaddr_in *proxy4 = (struct sockaddr_in *)&proxy_addr; @@ -117,7 +117,7 @@ static int start_tcp_proto(struct data *data, struct sockaddr *addr, inet_pton(AF_INET, SOCKS5_PROXY_V4_ADDR, &proxy4->sin_addr); proxy_addrlen = sizeof(struct sockaddr_in); - } else if (addr->sa_family == AF_INET6) { + } else if (family == AF_INET6) { struct sockaddr_in6 *proxy6 = (struct sockaddr_in6 *)&proxy_addr; @@ -163,7 +163,7 @@ static int start_tcp_proto(struct data *data, struct sockaddr *addr, #endif /* Prefer IPv6 temporary addresses */ - if (addr->sa_family == AF_INET6) { + if (family == AF_INET6) { optval = IPV6_PREFER_SRC_TMP; (void)setsockopt(data->tcp.sock, IPPROTO_IPV6, IPV6_ADDR_PREFERENCES, @@ -242,7 +242,7 @@ int start_tcp(void) inet_pton(AF_INET6, CONFIG_NET_CONFIG_PEER_IPV6_ADDR, &addr6.sin6_addr); - ret = start_tcp_proto(&conf.ipv6, + ret = start_tcp_proto(&conf.ipv6, AF_INET6, (struct sockaddr *)&addr6, sizeof(addr6)); if (ret < 0) { @@ -256,7 +256,8 @@ int start_tcp(void) inet_pton(AF_INET, CONFIG_NET_CONFIG_PEER_IPV4_ADDR, &addr4.sin_addr); - ret = start_tcp_proto(&conf.ipv4, (struct sockaddr *)&addr4, + ret = start_tcp_proto(&conf.ipv4, AF_INET, + (struct sockaddr *)&addr4, sizeof(addr4)); if (ret < 0) { return ret; diff --git a/samples/net/sockets/echo_client/src/udp.c b/samples/net/sockets/echo_client/src/udp.c index 3055c2d03f266d..1fe92e88899044 100644 --- a/samples/net/sockets/echo_client/src/udp.c +++ b/samples/net/sockets/echo_client/src/udp.c @@ -190,16 +190,16 @@ static void wait_transmit(struct k_timer *timer) k_poll_signal_raise(&ctrl->tx_signal, 0); } -static int start_udp_proto(struct data *data, struct sockaddr *addr, - socklen_t addrlen) +static int start_udp_proto(struct data *data, sa_family_t family, + struct sockaddr *addr, socklen_t addrlen) { int optval; int ret; #if defined(CONFIG_NET_SOCKETS_SOCKOPT_TLS) - data->udp.sock = socket(addr->sa_family, SOCK_DGRAM, IPPROTO_DTLS_1_2); + data->udp.sock = socket(family, SOCK_DGRAM, IPPROTO_DTLS_1_2); #else - data->udp.sock = socket(addr->sa_family, SOCK_DGRAM, IPPROTO_UDP); + data->udp.sock = socket(family, SOCK_DGRAM, IPPROTO_UDP); #endif if (data->udp.sock < 0) { LOG_ERR("Failed to create UDP socket (%s): %d", data->proto, @@ -233,7 +233,7 @@ static int start_udp_proto(struct data *data, struct sockaddr *addr, #endif /* Prefer IPv6 temporary addresses */ - if (addr->sa_family == AF_INET6) { + if (family == AF_INET6) { optval = IPV6_PREFER_SRC_TMP; (void)setsockopt(data->udp.sock, IPPROTO_IPV6, IPV6_ADDR_PREFERENCES, @@ -312,7 +312,7 @@ int start_udp(void) inet_pton(AF_INET6, CONFIG_NET_CONFIG_PEER_IPV6_ADDR, &addr6.sin6_addr); - ret = start_udp_proto(&conf.ipv6, + ret = start_udp_proto(&conf.ipv6, AF_INET6, (struct sockaddr *)&addr6, sizeof(addr6)); if (ret < 0) { @@ -326,7 +326,8 @@ int start_udp(void) inet_pton(AF_INET, CONFIG_NET_CONFIG_PEER_IPV4_ADDR, &addr4.sin_addr); - ret = start_udp_proto(&conf.ipv4, (struct sockaddr *)&addr4, + ret = start_udp_proto(&conf.ipv4, AF_INET, + (struct sockaddr *)&addr4, sizeof(addr4)); if (ret < 0) { return ret;