diff options
author | Jeremy Allison <jra@samba.org> | 2007-10-25 14:11:35 -0700 |
---|---|---|
committer | Jeremy Allison <jra@samba.org> | 2007-10-25 14:11:35 -0700 |
commit | 2ec6224b552ef86fa1739c9e396c39c7ec6c76c6 (patch) | |
tree | 86da0f1e7ee135c24bc6b4d9c71f2fb3cfbc3685 /source | |
parent | 11a977aa0757801fb0fa805b123e7bc75c8be447 (diff) | |
download | samba-2ec6224b552ef86fa1739c9e396c39c7ec6c76c6.tar.gz samba-2ec6224b552ef86fa1739c9e396c39c7ec6c76c6.tar.xz samba-2ec6224b552ef86fa1739c9e396c39c7ec6c76c6.zip |
Ensure we don't terminate if we fail to bind to a socket,
only fail if we can't bind to any socket.
Jeremy.
Diffstat (limited to 'source')
-rw-r--r-- | source/smbd/server.c | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/source/smbd/server.c b/source/smbd/server.c index 0a292bc6167..abad0efc3dd 100644 --- a/source/smbd/server.c +++ b/source/smbd/server.c @@ -435,7 +435,7 @@ static bool open_sockets_smbd(bool is_daemon, bool interactive, const char *smb_ s = open_socket_in(SOCK_STREAM, port, 0, &ss, true); if (s == -1) { - return false; + continue; } /* ready to listen */ @@ -471,6 +471,11 @@ static bool open_sockets_smbd(bool is_daemon, bool interactive, const char *smb_ SAFE_FREE(ports); + if (num_sockets == 0) { + DEBUG(0,("open_sockets_smbd: No " + "sockets available to bind to.\n")); + return false; + } /* Setup the main smbd so that we can get messages. Note that do this after starting listening. This is needed as when in |