Hello,

I've attached a small program that exhibits the behaviour, running Cygwin 
1.5.18-1.

I use the select() function call to determine if it is allowed to write() to a 
serial port. select() indicates it is allowed, and the next write blocks. The 
serial port has hardware handshake control enabled (RTS/CTS), and it is 
unblocked as soon as CTS moves to the correct state.

Is this a problem with how I've configured serial ports? I've spent a lot of 
time on the 'Net today and don't find anything related to this specific 
problem, tested it on Linux FC4 and I have the behaviour I would have expected.

To compile:
$ gcc -Wall wblock.c -owblock
$ ./wblock

Then to test I used a normal 9-pin serial cable (one that might be used to 
connect to a modem, or another CE device, NOT null-modem). I used a pair of 
scissors to just short pins 8-4 (drive CTS -ve so it writes) or 8-3 (or not at 
all is equivalent, drive CTS +ve so the TX line is inactive). I had an RS232 
analyser (bunch of LEDs attached to the serial port) to see what was happening.

Thanks,
Jason.

Attachment: wblock.c
Description: Binary data

Attachment: cygcheck.out
Description: Binary data

--
Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple
Problem reports:       http://cygwin.com/problems.html
Documentation:         http://cygwin.com/docs.html
FAQ:                   http://cygwin.com/faq/

Reply via email to