summaryrefslogtreecommitdiffstats
path: root/source3/client/client.c
diff options
context:
space:
mode:
authorAurélien Aptel <aurelien.aptel@gmail.com>2013-07-11 00:57:40 +0200
committerAndreas Schneider <asn@samba.org>2014-02-19 18:22:27 +0100
commit9032fc7eec40dcd42b853ccd95e3c69c069b0b58 (patch)
tree05c82cf52b9cb62a68ccf2058cd53de853450d4a /source3/client/client.c
parentec1583ebd48d0077aa48149bcabd47fd87c65c83 (diff)
downloadsamba-9032fc7eec40dcd42b853ccd95e3c69c069b0b58.tar.gz
samba-9032fc7eec40dcd42b853ccd95e3c69c069b0b58.tar.xz
samba-9032fc7eec40dcd42b853ccd95e3c69c069b0b58.zip
clitar.c: implement basic tar creation
Signed-off-by: Aurélien Aptel <aurelien.aptel@gmail.com> Reviewed-by: David Disseldorp <ddiss@samba.org> Reviewed-by: Andreas Schneider <asn@samba.org>
Diffstat (limited to 'source3/client/client.c')
-rw-r--r--source3/client/client.c15
1 files changed, 8 insertions, 7 deletions
diff --git a/source3/client/client.c b/source3/client/client.c
index 20a9bec4a2..49b6406d4b 100644
--- a/source3/client/client.c
+++ b/source3/client/client.c
@@ -5319,7 +5319,7 @@ static int do_host_query(const char *query_host)
static int do_tar_op(const char *base_directory)
{
extern struct tar tar_ctx;
- int ret;
+ int ret = 0;
/* do we already have a connection? */
if (!cli) {
@@ -5330,26 +5330,27 @@ static int do_tar_op(const char *base_directory)
service, auth_info, true, smb_encrypt,
max_protocol, port, name_type, &cli);
if (!NT_STATUS_IS_OK(status)) {
- return 1;
+ ret = 1;
+ goto out;
}
cli_set_timeout(cli, io_timeout*1000);
}
- recurse=true;
+ recurse = true;
if (base_directory && *base_directory) {
ret = do_cd(base_directory);
if (ret) {
- cli_shutdown(cli);
- return ret;
+ goto out_cli;
}
}
ret = tar_process(&tar_ctx);
+ out_cli:
cli_shutdown(cli);
-
- return(ret);
+ out:
+ return ret;
}
/****************************************************************************