自動ログイン時、ユーザ名が指定されていないと認証に失敗する
ユーザ名が無いとログインに成功しないとおもってましたが、そうではないということですか?それとも、デフォルトユーザ名でのログインができていないということですか?
ソースを確認しました。自動ログインの場合は、コマンドラインからのユーザ名入力(pvar->ssh2_username)を使用する、という実装(do_SSH2_authrequest)になっています。
コマンドラインからユーザ名が渡されなかったら、pvar->session_settings.DefaultUserName から引っ張られて IDC_SSHUSERNAME に入っているはずのユーザ名(なぜか pvar->auth_state.user に来ていないんですが)を使う、という動作が期待値ですか?
はい、デフォルトユーザ名で認証を行ってほしいです。
現在の動作は、
というあたりが直観に反していると思います。
* 自動ログインでも一時的に表示される認証ダイアログのユーザ名に、デフォルトユーザ名が(グレーアウトしているが)入っているのに使われない
http://svn.sourceforge.jp/view/trunk/ttssh2/ttxssh/auth.c?annotate=3227&root=ttssh2#l284
ここでコマンドラインのユーザ名を入れているはずなのですが、どういうパラメータを渡すと再現しますか?
r3336で期待通りに動作するのを確認しました。
ttsshで/auth=オプションを指定して自動ログインをしようとした時、/user=オプション等でユーザ名を指定していないと認証に失敗する。
上記の失敗するケースでも、/ask4passwdオプションを指定して自動ログインを無効にし、認証ダイアログでなにも入力せずにOKを押した場合は認証に成功する。