diff options
Diffstat (limited to 'avahi-core/socket.c')
-rw-r--r-- | avahi-core/socket.c | 8 |
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; |