Process does not respond to signals on read() of win32 handle. (fwd)

Christopher Faylor cgf@redhat.com
Wed Nov 6 14:16:00 GMT 2002


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/



More information about the Cygwin mailing list