wireguard: socket: ignore v6 endpoints when ipv6 is disabled
[linux.git] / drivers / net / wireguard / socket.c
index 467eef0e563bf7f94dad01535d035af985da798e..0414d7a6ce74141cd2ca365bfd1da727691e27ec 100644 (file)
@@ -242,7 +242,7 @@ int wg_socket_endpoint_from_skb(struct endpoint *endpoint,
                endpoint->addr4.sin_addr.s_addr = ip_hdr(skb)->saddr;
                endpoint->src4.s_addr = ip_hdr(skb)->daddr;
                endpoint->src_if4 = skb->skb_iif;
-       } else if (skb->protocol == htons(ETH_P_IPV6)) {
+       } else if (IS_ENABLED(CONFIG_IPV6) && skb->protocol == htons(ETH_P_IPV6)) {
                endpoint->addr6.sin6_family = AF_INET6;
                endpoint->addr6.sin6_port = udp_hdr(skb)->source;
                endpoint->addr6.sin6_addr = ipv6_hdr(skb)->saddr;
@@ -285,7 +285,7 @@ void wg_socket_set_peer_endpoint(struct wg_peer *peer,
                peer->endpoint.addr4 = endpoint->addr4;
                peer->endpoint.src4 = endpoint->src4;
                peer->endpoint.src_if4 = endpoint->src_if4;
-       } else if (endpoint->addr.sa_family == AF_INET6) {
+       } else if (IS_ENABLED(CONFIG_IPV6) && endpoint->addr.sa_family == AF_INET6) {
                peer->endpoint.addr6 = endpoint->addr6;
                peer->endpoint.src6 = endpoint->src6;
        } else {
This page took 0.034753 seconds and 4 git commands to generate.