diff --git a/common.c b/common.c index 394cdb1..7799b1e 100644 --- a/common.c +++ b/common.c @@ -133,8 +133,12 @@ int start_listen_sockets(int *sockfd[], struct addrinfo *addr_list) if (IP_FREEBIND) { res = setsockopt((*sockfd)[i], IPPROTO_IP, IP_FREEBIND, (char*)&one, sizeof(one)); - check_res_dumpdie(res, addr, "setsockopt(IP_FREEBIND)"); - } + if (res == -1) { + fprintf(stderr, "%s:%s: %s\n", + sprintaddr(buf, sizeof(buf), addr), + syscall, + strerror(errno)); + } res = bind((*sockfd)[i], addr->ai_addr, addr->ai_addrlen); check_res_dumpdie(res, addr, "bind");