HTTPSで名前ベースのバーチャルホストを実現する機能にSNIというのがある。

もうすぐXPが(建前上)無くなり、主要なWebブラウザーはほぼSNIに対応するようになったのでいよいよ本格的に採用が進むようになるのではないかと思う。

さて、HTTPSと言えばSubversionというバージョン管理システムでもクライアントサーバー間の通信にHTTPSを使う事ができる。この時にサーバー側がSNIだとどうするか。

SNI対応Webブラウザー一覧というのは探せばあるが、SNI対応Subversionクライアント一覧というのはとんと見かけない。私が使っているSubversionクライアントではどうなっているか調べてみた。

●Windows用
・TortoiseSVN:1.6.16(OpenSSL1.0.0d使用)で既に対応している。OpenSSL0.9.8f以降を使用しているビルドなら恐らく対応していると思われる。
・Subversive:Juno(Eclipse 4.2)用の1.0.0では、コネクターをSVNKit1.3系にしても1.7系にしても非対応。Kepler(Eclipse 4.3)用の1.1.0では、コネクターをSVNKit1.3.8にすると非対応、SVNKit1.7.10にすると対応しているようだ。コネクターをSVNKitではなくJavaHLにすればJunoでも行けるのかも知れない。もちろんEclipse自体をJava7以上で動かさないといけない。
・SlikSVN:1.6.16で対応している。それ以降なら対応していると思われる。

●MacOS X用
・svn(/usr/bin/svn):1.7.10のようで余裕で対応(MacOS X Mervericks 10.9.2)
・svnX:バックエンドとして使っているのが/opt/subversion/bin/svnのようで、これは1.6.23となっており余裕で対応。

XPがなくなりつつある今、SubversionクライアントでもSNIにほぼ対応が完了していると言っても良いと思う結果となった。