On Mar 13, 2007, at 4:15 PM, Brian Candler wrote:
> Is there any standard Ruby way of creating a bidirectional pipe or
> socketpair?
>
> I want to pass a single IO-like object around, but to be able to  
> both read
> and write from the other end. (What I'm actually trying to do is to  
> put a
> facade around Net::SSH so that the command channel can be passed in  
> as a
> proxy to Net::Telnet, but I can think of other uses of this)
>
> IO.popen(..., "w+") does make such a bidirectional pipe, but as far  
> as I can
> see only for communicating with a child process.
>
> Any ideas?
>
> Thanks,
>
> Brian.

rd, wr = IO.pipe

comes to mind.

-Rob

Rob Biedenharn		http://agileconsultingllc.com
Rob / AgileConsultingLLC.com