Fix pscp-cmdline-port-bug for PSFTP too. (Also removes what appears to be a
authorjacob <jacob@cda61777-01e9-0310-a592-d414129be87e>
Mon, 7 Oct 2002 17:31:52 +0000 (17:31 +0000)
committerjacob <jacob@cda61777-01e9-0310-a592-d414129be87e>
Mon, 7 Oct 2002 17:31:52 +0000 (17:31 +0000)
gratuitous re-implementation of the "-l user" option.)

git-svn-id: svn://svn.tartarus.org/sgt/putty@1997 cda61777-01e9-0310-a592-d414129be87e

psftp.c

diff --git a/psftp.c b/psftp.c
index 2bf0ded..6f849d4 100644 (file)
--- a/psftp.c
+++ b/psftp.c
@@ -1690,7 +1690,15 @@ static int psftp_connect(char *userhost, char *user, int portnumber)
        do_defaults(NULL, &cfg);
        strncpy(cfg.host, host, sizeof(cfg.host) - 1);
        cfg.host[sizeof(cfg.host) - 1] = '\0';
-       cfg.port = 22;
+    }
+
+    /*
+     * Force use of SSH. (If they got the protocol wrong we assume the
+     * port is useless too.)
+     */
+    if (cfg.protocol != PROT_SSH) {
+        cfg.protocol = PROT_SSH;
+        cfg.port = 22;
     }
 
     /*
@@ -1741,9 +1749,6 @@ static int psftp_connect(char *userhost, char *user, int portnumber)
        }
     }
 
-    if (cfg.protocol != PROT_SSH)
-       cfg.port = 22;
-
     if (portnumber)
        cfg.port = portnumber;
 
@@ -1852,8 +1857,6 @@ int main(int argc, char *argv[])
        } else if (strcmp(argv[i], "-h") == 0 ||
                   strcmp(argv[i], "-?") == 0) {
            usage();
-       } else if (strcmp(argv[i], "-l") == 0 && i + 1 < argc) {
-           user = argv[++i];
        } else if (strcmp(argv[i], "-batch") == 0) {
            console_batch_mode = 1;
        } else if (strcmp(argv[i], "-b") == 0 && i + 1 < argc) {