From: Stefan Metzmacher Date: Thu, 25 Mar 2010 12:20:56 +0000 (+0100) Subject: s3:libsmb: add cli_state_is_connected() function X-Git-Tag: samba-3.6.0pre1~3894 X-Git-Url: http://git.samba.org/?p=samba.git;a=commitdiff_plain;h=d7bf30ef92031ffddcde3680b38e602510bcae24 s3:libsmb: add cli_state_is_connected() function metze --- diff --git a/source3/include/proto.h b/source3/include/proto.h index c270a1dd4e6..96ca32e2281 100644 --- a/source3/include/proto.h +++ b/source3/include/proto.h @@ -2314,6 +2314,7 @@ bool cli_is_dos_error(struct cli_state *cli); NTSTATUS cli_get_nt_error(struct cli_state *cli); void cli_set_nt_error(struct cli_state *cli, NTSTATUS status); void cli_reset_error(struct cli_state *cli); +bool cli_state_is_connected(struct cli_state *cli); /* The following definitions come from libsmb/clifile.c */ diff --git a/source3/libsmb/clierror.c b/source3/libsmb/clierror.c index 54f8a7a43ce..015afb18aaa 100644 --- a/source3/libsmb/clierror.c +++ b/source3/libsmb/clierror.c @@ -359,3 +359,21 @@ void cli_reset_error(struct cli_state *cli) SSVAL(cli->inbuf,smb_err,0); } } + +bool cli_state_is_connected(struct cli_state *cli) +{ + if (cli == NULL) { + return false; + } + + if (!cli->initialised) { + return false; + } + + if (cli->fd == -1) { + return false; + } + + return true; +} +