接続情報で表示されるホスト鍵が正しく無い
ssh_known_hosts で該当ホスト2件目以降がマッチした場合のようですね。
prefetch されていない状態で HOSTS_check_host_key() に来るので、if (match == 1) で return TRUE; する前に key_copy(&pvar->hosts_state.hostkey, key); しておく必要がありそうです。
r6998 で修正してみました。チェックお願いします。
ありがとうございます。大丈夫そうです。手元の環境では問題なく動いています。
「Help」-「About TTSSH」で表示されるダイアログの接続情報で、ホスト鍵の Fingerprint として別の鍵の情報が表示される。
デバッグログで server host key algorithm: ecdsa-sha2-nistp256 と出力されているが、ダイアログでは DSA 鍵の Fingerprint が表示されたりする。
ssh_known_hosts に該当のホストの鍵が複数有る時に、実際に利用した鍵ではなく、先頭の鍵の情報が表示されているようだ。