]> git.meshlink.io Git - meshlink/commitdiff
Check if SO_REUSEPORT is defined before using it.
authorGuus Sliepen <guus@meshlink.io>
Wed, 17 Mar 2021 19:20:32 +0000 (20:20 +0100)
committerGuus Sliepen <guus@meshlink.io>
Thu, 15 Apr 2021 18:30:51 +0000 (20:30 +0200)
src/discovery.c

index 18919745c2e01d783bf452e5f638c56cf6779e0a..5cc1d4121b426a7d38de104769244991028a7b7f 100644 (file)
@@ -906,7 +906,9 @@ bool discovery_start(meshlink_handle_t *mesh) {
                .in.sin_port = ntohs(5353),
        };
        setsockopt(fd, SOL_SOCKET, SO_REUSEADDR, &one, sizeof(one));
+#ifdef SO_REUSEPORT
        setsockopt(fd, SOL_SOCKET, SO_REUSEPORT, &one, sizeof(one));
+#endif
        setsockopt(fd, IPPROTO_IP, IP_MULTICAST_LOOP, &one8, sizeof(one8));
        setsockopt(fd, IPPROTO_IP, IP_MULTICAST_TTL, &ttl8, sizeof(ttl8));
 
@@ -927,7 +929,9 @@ bool discovery_start(meshlink_handle_t *mesh) {
        }
 
        setsockopt(fd, SOL_SOCKET, SO_REUSEADDR, &one, sizeof(one));
+#ifdef SO_REUSEPORT
        setsockopt(fd, SOL_SOCKET, SO_REUSEPORT, &one, sizeof(one));
+#endif
        setsockopt(fd, IPPROTO_IPV6, IPV6_V6ONLY, &one, sizeof(one));
        setsockopt(fd, IPPROTO_IPV6, IPV6_MULTICAST_LOOP, &one, sizeof(one));
        setsockopt(fd, IPPROTO_IPV6, IPV6_MULTICAST_HOPS, &ttl, sizeof(ttl));