Develop and Download Open Source Software

Browse Subversion Repository

Diff of /branches/ssh_chacha20poly1305/ttssh2/ttxssh/auth.c

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 2992 by maya, Wed Aug 8 16:04:09 2007 UTC revision 2994 by maya, Mon Aug 13 22:30:03 2007 UTC
# Line 42  SOFTWARE, EVEN IF ADVISED OF THE POSSIBI Line 42  SOFTWARE, EVEN IF ADVISED OF THE POSSIBI
42    
43  #define MAX_AUTH_CONTROL IDC_SSHUSETIS  #define MAX_AUTH_CONTROL IDC_SSHUSETIS
44    
 #ifndef NO_I18N  
45  static HFONT DlgAuthFont;  static HFONT DlgAuthFont;
46  static HFONT DlgTisFont;  static HFONT DlgTisFont;
47  static HFONT DlgAuthSetupFont;  static HFONT DlgAuthSetupFont;
 #endif  
48    
49  void destroy_malloced_string(char FAR * FAR * str)  void destroy_malloced_string(char FAR * FAR * str)
50  {  {
# Line 114  static void set_auth_options_status(HWND Line 112  static void set_auth_options_status(HWND
112    
113  static void init_auth_machine_banner(PTInstVar pvar, HWND dlg)  static void init_auth_machine_banner(PTInstVar pvar, HWND dlg)
114  {  {
115          char buf[1024] = "Logging in to ";          char buf[1024], buf2[1024];
116  #ifndef NO_I18N  
         char buf2[1024];  
117          GetDlgItemText(dlg, IDC_SSHAUTHBANNER, buf2, sizeof(buf2));          GetDlgItemText(dlg, IDC_SSHAUTHBANNER, buf2, sizeof(buf2));
118          _snprintf_s(buf, sizeof(buf), _TRUNCATE, buf2, SSH_get_host_name(pvar));          _snprintf_s(buf, sizeof(buf), _TRUNCATE, buf2, SSH_get_host_name(pvar));
 #else  
         if (strlen(buf) + strlen(SSH_get_host_name(pvar)) < sizeof(buf) - 2) {  
                 strcat(buf, SSH_get_host_name(pvar));  
         }  
 #endif  
119          SetDlgItemText(dlg, IDC_SSHAUTHBANNER, buf);          SetDlgItemText(dlg, IDC_SSHAUTHBANNER, buf);
120  }  }
121    
# Line 181  static void update_server_supported_type Line 173  static void update_server_supported_type
173  static void init_auth_dlg(PTInstVar pvar, HWND dlg)  static void init_auth_dlg(PTInstVar pvar, HWND dlg)
174  {  {
175          int default_method = pvar->session_settings.DefaultAuthMethod;          int default_method = pvar->session_settings.DefaultAuthMethod;
176            char uimsg[MAX_UIMSG];
177    
178  #ifndef NO_I18N          GetWindowText(dlg, uimsg, sizeof(uimsg));
179          GetWindowText(dlg, pvar->ts->UIMsg, sizeof(pvar->ts->UIMsg));          UTIL_get_lang_msg("DLG_AUTH_TITLE", pvar, uimsg);
         UTIL_get_lang_msg("DLG_AUTH_TITLE", pvar);  
180          SetWindowText(dlg, pvar->ts->UIMsg);          SetWindowText(dlg, pvar->ts->UIMsg);
181            GetDlgItemText(dlg, IDC_SSHAUTHBANNER, uimsg, sizeof(uimsg));
182          GetDlgItemText(dlg, IDC_SSHAUTHBANNER, pvar->ts->UIMsg, sizeof(pvar->ts->UIMsg));          UTIL_get_lang_msg("DLG_AUTH_BANNER", pvar, uimsg);
         UTIL_get_lang_msg("DLG_AUTH_BANNER", pvar);  
183          SetDlgItemText(dlg, IDC_SSHAUTHBANNER, pvar->ts->UIMsg);          SetDlgItemText(dlg, IDC_SSHAUTHBANNER, pvar->ts->UIMsg);
184            GetDlgItemText(dlg, IDC_SSHAUTHBANNER2, uimsg, sizeof(uimsg));
185          GetDlgItemText(dlg, IDC_SSHAUTHBANNER2, pvar->ts->UIMsg, sizeof(pvar->ts->UIMsg));          UTIL_get_lang_msg("DLG_AUTH_BANNER2", pvar, uimsg);
         UTIL_get_lang_msg("DLG_AUTH_BANNER2", pvar);  
186          SetDlgItemText(dlg, IDC_SSHAUTHBANNER2, pvar->ts->UIMsg);          SetDlgItemText(dlg, IDC_SSHAUTHBANNER2, pvar->ts->UIMsg);
187            GetDlgItemText(dlg, IDC_SSHUSERNAMELABEL, uimsg, sizeof(uimsg));
188          GetDlgItemText(dlg, IDC_SSHUSERNAMELABEL, pvar->ts->UIMsg, sizeof(pvar->ts->UIMsg));          UTIL_get_lang_msg("DLG_AUTH_USERNAME", pvar, uimsg);
         UTIL_get_lang_msg("DLG_AUTH_USERNAME", pvar);  
189          SetDlgItemText(dlg, IDC_SSHUSERNAMELABEL, pvar->ts->UIMsg);          SetDlgItemText(dlg, IDC_SSHUSERNAMELABEL, pvar->ts->UIMsg);
190            GetDlgItemText(dlg, IDC_SSHPASSWORDCAPTION, uimsg, sizeof(uimsg));
191          GetDlgItemText(dlg, IDC_SSHPASSWORDCAPTION, pvar->ts->UIMsg, sizeof(pvar->ts->UIMsg));          UTIL_get_lang_msg("DLG_AUTH_PASSWORD", pvar, uimsg);
         UTIL_get_lang_msg("DLG_AUTH_PASSWORD", pvar);  
192          SetDlgItemText(dlg, IDC_SSHPASSWORDCAPTION, pvar->ts->UIMsg);          SetDlgItemText(dlg, IDC_SSHPASSWORDCAPTION, pvar->ts->UIMsg);
193            GetDlgItemText(dlg, IDC_REMEMBER_PASSWORD, uimsg, sizeof(uimsg));
194          GetDlgItemText(dlg, IDC_REMEMBER_PASSWORD, pvar->ts->UIMsg, sizeof(pvar->ts->UIMsg));          UTIL_get_lang_msg("DLG_AUTH_REMEMBER_PASSWORD", pvar, uimsg);
         UTIL_get_lang_msg("DLG_AUTH_REMEMBER_PASSWORD", pvar);  
195          SetDlgItemText(dlg, IDC_REMEMBER_PASSWORD, pvar->ts->UIMsg);          SetDlgItemText(dlg, IDC_REMEMBER_PASSWORD, pvar->ts->UIMsg);
196            GetDlgItemText(dlg, IDC_SSHUSEPASSWORD, uimsg, sizeof(uimsg));
197          GetDlgItemText(dlg, IDC_SSHUSEPASSWORD, pvar->ts->UIMsg, sizeof(pvar->ts->UIMsg));          UTIL_get_lang_msg("DLG_AUTH_METHOD_PASSWORD", pvar, uimsg);
         UTIL_get_lang_msg("DLG_AUTH_METHOD_PASSWORD", pvar);  
198          SetDlgItemText(dlg, IDC_SSHUSEPASSWORD, pvar->ts->UIMsg);          SetDlgItemText(dlg, IDC_SSHUSEPASSWORD, pvar->ts->UIMsg);
199            GetDlgItemText(dlg, IDC_SSHUSERSA, uimsg, sizeof(uimsg));
200          GetDlgItemText(dlg, IDC_SSHUSERSA, pvar->ts->UIMsg, sizeof(pvar->ts->UIMsg));          UTIL_get_lang_msg("DLG_AUTH_METHOD_RSA", pvar, uimsg);
         UTIL_get_lang_msg("DLG_AUTH_METHOD_RSA", pvar);  
201          SetDlgItemText(dlg, IDC_SSHUSERSA, pvar->ts->UIMsg);          SetDlgItemText(dlg, IDC_SSHUSERSA, pvar->ts->UIMsg);
202            GetDlgItemText(dlg, IDC_SSHUSERHOSTS, uimsg, sizeof(uimsg));
203          GetDlgItemText(dlg, IDC_SSHUSERHOSTS, pvar->ts->UIMsg, sizeof(pvar->ts->UIMsg));          UTIL_get_lang_msg("DLG_AUTH_METHOD_RHOST", pvar, uimsg);
         UTIL_get_lang_msg("DLG_AUTH_METHOD_RHOST", pvar);  
204          SetDlgItemText(dlg, IDC_SSHUSERHOSTS, pvar->ts->UIMsg);          SetDlgItemText(dlg, IDC_SSHUSERHOSTS, pvar->ts->UIMsg);
205            GetDlgItemText(dlg, IDC_CHOOSERSAFILE, uimsg, sizeof(uimsg));
206          GetDlgItemText(dlg, IDC_CHOOSERSAFILE, pvar->ts->UIMsg, sizeof(pvar->ts->UIMsg));          UTIL_get_lang_msg("DLG_AUTH_PRIVATEKEY", pvar, uimsg);
         UTIL_get_lang_msg("DLG_AUTH_PRIVATEKEY", pvar);  
207          SetDlgItemText(dlg, IDC_CHOOSERSAFILE, pvar->ts->UIMsg);          SetDlgItemText(dlg, IDC_CHOOSERSAFILE, pvar->ts->UIMsg);
208            GetDlgItemText(dlg, IDC_LOCALUSERNAMELABEL, uimsg, sizeof(uimsg));
209          GetDlgItemText(dlg, IDC_LOCALUSERNAMELABEL, pvar->ts->UIMsg, sizeof(pvar->ts->UIMsg));          UTIL_get_lang_msg("DLG_AUTH_LOCALUSER", pvar, uimsg);
         UTIL_get_lang_msg("DLG_AUTH_LOCALUSER", pvar);  
210          SetDlgItemText(dlg, IDC_LOCALUSERNAMELABEL, pvar->ts->UIMsg);          SetDlgItemText(dlg, IDC_LOCALUSERNAMELABEL, pvar->ts->UIMsg);
211            GetDlgItemText(dlg, IDC_CHOOSEHOSTRSAFILE, uimsg, sizeof(uimsg));
212          GetDlgItemText(dlg, IDC_CHOOSEHOSTRSAFILE, pvar->ts->UIMsg, sizeof(pvar->ts->UIMsg));          UTIL_get_lang_msg("DLG_AUTH_HOST_PRIVATEKEY", pvar, uimsg);
         UTIL_get_lang_msg("DLG_AUTH_HOST_PRIVATEKEY", pvar);  
213          SetDlgItemText(dlg, IDC_CHOOSEHOSTRSAFILE, pvar->ts->UIMsg);          SetDlgItemText(dlg, IDC_CHOOSEHOSTRSAFILE, pvar->ts->UIMsg);
214            GetDlgItemText(dlg, IDOK, uimsg, sizeof(uimsg));
215          GetDlgItemText(dlg, IDOK, pvar->ts->UIMsg, sizeof(pvar->ts->UIMsg));          UTIL_get_lang_msg("BTN_OK", pvar, uimsg);
         UTIL_get_lang_msg("BTN_OK", pvar);  
216          SetDlgItemText(dlg, IDOK, pvar->ts->UIMsg);          SetDlgItemText(dlg, IDOK, pvar->ts->UIMsg);
217            GetDlgItemText(dlg, IDCANCEL, uimsg, sizeof(uimsg));
218          GetDlgItemText(dlg, IDCANCEL, pvar->ts->UIMsg, sizeof(pvar->ts->UIMsg));          UTIL_get_lang_msg("BTN_DISCONNECT", pvar, uimsg);
         UTIL_get_lang_msg("BTN_DISCONNECT", pvar);  
219          SetDlgItemText(dlg, IDCANCEL, pvar->ts->UIMsg);          SetDlgItemText(dlg, IDCANCEL, pvar->ts->UIMsg);
 #endif  
220    
221          init_auth_machine_banner(pvar, dlg);          init_auth_machine_banner(pvar, dlg);
222          init_password_control(dlg);          init_password_control(dlg);
223    
224          if (pvar->auth_state.failed_method != SSH_AUTH_NONE) {          if (pvar->auth_state.failed_method != SSH_AUTH_NONE) {
225                  /* must be retrying a failed attempt */                  /* must be retrying a failed attempt */
226  #ifndef NO_I18N                  UTIL_get_lang_msg("DLG_AUTH_BANNER2_FAILED", pvar, "Authentication failed. Please retry.");
227                  strncpy_s(pvar->ts->UIMsg, sizeof(pvar->ts->UIMsg), "Authentication failed. Please retry.", _TRUNCATE);                  SetDlgItemText(dlg, IDC_SSHAUTHBANNER2, pvar->ts->UIMsg);
228                  UTIL_get_lang_msg("DLG_AUTH_BANNER2_FAILED", pvar);                  UTIL_get_lang_msg("DLG_AUTH_TITLE_FAILED", pvar, "Retrying SSH Authentication");
                 SetDlgItemText(dlg, IDC_SSHAUTHBANNER2, "Retrying SSH Authentication");  
   
                 strncpy_s(pvar->ts->UIMsg, sizeof(pvar->ts->UIMsg), "Retrying SSH Authentication", _TRUNCATE);  
                 UTIL_get_lang_msg("DLG_AUTH_TITLE_FAILED", pvar);  
229                  SetWindowText(dlg, pvar->ts->UIMsg);                  SetWindowText(dlg, pvar->ts->UIMsg);
 #else  
                 SetDlgItemText(dlg, IDC_SSHAUTHBANNER2,  
                                            "Authentication failed. Please retry.");  
                 SetWindowText(dlg, "Retrying SSH Authentication");  
 #endif  
230                  default_method = pvar->auth_state.failed_method;                  default_method = pvar->auth_state.failed_method;
231          }          }
232    
# Line 347  static void init_auth_dlg(PTInstVar pvar Line 316  static void init_auth_dlg(PTInstVar pvar
316          // パスワード認証を試す前に、keyboard-interactiveメソッドを試す場合は、ラベル名を          // パスワード認証を試す前に、keyboard-interactiveメソッドを試す場合は、ラベル名を
317          // 変更する。(2005.3.12 yutaka)          // 変更する。(2005.3.12 yutaka)
318          if (pvar->settings.ssh2_keyboard_interactive == 1) {          if (pvar->settings.ssh2_keyboard_interactive == 1) {
319  #ifndef NO_I18N                  UTIL_get_lang_msg("DLG_AUTH_METHOD_PASSWORD_KBDINT", pvar,
320                  strncpy_s(pvar->ts->UIMsg, sizeof(pvar->ts->UIMsg), "Use p&lain password to log in (with keyboard-interactive)", _TRUNCATE);                                                    "Use p&lain password to log in (with keyboard-interactive)");
                 UTIL_get_lang_msg("DLG_AUTH_METHOD_PASSWORD_KBDINT", pvar);  
321                  SetDlgItemText(dlg, IDC_SSHUSEPASSWORD, pvar->ts->UIMsg);                  SetDlgItemText(dlg, IDC_SSHUSEPASSWORD, pvar->ts->UIMsg);
 #else  
                 SetDlgItemText(dlg, IDC_SSHUSEPASSWORD, "Use p&lain password to log in (with keyboard-interactive)");  
 #endif  
322          }          }
323    
324          if (pvar->settings.ssh_protocol_version == 1) {          if (pvar->settings.ssh_protocol_version == 1) {
325  #ifndef NO_I18N                  UTIL_get_lang_msg("DLG_AUTH_METHOD_CHALLENGE1", pvar,
326                  strncpy_s(pvar->ts->UIMsg, sizeof(pvar->ts->UIMsg), "Use challenge/response to log in(&TIS)", _TRUNCATE);                                                    "Use challenge/response to log in(&TIS)");
                 UTIL_get_lang_msg("DLG_AUTH_METHOD_CHALLENGE1", pvar);  
327                  SetDlgItemText(dlg, IDC_SSHUSETIS, pvar->ts->UIMsg);                  SetDlgItemText(dlg, IDC_SSHUSETIS, pvar->ts->UIMsg);
 #else  
                 SetDlgItemText(dlg, IDC_SSHUSETIS, "Use challenge/response to log in(&TIS)");  
 #endif  
328          } else {          } else {
329  #ifndef NO_I18N                  UTIL_get_lang_msg("DLG_AUTH_METHOD_CHALLENGE2", pvar,
330                  strncpy_s(pvar->ts->UIMsg, sizeof(pvar->ts->UIMsg), "Use &challenge/response to log in(keyboard-interactive)", _TRUNCATE);                                                    "Use &challenge/response to log in(keyboard-interactive)");
                 UTIL_get_lang_msg("DLG_AUTH_METHOD_CHALLENGE2", pvar);  
331                  SetDlgItemText(dlg, IDC_SSHUSETIS, pvar->ts->UIMsg);                  SetDlgItemText(dlg, IDC_SSHUSETIS, pvar->ts->UIMsg);
 #else  
                 SetDlgItemText(dlg, IDC_SSHUSETIS, "Use challenge/response to log in(&keyboard-interactive)");  
 #endif  
332          }          }
333  #endif  #endif
334    
# Line 397  static char FAR *alloc_control_text(HWND Line 354  static char FAR *alloc_control_text(HWND
354          return result;          return result;
355  }  }
356    
 #ifndef NO_I18N  
357  static int get_key_file_name(HWND parent, char FAR * buf, int bufsize, PTInstVar pvar)  static int get_key_file_name(HWND parent, char FAR * buf, int bufsize, PTInstVar pvar)
 #else  
 static int get_key_file_name(HWND parent, char FAR * buf, int bufsize)  
 #endif  
358  {  {
359  #ifdef TERATERM32  #ifdef TERATERM32
360          OPENFILENAME params;          OPENFILENAME params;
361          char fullname_buf[2048] = "identity";          char fullname_buf[2048] = "identity";
 #ifndef NO_I18N  
362          char filter[MAX_UIMSG];          char filter[MAX_UIMSG];
 #endif  
363    
364          ZeroMemory(&params, sizeof(params));          ZeroMemory(&params, sizeof(params));
365          params.lStructSize = sizeof(OPENFILENAME);          params.lStructSize = sizeof(OPENFILENAME);
366          params.hwndOwner = parent;          params.hwndOwner = parent;
367          // フィルタの追加 (2004.12.19 yutaka)          // フィルタの追加 (2004.12.19 yutaka)
368          // 3ファイルフィルタの追加 (2005.4.26 yutaka)          // 3ファイルフィルタの追加 (2005.4.26 yutaka)
369  #ifndef NO_I18N          UTIL_get_lang_msg("FILEDLG_OPEN_PRIVATEKEY_FILTER", pvar,
370          strncpy_s(pvar->ts->UIMsg, sizeof(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", _TRUNCATE);                                            "identity files\\0identity;id_rsa;id_dsa\\0identity(RSA1)\\0identity\\0id_rsa(SSH2)\\0id_rsa\\0id_dsa(SSH2)\\0id_dsa\\0all(*.*)\\0*.*\\0\\0");
         UTIL_get_lang_msg("FILEDLG_OPEN_PRIVATEKEY_FILTER", pvar);  
371          memcpy(filter, pvar->ts->UIMsg, sizeof(filter));          memcpy(filter, pvar->ts->UIMsg, sizeof(filter));
372          params.lpstrFilter = filter;          params.lpstrFilter = filter;
 #else  
         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";  
 #endif  
373          params.lpstrCustomFilter = NULL;          params.lpstrCustomFilter = NULL;
374          params.nFilterIndex = 0;          params.nFilterIndex = 0;
375          buf[0] = 0;          buf[0] = 0;
# Line 430  static int get_key_file_name(HWND parent Line 377  static int get_key_file_name(HWND parent
377          params.nMaxFile = sizeof(fullname_buf);          params.nMaxFile = sizeof(fullname_buf);
378          params.lpstrFileTitle = NULL;          params.lpstrFileTitle = NULL;
379          params.lpstrInitialDir = NULL;          params.lpstrInitialDir = NULL;
380  #ifndef NO_I18N          UTIL_get_lang_msg("FILEDLG_OPEN_PRIVATEKEY_TITLE", pvar,
381          strncpy_s(pvar->ts->UIMsg, sizeof(pvar->ts->UIMsg), "Choose a file with the RSA/DSA private key", _TRUNCATE);                                            "Choose a file with the RSA/DSA private key");
         UTIL_get_lang_msg("FILEDLG_OPEN_PRIVATEKEY_TITLE", pvar);  
382          params.lpstrTitle = pvar->ts->UIMsg;          params.lpstrTitle = pvar->ts->UIMsg;
 #else  
         params.lpstrTitle = "Choose a file with the RSA/DSA private key";  
 #endif  
383          params.Flags =          params.Flags =
384                  OFN_FILEMUSTEXIST | OFN_PATHMUSTEXIST | OFN_HIDEREADONLY;                  OFN_FILEMUSTEXIST | OFN_PATHMUSTEXIST | OFN_HIDEREADONLY;
385          params.lpstrDefExt = NULL;          params.lpstrDefExt = NULL;
# Line 452  static int get_key_file_name(HWND parent Line 395  static int get_key_file_name(HWND parent
395  #endif  #endif
396  }  }
397    
 #ifndef NO_I18N  
398  static void choose_RSA_key_file(HWND dlg, PTInstVar pvar)  static void choose_RSA_key_file(HWND dlg, PTInstVar pvar)
 #else  
 static void choose_RSA_key_file(HWND dlg)  
 #endif  
399  {  {
400          char buf[1024];          char buf[1024];
401    
 #ifndef NO_I18N  
402          if (get_key_file_name(dlg, buf, sizeof(buf), pvar)) {          if (get_key_file_name(dlg, buf, sizeof(buf), pvar)) {
 #else  
         if (get_key_file_name(dlg, buf, sizeof(buf))) {  
 #endif  
403                  SetDlgItemText(dlg, IDC_RSAFILENAME, buf);                  SetDlgItemText(dlg, IDC_RSAFILENAME, buf);
404          }          }
405  }  }
406    
 #ifndef NO_I18N  
407  static void choose_host_RSA_key_file(HWND dlg, PTInstVar pvar)  static void choose_host_RSA_key_file(HWND dlg, PTInstVar pvar)
 #else  
 static void choose_host_RSA_key_file(HWND dlg)  
 #endif  
408  {  {
409          char buf[1024];          char buf[1024];
410    
 #ifndef NO_I18N  
411          if (get_key_file_name(dlg, buf, sizeof(buf), pvar)) {          if (get_key_file_name(dlg, buf, sizeof(buf), pvar)) {
 #else  
         if (get_key_file_name(dlg, buf, sizeof(buf))) {  
 #endif  
412                  SetDlgItemText(dlg, IDC_HOSTRSAFILENAME, buf);                  SetDlgItemText(dlg, IDC_HOSTRSAFILENAME, buf);
413          }          }
414  }  }
# Line 513  static BOOL end_auth_dlg(PTInstVar pvar, Line 440  static BOOL end_auth_dlg(PTInstVar pvar,
440                  buf[0] = 0;                  buf[0] = 0;
441                  GetDlgItemText(dlg, file_ctl_ID, buf, sizeof(buf));                  GetDlgItemText(dlg, file_ctl_ID, buf, sizeof(buf));
442                  if (buf[0] == 0) {                  if (buf[0] == 0) {
443  #ifndef NO_I18N                          UTIL_get_lang_msg("MSG_KEYSPECIFY_ERROR", pvar,
444                          strncpy_s(pvar->ts->UIMsg, sizeof(pvar->ts->UIMsg), "You must specify a file containing the RSA/DSA private key.", _TRUNCATE);                                                            "You must specify a file containing the RSA/DSA private key.");
                         UTIL_get_lang_msg("MSG_KEYSPECIFY_ERROR", pvar);  
445                          notify_nonfatal_error(pvar, pvar->ts->UIMsg);                          notify_nonfatal_error(pvar, pvar->ts->UIMsg);
 #else  
                         notify_nonfatal_error(pvar,  
                                                                   "You must specify a file containing the RSA/DSA private key.");  
 #endif  
446                          SetFocus(GetDlgItem(dlg, file_ctl_ID));                          SetFocus(GetDlgItem(dlg, file_ctl_ID));
447                          destroy_malloced_string(&password);                          destroy_malloced_string(&password);
448                          return FALSE;                          return FALSE;
# Line 562  static BOOL end_auth_dlg(PTInstVar pvar, Line 484  static BOOL end_auth_dlg(PTInstVar pvar,
484    
485                          if (key_pair == NULL) { // read error                          if (key_pair == NULL) { // read error
486                                  char buf[1024];                                  char buf[1024];
487  #ifndef NO_I18N                                  UTIL_get_lang_msg("MSG_READKEY_ERROR", pvar,
488                                  strncpy_s(pvar->ts->UIMsg, sizeof(pvar->ts->UIMsg), "read error SSH2 private key file\r\n%s", _TRUNCATE);                                                                    "read error SSH2 private key file\r\n%s");
                                 UTIL_get_lang_msg("MSG_READKEY_ERROR", pvar);  
489                                  _snprintf_s(buf, sizeof(buf), _TRUNCATE, pvar->ts->UIMsg, errmsg);                                  _snprintf_s(buf, sizeof(buf), _TRUNCATE, pvar->ts->UIMsg, errmsg);
 #else  
                                 _snprintf(buf, sizeof(buf), "read error SSH2 private key file\r\n%s", errmsg);  
 #endif  
490                                  notify_nonfatal_error(pvar, buf);                                  notify_nonfatal_error(pvar, buf);
491                                  // パスフレーズが鍵と一致しなかった場合はIDC_SSHPASSWORDにフォーカスを移す (2006.10.29 yasuhide)                                  // パスフレーズが鍵と一致しなかった場合はIDC_SSHPASSWORDにフォーカスを移す (2006.10.29 yasuhide)
492                                  if (invalid_passphrase) {                                  if (invalid_passphrase) {
# Line 615  static BOOL end_auth_dlg(PTInstVar pvar, Line 533  static BOOL end_auth_dlg(PTInstVar pvar,
533          }          }
534          if (method == SSH_AUTH_RHOSTS || method == SSH_AUTH_RHOSTS_RSA) {          if (method == SSH_AUTH_RHOSTS || method == SSH_AUTH_RHOSTS_RSA) {
535                  if (pvar->session_settings.DefaultAuthMethod != SSH_AUTH_RHOSTS) {                  if (pvar->session_settings.DefaultAuthMethod != SSH_AUTH_RHOSTS) {
536  #ifndef NO_I18N                          UTIL_get_lang_msg("MSG_RHOSTS_NOTDEFAULT_ERROR", pvar,
537                          strncpy_s(pvar->ts->UIMsg, sizeof(pvar->ts->UIMsg),                                                            "Rhosts authentication will probably fail because it was not "
538                                  "Rhosts authentication will probably fail because it was not "                                                            "the default authentication method.\n"
539                                  "the default authentication method.\n"                                                            "To use Rhosts authentication "
540                                  "To use Rhosts authentication "                                                            "in TTSSH, you need to set it to be the default by restarting\n"
541                                  "in TTSSH, you need to set it to be the default by restarting\n"                                                            "TTSSH and selecting \"SSH Authentication...\" from the Setup menu"
542                                  "TTSSH and selecting \"SSH Authentication...\" from the Setup menu"                                                            "before connecting.");
                                 "before connecting.",  
                                 _TRUNCATE);  
                         UTIL_get_lang_msg("MSG_RHOSTS_NOTDEFAULT_ERROR", pvar);  
543                          notify_nonfatal_error(pvar, pvar->ts->UIMsg);                          notify_nonfatal_error(pvar, pvar->ts->UIMsg);
 #else  
                         notify_nonfatal_error(pvar,  
                                                                   "Rhosts authentication will probably fail because it was not "  
                                                                   "the default authentication method.\n"  
                                                                   "To use Rhosts authentication "  
                                                                   "in TTSSH, you need to set it to be the default by restarting\n"  
                                                                   "TTSSH and selecting \"SSH Authentication...\" from the Setup menu"  
                                                                   "before connecting.");  
 #endif  
544                  }                  }
545    
546                  pvar->auth_state.cur_cred.rhosts_client_user =                  pvar->auth_state.cur_cred.rhosts_client_user =
# Line 664  static BOOL end_auth_dlg(PTInstVar pvar, Line 570  static BOOL end_auth_dlg(PTInstVar pvar,
570          }          }
571    
572          EndDialog(dlg, 1);          EndDialog(dlg, 1);
 #ifndef NO_I18N  
573                          if (DlgAuthFont != NULL) {                          if (DlgAuthFont != NULL) {
574                                  DeleteObject(DlgAuthFont);                                  DeleteObject(DlgAuthFont);
575                          }                          }
 #endif  
576    
577          return TRUE;          return TRUE;
578  }  }
# Line 679  static BOOL CALLBACK auth_dlg_proc(HWND Line 583  static BOOL CALLBACK auth_dlg_proc(HWND
583          const int IDC_TIMER1 = 300;          const int IDC_TIMER1 = 300;
584          const int autologin_timeout = 10; // ミリ秒          const int autologin_timeout = 10; // ミリ秒
585          PTInstVar pvar;          PTInstVar pvar;
 #ifndef NO_I18N  
586          LOGFONT logfont;          LOGFONT logfont;
587          HFONT font;          HFONT font;
 #endif  
588    
589          switch (msg) {          switch (msg) {
590          case WM_INITDIALOG:          case WM_INITDIALOG:
# Line 692  static BOOL CALLBACK auth_dlg_proc(HWND Line 594  static BOOL CALLBACK auth_dlg_proc(HWND
594    
595                  init_auth_dlg(pvar, dlg);                  init_auth_dlg(pvar, dlg);
596    
 #ifndef NO_I18N  
597                  font = (HFONT)SendMessage(dlg, WM_GETFONT, 0, 0);                  font = (HFONT)SendMessage(dlg, WM_GETFONT, 0, 0);
598                  GetObject(font, sizeof(LOGFONT), &logfont);                  GetObject(font, sizeof(LOGFONT), &logfont);
599                  if (UTIL_get_lang_font("DLG_TAHOMA_FONT", dlg, &logfont, &DlgAuthFont, pvar)) {                  if (UTIL_get_lang_font("DLG_TAHOMA_FONT", dlg, &logfont, &DlgAuthFont, pvar)) {
# Line 719  static BOOL CALLBACK auth_dlg_proc(HWND Line 620  static BOOL CALLBACK auth_dlg_proc(HWND
620                  else {                  else {
621                          DlgAuthFont = NULL;                          DlgAuthFont = NULL;
622                  }                  }
 #endif  
623    
624                  // SSH2 autologinが有効の場合は、タイマを仕掛ける。 (2004.12.1 yutaka)                  // SSH2 autologinが有効の場合は、タイマを仕掛ける。 (2004.12.1 yutaka)
625                  if (pvar->ssh2_autologin == 1) {                  if (pvar->ssh2_autologin == 1) {
# Line 753  static BOOL CALLBACK auth_dlg_proc(HWND Line 653  static BOOL CALLBACK auth_dlg_proc(HWND
653                          notify_closed_connection(pvar);                          notify_closed_connection(pvar);
654                          EndDialog(dlg, 0);                          EndDialog(dlg, 0);
655    
 #ifndef NO_I18N  
656                          if (DlgAuthFont != NULL) {                          if (DlgAuthFont != NULL) {
657                                  DeleteObject(DlgAuthFont);                                  DeleteObject(DlgAuthFont);
658                          }                          }
 #endif  
659    
660                          return TRUE;                          return TRUE;
661    
# Line 769  static BOOL CALLBACK auth_dlg_proc(HWND Line 667  static BOOL CALLBACK auth_dlg_proc(HWND
667                          return TRUE;                          return TRUE;
668    
669                  case IDC_CHOOSERSAFILE:                  case IDC_CHOOSERSAFILE:
 #ifndef NO_I18N  
670                          choose_RSA_key_file(dlg, pvar);                          choose_RSA_key_file(dlg, pvar);
 #else  
                         choose_RSA_key_file(dlg);  
 #endif  
671                          return TRUE;                          return TRUE;
672    
673                  case IDC_CHOOSEHOSTRSAFILE:                  case IDC_CHOOSEHOSTRSAFILE:
 #ifndef NO_I18N  
674                          choose_host_RSA_key_file(dlg, pvar);                          choose_host_RSA_key_file(dlg, pvar);
 #else  
                         choose_host_RSA_key_file(dlg);  
 #endif  
675                          return TRUE;                          return TRUE;
676    
677                  default:                  default:
# Line 824  int AUTH_set_supported_auth_types(PTInst Line 714  int AUTH_set_supported_auth_types(PTInst
714          pvar->auth_state.supported_types = types;          pvar->auth_state.supported_types = types;
715    
716          if (types == 0) {          if (types == 0) {
717  #ifndef NO_I18N                  UTIL_get_lang_msg("MSG_NOAUTHMETHOD_ERROR", pvar,
718                  strncpy_s(pvar->ts->UIMsg, sizeof(pvar->ts->UIMsg),                                                    "Server does not support any of the authentication options\n"
719                          "Server does not support any of the authentication options\n"                                                    "provided by TTSSH. This connection will now close.");
                         "provided by TTSSH. This connection will now close.",  
                         _TRUNCATE);  
                 UTIL_get_lang_msg("MSG_NOAUTHMETHOD_ERROR", pvar);  
720                  notify_fatal_error(pvar, pvar->ts->UIMsg);                  notify_fatal_error(pvar, pvar->ts->UIMsg);
 #else  
                 notify_fatal_error(pvar,  
                                                    "Server does not support any of the authentication options\n"  
                                                    "provided by TTSSH. This connection will now close.");  
 #endif  
721                  return 0;                  return 0;
722          } else {          } else {
723                  if (pvar->auth_state.auth_dialog != NULL) {                  if (pvar->auth_state.auth_dialog != NULL) {
# Line 953  void AUTH_advance_to_next_cred(PTInstVar Line 835  void AUTH_advance_to_next_cred(PTInstVar
835    
836  static void init_TIS_dlg(PTInstVar pvar, HWND dlg)  static void init_TIS_dlg(PTInstVar pvar, HWND dlg)
837  {  {
838  #ifndef NO_I18N          char uimsg[MAX_UIMSG];
         GetWindowText(dlg, pvar->ts->UIMsg, sizeof(pvar->ts->UIMsg));  
         UTIL_get_lang_msg("DLG_TIS_TITLE", pvar);  
         SetWindowText(dlg, pvar->ts->UIMsg);  
839    
840          GetDlgItemText(dlg, IDC_SSHAUTHBANNER, pvar->ts->UIMsg, sizeof(pvar->ts->UIMsg));          GetWindowText(dlg, uimsg, sizeof(uimsg));
841          UTIL_get_lang_msg("DLG_TIS_BANNER", pvar);          UTIL_get_lang_msg("DLG_TIS_TITLE", pvar, uimsg);
842            SetWindowText(dlg, pvar->ts->UIMsg);
843            GetDlgItemText(dlg, IDC_SSHAUTHBANNER, uimsg, sizeof(uimsg));
844            UTIL_get_lang_msg("DLG_TIS_BANNER", pvar, uimsg);
845          SetDlgItemText(dlg, IDC_SSHAUTHBANNER, pvar->ts->UIMsg);          SetDlgItemText(dlg, IDC_SSHAUTHBANNER, pvar->ts->UIMsg);
846            GetDlgItemText(dlg, IDOK, uimsg, sizeof(uimsg));
847          GetDlgItemText(dlg, IDOK, pvar->ts->UIMsg, sizeof(pvar->ts->UIMsg));          UTIL_get_lang_msg("BTN_OK", pvar, uimsg);
         UTIL_get_lang_msg("BTN_OK", pvar);  
848          SetDlgItemText(dlg, IDOK, pvar->ts->UIMsg);          SetDlgItemText(dlg, IDOK, pvar->ts->UIMsg);
849            GetDlgItemText(dlg, IDCANCEL, uimsg, sizeof(uimsg));
850          GetDlgItemText(dlg, IDCANCEL, pvar->ts->UIMsg, sizeof(pvar->ts->UIMsg));          UTIL_get_lang_msg("BTN_DISCONNECT", pvar, uimsg);
         UTIL_get_lang_msg("BTN_DISCONNECT", pvar);  
851          SetDlgItemText(dlg, IDCANCEL, pvar->ts->UIMsg);          SetDlgItemText(dlg, IDCANCEL, pvar->ts->UIMsg);
 #endif  
852    
853          init_auth_machine_banner(pvar, dlg);          init_auth_machine_banner(pvar, dlg);
854          init_password_control(dlg);          init_password_control(dlg);
# Line 1009  static BOOL CALLBACK TIS_dlg_proc(HWND d Line 888  static BOOL CALLBACK TIS_dlg_proc(HWND d
888                                                                    LPARAM lParam)                                                                    LPARAM lParam)
889  {  {
890          PTInstVar pvar;          PTInstVar pvar;
 #ifndef NO_I18N  
891          LOGFONT logfont;          LOGFONT logfont;
892          HFONT font;          HFONT font;
 #endif  
893    
894          switch (msg) {          switch (msg) {
895          case WM_INITDIALOG:          case WM_INITDIALOG:
# Line 1022  static BOOL CALLBACK TIS_dlg_proc(HWND d Line 899  static BOOL CALLBACK TIS_dlg_proc(HWND d
899    
900                  init_TIS_dlg(pvar, dlg);                  init_TIS_dlg(pvar, dlg);
901    
 #ifndef NO_I18N  
902                  font = (HFONT)SendMessage(dlg, WM_GETFONT, 0, 0);                  font = (HFONT)SendMessage(dlg, WM_GETFONT, 0, 0);
903                  GetObject(font, sizeof(LOGFONT), &logfont);                  GetObject(font, sizeof(LOGFONT), &logfont);
904                  if (UTIL_get_lang_font("DLG_TAHOMA_FONT", dlg, &logfont, &DlgTisFont, pvar)) {                  if (UTIL_get_lang_font("DLG_TAHOMA_FONT", dlg, &logfont, &DlgTisFont, pvar)) {
# Line 1035  static BOOL CALLBACK TIS_dlg_proc(HWND d Line 911  static BOOL CALLBACK TIS_dlg_proc(HWND d
911                  else {                  else {
912                          DlgTisFont = NULL;                          DlgTisFont = NULL;
913                  }                  }
 #endif  
914    
915                  return FALSE;                   /* because we set the focus */                  return FALSE;                   /* because we set the focus */
916    
# Line 1044  static BOOL CALLBACK TIS_dlg_proc(HWND d Line 919  static BOOL CALLBACK TIS_dlg_proc(HWND d
919    
920                  switch (LOWORD(wParam)) {                  switch (LOWORD(wParam)) {
921                  case IDOK:                  case IDOK:
 #ifndef NO_I18N  
922                          if (DlgTisFont != NULL) {                          if (DlgTisFont != NULL) {
923                                  DeleteObject(DlgTisFont);                                  DeleteObject(DlgTisFont);
924                          }                          }
 #endif  
925    
926                          return end_TIS_dlg(pvar, dlg);                          return end_TIS_dlg(pvar, dlg);
927    
# Line 1057  static BOOL CALLBACK TIS_dlg_proc(HWND d Line 930  static BOOL CALLBACK TIS_dlg_proc(HWND d
930                          notify_closed_connection(pvar);                          notify_closed_connection(pvar);
931                          EndDialog(dlg, 0);                          EndDialog(dlg, 0);
932    
 #ifndef NO_I18N  
933                          if (DlgTisFont != NULL) {                          if (DlgTisFont != NULL) {
934                                  DeleteObject(DlgTisFont);                                  DeleteObject(DlgTisFont);
935                          }                          }
 #endif  
936    
937                          return TRUE;                          return TRUE;
938    
# Line 1096  void AUTH_do_cred_dialog(PTInstVar pvar) Line 967  void AUTH_do_cred_dialog(PTInstVar pvar)
967                                                          cur_active !=                                                          cur_active !=
968                                                          NULL ? cur_active : pvar->NotificationWindow,                                                          NULL ? cur_active : pvar->NotificationWindow,
969                                                          dlg_proc, (LPARAM) pvar) == -1) {                                                          dlg_proc, (LPARAM) pvar) == -1) {
970  #ifndef NO_I18N                          UTIL_get_lang_msg("MSG_CREATEWINDOW_AUTH_ERROR", pvar,
971                          strncpy_s(pvar->ts->UIMsg, sizeof(pvar->ts->UIMsg),                                                            "Unable to display authentication dialog box.\n"
972                                  "Unable to display authentication dialog box.\n"                                                            "Connection terminated.");
                                 "Connection terminated.",  
                                 _TRUNCATE);  
                         UTIL_get_lang_msg("MSG_CREATEWINDOW_AUTH_ERROR", pvar);  
973                          notify_fatal_error(pvar, pvar->ts->UIMsg);                          notify_fatal_error(pvar, pvar->ts->UIMsg);
 #else  
                         notify_fatal_error(pvar,  
                                                            "Unable to display authentication dialog box.\n"  
                                                            "Connection terminated.");  
 #endif  
974                  }                  }
975          }          }
976  }  }
977    
978  static void init_default_auth_dlg(PTInstVar pvar, HWND dlg)  static void init_default_auth_dlg(PTInstVar pvar, HWND dlg)
979  {  {
980  #ifndef NO_I18N          char uimsg[MAX_UIMSG];
         GetWindowText(dlg, pvar->ts->UIMsg, sizeof(pvar->ts->UIMsg));  
         UTIL_get_lang_msg("DLG_AUTHSETUP_TITLE", pvar);  
         SetWindowText(dlg, pvar->ts->UIMsg);  
981    
982          GetDlgItemText(dlg, IDC_SSHAUTHBANNER, pvar->ts->UIMsg, sizeof(pvar->ts->UIMsg));          GetWindowText(dlg, uimsg, sizeof(uimsg));
983          UTIL_get_lang_msg("DLG_AUTHSETUP_BANNER", pvar);          UTIL_get_lang_msg("DLG_AUTHSETUP_TITLE", pvar, uimsg);
984            SetWindowText(dlg, pvar->ts->UIMsg);
985            GetDlgItemText(dlg, IDC_SSHAUTHBANNER, uimsg, sizeof(uimsg));
986            UTIL_get_lang_msg("DLG_AUTHSETUP_BANNER", pvar, uimsg);
987          SetDlgItemText(dlg, IDC_SSHAUTHBANNER, pvar->ts->UIMsg);          SetDlgItemText(dlg, IDC_SSHAUTHBANNER, pvar->ts->UIMsg);
988            GetDlgItemText(dlg, IDC_SSHUSERNAMELABEL, uimsg, sizeof(uimsg));
989          GetDlgItemText(dlg, IDC_SSHUSERNAMELABEL, pvar->ts->UIMsg, sizeof(pvar->ts->UIMsg));          UTIL_get_lang_msg("DLG_AUTHSETUP_USERNAME", pvar, uimsg);
         UTIL_get_lang_msg("DLG_AUTHSETUP_USERNAME", pvar);  
990          SetDlgItemText(dlg, IDC_SSHUSERNAMELABEL, pvar->ts->UIMsg);          SetDlgItemText(dlg, IDC_SSHUSERNAMELABEL, pvar->ts->UIMsg);
991            GetDlgItemText(dlg, IDC_SSHUSEPASSWORD, uimsg, sizeof(uimsg));
992          GetDlgItemText(dlg, IDC_SSHUSEPASSWORD, pvar->ts->UIMsg, sizeof(pvar->ts->UIMsg));          UTIL_get_lang_msg("DLG_AUTHSETUP_METHOD_PASSWORD", pvar, uimsg);
         UTIL_get_lang_msg("DLG_AUTHSETUP_METHOD_PASSWORD", pvar);  
993          SetDlgItemText(dlg, IDC_SSHUSEPASSWORD, pvar->ts->UIMsg);          SetDlgItemText(dlg, IDC_SSHUSEPASSWORD, pvar->ts->UIMsg);
994            GetDlgItemText(dlg, IDC_KEYBOARD_INTERACTIVE_CHECK, uimsg, sizeof(uimsg));
995          GetDlgItemText(dlg, IDC_KEYBOARD_INTERACTIVE_CHECK, pvar->ts->UIMsg, sizeof(pvar->ts->UIMsg));          UTIL_get_lang_msg("DLG_AUTHSETUP_METHOD_PASSWORD_KBDINT", pvar, uimsg);
         UTIL_get_lang_msg("DLG_AUTHSETUP_METHOD_PASSWORD_KBDINT", pvar);  
996          SetDlgItemText(dlg, IDC_KEYBOARD_INTERACTIVE_CHECK, pvar->ts->UIMsg);          SetDlgItemText(dlg, IDC_KEYBOARD_INTERACTIVE_CHECK, pvar->ts->UIMsg);
997            GetDlgItemText(dlg, IDC_SSHUSERSA, uimsg, sizeof(uimsg));
998          GetDlgItemText(dlg, IDC_SSHUSERSA, pvar->ts->UIMsg, sizeof(pvar->ts->UIMsg));          UTIL_get_lang_msg("DLG_AUTHSETUP_METHOD_RSA", pvar, uimsg);
         UTIL_get_lang_msg("DLG_AUTHSETUP_METHOD_RSA", pvar);  
999          SetDlgItemText(dlg, IDC_SSHUSERSA, pvar->ts->UIMsg);          SetDlgItemText(dlg, IDC_SSHUSERSA, pvar->ts->UIMsg);
1000            GetDlgItemText(dlg, IDC_SSHUSERHOSTS, uimsg, sizeof(uimsg));
1001          GetDlgItemText(dlg, IDC_SSHUSERHOSTS, pvar->ts->UIMsg, sizeof(pvar->ts->UIMsg));          UTIL_get_lang_msg("DLG_AUTHSETUP_METHOD_RHOST", pvar, uimsg);
         UTIL_get_lang_msg("DLG_AUTHSETUP_METHOD_RHOST", pvar);  
1002          SetDlgItemText(dlg, IDC_SSHUSERHOSTS, pvar->ts->UIMsg);          SetDlgItemText(dlg, IDC_SSHUSERHOSTS, pvar->ts->UIMsg);
1003            GetDlgItemText(dlg, IDC_SSHUSETIS, uimsg, sizeof(uimsg));
1004          GetDlgItemText(dlg, IDC_SSHUSETIS, pvar->ts->UIMsg, sizeof(pvar->ts->UIMsg));          UTIL_get_lang_msg("DLG_AUTHSETUP_METHOD_CHALLENGE", pvar, uimsg);
         UTIL_get_lang_msg("DLG_AUTHSETUP_METHOD_CHALLENGE", pvar);  
1005          SetDlgItemText(dlg, IDC_SSHUSETIS, pvar->ts->UIMsg);          SetDlgItemText(dlg, IDC_SSHUSETIS, pvar->ts->UIMsg);
1006            GetDlgItemText(dlg, IDC_CHOOSERSAFILE, uimsg, sizeof(uimsg));
1007          GetDlgItemText(dlg, IDC_CHOOSERSAFILE, pvar->ts->UIMsg, sizeof(pvar->ts->UIMsg));          UTIL_get_lang_msg("DLG_AUTH_PRIVATEKEY", pvar, uimsg);
         UTIL_get_lang_msg("DLG_AUTH_PRIVATEKEY", pvar);  
1008          SetDlgItemText(dlg, IDC_CHOOSERSAFILE, pvar->ts->UIMsg);          SetDlgItemText(dlg, IDC_CHOOSERSAFILE, pvar->ts->UIMsg);
1009            GetDlgItemText(dlg, IDC_LOCALUSERNAMELABEL, uimsg, sizeof(uimsg));
1010          GetDlgItemText(dlg, IDC_LOCALUSERNAMELABEL, pvar->ts->UIMsg, sizeof(pvar->ts->UIMsg));          UTIL_get_lang_msg("DLG_AUTH_LOCALUSER", pvar, uimsg);
         UTIL_get_lang_msg("DLG_AUTH_LOCALUSER", pvar);  
1011          SetDlgItemText(dlg, IDC_LOCALUSERNAMELABEL, pvar->ts->UIMsg);          SetDlgItemText(dlg, IDC_LOCALUSERNAMELABEL, pvar->ts->UIMsg);
1012            GetDlgItemText(dlg, IDC_CHOOSEHOSTRSAFILE, uimsg, sizeof(uimsg));
1013          GetDlgItemText(dlg, IDC_CHOOSEHOSTRSAFILE, pvar->ts->UIMsg, sizeof(pvar->ts->UIMsg));          UTIL_get_lang_msg("DLG_AUTH_HOST_PRIVATEKEY", pvar, uimsg);
         UTIL_get_lang_msg("DLG_AUTH_HOST_PRIVATEKEY", pvar);  
1014          SetDlgItemText(dlg, IDC_CHOOSEHOSTRSAFILE, pvar->ts->UIMsg);          SetDlgItemText(dlg, IDC_CHOOSEHOSTRSAFILE, pvar->ts->UIMsg);
1015            GetDlgItemText(dlg, IDOK, uimsg, sizeof(uimsg));
1016          GetDlgItemText(dlg, IDOK, pvar->ts->UIMsg, sizeof(pvar->ts->UIMsg));          UTIL_get_lang_msg("BTN_OK", pvar, uimsg);
         UTIL_get_lang_msg("BTN_OK", pvar);  
1017          SetDlgItemText(dlg, IDOK, pvar->ts->UIMsg);          SetDlgItemText(dlg, IDOK, pvar->ts->UIMsg);
1018            GetDlgItemText(dlg, IDCANCEL, uimsg, sizeof(uimsg));
1019          GetDlgItemText(dlg, IDCANCEL, pvar->ts->UIMsg, sizeof(pvar->ts->UIMsg));          UTIL_get_lang_msg("BTN_CANCEL", pvar, uimsg);
         UTIL_get_lang_msg("BTN_CANCEL", pvar);  
1020          SetDlgItemText(dlg, IDCANCEL, pvar->ts->UIMsg);          SetDlgItemText(dlg, IDCANCEL, pvar->ts->UIMsg);
 #endif  
1021    
1022          switch (pvar->settings.DefaultAuthMethod) {          switch (pvar->settings.DefaultAuthMethod) {
1023          case SSH_AUTH_RSA:          case SSH_AUTH_RSA:
# Line 1250  static BOOL CALLBACK default_auth_dlg_pr Line 1101  static BOOL CALLBACK default_auth_dlg_pr
1101                                                                                     WPARAM wParam, LPARAM lParam)                                                                                     WPARAM wParam, LPARAM lParam)
1102  {  {
1103          PTInstVar pvar;          PTInstVar pvar;
 #ifndef NO_I18N  
1104          LOGFONT logfont;          LOGFONT logfont;
1105          HFONT font;          HFONT font;
 #endif  
1106    
1107          switch (msg) {          switch (msg) {
1108          case WM_INITDIALOG:          case WM_INITDIALOG:
# Line 1262  static BOOL CALLBACK default_auth_dlg_pr Line 1111  static BOOL CALLBACK default_auth_dlg_pr
1111    
1112                  init_default_auth_dlg(pvar, dlg);                  init_default_auth_dlg(pvar, dlg);
1113    
 #ifndef NO_I18N  
1114                  font = (HFONT)SendMessage(dlg, WM_GETFONT, 0, 0);                  font = (HFONT)SendMessage(dlg, WM_GETFONT, 0, 0);
1115                  GetObject(font, sizeof(LOGFONT), &logfont);                  GetObject(font, sizeof(LOGFONT), &logfont);
1116                  if (UTIL_get_lang_font("DLG_TAHOMA_FONT", dlg, &logfont, &DlgAuthSetupFont, pvar)) {                  if (UTIL_get_lang_font("DLG_TAHOMA_FONT", dlg, &logfont, &DlgAuthSetupFont, pvar)) {
# Line 1286  static BOOL CALLBACK default_auth_dlg_pr Line 1134  static BOOL CALLBACK default_auth_dlg_pr
1134                  else {                  else {
1135                          DlgAuthSetupFont = NULL;                          DlgAuthSetupFont = NULL;
1136                  }                  }
 #endif  
1137    
1138                  return TRUE;                    /* because we do not set the focus */                  return TRUE;                    /* because we do not set the focus */
1139    
# Line 1296  static BOOL CALLBACK default_auth_dlg_pr Line 1143  static BOOL CALLBACK default_auth_dlg_pr
1143                  switch (LOWORD(wParam)) {                  switch (LOWORD(wParam)) {
1144                  case IDOK:                  case IDOK:
1145    
 #ifndef NO_I18N  
1146                          if (DlgAuthSetupFont != NULL) {                          if (DlgAuthSetupFont != NULL) {
1147                                  DeleteObject(DlgAuthSetupFont);                                  DeleteObject(DlgAuthSetupFont);
1148                          }                          }
 #endif  
1149    
1150                          return end_default_auth_dlg(pvar, dlg);                          return end_default_auth_dlg(pvar, dlg);
1151    
1152                  case IDCANCEL:                  case IDCANCEL:
1153                          EndDialog(dlg, 0);                          EndDialog(dlg, 0);
1154    
 #ifndef NO_I18N  
1155                          if (DlgAuthSetupFont != NULL) {                          if (DlgAuthSetupFont != NULL) {
1156                                  DeleteObject(DlgAuthSetupFont);                                  DeleteObject(DlgAuthSetupFont);
1157                          }                          }
 #endif  
1158    
1159                          return TRUE;                          return TRUE;
1160    
1161                  case IDC_CHOOSERSAFILE:                  case IDC_CHOOSERSAFILE:
 #ifndef NO_I18N  
1162                          choose_RSA_key_file(dlg, pvar);                          choose_RSA_key_file(dlg, pvar);
 #else  
                         choose_RSA_key_file(dlg);  
 #endif  
1163                          return TRUE;                          return TRUE;
1164    
1165                  case IDC_CHOOSEHOSTRSAFILE:                  case IDC_CHOOSEHOSTRSAFILE:
 #ifndef NO_I18N  
1166                          choose_host_RSA_key_file(dlg, pvar);                          choose_host_RSA_key_file(dlg, pvar);
 #else  
                         choose_host_RSA_key_file(dlg);  
 #endif  
1167                          return TRUE;                          return TRUE;
1168    
1169                  default:                  default:
# Line 1383  void AUTH_do_default_cred_dialog(PTInstV Line 1218  void AUTH_do_default_cred_dialog(PTInstV
1218                                             cur_active !=                                             cur_active !=
1219                                             NULL ? cur_active : pvar->NotificationWindow,                                             NULL ? cur_active : pvar->NotificationWindow,
1220                                             default_auth_dlg_proc, (LPARAM) pvar) == -1) {                                             default_auth_dlg_proc, (LPARAM) pvar) == -1) {
1221  #ifndef NO_I18N                  UTIL_get_lang_msg("MSG_CREATEWINDOW_AUTHSETUP_ERROR", pvar,
1222                  strncpy_s(pvar->ts->UIMsg, sizeof(pvar->ts->UIMsg), "Unable to display authentication setup dialog box.", _TRUNCATE);                                                    "Unable to display authentication setup dialog box.");
                 UTIL_get_lang_msg("MSG_CREATEWINDOW_AUTHSETUP_ERROR", pvar);  
1223                  notify_nonfatal_error(pvar, pvar->ts->UIMsg);                  notify_nonfatal_error(pvar, pvar->ts->UIMsg);
 #else  
                 notify_nonfatal_error(pvar,  
                                                           "Unable to display authentication setup dialog box.");  
 #endif  
1224          }          }
1225  }  }
1226    
# Line 1430  void AUTH_get_auth_info(PTInstVar pvar, Line 1260  void AUTH_get_auth_info(PTInstVar pvar,
1260                  strncpy_s(dest, len, "None", _TRUNCATE);                  strncpy_s(dest, len, "None", _TRUNCATE);
1261          } else if (pvar->auth_state.cur_cred.method != SSH_AUTH_NONE) {          } else if (pvar->auth_state.cur_cred.method != SSH_AUTH_NONE) {
1262                  if (SSHv1(pvar)) {                  if (SSHv1(pvar)) {
1263  #ifndef NO_I18N                          UTIL_get_lang_msg("DLG_ABOUT_AUTH_INFO", pvar, "User '%s', using %s");
                         strncpy_s(pvar->ts->UIMsg, sizeof(pvar->ts->UIMsg), "User '%s', using %s", _TRUNCATE);  
                         UTIL_get_lang_msg("DLG_ABOUT_AUTH_INFO", pvar);  
1264                          _snprintf_s(dest, len, _TRUNCATE, pvar->ts->UIMsg, pvar->auth_state.user,                          _snprintf_s(dest, len, _TRUNCATE, pvar->ts->UIMsg, pvar->auth_state.user,
1265                                          get_auth_method_name(pvar->auth_state.cur_cred.method));                                          get_auth_method_name(pvar->auth_state.cur_cred.method));
 #else  
                         _snprintf(dest, len, "User '%s', using %s", pvar->auth_state.user,  
                                         get_auth_method_name(pvar->auth_state.cur_cred.method));  
 #endif  
1266    
1267                  } else {                  } else {
1268                          // SSH2:認証メソッドの判別 (2004.12.23 yutaka)                          // SSH2:認証メソッドの判別 (2004.12.23 yutaka)
# Line 1452  void AUTH_get_auth_info(PTInstVar pvar, Line 1276  void AUTH_get_auth_info(PTInstVar pvar,
1276                                  } else {                                  } else {
1277                                          method = get_auth_method_name(pvar->auth_state.cur_cred.method);                                          method = get_auth_method_name(pvar->auth_state.cur_cred.method);
1278                                  }                                  }
1279  #ifndef NO_I18N                                  UTIL_get_lang_msg("DLG_ABOUT_AUTH_INFO", pvar, "User '%s', using %s");
                                 strncpy_s(pvar->ts->UIMsg, sizeof(pvar->ts->UIMsg), "User '%s', using %s", _TRUNCATE);  
                                 UTIL_get_lang_msg("DLG_ABOUT_AUTH_INFO", pvar);  
1280                                  _snprintf_s(dest, len, _TRUNCATE,                                  _snprintf_s(dest, len, _TRUNCATE,
1281                                          pvar->ts->UIMsg, pvar->auth_state.user, method);                                          pvar->ts->UIMsg, pvar->auth_state.user, method);
 #else  
                                 _snprintf(dest, len, "User '%s', using %s", pvar->auth_state.user, method);  
 #endif  
1282    
1283                          } else {                          } else {
1284                                  if (pvar->auth_state.cur_cred.key_pair->RSA_key != NULL) {                                  if (pvar->auth_state.cur_cred.key_pair->RSA_key != NULL) {
# Line 1467  void AUTH_get_auth_info(PTInstVar pvar, Line 1286  void AUTH_get_auth_info(PTInstVar pvar,
1286                                  } else if (pvar->auth_state.cur_cred.key_pair->DSA_key != NULL) {                                  } else if (pvar->auth_state.cur_cred.key_pair->DSA_key != NULL) {
1287                                          method = "DSA";                                          method = "DSA";
1288                                  }                                  }
1289  #ifndef NO_I18N                                  UTIL_get_lang_msg("DLG_ABOUT_AUTH_INFO", pvar, "User '%s', using %s");
                                 strncpy_s(pvar->ts->UIMsg, sizeof(pvar->ts->UIMsg), "User '%s', using %s", _TRUNCATE);  
                                 UTIL_get_lang_msg("DLG_ABOUT_AUTH_INFO", pvar);  
1290                                  _snprintf_s(dest, len, _TRUNCATE,                                  _snprintf_s(dest, len, _TRUNCATE,
1291                                          pvar->ts->UIMsg, pvar->auth_state.user, method);                                          pvar->ts->UIMsg, pvar->auth_state.user, method);
 #else  
                                 _snprintf(dest, len, "User '%s', using %s", pvar->auth_state.user, method);  
 #endif  
1292                          }                          }
1293    
1294                  }                  }
1295    
1296          } else {          } else {
1297  #ifndef NO_I18N                  UTIL_get_lang_msg("DLG_ABOUT_AUTH_INFO", pvar, "User '%s', using %s");
                 strncpy_s(pvar->ts->UIMsg, sizeof(pvar->ts->UIMsg), "User '%s', using %s", _TRUNCATE);  
                 UTIL_get_lang_msg("DLG_ABOUT_AUTH_INFO", pvar);  
1298                  _snprintf_s(dest, len, _TRUNCATE, pvar->ts->UIMsg, pvar->auth_state.user,                  _snprintf_s(dest, len, _TRUNCATE, pvar->ts->UIMsg, pvar->auth_state.user,
1299                                    get_auth_method_name(pvar->auth_state.failed_method));                                    get_auth_method_name(pvar->auth_state.failed_method));
 #else  
                 _snprintf(dest, len, "User '%s', using %s", pvar->auth_state.user,  
                                   get_auth_method_name(pvar->auth_state.failed_method));  
 #endif  
1300          }          }
1301    
1302          dest[len - 1] = 0;          dest[len - 1] = 0;
# Line 1513  void AUTH_end(PTInstVar pvar) Line 1321  void AUTH_end(PTInstVar pvar)
1321    
1322  /*  /*
1323   * $Log: not supported by cvs2svn $   * $Log: not supported by cvs2svn $
1324     * Revision 1.34  2007/08/08 16:04:08  maya
1325     * 安全な関数を使用するように変更した。
1326     *
1327   * Revision 1.33  2007/06/06 14:10:12  maya   * Revision 1.33  2007/06/06 14:10:12  maya
1328   * プリプロセッサにより構造体が変わってしまうので、INET6 と I18N の #define を逆転させた。   * プリプロセッサにより構造体が変わってしまうので、INET6 と I18N の #define を逆転させた。
1329   *   *

Legend:
Removed from v.2992  
changed lines
  Added in v.2994

Back to OSDN">Back to OSDN
ViewVC Help
Powered by ViewVC 1.1.26