aboutsummaryrefslogtreecommitdiff
path: root/tools/plink/winplink.c
diff options
context:
space:
mode:
Diffstat (limited to 'tools/plink/winplink.c')
-rw-r--r--tools/plink/winplink.c12
1 files changed, 9 insertions, 3 deletions
diff --git a/tools/plink/winplink.c b/tools/plink/winplink.c
index 525b1a212..7af9e1b4f 100644
--- a/tools/plink/winplink.c
+++ b/tools/plink/winplink.c
@@ -166,7 +166,7 @@ static void usage(void)
printf(" -pgpfp print PGP key fingerprints and exit\n");
printf(" -v show verbose messages\n");
printf(" -load sessname Load settings from saved session\n");
- printf(" -ssh -telnet -rlogin -raw\n");
+ printf(" -ssh -telnet -rlogin -raw -serial\n");
printf(" force use of a particular protocol\n");
printf(" -P port connect to specified port\n");
printf(" -l user connect with specified username\n");
@@ -193,6 +193,8 @@ static void usage(void)
printf(" -N don't start a shell/command (SSH-2 only)\n");
printf(" -nc host:port\n");
printf(" open tunnel in place of session (SSH-2 only)\n");
+ printf(" -sercfg configuration-string (e.g. 19200,8,n,1,X)\n");
+ printf(" Specify the serial configuration (serial only)\n");
exit(1);
}
@@ -279,6 +281,7 @@ int main(int argc, char **argv)
int skcount, sksize;
int exitcode;
int errors;
+ int got_host = FALSE;
int use_subsystem = 0;
long now, next;
@@ -341,7 +344,7 @@ int main(int argc, char **argv)
errors = 1;
}
} else if (*p) {
- if (!cfg_launchable(&cfg)) {
+ if (!cfg_launchable(&cfg) || !(got_host || loaded_session)) {
char *q = p;
/*
* If the hostname starts with "telnet:", set the
@@ -367,6 +370,7 @@ int main(int argc, char **argv)
cfg.port = -1;
strncpy(cfg.host, q, sizeof(cfg.host) - 1);
cfg.host[sizeof(cfg.host) - 1] = '\0';
+ got_host = TRUE;
} else {
char *r, *user, *host;
/*
@@ -415,8 +419,10 @@ int main(int argc, char **argv)
strncpy(cfg.host, host, sizeof(cfg.host) - 1);
cfg.host[sizeof(cfg.host) - 1] = '\0';
cfg.port = default_port;
+ got_host = TRUE;
} else {
cfg = cfg2;
+ loaded_session = TRUE;
}
}
@@ -463,7 +469,7 @@ int main(int argc, char **argv)
if (errors)
return 1;
- if (!cfg_launchable(&cfg)) {
+ if (!cfg_launchable(&cfg) || !(got_host || loaded_session)) {
usage();
}