X-Git-Url: https://git.distorted.org.uk/~mdw/sgt/putty/blobdiff_plain/e13bba36449b2d3e7e8ebaadaee74db977512d18..95390bb866330af2a495a87db368886185bfd887:/config.c diff --git a/config.c b/config.c index b1a49b6e..1501f619 100644 --- a/config.c +++ b/config.c @@ -402,7 +402,7 @@ static void sessionsaver_handler(union control *ctrl, void *dlg, /* If at this point we have a valid session, go! */ if (*cfg2.host) { *cfg = cfg2; /* structure copy */ - cfg->remote_cmd_ptr = cfg->remote_cmd; /* nasty */ + cfg->remote_cmd_ptr = NULL; dlg_end(dlg, 1); } else dlg_beep(dlg); @@ -718,7 +718,7 @@ static void portfwd_handler(union control *ctrl, void *dlg, str[i++] = type; dlg_editbox_get(pfd->sourcebox, dlg, str+i, sizeof(str) - i); - if (!str[2]) { + if (!str[i]) { dlg_error_msg(dlg, "You need to specify a source port number"); return; } @@ -868,6 +868,7 @@ void setup_config_box(struct controlbox *b, struct sesslist *sesslist, * The Load/Save panel is available even in mid-session. */ s = ctrl_getset(b, "Session", "savedsessions", + midsession ? "Save the current session settings" : "Load, save or delete a stored session"); ctrl_columns(s, 2, 75, 25); ssd->sesslist = sesslist; @@ -1377,23 +1378,18 @@ void setup_config_box(struct controlbox *b, struct sesslist *sesslist, 'p', HELPCTX(connection_tcpkeepalive), dlg_stdcheckbox_handler, I(offsetof(Config,tcp_keepalives))); +#ifndef NO_IPV6 s = ctrl_getset(b, "Connection", "ipversion", "Internet protocol version"); - ctrl_radiobuttons(s, NULL, NO_SHORTCUT, -#ifndef NO_IPV6 - 3, -#else - 2, -#endif + ctrl_radiobuttons(s, NULL, NO_SHORTCUT, 3, HELPCTX(connection_ipversion), dlg_stdradiobutton_handler, I(offsetof(Config, addressfamily)), "Auto", NO_SHORTCUT, I(ADDRTYPE_UNSPEC), "IPv4", NO_SHORTCUT, I(ADDRTYPE_IPV4), -#ifndef NO_IPV6 "IPv6", NO_SHORTCUT, I(ADDRTYPE_IPV6), -#endif NULL); +#endif } /* @@ -1662,7 +1658,7 @@ void setup_config_box(struct controlbox *b, struct sesslist *sesslist, s = ctrl_getset(b, "Connection/SSH/Kex", "main", "Key exchange algorithm options"); - c = ctrl_draglist(s, "Algorithm selection policy", 's', + c = ctrl_draglist(s, "Algorithm selection policy:", 's', HELPCTX(ssh_kexlist), kexlist_handler, P(NULL)); c->listbox.height = 5; @@ -1800,21 +1796,16 @@ void setup_config_box(struct controlbox *b, struct sesslist *sesslist, "Remote", 'm', P(NULL), "Dynamic", 'y', P(NULL), NULL); - pfd->addressfamily = - ctrl_radiobuttons(s, NULL, NO_SHORTCUT, #ifndef NO_IPV6 - 3, -#else - 2, -#endif + pfd->addressfamily = + ctrl_radiobuttons(s, NULL, NO_SHORTCUT, 3, HELPCTX(ssh_tunnels_portfwd_ipversion), portfwd_handler, P(pfd), "Auto", NO_SHORTCUT, I(ADDRTYPE_UNSPEC), "IPv4", NO_SHORTCUT, I(ADDRTYPE_IPV4), -#ifndef NO_IPV6 "IPv6", NO_SHORTCUT, I(ADDRTYPE_IPV6), -#endif NULL); +#endif ctrl_tabdelay(s, pfd->addbutton); ctrl_columns(s, 1, 100); @@ -1848,6 +1839,9 @@ void setup_config_box(struct controlbox *b, struct sesslist *sesslist, ctrl_droplist(s, "Misuses the session ID in PK auth", 'n', 20, HELPCTX(ssh_bugs_pksessid2), sshbug_handler, I(offsetof(Config,sshbug_pksessid2))); + ctrl_droplist(s, "Handles key re-exchange badly", 'k', 20, + HELPCTX(ssh_bugs_rekey2), + sshbug_handler, I(offsetof(Config,sshbug_rekey2))); } } }