rshd uses pipes to communicate with shell

egor duda deo@logos-m.ru
Mon Apr 30 09:18:00 GMT 2001


Hi!

Monday, 30 April, 2001 Corinna Vinschen cygwin-apps@cygwin.com wrote:

CV> On Sat, Apr 28, 2001 at 11:35:34PM +0400, egor duda wrote:
>> Hi!
>> 
>>   is there some special reason for using pipes in rshd? this breaks
>> programs that rely on getpeername() for additional security check when
>> they're called from rshd.

CV> It's the base implementation. I didn't change anything except for
CV> getting it working. Feel free to change it but be aware of that
CV> annoying socketpair problem some users have. Just in case...

oh, i see. i should make myself clearer.  i'm talking about

#ifdef __CYGWIN__
        int cv[2];
#endif

in rshd.c. base implementation uses pipe to handle stderr, but cygwin
version seems to handle stdout via pipe too. if some program started
by rshd then calls getpeername (1, &name, &name_len), it fails with
ENOTSOCK. i suspect there was some reason for adding 'cv', wasn't
there?

Egor.            mailto:deo@logos-m.ru ICQ 5165414 FidoNet 2:5020/496.19




More information about the Cygwin-apps mailing list