Matthew K. wrote in post #1054099:
Ok, please forget everything I said before. My brain wasn’t working
and I should have known better than to say anything on the internet in
SOCKSSocket appears to be an optional component of ruby. That’s why
resolv-replace only monkey-patches the class if it already exists.
As an illustration, ‘net/ftp’ defines the following method:
def open_socket(host, port)
if defined? SOCKSSocket and ENV["SOCKS_SERVER"]
@passive = true
return SOCKSSocket.open(host, port)
return TCPSocket.open(host, port)
Perhaps you could do something similar (i.e. create a SOCKS socket if
you have SOCKS enabled, otherwise create a boring old TCP socket).
And if you really need the proxy behaviour, a quick google search
revealed the following gem: http://socksify.rubyforge.org/ which
might be useful.
Matthew K., B.Sc (CompSci) (Hons)
“You’ll never find a programming language that frees
you from the burden of clarifying your ideas.” - xkcd
Ya know, it is a funny thing. I dug around in the ruby source code and
found all sorts of clues and my initial assumption as stated at the
beginning of this thread is some type of dependency or maybe I should
have said optional component. Anyway, I tried:
./configure --prefix=/usr/local --enable-socks
./configure --prefix=/usr/local --enable-socks=true
both result in a warning:
configure: WARNING: unrecognized options: --enable-socks
At this point, I don’t understand why that option does not work. On the
surface, --enable-socks appears to be the right thing to do, however, I
haven’t figured it out yet. Still looking.