15 lines
314 B
Diff
15 lines
314 B
Diff
--- a/scp.c
|
|
+++ a/scp.c
|
|
@@ -1084,6 +1084,10 @@ sink(int argc, char **argv)
|
|
free(vect[0]);
|
|
continue;
|
|
}
|
|
+ if (buf[0] == 'C' && ! exists && np[strlen(np)-1] == '/') {
|
|
+ errno = ENOTDIR;
|
|
+ goto bad;
|
|
+ }
|
|
omode = mode;
|
|
mode |= S_IWUSR;
|
|
if ((ofd = open(np, O_WRONLY|O_CREAT, mode)) < 0) {
|
|
--
|