This is the mail archive of the
cygwin@cygwin.com
mailing list for the Cygwin project.
Re: Process does not respond to signals on read() of win32 handle
- From: <sanjayl at mindspring dot com>
- To: cfg at redback dot com
- Cc: cygwin at cygwin dot com
- Date: Wed, 06 Nov 2002 19:09:21 -0500
- Subject: Re: Process does not respond to signals on read() of win32 handle
- Reply-to: sanjayl at mindspring dot com
Christopher,
thanks for the info. If I pass any "/dev/com" to
_cygwin_attach_handle_to_fd() it core dumps :-(.
What is the significance of the name param. Does it create a device node
within the cygwin layer??
Can it be any path?? I am guessing from what you said, that if it is any
random path, it is assumed to be a fast device?
Thanks for your help
Sanjay
On Wed, Nov 06, 2002 at 04:22:18PM -0500, sanjayl@mindspring.com wrote:
>Hi Mark,
>
>I am running Cygwin on Windows 2000. Here is the output of uname -a
>
>
>
>CYGWIN_NT-5.0 REDBSUNJAY1 1.3.14(0.62/3/2) 2002-10-24 10:48 i686 unknown
>
>And here is a short program that can reproduce the bug. I just
>CreateFile() COM0 and then map it to a cygwin file desciptor. I then
>read() on the fd. At this point the program stops responding to any
>signals (CTRL-C) etc, until some data shows up on the device to wake up
>the read. I just use g++ com.cpp to compile the executable.
Theoretically, if you pass "/dev/com0" to the "cygwin_attach_handle_to_fd"
it would work correctly. If you don't pass the name of a known device to
cygwin_attach_handle_to_fd it assumes it is a fast device for which no
special signal handling is necessary. So, if it blocks, it will not respond
to signals, as you've discovered.
cgf
--
Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple
Bug reporting: http://cygwin.com/bugs.html
Documentation: http://cygwin.com/docs.html
FAQ: http://cygwin.com/faq/