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) {