opm: properly check for duplicate listeners
This commit is contained in:
parent
850ced64fe
commit
7f2272d3d3
1 changed files with 2 additions and 8 deletions
|
@ -506,6 +506,8 @@ create_listener(const char *ip, uint16_t port)
|
|||
exit(EX_PROVIDER_ERROR);
|
||||
}
|
||||
|
||||
SET_SS_PORT(&addr, htons(port));
|
||||
|
||||
#ifdef RB_IPV6
|
||||
if(GET_SS_FAMILY(&addr) == AF_INET6)
|
||||
{
|
||||
|
@ -557,14 +559,6 @@ create_listener(const char *ip, uint16_t port)
|
|||
exit(EX_PROVIDER_ERROR);
|
||||
}
|
||||
|
||||
/* Set up ports for binding */
|
||||
#ifdef RB_IPV6
|
||||
if(GET_SS_FAMILY(&addr) == AF_INET6)
|
||||
((struct sockaddr_in6 *)&addr)->sin6_port = htons(port);
|
||||
else
|
||||
#endif
|
||||
((struct sockaddr_in *)&addr)->sin_port = htons(port);
|
||||
|
||||
if(bind(rb_get_fd(F), (struct sockaddr *)&addr, GET_SS_LEN(&addr)))
|
||||
{
|
||||
/* Shit happens, let's not cripple authd over /this/ since it could be user error */
|
||||
|
|
Loading…
Reference in a new issue