mirror of git://anongit.mindrot.org/openssh.git
- markus@cvs.openbsd.org 2001/03/16 09:55:53
[sftp-int.c] fix memset and whitespace
This commit is contained in:
parent
c8d1c30c31
commit
5df2ffaeac
|
@ -12,6 +12,9 @@
|
|||
[sftp-client.c sftp-client.h sftp-glob.c sftp-int.c]
|
||||
Revise globbing for get/put to be more shell-like. In particular,
|
||||
"get/put file* directory/" now works. ok markus@
|
||||
- markus@cvs.openbsd.org 2001/03/16 09:55:53
|
||||
[sftp-int.c]
|
||||
fix memset and whitespace
|
||||
|
||||
20010315
|
||||
- OpenBSD CVS Sync
|
||||
|
@ -4574,4 +4577,4 @@
|
|||
- Wrote replacements for strlcpy and mkdtemp
|
||||
- Released 1.0pre1
|
||||
|
||||
$Id: ChangeLog,v 1.964 2001/03/17 00:34:46 mouring Exp $
|
||||
$Id: ChangeLog,v 1.965 2001/03/17 00:36:17 mouring Exp $
|
||||
|
|
18
sftp-int.c
18
sftp-int.c
|
@ -26,7 +26,7 @@
|
|||
/* XXX: recursive operations */
|
||||
|
||||
#include "includes.h"
|
||||
RCSID("$OpenBSD: sftp-int.c,v 1.29 2001/03/16 08:16:18 djm Exp $");
|
||||
RCSID("$OpenBSD: sftp-int.c,v 1.30 2001/03/16 09:55:53 markus Exp $");
|
||||
|
||||
#include "buffer.h"
|
||||
#include "xmalloc.h"
|
||||
|
@ -281,7 +281,7 @@ get_pathname(const char **cpp, char **path)
|
|||
/* Check for quoted filenames */
|
||||
if (*cp == '\"' || *cp == '\'') {
|
||||
quot = *cp++;
|
||||
|
||||
|
||||
end = strchr(cp, quot);
|
||||
if (end == NULL) {
|
||||
error("Unterminated quote");
|
||||
|
@ -346,11 +346,11 @@ process_get(int in, int out, char *src, char *dst, char *pwd, int pflag)
|
|||
glob_t g;
|
||||
int err = 0;
|
||||
int i;
|
||||
|
||||
|
||||
abs_src = xstrdup(src);
|
||||
abs_src = make_absolute(abs_src, pwd);
|
||||
|
||||
memset(&g, '\0', sizeof(g));
|
||||
memset(&g, 0, sizeof(g));
|
||||
debug3("Looking up %s", abs_src);
|
||||
if (remote_glob(in, out, abs_src, 0, NULL, &g)) {
|
||||
error("File \"%s\" not found.", abs_src);
|
||||
|
@ -382,12 +382,12 @@ process_get(int in, int out, char *src, char *dst, char *pwd, int pflag)
|
|||
|
||||
/* Multiple matches, dst may be directory or unspecified */
|
||||
if (dst && !is_dir(dst)) {
|
||||
error("Multiple files match, but \"%s\" is not a directory",
|
||||
error("Multiple files match, but \"%s\" is not a directory",
|
||||
dst);
|
||||
err = -1;
|
||||
goto out;
|
||||
}
|
||||
|
||||
|
||||
for(i = 0; g.gl_pathv[i]; i++) {
|
||||
if (infer_path(g.gl_pathv[i], &tmp)) {
|
||||
err = -1;
|
||||
|
@ -429,7 +429,7 @@ process_put(int in, int out, char *src, char *dst, char *pwd, int pflag)
|
|||
tmp_dst = make_absolute(tmp_dst, pwd);
|
||||
}
|
||||
|
||||
memset(&g, '\0', sizeof(g));
|
||||
memset(&g, 0, sizeof(g));
|
||||
debug3("Looking up %s", src);
|
||||
if (glob(src, 0, NULL, &g)) {
|
||||
error("File \"%s\" not found.", src);
|
||||
|
@ -461,7 +461,7 @@ process_put(int in, int out, char *src, char *dst, char *pwd, int pflag)
|
|||
|
||||
/* Multiple matches, dst may be directory or unspecified */
|
||||
if (tmp_dst && !remote_is_dir(in, out, tmp_dst)) {
|
||||
error("Multiple files match, but \"%s\" is not a directory",
|
||||
error("Multiple files match, but \"%s\" is not a directory",
|
||||
tmp_dst);
|
||||
err = -1;
|
||||
goto out;
|
||||
|
@ -736,7 +736,7 @@ parse_dispatch_command(int in, int out, const char *cmd, char **pwd)
|
|||
path1 = tmp;
|
||||
if ((aa = do_stat(in, out, path1, 0)) == NULL)
|
||||
break;
|
||||
if ((aa->flags & SSH2_FILEXFER_ATTR_PERMISSIONS) &&
|
||||
if ((aa->flags & SSH2_FILEXFER_ATTR_PERMISSIONS) &&
|
||||
!S_ISDIR(aa->perm)) {
|
||||
error("Can't ls: \"%s\" is not a directory", path1);
|
||||
break;
|
||||
|
|
Loading…
Reference in New Issue