diff options
author | Jeremy Allison <jra@samba.org> | 2007-06-20 17:38:42 +0000 |
---|---|---|
committer | Gerald (Jerry) Carter <jerry@samba.org> | 2007-10-10 12:23:28 -0500 |
commit | ce02d0dfcbeeeec316578322257d998589090c6f (patch) | |
tree | 3855284b3cede5e054a0149b8afef432dfbcb318 /source3/libsmb/libsmbclient.c | |
parent | 04c75d9c95c5321d1fe5455671074b0e46f0df77 (diff) | |
download | samba-ce02d0dfcbeeeec316578322257d998589090c6f.tar.gz samba-ce02d0dfcbeeeec316578322257d998589090c6f.tar.bz2 samba-ce02d0dfcbeeeec316578322257d998589090c6f.zip |
r23554: Fix bug #4711 by makeing cli_connect return an NTSTATUS.
Long overdue fix....
Jeremy.
(This used to be commit 073fdc5a58139796dbaa7ea9833dca5308f11282)
Diffstat (limited to 'source3/libsmb/libsmbclient.c')
-rw-r--r-- | source3/libsmb/libsmbclient.c | 19 |
1 files changed, 11 insertions, 8 deletions
diff --git a/source3/libsmb/libsmbclient.c b/source3/libsmb/libsmbclient.c index 725916e737..c36bb21ff4 100644 --- a/source3/libsmb/libsmbclient.c +++ b/source3/libsmb/libsmbclient.c @@ -675,7 +675,8 @@ smbc_server(SMBCCTX *context, int port_try_first; int port_try_next; const char *username_used; - + NTSTATUS status; + zero_ip(&ip); ZERO_STRUCT(c); @@ -795,17 +796,19 @@ smbc_server(SMBCCTX *context, c->port = port_try_first; - if (!cli_connect(c, server_n, &ip)) { + status = cli_connect(c, server_n, &ip); + if (!NT_STATUS_IS_OK(status)) { /* First connection attempt failed. Try alternate port. */ c->port = port_try_next; - if (!cli_connect(c, server_n, &ip)) { - cli_shutdown(c); - errno = ETIMEDOUT; - return NULL; - } - } + status = cli_connect(c, server_n, &ip); + if (!NT_STATUS_IS_OK(status)) { + cli_shutdown(c); + errno = ETIMEDOUT; + return NULL; + } + } if (!cli_session_request(c, &calling, &called)) { cli_shutdown(c); |