diff --git a/src/server.c b/src/server.c index f535b525b..9fff466da 100644 --- a/src/server.c +++ b/src/server.c @@ -3053,14 +3053,15 @@ int listenToPort(int port, socketFds *sfd) { sfd->fd[sfd->count] = anetTcpServer(server.neterr,port,addr,server.tcp_backlog); } if (sfd->fd[sfd->count] == ANET_ERR) { + int net_errno = errno; serverLog(LL_WARNING, "Could not create server TCP listening socket %s:%d: %s", addr, port, server.neterr); - if (errno == EADDRNOTAVAIL && optional) + if (net_errno == EADDRNOTAVAIL && optional) continue; - if (errno == ENOPROTOOPT || errno == EPROTONOSUPPORT || - errno == ESOCKTNOSUPPORT || errno == EPFNOSUPPORT || - errno == EAFNOSUPPORT) + if (net_errno == ENOPROTOOPT || net_errno == EPROTONOSUPPORT || + net_errno == ESOCKTNOSUPPORT || net_errno == EPFNOSUPPORT || + net_errno == EAFNOSUPPORT) continue; /* Rollback successful listens before exiting */