X11転送が開始できない
常に同じエラーを返しているわけではないようですね(なにかのエラー or WSATRY_AGAIN/WSANO_RECOVERY/WSANO_ADDRESS/WSAHOST_NOT_FOUND のどれか)。
別のPCだと再現しないので、PC側の環境依存のように見えます。 "localhost"というのが逆引きできていないのでしょうか?
debug printを埋めて調べてみたところ、failed_to_host_addr()でエラーしていました。 エラーコードは"10109"(10進)で、必ずしもNo addrになるわけはないようです。
また、デバッグビルドだと再現しないです。よくわかりません。
原因が判明しました。 WSAAsyncGetAddrInfo()で、ポインタ先が不定になるバグがあります。X11転送でなくとも再現するかも。 getaddrinfo_thread スレッドが遅れて起動すると、ポインタの先が保証されなくなるため、不定となり、 getaddrinfo()が失敗します。通常はすぐにスレッドが起きるので、問題が発生しません。
誤: ga->hostname = hostname; ga->portname = portname; 正: ga->hostname = _strdup(hostname); ga->portname = _strdup(portname);
X11転送をしようとすると、下記のエラーが出ることがある。PuTTY, RLoginでは問題なし。
ttssh.logを採取すると、下記のエラーメッセージが残っていた。