This is the mail archive of the cygwin mailing list for the Cygwin project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: Need to replicate TIOCGICOUNT and TIOCMIWAIT on cygwin


Jim Brain <brain <at> jbrain.com> writes:

> 
> I have an application that I need to port to windows, and it uses these two 
> Linux IOCTLs.  Specifically, the app needs to monitor the DSR line and signal 
> another process when it changes. 
> 
> I have migrated the rest of the app over with minimal work, but obviously 
> cygwin does not support linux/serial.h.  I am OK with a rewrite of this 
> function (the rest is working fine), and am also OK writing it in straight 
> Win32 calls, but I don't know how to relate my opened fd with a HANDLE to use 
> the relevant WIN32 calls. 
> 
> Of course, there might be a much easier way to monitor for changes to DSR 
line, 
> so I am up for an alternative (It would be nice to make the code portable to 
> *BSD* as well, which means losing this IOCTL), but I am lost at present.  Any 
> help would be appreciated.
> 
> I can send the current code to anyone who needs it.
> 
> Jim Brain

As a followup, I thought maybe I would use the Win32 API to open a serial port, 
use cygwin_attach_handle_to_fd() and save off both handles.  Then, when I need 
to WaitCommEvent, I'd use the HANDLE, otherwise, use the fd.  

Problem:

All the examples online use CreateFile, which I coded up, and cygwin gives me a 
fd of 8, but select returns immediately and I read -1 bytes on serial.  I 
looked at the cygwin source, which uses NtCreateFile, but I can't find headers 
or libraries for that. I am stumped.  I feel like I am so close...  It's rather 
a bummer there is a not a cygwin_get_win32_handle(int fd), as that is what I 
need.

Anyone got any ideas?

Jim






--
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/


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]