[Ttssh2-commit] [7005] パスワード無しで bcrypt_KDF 形式で秘密鍵を保存した時に落ちるのを修正。

Back to archive index

scmno****@osdn***** scmno****@osdn*****
2017年 12月 18日 (月) 20:06:06 JST


Revision: 7005
          http://sourceforge.jp/projects/ttssh2/scm/svn/commits/7005
Author:   doda
Date:     2017-12-18 20:06:06 +0900 (Mon, 18 Dec 2017)
Log Message:
-----------
パスワード無しで bcrypt_KDF 形式で秘密鍵を保存した時に落ちるのを修正。

r7002 でのエンバグ。
get_cipher_by_name() で暗号が見つからなかった場合に SSH_CIPHER_NONE
へのポインタではなく、NULL を返すようにした。

Revision Links:
--------------
    http://sourceforge.jp/projects/ttssh2/scm/svn/commits/7002

Modified Paths:
--------------
    trunk/ttssh2/ttxssh/keyfiles.c
    trunk/ttssh2/ttxssh/ssh.c

-------------- next part --------------
Modified: trunk/ttssh2/ttxssh/keyfiles.c
===================================================================
--- trunk/ttssh2/ttxssh/keyfiles.c	2017-12-18 10:41:13 UTC (rev 7004)
+++ trunk/ttssh2/ttxssh/keyfiles.c	2017-12-18 11:06:06 UTC (rev 7005)
@@ -453,7 +453,7 @@
 	// \x88Í\x86\x89\xBB\x83A\x83\x8B\x83S\x83\x8A\x83Y\x83\x80\x82̖\xBC\x91O
 	ciphername = buffer_get_string_msg(copy_consumed, NULL);
 	cipher = get_cipher_by_name(ciphername);
-	if (cipher->id == SSH_CIPHER_NONE && strcmp(ciphername, "none") != 0) {
+	if (cipher == NULL && strcmp(ciphername, "none") != 0) {
 		logprintf(LOG_LEVEL_ERROR, "%s: unknown cipher name", __FUNCTION__);
 		goto error;
 	}

Modified: trunk/ttssh2/ttxssh/ssh.c
===================================================================
--- trunk/ttssh2/ttxssh/ssh.c	2017-12-18 10:41:13 UTC (rev 7004)
+++ trunk/ttssh2/ttxssh/ssh.c	2017-12-18 11:06:06 UTC (rev 7005)
@@ -4152,8 +4152,11 @@
 {
 	SSH2Cipher *ptr = ssh2_ciphers;
 
+	if (name == NULL || name[0] == '\0')
+		return NULL;
+
 	while (ptr->name != NULL) {
-		if (name != NULL && strcmp(ptr->name, name) == 0) {
+		if (strcmp(ptr->name, name) == 0) {
 			return ptr;
 		}
 		ptr++;
@@ -4160,7 +4163,7 @@
 	}
 
 	// not found.
-	return ptr;
+	return NULL;
 }
 
 static char * get_cipher_string(SSH2Cipher *cipher)



Ttssh2-commit メーリングリストの案内
Back to archive index