X-Git-Url: https://git.distorted.org.uk/u/mdw/putty/blobdiff_plain/e2a197cf4658f554fc653403bfe8aa340ae8c2fa..d37c2d8198de28cc4076c560dff9a94f8452fe7c:/psftp.c diff --git a/psftp.c b/psftp.c index 2bf0ded5..4657091f 100644 --- a/psftp.c +++ b/psftp.c @@ -1457,6 +1457,19 @@ void fatalbox(char *fmt, ...) cleanup_exit(1); } +void modalfatalbox(char *fmt, ...) +{ + char str[0x100]; /* Make the size big enough */ + va_list ap; + va_start(ap, fmt); + strcpy(str, "Fatal:"); + vsprintf(str + strlen(str), fmt, ap); + va_end(ap); + strcat(str, "\n"); + fputs(str, stderr); + + cleanup_exit(1); +} void connection_fatal(char *fmt, ...) { char str[0x100]; /* Make the size big enough */ @@ -1690,7 +1703,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 +1762,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 +1870,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) {