Sending signals to a subprocess
Wed Oct 20 23:46:00 GMT 2010
On 10/20/2010 4:32 PM, Christopher Faylor wrote:
> On Wed, Oct 20, 2010 at 08:25:37PM +0100, Andy Koppe wrote:
>> On 20 October 2010 13:20, Andy Koppe wrote:
>>>> Corinna made tcgetpgrp return 0 instead of -1 in some circumstances
>>>> (see http://www.cygwin.com/ml/cygwin-patches/2009-q4/msg00045.html)
>>>> because she saw Linux doing that. ??But when I run Corinna's test on
>>>> my Linux system, I get -1 where she got 0. ??So not all Linuxes agree
>>>> on what tcgetpgrp should do.
>>> Hmm, Corinna's test calls tcgetpgrp(master) in the parent only before
>>> the child is forked and after it exited, so it's correct to report that
>>> there's no foreground process.
>>> I wonder which Linux it was that returned 0 in case of failure. I've
>>> tried it on a recent Opensuse, an old Redhat with a 2.6.9 kernel, and
>>> also a Debian with a 2.4 kernel, and got -1 on all of those.
>> Actually I'd only tried my test on all three systems, whereas I'd tried
>> Corinna's only on the old Redhat, where it did print -1 for failure.
>> On the 2.4 system it can't open /dev/ptmx, whereas on the Opensuse with
>> 2.6.34 I do get the results Corinna reported, including 0 on the master
>> side of the pty when enquiring from the parent. (Process 0 is the
>> startup process, so I guess that makes some sense.)
>> To bring my ramblings to some sort of conclusion, here's a slightly
>> amended version of Corinna's test that checks the master side from the
>> parent process before, *during* and after the child process:
> FYI, I'm sticking with the test case that I first posted several days
> ago and which has been cruelly ignored ever since. I've been slowly
> modifying it for the last several days.
I didn't ignore it. I just didn't know how to modify it to deal with
subprocesses, which was the situation I was trying to understand.
> I think I'm seeing some pattern to the way Linux handles this and I should
> be able to make Cygwin work the same way.
That would be great. Thanks.
> Just in case it isn't clear, this all has nothing, AFAICT, to do with the
> fact that Cygwin doesn't implement TIO[CS]PGRP but I have implemented those
> two ioctl's nonetheless.
It's clear, and I agree.
Problem reports: http://cygwin.com/problems.html
Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple
More information about the Cygwin