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 3150 by yutakapon, Wed Sep 24 13:59:21 2008 UTC revision 3151 by maya, Sat Oct 4 09:24:21 2008 UTC
# Line 135  static void SSH2_dh_gex_kex_init(PTInstV Line 135  static void SSH2_dh_gex_kex_init(PTInstV
135  static BOOL handle_SSH2_dh_common_reply(PTInstVar pvar);  static BOOL handle_SSH2_dh_common_reply(PTInstVar pvar);
136  static BOOL handle_SSH2_dh_gex_reply(PTInstVar pvar);  static BOOL handle_SSH2_dh_gex_reply(PTInstVar pvar);
137  static BOOL handle_SSH2_newkeys(PTInstVar pvar);  static BOOL handle_SSH2_newkeys(PTInstVar pvar);
138  static BOOL handle_SSH2_authrequest(PTInstVar pvar);  static BOOL handle_SSH2_service_accept(PTInstVar pvar);
139  static BOOL handle_SSH2_userauth_success(PTInstVar pvar);  static BOOL handle_SSH2_userauth_success(PTInstVar pvar);
140  static BOOL handle_SSH2_userauth_failure(PTInstVar pvar);  static BOOL handle_SSH2_userauth_failure(PTInstVar pvar);
141  static BOOL handle_SSH2_userauth_banner(PTInstVar pvar);  static BOOL handle_SSH2_userauth_banner(PTInstVar pvar);
# Line 1638  static void init_protocol(PTInstVar pvar Line 1638  static void init_protocol(PTInstVar pvar
1638                  enque_handler(pvar, SSH2_MSG_KEXDH_REPLY, handle_SSH2_dh_common_reply);                  enque_handler(pvar, SSH2_MSG_KEXDH_REPLY, handle_SSH2_dh_common_reply);
1639                  enque_handler(pvar, SSH2_MSG_KEX_DH_GEX_REPLY, handle_SSH2_dh_gex_reply);                  enque_handler(pvar, SSH2_MSG_KEX_DH_GEX_REPLY, handle_SSH2_dh_gex_reply);
1640                  enque_handler(pvar, SSH2_MSG_NEWKEYS, handle_SSH2_newkeys);                  enque_handler(pvar, SSH2_MSG_NEWKEYS, handle_SSH2_newkeys);
1641                  enque_handler(pvar, SSH2_MSG_SERVICE_ACCEPT, handle_SSH2_authrequest);                  enque_handler(pvar, SSH2_MSG_SERVICE_ACCEPT, handle_SSH2_service_accept);
1642                  enque_handler(pvar, SSH2_MSG_USERAUTH_SUCCESS, handle_SSH2_userauth_success);                  enque_handler(pvar, SSH2_MSG_USERAUTH_SUCCESS, handle_SSH2_userauth_success);
1643                  enque_handler(pvar, SSH2_MSG_USERAUTH_FAILURE, handle_SSH2_userauth_failure);                  enque_handler(pvar, SSH2_MSG_USERAUTH_FAILURE, handle_SSH2_userauth_failure);
1644                  enque_handler(pvar, SSH2_MSG_USERAUTH_BANNER, handle_SSH2_userauth_banner);                  enque_handler(pvar, SSH2_MSG_USERAUTH_BANNER, handle_SSH2_userauth_banner);
# Line 6595  static BOOL get_SSH2_publickey_blob(PTIn Line 6595  static BOOL get_SSH2_publickey_blob(PTIn
6595          return TRUE;          return TRUE;
6596  }  }
6597    
6598    static BOOL handle_SSH2_service_accept(PTInstVar pvar)
6599    {
6600            char *data, *s, tmp[100];
6601    
6602            // 6byte(サイズ+パディング+タイプ)を取り除いた以降のペイロード
6603            data = pvar->ssh_state.payload;
6604    
6605            s = buffer_get_string(&data, NULL);
6606            _snprintf(tmp, sizeof(tmp), "SSH2_MSG_SERVICE_ACCEPT is received. service name=%s", s);
6607            notify_verbose_message(pvar, tmp, LOG_LEVEL_VERBOSE);
6608    
6609            return do_SSH2_authrequest(pvar);
6610    }
6611    
6612  // ユーザ認証パケットの構築  // ユーザ認証パケットの構築
6613  static BOOL handle_SSH2_authrequest(PTInstVar pvar)  BOOL do_SSH2_authrequest(PTInstVar pvar)
6614  {  {
6615          buffer_t *msg = NULL;          buffer_t *msg = NULL;
6616          char *s, *username;          char *s, *username;
# Line 6605  static BOOL handle_SSH2_authrequest(PTIn Line 6618  static BOOL handle_SSH2_authrequest(PTIn
6618          int len;          int len;
6619          char *connect_id = "ssh-connection";          char *connect_id = "ssh-connection";
6620    
         notify_verbose_message(pvar, "SSH2_MSG_SERVICE_ACCEPT is received.", LOG_LEVEL_VERBOSE);  
   
6621          msg = buffer_init();          msg = buffer_init();
6622          if (msg == NULL) {          if (msg == NULL) {
6623                  // TODO: error check                  // TODO: error check
# Line 7039  static BOOL handle_SSH2_userauth_failure Line 7050  static BOOL handle_SSH2_userauth_failure
7050                  if (!pvar->session_settings.CheckAuthListFirst ||                  if (!pvar->session_settings.CheckAuthListFirst ||
7051                      pvar->ssh2_autologin == 1) {                      pvar->ssh2_autologin == 1) {
7052                          // まず none で試行して返ってきたところなので、実際のログイン処理へ                          // まず none で試行して返ってきたところなので、実際のログイン処理へ
7053                          handle_SSH2_authrequest(pvar);                          do_SSH2_authrequest(pvar);
7054                  }                  }
7055                  else {                  else {
7056                          // TIS 用に OK を押すタイマーを仕掛ける                          // TIS 用に OK を押すタイマーを仕掛ける
# Line 7056  static BOOL handle_SSH2_userauth_failure Line 7067  static BOOL handle_SSH2_userauth_failure
7067                          SendMessage(pvar->auth_state.auth_dialog, WM_COMMAND, IDOK, 0);                          SendMessage(pvar->auth_state.auth_dialog, WM_COMMAND, IDOK, 0);
7068                  }                  }
7069                  else {                  else {
7070                          handle_SSH2_authrequest(pvar);                          do_SSH2_authrequest(pvar);
7071                  }                  }
7072  #endif  #endif
7073                  return TRUE;                  return TRUE;
# Line 7079  static BOOL handle_SSH2_userauth_failure Line 7090  static BOOL handle_SSH2_userauth_failure
7090                  }                  }
7091                  else {                  else {
7092                          // まだ鍵がある                          // まだ鍵がある
7093                          handle_SSH2_authrequest(pvar);                          do_SSH2_authrequest(pvar);
7094                          return TRUE;                          return TRUE;
7095                  }                  }
7096          }          }

Legend:
Removed from v.3150  
changed lines
  Added in v.3151

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