Develop and Download Open Source Software

Browse Subversion Repository

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

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

revision 3012 by maya, Sat Sep 29 11:01:26 2007 UTC revision 3015 by maya, Sun Sep 30 14:03:02 2007 UTC
# Line 2292  void SSH_init(PTInstVar pvar) Line 2292  void SSH_init(PTInstVar pvar)
2292          pvar->userauth_retry_count = 0;          pvar->userauth_retry_count = 0;
2293          pvar->decomp_buffer = NULL;          pvar->decomp_buffer = NULL;
2294          pvar->ssh2_authlist = NULL; // (2007.4.27 yutaka)          pvar->ssh2_authlist = NULL; // (2007.4.27 yutaka)
2295            pvar->tryed_ssh2_authlist = FALSE;
2296    
2297  }  }
2298    
# Line 2744  void SSH_end(PTInstVar pvar) Line 2745  void SSH_end(PTInstVar pvar)
2745                          free(pvar->ssh2_authlist);                          free(pvar->ssh2_authlist);
2746                          pvar->ssh2_authlist = NULL;                          pvar->ssh2_authlist = NULL;
2747                  }                  }
2748    
2749                    pvar->tryed_ssh2_authlist = FALSE;
2750          }          }
2751  #endif  #endif
2752    
# Line 6008  static BOOL handle_SSH2_authrequest(PTIn Line 6011  static BOOL handle_SSH2_authrequest(PTIn
6011          }          }
6012          buffer_put_string(msg, s, strlen(s));          buffer_put_string(msg, s, strlen(s));
6013    
6014          if (pvar->ssh2_authlist == NULL) { // "none"メソッドの送信          if (!pvar->tryed_ssh2_authlist) { // "none"メソッドの送信
6015                  // 認証リストをサーバから取得する。                  // 認証リストをサーバから取得する。
6016                  // SSH2_MSG_USERAUTH_FAILUREが返るが、サーバにはログは残らない。                  // SSH2_MSG_USERAUTH_FAILUREが返るが、サーバにはログは残らない。
6017                  // (2007.4.27 yutaka)                  // (2007.4.27 yutaka)
# Line 6304  static BOOL handle_SSH2_userauth_failure Line 6307  static BOOL handle_SSH2_userauth_failure
6307          partial = data[0];          partial = data[0];
6308          data += 1;          data += 1;
6309    
6310          // 認証リストが空の場合はまだログインをしていない。          // tryed_ssh2_authlist が FALSE の場合は、まだ認証を試行をしていない。
6311          if (pvar->ssh2_authlist == NULL) {          if (!pvar->tryed_ssh2_authlist) {
6312                  int type = 0;                  int type = 0;
6313    
6314                    pvar->tryed_ssh2_authlist = TRUE;
6315    
6316                  // 認証ダイアログのラジオボタンを更新                  // 認証ダイアログのラジオボタンを更新
6317                  if (strstr(cstring, "password")) {                  if (strstr(cstring, "password")) {
6318                          type |= (1 << SSH_AUTH_PASSWORD);                          type |= (1 << SSH_AUTH_PASSWORD);
# Line 6323  static BOOL handle_SSH2_userauth_failure Line 6328  static BOOL handle_SSH2_userauth_failure
6328    
6329                  pvar->ssh2_authlist = cstring; // 不要になったらフリーすること                  pvar->ssh2_authlist = cstring; // 不要になったらフリーすること
6330    
6331                  handle_SSH2_authrequest(pvar); // ログイン処理へ                  if (!pvar->session_settings.CheckAuthListFirst) {
6332                            // まず none で試行して返ってきたところなので、実際のログイン処理へ
6333                            handle_SSH2_authrequest(pvar);
6334                    }
6335                  return TRUE;                  return TRUE;
6336          }          }
6337    

Legend:
Removed from v.3012  
changed lines
  Added in v.3015

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