J
Jamis Buck
Looks like the local->remote port forwarding will be pretty easy to
implement (I've already got a prototype that does the trick...messily).
At any rate, I'm looking at this and I'm realizing that because I'm
doing this all in Ruby, you could concievably have the port forwarding
do tricks based on additional information in the request. Here's a use
case to clarify my meaning:
Set up port forwarding on port X. When a connection is recieved, parse
the request. If the request matches format A, forward the request to
boxAortA. If the request matches format B, forward the request to
boxBortB. Etc. All of this happens transparently to the client that
connected to the local port.
Would this be useful for anyone? I'm probably going to write the Ruby
interface in such a way that you could do something like the above with
minimal effort, but I'm just curious if anyone would actually use such a
feature in practice.
--
Jamis Buck
(e-mail address removed)
http://www.jamisbuck.org/jamis
ruby -ropenssl
-e'k="01234567";p((c,c.padding,c.iv,c.key=OpenSSL::Cipher::BF.new,false,k,k*2)[0].decrypt.update("1A81803C452C324619D319F980D5B84DBB45FC0FE2BAA045".scan(/../).map{|n|n.to_i(16).chr}.join))'
implement (I've already got a prototype that does the trick...messily).
At any rate, I'm looking at this and I'm realizing that because I'm
doing this all in Ruby, you could concievably have the port forwarding
do tricks based on additional information in the request. Here's a use
case to clarify my meaning:
Set up port forwarding on port X. When a connection is recieved, parse
the request. If the request matches format A, forward the request to
boxAortA. If the request matches format B, forward the request to
boxBortB. Etc. All of this happens transparently to the client that
connected to the local port.
Would this be useful for anyone? I'm probably going to write the Ruby
interface in such a way that you could do something like the above with
minimal effort, but I'm just curious if anyone would actually use such a
feature in practice.
--
Jamis Buck
(e-mail address removed)
http://www.jamisbuck.org/jamis
ruby -ropenssl
-e'k="01234567";p((c,c.padding,c.iv,c.key=OpenSSL::Cipher::BF.new,false,k,k*2)[0].decrypt.update("1A81803C452C324619D319F980D5B84DBB45FC0FE2BAA045".scan(/../).map{|n|n.to_i(16).chr}.join))'