summaryrefslogtreecommitdiffstats
path: root/avahi-core/socket.c
diff options
context:
space:
mode:
Diffstat (limited to 'avahi-core/socket.c')
-rw-r--r--avahi-core/socket.c8
1 files changed, 8 insertions, 0 deletions
diff --git a/avahi-core/socket.c b/avahi-core/socket.c
index ef7bca0..9be9ece 100644
--- a/avahi-core/socket.c
+++ b/avahi-core/socket.c
@@ -171,6 +171,14 @@ static int bind_with_warn(int fd, const struct sockaddr *sa, socklen_t l) {
return -1;
}
+#ifdef SO_REUSEPORT
+ yes = 1;
+ if (setsockopt(fd, SOL_SOCKET, SO_REUSEPORT, &yes, sizeof(yes)) < 0) {
+ avahi_log_warn("SO_REUSEPORT failed: %s", strerror(errno));
+ return -1;
+ }
+#endif
+
if (bind(fd, sa, l) < 0) {
avahi_log_warn("bind() failed: %s", strerror(errno));
return -1;