diff options
author | Jelmer Vernooij <jelmer@samba.org> | 2004-07-01 20:20:06 +0000 |
---|---|---|
committer | Gerald (Jerry) Carter <jerry@samba.org> | 2007-10-10 10:52:06 -0500 |
commit | 374f00b56b7e9bff08e70ee2d93538b2c7fde7b7 (patch) | |
tree | b3cb59d7da138bb11c16457697fad5ee9b7a424b /source/client | |
parent | cc1881c143b16fa8f0abd80190877d0018bc282e (diff) | |
download | samba-374f00b56b7e9bff08e70ee2d93538b2c7fde7b7.tar.gz samba-374f00b56b7e9bff08e70ee2d93538b2c7fde7b7.tar.xz samba-374f00b56b7e9bff08e70ee2d93538b2c7fde7b7.zip |
r1320: Return an error when the last command read from stdin fails in smbclient +
prepare for better error checking in tar..
Diffstat (limited to 'source/client')
-rw-r--r-- | source/client/client.c | 6 | ||||
-rw-r--r-- | source/client/clitar.c | 6 |
2 files changed, 7 insertions, 5 deletions
diff --git a/source/client/client.c b/source/client/client.c index ea8ec93f97c..1fccfaa581c 100644 --- a/source/client/client.c +++ b/source/client/client.c @@ -2579,9 +2579,10 @@ static void readline_callback(void) Process commands on stdin. ****************************************************************************/ -static void process_stdin(void) +static int process_stdin(void) { const char *ptr; + int rc = 0; while (1) { pstring tok; @@ -2609,13 +2610,14 @@ static void process_stdin(void) if (!next_token_nr(&ptr,tok,NULL,sizeof(tok))) continue; if ((i = process_tok(tok)) >= 0) { - commands[i].fn(); + rc = commands[i].fn(); } else if (i == -2) { d_printf("%s: command abbreviation ambiguous\n",tok); } else { d_printf("%s: command not found\n",tok); } } + return rc; } /***************************************************** diff --git a/source/client/clitar.c b/source/client/clitar.c index e43b3e4cc50..64c194b54da 100644 --- a/source/client/clitar.c +++ b/source/client/clitar.c @@ -1357,9 +1357,8 @@ int cmd_tar(void) if (!tar_parseargs(argcl, argl, buf, 0)) return 1; - process_tar(); SAFE_FREE(argl); - return 0; + return process_tar(); } /**************************************************************************** @@ -1368,6 +1367,7 @@ Command line (option) version int process_tar(void) { + int rc = 0; initarbuf(); switch(tar_type) { case 'x': @@ -1445,7 +1445,7 @@ int process_tar(void) clipn = 0; must_free_cliplist = False; } - return(0); + return rc; } /**************************************************************************** |