You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
28 lines
685 B
28 lines
685 B
2 years ago
|
diff --git a/sftp.c b/sftp.c
|
||
|
index 04881c83..03c7a5c7 100644
|
||
|
--- a/sftp.c
|
||
|
+++ b/sftp.c
|
||
|
@@ -2527,12 +2527,17 @@ main(int argc, char **argv)
|
||
|
port = tmp;
|
||
|
break;
|
||
|
default:
|
||
|
+ /* Try with user, host and path. */
|
||
|
if (parse_user_host_path(*argv, &user, &host,
|
||
|
- &file1) == -1) {
|
||
|
- /* Treat as a plain hostname. */
|
||
|
- host = xstrdup(*argv);
|
||
|
- host = cleanhostname(host);
|
||
|
- }
|
||
|
+ &file1) == 0)
|
||
|
+ break;
|
||
|
+ /* Try with user and host. */
|
||
|
+ if (parse_user_host_port(*argv, &user, &host, NULL)
|
||
|
+ == 0)
|
||
|
+ break;
|
||
|
+ /* Treat as a plain hostname. */
|
||
|
+ host = xstrdup(*argv);
|
||
|
+ host = cleanhostname(host);
|
||
|
break;
|
||
|
}
|
||
|
file2 = *(argv + 1);
|