From: "とみたまさひろ" Date: 1999-10-20T17:38:56+09:00 Subject: [ruby-dev:8070] Re: socks5 とみたです。 At Fri, 15 Oct 1999 16:37:02 +0900, matz@netlab.co.jp (Yukihiro Matsumoto) wrote: > 両方同時に使う個人はいないでしょうが、ライブラリとしての使い > 勝手はそろえておいた方が良いと思います。でないとsocks4用のス > クリプトとsocks5用のスクリプトが素直に共有できない問題が発生 > しませんか? > SOCKSを使いたい人はとりあえず require 'socks' かなんかで、 > SOCKSSocketが使えるようになるというのが理想だと思います。 そうですね。 > 本当は require 'socks4' と require 'socks5' *も*できると一番良いのです > が。 これは、socks4 または socks5 でしか動かないスクリプトがあるということを 想定してますか? それとも、SOCKSSocket だけじゃなくて SOCKS4Socket, SOCKS5Socket もあった方がいいということでしょうか? 私にはあまりこのメリットは思いつかないんですが…。 とりあえず作ってみました。私のところではちゃんと動いているようです。 Solaris7 と LASER5 Linux で確認しました。 Ruby 1.4.2 の socket.c に先の私のSOCKS5対応パッチをあてて、SOCKSに関係な い部分(UNIXドメインとか、UDPとか、サーバソケットとか)を削除しまくって、 SOCKSSocket の親クラス(BasicSocket/IPSocket/TCPSocket)のメソッドを全部 SOCKSScoket のメソッドにして、SOCKSSocket は IO クラスの子クラスにしまし た。 やり方も綺麗じゃないし、ソースも綺麗じゃない…(^^; ftp://ftp.netlab.co.jp/pub/lang/ruby/in.coming/socks.tar.gz に置いておきました。 -- とみたまさひろ