diff options
Diffstat (limited to 'sftp-client.c')
-rw-r--r-- | sftp-client.c | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/sftp-client.c b/sftp-client.c index df9838648..bff37073c 100644 --- a/sftp-client.c +++ b/sftp-client.c | |||
@@ -28,7 +28,7 @@ | |||
28 | /* XXX: copy between two remote sites */ | 28 | /* XXX: copy between two remote sites */ |
29 | 29 | ||
30 | #include "includes.h" | 30 | #include "includes.h" |
31 | RCSID("$OpenBSD: sftp-client.c,v 1.37 2002/11/21 23:03:51 deraadt Exp $"); | 31 | RCSID("$OpenBSD: sftp-client.c,v 1.38 2003/01/06 23:51:22 djm Exp $"); |
32 | 32 | ||
33 | #include "openbsd-compat/sys-queue.h" | 33 | #include "openbsd-compat/sys-queue.h" |
34 | 34 | ||
@@ -758,7 +758,7 @@ do_download(struct sftp_conn *conn, char *remote_path, char *local_path, | |||
758 | 758 | ||
759 | /* XXX: should we preserve set[ug]id? */ | 759 | /* XXX: should we preserve set[ug]id? */ |
760 | if (a->flags & SSH2_FILEXFER_ATTR_PERMISSIONS) | 760 | if (a->flags & SSH2_FILEXFER_ATTR_PERMISSIONS) |
761 | mode = S_IWRITE | (a->perm & 0777); | 761 | mode = a->perm & 0777; |
762 | else | 762 | else |
763 | mode = 0666; | 763 | mode = 0666; |
764 | 764 | ||
@@ -793,7 +793,8 @@ do_download(struct sftp_conn *conn, char *remote_path, char *local_path, | |||
793 | return(-1); | 793 | return(-1); |
794 | } | 794 | } |
795 | 795 | ||
796 | local_fd = open(local_path, O_WRONLY | O_CREAT | O_TRUNC, mode); | 796 | local_fd = open(local_path, O_WRONLY | O_CREAT | O_TRUNC, |
797 | mode | S_IWRITE); | ||
797 | if (local_fd == -1) { | 798 | if (local_fd == -1) { |
798 | error("Couldn't open local file \"%s\" for writing: %s", | 799 | error("Couldn't open local file \"%s\" for writing: %s", |
799 | local_path, strerror(errno)); | 800 | local_path, strerror(errno)); |