mirror of
https://git.tartarus.org/simon/putty.git
synced 2025-03-16 03:53:01 -05:00
Since r7266, it's been possible to get a hostname into Default Settings; but
plink did not cope gracefully with this -- it was not possible to override that hostname on the command line (attempts at doing so would be treated as part of the remote command). Fix this by applying the principle of r7265: if the user didn't explicitly specify that they wanted to launch the hostname in the default (for instance with '-load "Default Settings"', we assume they don't want to, and such a hostname doesn't count when deciding whether to treat a non-option argument as hostname or command. [originally from svn r8651] [r7265 == 5d76e00dac9220e8798e4d0f17a4069a58ae1667] [r7266 == 856ed4ae73576ef5725f1ea4999f40907ab13589]
This commit is contained in:
parent
68d9ae20ca
commit
d992932e1e
@ -587,6 +587,7 @@ int main(int argc, char **argv)
|
|||||||
int exitcode;
|
int exitcode;
|
||||||
int errors;
|
int errors;
|
||||||
int use_subsystem = 0;
|
int use_subsystem = 0;
|
||||||
|
int got_host = FALSE;
|
||||||
void *ldisc;
|
void *ldisc;
|
||||||
long now;
|
long now;
|
||||||
|
|
||||||
@ -660,7 +661,7 @@ int main(int argc, char **argv)
|
|||||||
errors = 1;
|
errors = 1;
|
||||||
}
|
}
|
||||||
} else if (*p) {
|
} else if (*p) {
|
||||||
if (!cfg_launchable(&cfg)) {
|
if (!cfg_launchable(&cfg) || !(got_host || loaded_session)) {
|
||||||
char *q = p;
|
char *q = p;
|
||||||
|
|
||||||
/*
|
/*
|
||||||
@ -687,6 +688,7 @@ int main(int argc, char **argv)
|
|||||||
cfg.port = -1;
|
cfg.port = -1;
|
||||||
strncpy(cfg.host, q, sizeof(cfg.host) - 1);
|
strncpy(cfg.host, q, sizeof(cfg.host) - 1);
|
||||||
cfg.host[sizeof(cfg.host) - 1] = '\0';
|
cfg.host[sizeof(cfg.host) - 1] = '\0';
|
||||||
|
got_host = TRUE;
|
||||||
} else {
|
} else {
|
||||||
char *r, *user, *host;
|
char *r, *user, *host;
|
||||||
/*
|
/*
|
||||||
@ -735,8 +737,10 @@ int main(int argc, char **argv)
|
|||||||
strncpy(cfg.host, host, sizeof(cfg.host) - 1);
|
strncpy(cfg.host, host, sizeof(cfg.host) - 1);
|
||||||
cfg.host[sizeof(cfg.host) - 1] = '\0';
|
cfg.host[sizeof(cfg.host) - 1] = '\0';
|
||||||
cfg.port = default_port;
|
cfg.port = default_port;
|
||||||
|
got_host = TRUE;
|
||||||
} else {
|
} else {
|
||||||
cfg = cfg2;
|
cfg = cfg2;
|
||||||
|
loaded_session = TRUE;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -783,7 +787,7 @@ int main(int argc, char **argv)
|
|||||||
if (errors)
|
if (errors)
|
||||||
return 1;
|
return 1;
|
||||||
|
|
||||||
if (!cfg_launchable(&cfg)) {
|
if (!cfg_launchable(&cfg) || !(got_host || loaded_session)) {
|
||||||
usage();
|
usage();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -281,6 +281,7 @@ int main(int argc, char **argv)
|
|||||||
int skcount, sksize;
|
int skcount, sksize;
|
||||||
int exitcode;
|
int exitcode;
|
||||||
int errors;
|
int errors;
|
||||||
|
int got_host = FALSE;
|
||||||
int use_subsystem = 0;
|
int use_subsystem = 0;
|
||||||
long now, next;
|
long now, next;
|
||||||
|
|
||||||
@ -343,7 +344,7 @@ int main(int argc, char **argv)
|
|||||||
errors = 1;
|
errors = 1;
|
||||||
}
|
}
|
||||||
} else if (*p) {
|
} else if (*p) {
|
||||||
if (!cfg_launchable(&cfg)) {
|
if (!cfg_launchable(&cfg) || !(got_host || loaded_session)) {
|
||||||
char *q = p;
|
char *q = p;
|
||||||
/*
|
/*
|
||||||
* If the hostname starts with "telnet:", set the
|
* If the hostname starts with "telnet:", set the
|
||||||
@ -369,6 +370,7 @@ int main(int argc, char **argv)
|
|||||||
cfg.port = -1;
|
cfg.port = -1;
|
||||||
strncpy(cfg.host, q, sizeof(cfg.host) - 1);
|
strncpy(cfg.host, q, sizeof(cfg.host) - 1);
|
||||||
cfg.host[sizeof(cfg.host) - 1] = '\0';
|
cfg.host[sizeof(cfg.host) - 1] = '\0';
|
||||||
|
got_host = TRUE;
|
||||||
} else {
|
} else {
|
||||||
char *r, *user, *host;
|
char *r, *user, *host;
|
||||||
/*
|
/*
|
||||||
@ -417,8 +419,10 @@ int main(int argc, char **argv)
|
|||||||
strncpy(cfg.host, host, sizeof(cfg.host) - 1);
|
strncpy(cfg.host, host, sizeof(cfg.host) - 1);
|
||||||
cfg.host[sizeof(cfg.host) - 1] = '\0';
|
cfg.host[sizeof(cfg.host) - 1] = '\0';
|
||||||
cfg.port = default_port;
|
cfg.port = default_port;
|
||||||
|
got_host = TRUE;
|
||||||
} else {
|
} else {
|
||||||
cfg = cfg2;
|
cfg = cfg2;
|
||||||
|
loaded_session = TRUE;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -465,7 +469,7 @@ int main(int argc, char **argv)
|
|||||||
if (errors)
|
if (errors)
|
||||||
return 1;
|
return 1;
|
||||||
|
|
||||||
if (!cfg_launchable(&cfg)) {
|
if (!cfg_launchable(&cfg) || !(got_host || loaded_session)) {
|
||||||
usage();
|
usage();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user