Sourceforge

CVSを作るのにえらく苦労しました。結局今朝になって問題はSSHプロトコルバージョンのミスマッチにあると判明。
サーバー側のSSH

suikan@linux-5u15:~> telnet shell.sourceforge.jp 22
Trying 61.215.208.26...
Connected to shell.sourceforge.jp.
Escape character is '^]'.
SSH-1.99-OpenSSH_3.8.1p1 Debian-8.sarge.4

クライアント側のSSH

suikan@linux-5u15:~> ssh -V
OpenSSH_4.2p1, OpenSSL 0.9.8a 11 Oct 2005

この両者は整合性がとれていると考えそうなものですが、実は見えない部分にプロトコルのミスマッチがあります。そこで、

suikan@linux-5u15:~> echo Protocol 1,2 > ~/.ssh/config

のように、configファイルを設定することで問題を回避できました。

バッドノウハウ

SSHには複数のプロトコルと複数の実装があり、それぞれにサーバーとクライアントがあります。これらをきちんと理解しないと動かすことが出来ません。典型的な「必須屑知識」:バッドノウハウです。解決する上で以下の文書が大いに役立ちました。この文書がなかったらどれだけ苦労したことやら。感謝しております。

以前、WinCVSで作業していましたが、偶然動いていたとしか思えません。