[Ttssh2-commit] [8593] ホスト名の置換に aswprintf() を使用するようにした

アーカイブの一覧に戻る
scmno****@osdn***** scmno****@osdn*****
2020年 3月 12日 (木) 22:52:38 JST


Revision: 8593
          https://osdn.net/projects/ttssh2/scm/svn/commits/8593
Author:   zmatsuo
Date:     2020-03-12 22:52:38 +0900 (Thu, 12 Mar 2020)
Log Message:
-----------
ホスト名の置換に aswprintf() を使用するようにした

- lngファイルの DLG_UNKNOWNHOST_WARNING の "####" を "%s" に変更
- init_hosts_dlg()#host.c はバッファのサイズ指定が誤っていた

Modified Paths:
--------------
    trunk/installer/release/lang_utf8/English.lng
    trunk/installer/release/lang_utf8/French.lng
    trunk/installer/release/lang_utf8/German.lng
    trunk/installer/release/lang_utf8/Japanese.lng
    trunk/installer/release/lang_utf8/Korean.lng
    trunk/installer/release/lang_utf8/Russian.lng
    trunk/installer/release/lang_utf8/Simplified Chinese.lng
    trunk/installer/release/lang_utf8/Traditional Chinese.lng
    trunk/ttssh2/ttxssh/auth.c
    trunk/ttssh2/ttxssh/hosts.c

-------------- next part --------------
Modified: trunk/installer/release/lang_utf8/English.lng
===================================================================
--- trunk/installer/release/lang_utf8/English.lng	2020-03-12 13:52:24 UTC (rev 8592)
+++ trunk/installer/release/lang_utf8/English.lng	2020-03-12 13:52:38 UTC (rev 8593)
@@ -1,4 +1,4 @@
-; Updated by TeraTerm Project (2020-01-09)
+; Updated by TeraTerm Project (2020-03-12)
 
 [Tera Term]
 DLG_SYSTEM_FONT=System,14,0
@@ -808,7 +808,7 @@
 
 ; dlg unknown host
 DLG_UNKNOWNHOST_TITLE=SECURITY WARNING
-DLG_UNKNOWNHOST_WARNING=There is no entry for the server "#####################################" in your list of known hosts. The machine you have contacted may be a hostile machine pretending to be the server.
+DLG_UNKNOWNHOST_WARNING=There is no entry for the server "%s" in your list of known hosts. The machine you have contacted may be a hostile machine pretending to be the server.
 DLG_UNKNOWNHOST_WARNING2=If you choose to add this machine to the known hosts list and continue, then you will not receive this warning again.
 DLG_UNKNOWNHOST_FINGERPRINT=The server's host key fingerprint is:
 DLG_UNKNOWNHOST_FP_HASH_ALGORITHM=Fingerprint hash algorithm:

Modified: trunk/installer/release/lang_utf8/French.lng
===================================================================
--- trunk/installer/release/lang_utf8/French.lng	2020-03-12 13:52:24 UTC (rev 8592)
+++ trunk/installer/release/lang_utf8/French.lng	2020-03-12 13:52:38 UTC (rev 8593)
@@ -1,4 +1,4 @@
-; Updated by TeraTerm Project (2020-01-09)
+; Updated by TeraTerm Project (2020-03-12)
 ; Last translated (French language) by Francois MOCQ (2010-07-21)
 
 [Tera Term]
@@ -812,7 +812,7 @@
 
 ; dlg unknown host
 DLG_UNKNOWNHOST_TITLE=ALERTE DE SECURITE
-DLG_UNKNOWNHOST_WARNING=Il n'y a pas d'entrée pour le serveur "#####################################" dans votre liste d'hôtes connus. La machine que vous avez contactée pourrait être une machine hostile se faisant passer pour le serveur.
+DLG_UNKNOWNHOST_WARNING=Il n'y a pas d'entrée pour le serveur "%s" dans votre liste d'hôtes connus. La machine que vous avez contactée pourrait être une machine hostile se faisant passer pour le serveur.
 DLG_UNKNOWNHOST_WARNING2=Si vous choisissez d'ajouter cette machine à la liste d'hôtes connus et de continuer, vous ne recevrez plus cet avertissement.
 DLG_UNKNOWNHOST_FINGERPRINT=L'empreinte de la clé du serveur est:
 DLG_UNKNOWNHOST_FP_HASH_ALGORITHM=Fingerprint hash algorithm:

Modified: trunk/installer/release/lang_utf8/German.lng
===================================================================
--- trunk/installer/release/lang_utf8/German.lng	2020-03-12 13:52:24 UTC (rev 8592)
+++ trunk/installer/release/lang_utf8/German.lng	2020-03-12 13:52:38 UTC (rev 8593)
@@ -1,4 +1,4 @@
-; Updated by TeraTerm Project (2020-01-09)
+; Updated by TeraTerm Project (2020-03-12)
 ; Last translated (German language) by Frederik Schwarzer (2010-05-17)
 
 [Tera Term]
@@ -812,7 +812,7 @@
 
 ; dlg unknown host
 DLG_UNKNOWNHOST_TITLE=SICHERHEITSWARNUNG
-DLG_UNKNOWNHOST_WARNING=Es gibt für diesen Server ("#####################################") keinen Eintrag in der "known hosts"-Liste.
+DLG_UNKNOWNHOST_WARNING=Es gibt für diesen Server ("%s") keinen Eintrag in der "known hosts"-Liste.
 DLG_UNKNOWNHOST_WARNING2=Wenn Sie auf 'Continue' klicken, wird der Server in die Liste aufgenommen und die Fehlermeldung erscheint nicht mehr.
 DLG_UNKNOWNHOST_FINGERPRINT=Der Fingerabdruck des Schlüssels:
 DLG_UNKNOWNHOST_FP_HASH_ALGORITHM=Fingerprint hash algorithm:

Modified: trunk/installer/release/lang_utf8/Japanese.lng
===================================================================
--- trunk/installer/release/lang_utf8/Japanese.lng	2020-03-12 13:52:24 UTC (rev 8592)
+++ trunk/installer/release/lang_utf8/Japanese.lng	2020-03-12 13:52:38 UTC (rev 8593)
@@ -1,4 +1,4 @@
-; Updated by TeraTerm Project (2020-01-11)
+; Updated by TeraTerm Project (2020-03-12)
 
 [Tera Term]
 DLG_SYSTEM_FONT=MS Pゴシック,12,128
@@ -808,7 +808,7 @@
 
 ; dlg unknown host
 DLG_UNKNOWNHOST_TITLE=セキュリティ警告
-DLG_UNKNOWNHOST_WARNING=known hostsリストにサーバ"#####################################"のエントリはありません. 悪意を持ったホストが, 接続しようとしているサーバのふりをしている可能性もありますので, 十分注意してください!
+DLG_UNKNOWNHOST_WARNING=known hostsリストにサーバ"%s"のエントリはありません. 悪意を持ったホストが, 接続しようとしているサーバのふりをしている可能性もありますので, 十分注意してください!
 DLG_UNKNOWNHOST_WARNING2=known hostsリストのこのホストを追加して続行すると, 次回からこの警告は出なくなります.
 DLG_UNKNOWNHOST_FINGERPRINT=サーバ側のホスト鍵指紋:
 DLG_UNKNOWNHOST_FP_HASH_ALGORITHM=鍵指紋ハッシュアルゴリズム:

Modified: trunk/installer/release/lang_utf8/Korean.lng
===================================================================
--- trunk/installer/release/lang_utf8/Korean.lng	2020-03-12 13:52:24 UTC (rev 8592)
+++ trunk/installer/release/lang_utf8/Korean.lng	2020-03-12 13:52:38 UTC (rev 8593)
@@ -1,4 +1,4 @@
-; Updated by TeraTerm Project (2020-02-13)
+; Updated by TeraTerm Project (2020-03-12)
 ; Last translated (Korean language) by Daehong Kim (2013-07-25)
 
 [Tera Term]
@@ -812,7 +812,7 @@
 
 ; dlg unknown host
 DLG_UNKNOWNHOST_TITLE=보안 경고
-DLG_UNKNOWNHOST_WARNING=당신의 known-host 목록에는 서버 "#####################################" 항목이 없습니다. 당신이 접속한 컴퓨터는 그 서버를 흉내내는 악의적인 컴퓨터일 수 있습니다.
+DLG_UNKNOWNHOST_WARNING=당신의 known-host 목록에는 서버 "%s" 항목이 없습니다. 당신이 접속한 컴퓨터는 그 서버를 흉내내는 악의적인 컴퓨터일 수 있습니다.
 DLG_UNKNOWNHOST_WARNING2=known-host 목록에 이 컴퓨터를 추가하고 계속 진행하면 다시는 경고 메시지를 받지 않습니다.
 DLG_UNKNOWNHOST_FINGERPRINT=서버의 호스트키 지문은:
 DLG_UNKNOWNHOST_FP_HASH_ALGORITHM=Fingerprint hash algorithm:

Modified: trunk/installer/release/lang_utf8/Russian.lng
===================================================================
--- trunk/installer/release/lang_utf8/Russian.lng	2020-03-12 13:52:24 UTC (rev 8592)
+++ trunk/installer/release/lang_utf8/Russian.lng	2020-03-12 13:52:38 UTC (rev 8593)
@@ -1,4 +1,4 @@
-; Updated by TeraTerm Project (2020-01-09)
+; Updated by TeraTerm Project (2020-03-12)
 ; Last translated (Russian language) by Ryumik Sergey (2017-07-19)
 
 [Tera Term]
@@ -812,7 +812,7 @@
 
 ; dlg unknown host
 DLG_UNKNOWNHOST_TITLE=ПРЕДУПРЕЖДЕНИЕ О БЕЗОПАСНОСТИ
-DLG_UNKNOWNHOST_WARNING=Нет записи для сервера "####################################" в списке известных хостов. Враждебный компьютер может притворяться сервером!
+DLG_UNKNOWNHOST_WARNING=Нет записи для сервера "%s" в списке известных хостов. Враждебный компьютер может притворяться сервером!
 DLG_UNKNOWNHOST_WARNING2=Если вы добавите этот компьютер в список известных хостов и продолжите, то не будете получать это предупреждение.
 DLG_UNKNOWNHOST_FINGERPRINT=Ключ сервера хоста:
 DLG_UNKNOWNHOST_FP_HASH_ALGORITHM=Алгоритм хэширования:

Modified: trunk/installer/release/lang_utf8/Simplified Chinese.lng
===================================================================
--- trunk/installer/release/lang_utf8/Simplified Chinese.lng	2020-03-12 13:52:24 UTC (rev 8592)
+++ trunk/installer/release/lang_utf8/Simplified Chinese.lng	2020-03-12 13:52:38 UTC (rev 8593)
@@ -1,4 +1,4 @@
-; Updated by TeraTerm Project (2020-01-09)
+; Updated by TeraTerm Project (2020-03-12)
 ; Last translated (Simplified Chinese language) by LiShaohui (2017-04-11)
 
 [Tera Term]
@@ -812,7 +812,7 @@
 
 ; dlg unknown host
 DLG_UNKNOWNHOST_TITLE=安全警告
-DLG_UNKNOWNHOST_WARNING=服务器"#####################################"不再已知主机列表中。它可能是敌对服务器伪装的,请小心!
+DLG_UNKNOWNHOST_WARNING=服务器"%s"不再已知主机列表中。它可能是敌对服务器伪装的,请小心!
 DLG_UNKNOWNHOST_WARNING2=将该服务器追加到已知主机列表中后,将不再提示本警告。
 DLG_UNKNOWNHOST_FINGERPRINT=服务器端主机密钥指纹:
 DLG_UNKNOWNHOST_FP_HASH_ALGORITHM=指纹散列算法:

Modified: trunk/installer/release/lang_utf8/Traditional Chinese.lng
===================================================================
--- trunk/installer/release/lang_utf8/Traditional Chinese.lng	2020-03-12 13:52:24 UTC (rev 8592)
+++ trunk/installer/release/lang_utf8/Traditional Chinese.lng	2020-03-12 13:52:38 UTC (rev 8593)
@@ -1,4 +1,4 @@
-; Updated by TeraTerm Project (2020-01-09)
+; Updated by TeraTerm Project (2020-03-12)
 ; Last translated (Traditional Chinese language) by kikiqqp (2014-09-20)
 
 [Tera Term]
@@ -809,7 +809,7 @@
 
 ; dlg unknown host
 DLG_UNKNOWNHOST_TITLE=安全警告
-DLG_UNKNOWNHOST_WARNING=伺服器"#####################################"不再已知主機列表中。它可能是敵對伺服器偽裝的,請小心!
+DLG_UNKNOWNHOST_WARNING=伺服器"%s"不再已知主機列表中。它可能是敵對伺服器偽裝的,請小心!
 DLG_UNKNOWNHOST_WARNING2=將該伺服器追加到已知主機列表中後,將不再提示本警告。
 DLG_UNKNOWNHOST_FINGERPRINT=伺服器端主機密鑰指紋:
 DLG_UNKNOWNHOST_FP_HASH_ALGORITHM=Fingerprint hash algorithm:

Modified: trunk/ttssh2/ttxssh/auth.c
===================================================================
--- trunk/ttssh2/ttxssh/auth.c	2020-03-12 13:52:24 UTC (rev 8592)
+++ trunk/ttssh2/ttxssh/auth.c	2020-03-12 13:52:38 UTC (rev 8593)
@@ -53,6 +53,7 @@
 #include "helpid.h"
 #include "codeconv.h"
 #include "layer_for_unicode.h"
+#include "asprintf.h"
 
 #define AUTH_START_USER_AUTH_ON_ERROR_END 1
 
@@ -186,14 +187,16 @@
 
 static void init_auth_machine_banner(PTInstVar pvar, HWND dlg)
 {
-	wchar_t buf[1024], buf2[1024];
+	wchar_t* buf;
+	wchar_t buf2[1024];
 	const char *host_name = SSH_get_host_name(pvar);
 	wchar_t *host_nameW = ToWcharA(host_name);
 
 	_GetDlgItemTextW(dlg, IDC_SSHAUTHBANNER, buf2, _countof(buf2));
-	_snwprintf_s(buf, _countof(buf), _TRUNCATE, buf2, host_nameW);
+	aswprintf(&buf, buf2, host_nameW);
 	_SetDlgItemTextW(dlg, IDC_SSHAUTHBANNER, buf);
 	free(host_nameW);
+	free(buf);
 }
 
 static void update_server_supported_types(PTInstVar pvar, HWND dlg)

Modified: trunk/ttssh2/ttxssh/hosts.c
===================================================================
--- trunk/ttssh2/ttxssh/hosts.c	2020-03-12 13:52:24 UTC (rev 8592)
+++ trunk/ttssh2/ttxssh/hosts.c	2020-03-12 13:52:38 UTC (rev 8593)
@@ -56,6 +56,7 @@
 
 #include "codeconv.h"
 #include "layer_for_unicode.h"
+#include "asprintf.h"
 
 #undef DialogBoxParam
 #define DialogBoxParam(p1,p2,p3,p4,p5) \
@@ -989,25 +990,16 @@
 static void init_hosts_dlg(PTInstVar pvar, HWND dlg)
 {
 	wchar_t buf[MAX_UIMSG];
-	wchar_t buf2[2048];
-	size_t i, j;
-	wchar_t ch;
+	wchar_t *buf2;
 	wchar_t *hostW;
 
-	// static text\x82\xCC # \x95\x94\x95\xAA\x82\xF0\x83z\x83X\x83g\x96\xBC\x82ɒu\x8A\xB7\x82\xB7\x82\xE9
-	_GetDlgItemTextW(dlg, IDC_HOSTWARNING, buf, sizeof(buf));
-	for (i = 0; (ch = buf[i]) != 0 && ch != L'#'; i++) {
-		buf2[i] = ch;
-	}
+	// \x83z\x83X\x83g\x96\xBC\x82ɒu\x8A\xB7\x82\xB7\x82\xE9
+	_GetDlgItemTextW(dlg, IDC_HOSTWARNING, buf, _countof(buf));
 	hostW = ToWcharA(pvar->hosts_state.prefetched_hostname);
-	wcsncpy_s(buf2 + i, _countof(buf2) - i, hostW, _TRUNCATE);
+	aswprintf(&buf2, buf, hostW);
 	free(hostW);
-	j = i + wcslen(buf2 + i);
-	for (; buf[i] == L'#'; i++) {
-	}
-	wcsncpy_s(buf2 + j, _countof(buf2) - j, buf + i, _TRUNCATE);
-
 	_SetDlgItemTextW(dlg, IDC_HOSTWARNING, buf2);
+	free(buf2);
 
 	pvar->hFontFixed = UTIL_get_lang_fixedfont(dlg, pvar->ts->UILanguageFile);
 	if (pvar->hFontFixed != NULL) {


Ttssh2-commit メーリングリストの案内
アーカイブの一覧に戻る