diff options
author | Damien Miller <djm@cvs.openbsd.org> | 2008-07-10 07:42:15 +0000 |
---|---|---|
committer | Damien Miller <djm@cvs.openbsd.org> | 2008-07-10 07:42:15 +0000 |
commit | dad73a68a2807ebbb2e39df7b3d9d1c8545b2291 (patch) | |
tree | 9a485a309ef52a3c30a717060d9c1b930dd4430b | |
parent | dc1ecf146e4c99810663f29de8843975947a7a64 (diff) |
retry port allocation on all errors, not just EADDRINUSE; ok jakob@
-rw-r--r-- | usr.sbin/bind/lib/dns/dispatch.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/usr.sbin/bind/lib/dns/dispatch.c b/usr.sbin/bind/lib/dns/dispatch.c index 99d5b93af2b..341798e29e7 100644 --- a/usr.sbin/bind/lib/dns/dispatch.c +++ b/usr.sbin/bind/lib/dns/dispatch.c @@ -1933,7 +1933,7 @@ dispatch_createudp(dns_dispatchmgr_t *mgr, isc_socketmgr_t *sockmgr, isc_sockaddr_setport(&localaddr_bound, 0); result = create_socket(sockmgr, &localaddr_bound, &sock); - if (result == ISC_R_ADDRINUSE) { + if (result != ISC_R_SUCCESS) { if (++k == 1024) attributes &= ~DNS_DISPATCHATTR_RANDOMPORT; goto getsocket; |