| 109 |
static void init_auth_machine_banner(PTInstVar pvar, HWND dlg) |
static void init_auth_machine_banner(PTInstVar pvar, HWND dlg) |
| 110 |
{ |
{ |
| 111 |
char buf[1024] = "Logging in to "; |
char buf[1024] = "Logging in to "; |
| 112 |
|
#ifdef I18N |
| 113 |
|
char buf2[1024]; |
| 114 |
|
GetDlgItemText(dlg, IDC_SSHAUTHBANNER, buf2, sizeof(buf2)); |
| 115 |
|
_snprintf(buf, sizeof(buf), buf2, SSH_get_host_name(pvar)); |
| 116 |
|
#else |
| 117 |
if (strlen(buf) + strlen(SSH_get_host_name(pvar)) < sizeof(buf) - 2) { |
if (strlen(buf) + strlen(SSH_get_host_name(pvar)) < sizeof(buf) - 2) { |
| 118 |
strcat(buf, SSH_get_host_name(pvar)); |
strcat(buf, SSH_get_host_name(pvar)); |
| 119 |
} |
} |
| 120 |
|
#endif |
| 121 |
SetDlgItemText(dlg, IDC_SSHAUTHBANNER, buf); |
SetDlgItemText(dlg, IDC_SSHAUTHBANNER, buf); |
| 122 |
} |
} |
| 123 |
|
|
| 176 |
{ |
{ |
| 177 |
int default_method = pvar->session_settings.DefaultAuthMethod; |
int default_method = pvar->session_settings.DefaultAuthMethod; |
| 178 |
|
|
| 179 |
|
#ifdef I18N |
| 180 |
|
GetWindowText(dlg, pvar->ts->UIMsg, sizeof(pvar->ts->UIMsg)); |
| 181 |
|
UTIL_get_lang_msg("DLG_AUTH_TITLE", pvar); |
| 182 |
|
SetWindowText(dlg, pvar->ts->UIMsg); |
| 183 |
|
|
| 184 |
|
GetDlgItemText(dlg, IDC_SSHAUTHBANNER, pvar->ts->UIMsg, sizeof(pvar->ts->UIMsg)); |
| 185 |
|
UTIL_get_lang_msg("DLG_AUTH_BANNER", pvar); |
| 186 |
|
SetDlgItemText(dlg, IDC_SSHAUTHBANNER, pvar->ts->UIMsg); |
| 187 |
|
|
| 188 |
|
GetDlgItemText(dlg, IDC_SSHAUTHBANNER2, pvar->ts->UIMsg, sizeof(pvar->ts->UIMsg)); |
| 189 |
|
UTIL_get_lang_msg("DLG_AUTH_BANNER2", pvar); |
| 190 |
|
SetDlgItemText(dlg, IDC_SSHAUTHBANNER2, pvar->ts->UIMsg); |
| 191 |
|
|
| 192 |
|
GetDlgItemText(dlg, IDC_SSHUSERNAMELABEL, pvar->ts->UIMsg, sizeof(pvar->ts->UIMsg)); |
| 193 |
|
UTIL_get_lang_msg("DLG_AUTH_USERNAME", pvar); |
| 194 |
|
SetDlgItemText(dlg, IDC_SSHUSERNAMELABEL, pvar->ts->UIMsg); |
| 195 |
|
|
| 196 |
|
GetDlgItemText(dlg, IDC_SSHPASSWORDCAPTION, pvar->ts->UIMsg, sizeof(pvar->ts->UIMsg)); |
| 197 |
|
UTIL_get_lang_msg("DLG_AUTH_PASSWORD", pvar); |
| 198 |
|
SetDlgItemText(dlg, IDC_SSHPASSWORDCAPTION, pvar->ts->UIMsg); |
| 199 |
|
|
| 200 |
|
GetDlgItemText(dlg, IDC_REMEMBER_PASSWORD, pvar->ts->UIMsg, sizeof(pvar->ts->UIMsg)); |
| 201 |
|
UTIL_get_lang_msg("DLG_AUTH_REMEMBER_PASSWORD", pvar); |
| 202 |
|
SetDlgItemText(dlg, IDC_REMEMBER_PASSWORD, pvar->ts->UIMsg); |
| 203 |
|
|
| 204 |
|
GetDlgItemText(dlg, IDC_SSHUSEPASSWORD, pvar->ts->UIMsg, sizeof(pvar->ts->UIMsg)); |
| 205 |
|
UTIL_get_lang_msg("DLG_AUTH_METHOD_PASSWORD", pvar); |
| 206 |
|
SetDlgItemText(dlg, IDC_SSHUSEPASSWORD, pvar->ts->UIMsg); |
| 207 |
|
|
| 208 |
|
GetDlgItemText(dlg, IDC_SSHUSERSA, pvar->ts->UIMsg, sizeof(pvar->ts->UIMsg)); |
| 209 |
|
UTIL_get_lang_msg("DLG_AUTH_METHOD_RSA", pvar); |
| 210 |
|
SetDlgItemText(dlg, IDC_SSHUSERSA, pvar->ts->UIMsg); |
| 211 |
|
|
| 212 |
|
GetDlgItemText(dlg, IDC_SSHUSERHOSTS, pvar->ts->UIMsg, sizeof(pvar->ts->UIMsg)); |
| 213 |
|
UTIL_get_lang_msg("DLG_AUTH_METHOD_RHOST", pvar); |
| 214 |
|
SetDlgItemText(dlg, IDC_SSHUSERHOSTS, pvar->ts->UIMsg); |
| 215 |
|
|
| 216 |
|
GetDlgItemText(dlg, IDC_CHOOSERSAFILE, pvar->ts->UIMsg, sizeof(pvar->ts->UIMsg)); |
| 217 |
|
UTIL_get_lang_msg("DLG_AUTH_PRIVATEKEY", pvar); |
| 218 |
|
SetDlgItemText(dlg, IDC_CHOOSERSAFILE, pvar->ts->UIMsg); |
| 219 |
|
|
| 220 |
|
GetDlgItemText(dlg, IDC_LOCALUSERNAMELABEL, pvar->ts->UIMsg, sizeof(pvar->ts->UIMsg)); |
| 221 |
|
UTIL_get_lang_msg("DLG_AUTH_LOCALUSER", pvar); |
| 222 |
|
SetDlgItemText(dlg, IDC_LOCALUSERNAMELABEL, pvar->ts->UIMsg); |
| 223 |
|
|
| 224 |
|
GetDlgItemText(dlg, IDC_CHOOSEHOSTRSAFILE, pvar->ts->UIMsg, sizeof(pvar->ts->UIMsg)); |
| 225 |
|
UTIL_get_lang_msg("DLG_AUTH_HOST_PRIVATEKEY", pvar); |
| 226 |
|
SetDlgItemText(dlg, IDC_CHOOSEHOSTRSAFILE, pvar->ts->UIMsg); |
| 227 |
|
|
| 228 |
|
GetDlgItemText(dlg, IDOK, pvar->ts->UIMsg, sizeof(pvar->ts->UIMsg)); |
| 229 |
|
UTIL_get_lang_msg("BTN_OK", pvar); |
| 230 |
|
SetDlgItemText(dlg, IDOK, pvar->ts->UIMsg); |
| 231 |
|
|
| 232 |
|
GetDlgItemText(dlg, IDCANCEL, pvar->ts->UIMsg, sizeof(pvar->ts->UIMsg)); |
| 233 |
|
UTIL_get_lang_msg("BTN_DISCONNECT", pvar); |
| 234 |
|
SetDlgItemText(dlg, IDCANCEL, pvar->ts->UIMsg); |
| 235 |
|
#endif |
| 236 |
|
|
| 237 |
init_auth_machine_banner(pvar, dlg); |
init_auth_machine_banner(pvar, dlg); |
| 238 |
init_password_control(dlg); |
init_password_control(dlg); |
| 239 |
|
|
| 240 |
if (pvar->auth_state.failed_method != SSH_AUTH_NONE) { |
if (pvar->auth_state.failed_method != SSH_AUTH_NONE) { |
| 241 |
/* must be retrying a failed attempt */ |
/* must be retrying a failed attempt */ |
| 242 |
|
#ifdef I18N |
| 243 |
|
strcpy(pvar->ts->UIMsg, "Authentication failed. Please retry."); |
| 244 |
|
UTIL_get_lang_msg("DLG_AUTH_BANNER2_FAILED", pvar); |
| 245 |
|
SetDlgItemText(dlg, IDC_SSHAUTHBANNER2, "Retrying SSH Authentication"); |
| 246 |
|
|
| 247 |
|
strcpy(pvar->ts->UIMsg, "Retrying SSH Authentication"); |
| 248 |
|
UTIL_get_lang_msg("DLG_AUTH_TITLE_FAILED", pvar); |
| 249 |
|
SetWindowText(dlg, pvar->ts->UIMsg); |
| 250 |
|
#else |
| 251 |
SetDlgItemText(dlg, IDC_SSHAUTHBANNER2, |
SetDlgItemText(dlg, IDC_SSHAUTHBANNER2, |
| 252 |
"Authentication failed. Please retry."); |
"Authentication failed. Please retry."); |
| 253 |
SetWindowText(dlg, "Retrying SSH Authentication"); |
SetWindowText(dlg, "Retrying SSH Authentication"); |
| 254 |
|
#endif |
| 255 |
default_method = pvar->auth_state.failed_method; |
default_method = pvar->auth_state.failed_method; |
| 256 |
} |
} |
| 257 |
|
|
| 337 |
// パスワード認証を試す前に、keyboard-interactiveメソッドを試す場合は、ラベル名を |
// パスワード認証を試す前に、keyboard-interactiveメソッドを試す場合は、ラベル名を |
| 338 |
// 変更する。(2005.3.12 yutaka) |
// 変更する。(2005.3.12 yutaka) |
| 339 |
if (pvar->settings.ssh2_keyboard_interactive == 1) { |
if (pvar->settings.ssh2_keyboard_interactive == 1) { |
| 340 |
|
#ifdef I18N |
| 341 |
|
strcpy(pvar->ts->UIMsg, "Use r&hosts to log in (SSH1)"); |
| 342 |
|
UTIL_get_lang_msg("DLG_AUTH_METHOD_RHOST", pvar); |
| 343 |
|
SetDlgItemText(dlg, IDC_SSHUSEPASSWORD, pvar->ts->UIMsg); |
| 344 |
|
#else |
| 345 |
SetDlgItemText(dlg, IDC_SSHUSEPASSWORD, "Use p&lain password to log in (with keyboard-interactive)"); |
SetDlgItemText(dlg, IDC_SSHUSEPASSWORD, "Use p&lain password to log in (with keyboard-interactive)"); |
| 346 |
|
#endif |
| 347 |
} |
} |
| 348 |
|
|
| 349 |
if (pvar->settings.ssh_protocol_version == 1) { |
if (pvar->settings.ssh_protocol_version == 1) { |
| 350 |
|
#ifdef I18N |
| 351 |
|
strcpy(pvar->ts->UIMsg, "Use challenge/response to log in(&TIS)"); |
| 352 |
|
UTIL_get_lang_msg("DLG_AUTH_METHOD_CHALLENGE1", pvar); |
| 353 |
|
SetDlgItemText(dlg, IDC_SSHUSETIS, pvar->ts->UIMsg); |
| 354 |
|
#else |
| 355 |
SetDlgItemText(dlg, IDC_SSHUSETIS, "Use challenge/response to log in(&TIS)"); |
SetDlgItemText(dlg, IDC_SSHUSETIS, "Use challenge/response to log in(&TIS)"); |
| 356 |
|
#endif |
| 357 |
} else { |
} else { |
| 358 |
|
#ifdef I18N |
| 359 |
|
strcpy(pvar->ts->UIMsg, "Use challenge/response to log in(&keyboard-interactive)"); |
| 360 |
|
UTIL_get_lang_msg("DLG_AUTH_METHOD_CHALLENGE2", pvar); |
| 361 |
|
SetDlgItemText(dlg, IDC_SSHUSETIS, pvar->ts->UIMsg); |
| 362 |
|
#else |
| 363 |
SetDlgItemText(dlg, IDC_SSHUSETIS, "Use challenge/response to log in(&keyboard-interactive)"); |
SetDlgItemText(dlg, IDC_SSHUSETIS, "Use challenge/response to log in(&keyboard-interactive)"); |
| 364 |
|
#endif |
| 365 |
} |
} |
| 366 |
#endif |
#endif |
| 367 |
|
|
| 387 |
return result; |
return result; |
| 388 |
} |
} |
| 389 |
|
|
| 390 |
static int get_key_file_name(HWND parent, char FAR * buf, int bufsize) |
static int get_key_file_name(HWND parent, char FAR * buf, int bufsize, PTInstVar pvar) |
| 391 |
{ |
{ |
| 392 |
#ifdef TERATERM32 |
#ifdef TERATERM32 |
| 393 |
OPENFILENAME params; |
OPENFILENAME params; |
| 394 |
char fullname_buf[2048] = "identity"; |
char fullname_buf[2048] = "identity"; |
| 395 |
|
#ifdef I18N |
| 396 |
|
char filter[MAX_UIMSG]; |
| 397 |
|
#endif |
| 398 |
|
|
| 399 |
ZeroMemory(¶ms, sizeof(params)); |
ZeroMemory(¶ms, sizeof(params)); |
| 400 |
params.lStructSize = sizeof(OPENFILENAME); |
params.lStructSize = sizeof(OPENFILENAME); |
| 401 |
params.hwndOwner = parent; |
params.hwndOwner = parent; |
| 402 |
// フィルタの追加 (2004.12.19 yutaka) |
// フィルタの追加 (2004.12.19 yutaka) |
| 403 |
// 3ファイルフィルタの追加 (2005.4.26 yutaka) |
// 3ファイルフィルタの追加 (2005.4.26 yutaka) |
| 404 |
|
#ifdef I18N |
| 405 |
|
/* use memcpy to copy with '\0' */ |
| 406 |
|
memcpy(pvar->ts->UIMsg, "identity files\0identity;id_rsa;id_dsa\0identity(RSA1)\0identity\0id_rsa(SSH2)\0id_rsa\0id_dsa(SSH2)\0id_dsa\0all(*.*)\0*.*\0\0", sizeof(pvar->ts->UIMsg)); |
| 407 |
|
UTIL_get_lang_msg("FILEDLG_OPEN_PRIVATEKEY_FILTER", pvar); |
| 408 |
|
memcpy(filter, pvar->ts->UIMsg, sizeof(filter)); |
| 409 |
|
params.lpstrFilter = filter; |
| 410 |
|
#else |
| 411 |
params.lpstrFilter = "identity files\0identity;id_rsa;id_dsa\0identity(RSA1)\0identity\0id_rsa(SSH2)\0id_rsa\0id_dsa(SSH2)\0id_dsa\0all(*.*)\0*.*\0\0"; |
params.lpstrFilter = "identity files\0identity;id_rsa;id_dsa\0identity(RSA1)\0identity\0id_rsa(SSH2)\0id_rsa\0id_dsa(SSH2)\0id_dsa\0all(*.*)\0*.*\0\0"; |
| 412 |
|
#endif |
| 413 |
params.lpstrCustomFilter = NULL; |
params.lpstrCustomFilter = NULL; |
| 414 |
params.nFilterIndex = 0; |
params.nFilterIndex = 0; |
| 415 |
buf[0] = 0; |
buf[0] = 0; |
| 417 |
params.nMaxFile = sizeof(fullname_buf); |
params.nMaxFile = sizeof(fullname_buf); |
| 418 |
params.lpstrFileTitle = NULL; |
params.lpstrFileTitle = NULL; |
| 419 |
params.lpstrInitialDir = NULL; |
params.lpstrInitialDir = NULL; |
| 420 |
|
#ifdef I18N |
| 421 |
|
strcpy(pvar->ts->UIMsg, "Choose a file with the RSA/DSA private key"); |
| 422 |
|
UTIL_get_lang_msg("FILEDLG_OPEN_PRIVATEKEY_TITLE", pvar); |
| 423 |
|
params.lpstrTitle = pvar->ts->UIMsg; |
| 424 |
|
#else |
| 425 |
params.lpstrTitle = "Choose a file with the RSA/DSA private key"; |
params.lpstrTitle = "Choose a file with the RSA/DSA private key"; |
| 426 |
|
#endif |
| 427 |
params.Flags = |
params.Flags = |
| 428 |
OFN_FILEMUSTEXIST | OFN_PATHMUSTEXIST | OFN_HIDEREADONLY; |
OFN_FILEMUSTEXIST | OFN_PATHMUSTEXIST | OFN_HIDEREADONLY; |
| 429 |
params.lpstrDefExt = NULL; |
params.lpstrDefExt = NULL; |
| 439 |
#endif |
#endif |
| 440 |
} |
} |
| 441 |
|
|
| 442 |
static void choose_RSA_key_file(HWND dlg) |
static void choose_RSA_key_file(HWND dlg, PTInstVar pvar) |
| 443 |
{ |
{ |
| 444 |
char buf[1024]; |
char buf[1024]; |
| 445 |
|
|
| 446 |
if (get_key_file_name(dlg, buf, sizeof(buf))) { |
if (get_key_file_name(dlg, buf, sizeof(buf), pvar)) { |
| 447 |
SetDlgItemText(dlg, IDC_RSAFILENAME, buf); |
SetDlgItemText(dlg, IDC_RSAFILENAME, buf); |
| 448 |
} |
} |
| 449 |
} |
} |
| 450 |
|
|
| 451 |
static void choose_host_RSA_key_file(HWND dlg) |
static void choose_host_RSA_key_file(HWND dlg, PTInstVar pvar) |
| 452 |
{ |
{ |
| 453 |
char buf[1024]; |
char buf[1024]; |
| 454 |
|
|
| 455 |
if (get_key_file_name(dlg, buf, sizeof(buf))) { |
if (get_key_file_name(dlg, buf, sizeof(buf), pvar)) { |
| 456 |
SetDlgItemText(dlg, IDC_HOSTRSAFILENAME, buf); |
SetDlgItemText(dlg, IDC_HOSTRSAFILENAME, buf); |
| 457 |
} |
} |
| 458 |
} |
} |
| 484 |
buf[0] = 0; |
buf[0] = 0; |
| 485 |
GetDlgItemText(dlg, file_ctl_ID, buf, sizeof(buf)); |
GetDlgItemText(dlg, file_ctl_ID, buf, sizeof(buf)); |
| 486 |
if (buf[0] == 0) { |
if (buf[0] == 0) { |
| 487 |
|
#ifdef I18N |
| 488 |
|
strcpy(pvar->ts->UIMsg, "You must specify a file containing the RSA/DSA private key."); |
| 489 |
|
UTIL_get_lang_msg("MSG_KEYSPECIFY_ERROR", pvar); |
| 490 |
|
notify_nonfatal_error(pvar, pvar->ts->UIMsg); |
| 491 |
|
#else |
| 492 |
notify_nonfatal_error(pvar, |
notify_nonfatal_error(pvar, |
| 493 |
"You must specify a file containing the RSA/DSA private key."); |
"You must specify a file containing the RSA/DSA private key."); |
| 494 |
|
#endif |
| 495 |
SetFocus(GetDlgItem(dlg, file_ctl_ID)); |
SetFocus(GetDlgItem(dlg, file_ctl_ID)); |
| 496 |
destroy_malloced_string(&password); |
destroy_malloced_string(&password); |
| 497 |
return FALSE; |
return FALSE; |
| 533 |
|
|
| 534 |
if (key_pair == NULL) { // read error |
if (key_pair == NULL) { // read error |
| 535 |
char buf[1024]; |
char buf[1024]; |
| 536 |
|
#ifdef I18N |
| 537 |
|
strcpy(pvar->ts->UIMsg, "read error SSH2 private key file\r\n%s"); |
| 538 |
|
UTIL_get_lang_msg("MSG_READKEY_ERROR", pvar); |
| 539 |
|
_snprintf(buf, sizeof(buf), pvar->ts->UIMsg, errmsg); |
| 540 |
|
#else |
| 541 |
_snprintf(buf, sizeof(buf), "read error SSH2 private key file\r\n%s", errmsg); |
_snprintf(buf, sizeof(buf), "read error SSH2 private key file\r\n%s", errmsg); |
| 542 |
|
#endif |
| 543 |
notify_nonfatal_error(pvar, buf); |
notify_nonfatal_error(pvar, buf); |
| 544 |
destroy_malloced_string(&password); |
destroy_malloced_string(&password); |
| 545 |
return FALSE; |
return FALSE; |
| 577 |
} |
} |
| 578 |
if (method == SSH_AUTH_RHOSTS || method == SSH_AUTH_RHOSTS_RSA) { |
if (method == SSH_AUTH_RHOSTS || method == SSH_AUTH_RHOSTS_RSA) { |
| 579 |
if (pvar->session_settings.DefaultAuthMethod != SSH_AUTH_RHOSTS) { |
if (pvar->session_settings.DefaultAuthMethod != SSH_AUTH_RHOSTS) { |
| 580 |
|
#ifdef I18N |
| 581 |
|
strcpy(pvar->ts->UIMsg, "Rhosts authentication will probably fail because it was not " |
| 582 |
|
"the default authentication method.\n" |
| 583 |
|
"To use Rhosts authentication " |
| 584 |
|
"in TTSSH, you need to set it to be the default by restarting\n" |
| 585 |
|
"TTSSH and selecting \"SSH Authentication...\" from the Setup menu" |
| 586 |
|
"before connecting."); |
| 587 |
|
UTIL_get_lang_msg("MSG_RHOSTS_NOTDEFAULT_ERROR", pvar); |
| 588 |
|
notify_nonfatal_error(pvar, pvar->ts->UIMsg); |
| 589 |
|
#else |
| 590 |
notify_nonfatal_error(pvar, |
notify_nonfatal_error(pvar, |
| 591 |
"Rhosts authentication will probably fail because it was not " |
"Rhosts authentication will probably fail because it was not " |
| 592 |
"the default authentication method.\n" |
"the default authentication method.\n" |
| 594 |
"in TTSSH, you need to set it to be the default by restarting\n" |
"in TTSSH, you need to set it to be the default by restarting\n" |
| 595 |
"TTSSH and selecting \"SSH Authentication...\" from the Setup menu" |
"TTSSH and selecting \"SSH Authentication...\" from the Setup menu" |
| 596 |
"before connecting."); |
"before connecting."); |
| 597 |
|
#endif |
| 598 |
} |
} |
| 599 |
|
|
| 600 |
pvar->auth_state.cur_cred.rhosts_client_user = |
pvar->auth_state.cur_cred.rhosts_client_user = |
| 682 |
return TRUE; |
return TRUE; |
| 683 |
|
|
| 684 |
case IDC_CHOOSERSAFILE: |
case IDC_CHOOSERSAFILE: |
| 685 |
choose_RSA_key_file(dlg); |
choose_RSA_key_file(dlg, pvar); |
| 686 |
return TRUE; |
return TRUE; |
| 687 |
|
|
| 688 |
case IDC_CHOOSEHOSTRSAFILE: |
case IDC_CHOOSEHOSTRSAFILE: |
| 689 |
choose_host_RSA_key_file(dlg); |
choose_host_RSA_key_file(dlg, pvar); |
| 690 |
return TRUE; |
return TRUE; |
| 691 |
|
|
| 692 |
default: |
default: |
| 729 |
pvar->auth_state.supported_types = types; |
pvar->auth_state.supported_types = types; |
| 730 |
|
|
| 731 |
if (types == 0) { |
if (types == 0) { |
| 732 |
|
#ifdef I18N |
| 733 |
|
strcpy(pvar->ts->UIMsg, |
| 734 |
|
"Server does not support any of the authentication options\n" |
| 735 |
|
"provided by TTSSH. This connection will now close."); |
| 736 |
|
UTIL_get_lang_msg("MSG_NOAUTHMETHOD_ERROR", pvar); |
| 737 |
|
notify_fatal_error(pvar, pvar->ts->UIMsg); |
| 738 |
|
#else |
| 739 |
notify_fatal_error(pvar, |
notify_fatal_error(pvar, |
| 740 |
"Server does not support any of the authentication options\n" |
"Server does not support any of the authentication options\n" |
| 741 |
"provided by TTSSH. This connection will now close."); |
"provided by TTSSH. This connection will now close."); |
| 742 |
|
#endif |
| 743 |
return 0; |
return 0; |
| 744 |
} else { |
} else { |
| 745 |
if (pvar->auth_state.auth_dialog != NULL) { |
if (pvar->auth_state.auth_dialog != NULL) { |
| 857 |
|
|
| 858 |
static void init_TIS_dlg(PTInstVar pvar, HWND dlg) |
static void init_TIS_dlg(PTInstVar pvar, HWND dlg) |
| 859 |
{ |
{ |
| 860 |
|
#ifdef I18N |
| 861 |
|
GetWindowText(dlg, pvar->ts->UIMsg, sizeof(pvar->ts->UIMsg)); |
| 862 |
|
UTIL_get_lang_msg("DLG_TIS_TITLE", pvar); |
| 863 |
|
SetWindowText(dlg, pvar->ts->UIMsg); |
| 864 |
|
|
| 865 |
|
GetDlgItemText(dlg, IDC_SSHAUTHBANNER, pvar->ts->UIMsg, sizeof(pvar->ts->UIMsg)); |
| 866 |
|
UTIL_get_lang_msg("DLG_TIS_BANNER", pvar); |
| 867 |
|
SetDlgItemText(dlg, IDC_SSHAUTHBANNER, pvar->ts->UIMsg); |
| 868 |
|
#endif |
| 869 |
|
|
| 870 |
init_auth_machine_banner(pvar, dlg); |
init_auth_machine_banner(pvar, dlg); |
| 871 |
init_password_control(dlg); |
init_password_control(dlg); |
| 872 |
|
|
| 959 |
cur_active != |
cur_active != |
| 960 |
NULL ? cur_active : pvar->NotificationWindow, |
NULL ? cur_active : pvar->NotificationWindow, |
| 961 |
dlg_proc, (LPARAM) pvar) == -1) { |
dlg_proc, (LPARAM) pvar) == -1) { |
| 962 |
|
#ifdef I18N |
| 963 |
|
strcpy(pvar->ts->UIMsg, |
| 964 |
|
"Unable to display authentication dialog box.\n" |
| 965 |
|
"Connection terminated."); |
| 966 |
|
UTIL_get_lang_msg("MSG_CREATEWINDOW_AUTH_ERROR", pvar); |
| 967 |
|
notify_fatal_error(pvar, pvar->ts->UIMsg); |
| 968 |
|
#else |
| 969 |
notify_fatal_error(pvar, |
notify_fatal_error(pvar, |
| 970 |
"Unable to display authentication dialog box.\n" |
"Unable to display authentication dialog box.\n" |
| 971 |
"Connection terminated."); |
"Connection terminated."); |
| 972 |
|
#endif |
| 973 |
} |
} |
| 974 |
} |
} |
| 975 |
} |
} |
| 976 |
|
|
| 977 |
static void init_default_auth_dlg(PTInstVar pvar, HWND dlg) |
static void init_default_auth_dlg(PTInstVar pvar, HWND dlg) |
| 978 |
{ |
{ |
| 979 |
|
#ifdef I18N |
| 980 |
|
GetWindowText(dlg, pvar->ts->UIMsg, sizeof(pvar->ts->UIMsg)); |
| 981 |
|
UTIL_get_lang_msg("DLG_AUTHSETUP_TITLE", pvar); |
| 982 |
|
SetWindowText(dlg, pvar->ts->UIMsg); |
| 983 |
|
|
| 984 |
|
GetDlgItemText(dlg, IDC_SSHAUTHBANNER, pvar->ts->UIMsg, sizeof(pvar->ts->UIMsg)); |
| 985 |
|
UTIL_get_lang_msg("DLG_AUTHSETUP_BANNER", pvar); |
| 986 |
|
SetDlgItemText(dlg, IDC_SSHAUTHBANNER, pvar->ts->UIMsg); |
| 987 |
|
|
| 988 |
|
GetDlgItemText(dlg, IDC_SSHUSERNAMELABEL, pvar->ts->UIMsg, sizeof(pvar->ts->UIMsg)); |
| 989 |
|
UTIL_get_lang_msg("DLG_AUTHSETUP_USERNAME", pvar); |
| 990 |
|
SetDlgItemText(dlg, IDC_SSHUSERNAMELABEL, pvar->ts->UIMsg); |
| 991 |
|
|
| 992 |
|
GetDlgItemText(dlg, IDC_SSHUSEPASSWORD, pvar->ts->UIMsg, sizeof(pvar->ts->UIMsg)); |
| 993 |
|
UTIL_get_lang_msg("DLG_AUTHSETUP_METHOD_PASSWORD", pvar); |
| 994 |
|
SetDlgItemText(dlg, IDC_SSHUSEPASSWORD, pvar->ts->UIMsg); |
| 995 |
|
|
| 996 |
|
GetDlgItemText(dlg, IDC_KEYBOARD_INTERACTIVE_CHECK, pvar->ts->UIMsg, sizeof(pvar->ts->UIMsg)); |
| 997 |
|
UTIL_get_lang_msg("DLG_AUTHSETUP_METHOD_PASSWORD_KBDINT", pvar); |
| 998 |
|
SetDlgItemText(dlg, IDC_KEYBOARD_INTERACTIVE_CHECK, pvar->ts->UIMsg); |
| 999 |
|
|
| 1000 |
|
GetDlgItemText(dlg, IDC_SSHUSERSA, pvar->ts->UIMsg, sizeof(pvar->ts->UIMsg)); |
| 1001 |
|
UTIL_get_lang_msg("DLG_AUTHSETUP_METHOD_RSA", pvar); |
| 1002 |
|
SetDlgItemText(dlg, IDC_SSHUSERSA, pvar->ts->UIMsg); |
| 1003 |
|
|
| 1004 |
|
GetDlgItemText(dlg, IDC_SSHUSERHOSTS, pvar->ts->UIMsg, sizeof(pvar->ts->UIMsg)); |
| 1005 |
|
UTIL_get_lang_msg("DLG_AUTHSETUP_METHOD_RHOST", pvar); |
| 1006 |
|
SetDlgItemText(dlg, IDC_SSHUSERHOSTS, pvar->ts->UIMsg); |
| 1007 |
|
|
| 1008 |
|
GetDlgItemText(dlg, IDC_SSHUSETIS, pvar->ts->UIMsg, sizeof(pvar->ts->UIMsg)); |
| 1009 |
|
UTIL_get_lang_msg("DLG_AUTHSETUP_METHOD_CHALLENGE", pvar); |
| 1010 |
|
SetDlgItemText(dlg, IDC_SSHUSETIS, pvar->ts->UIMsg); |
| 1011 |
|
|
| 1012 |
|
GetDlgItemText(dlg, IDC_CHOOSERSAFILE, pvar->ts->UIMsg, sizeof(pvar->ts->UIMsg)); |
| 1013 |
|
UTIL_get_lang_msg("DLG_AUTH_PRIVATEKEY", pvar); |
| 1014 |
|
SetDlgItemText(dlg, IDC_CHOOSERSAFILE, pvar->ts->UIMsg); |
| 1015 |
|
|
| 1016 |
|
GetDlgItemText(dlg, IDC_LOCALUSERNAMELABEL, pvar->ts->UIMsg, sizeof(pvar->ts->UIMsg)); |
| 1017 |
|
UTIL_get_lang_msg("DLG_AUTH_LOCALUSER", pvar); |
| 1018 |
|
SetDlgItemText(dlg, IDC_LOCALUSERNAMELABEL, pvar->ts->UIMsg); |
| 1019 |
|
|
| 1020 |
|
GetDlgItemText(dlg, IDC_CHOOSEHOSTRSAFILE, pvar->ts->UIMsg, sizeof(pvar->ts->UIMsg)); |
| 1021 |
|
UTIL_get_lang_msg("DLG_AUTH_HOST_PRIVATEKEY", pvar); |
| 1022 |
|
SetDlgItemText(dlg, IDC_CHOOSEHOSTRSAFILE, pvar->ts->UIMsg); |
| 1023 |
|
|
| 1024 |
|
GetDlgItemText(dlg, IDOK, pvar->ts->UIMsg, sizeof(pvar->ts->UIMsg)); |
| 1025 |
|
UTIL_get_lang_msg("BTN_OK", pvar); |
| 1026 |
|
SetDlgItemText(dlg, IDOK, pvar->ts->UIMsg); |
| 1027 |
|
|
| 1028 |
|
GetDlgItemText(dlg, IDCANCEL, pvar->ts->UIMsg, sizeof(pvar->ts->UIMsg)); |
| 1029 |
|
UTIL_get_lang_msg("BTN_CANCEL", pvar); |
| 1030 |
|
SetDlgItemText(dlg, IDCANCEL, pvar->ts->UIMsg); |
| 1031 |
|
#endif |
| 1032 |
|
|
| 1033 |
switch (pvar->settings.DefaultAuthMethod) { |
switch (pvar->settings.DefaultAuthMethod) { |
| 1034 |
case SSH_AUTH_RSA: |
case SSH_AUTH_RSA: |
| 1035 |
CheckRadioButton(dlg, IDC_SSHUSEPASSWORD, MAX_AUTH_CONTROL, |
CheckRadioButton(dlg, IDC_SSHUSEPASSWORD, MAX_AUTH_CONTROL, |
| 1133 |
return TRUE; |
return TRUE; |
| 1134 |
|
|
| 1135 |
case IDC_CHOOSERSAFILE: |
case IDC_CHOOSERSAFILE: |
| 1136 |
choose_RSA_key_file(dlg); |
choose_RSA_key_file(dlg, pvar); |
| 1137 |
return TRUE; |
return TRUE; |
| 1138 |
|
|
| 1139 |
case IDC_CHOOSEHOSTRSAFILE: |
case IDC_CHOOSEHOSTRSAFILE: |
| 1140 |
choose_host_RSA_key_file(dlg); |
choose_host_RSA_key_file(dlg, pvar); |
| 1141 |
return TRUE; |
return TRUE; |
| 1142 |
|
|
| 1143 |
default: |
default: |
| 1192 |
cur_active != |
cur_active != |
| 1193 |
NULL ? cur_active : pvar->NotificationWindow, |
NULL ? cur_active : pvar->NotificationWindow, |
| 1194 |
default_auth_dlg_proc, (LPARAM) pvar) == -1) { |
default_auth_dlg_proc, (LPARAM) pvar) == -1) { |
| 1195 |
|
#ifdef I18N |
| 1196 |
|
strcpy(pvar->ts->UIMsg, "Unable to display authentication setup dialog box."); |
| 1197 |
|
UTIL_get_lang_msg("MSG_CREATEWINDOW_AUTHSETUP_ERROR", pvar); |
| 1198 |
|
notify_nonfatal_error(pvar, pvar->ts->UIMsg); |
| 1199 |
|
#else |
| 1200 |
notify_nonfatal_error(pvar, |
notify_nonfatal_error(pvar, |
| 1201 |
"Unable to display authentication setup dialog box."); |
"Unable to display authentication setup dialog box."); |
| 1202 |
|
#endif |
| 1203 |
} |
} |
| 1204 |
} |
} |
| 1205 |
|
|
| 1294 |
|
|
| 1295 |
/* |
/* |
| 1296 |
* $Log: not supported by cvs2svn $ |
* $Log: not supported by cvs2svn $ |
| 1297 |
|
* Revision 1.20 2006/09/18 05:08:04 maya |
| 1298 |
|
* コマンドラインパラメータ '/ask4passwd' を追加した。 |
| 1299 |
|
* |
| 1300 |
* Revision 1.19 2006/08/05 03:47:49 yutakakn |
* Revision 1.19 2006/08/05 03:47:49 yutakakn |
| 1301 |
* パスワードをメモリ上に覚えておくかどうかの設定は teraterm.ini に反映させるようにした。 |
* パスワードをメモリ上に覚えておくかどうかの設定は teraterm.ini に反映させるようにした。 |
| 1302 |
* |
* |