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: read() blocking and TIOCINQ


The value of errno might give you a clue.

--Ken Nellis

-----Original Message-----
From: Ernesto Paiser [mailto:paiser at esrf dot fr] 
Sent: Tuesday, August 22, 2006 4:11 AM
To: cygwin at cygwin dot com
Subject: read() blocking and TIOCINQ

Hello Corinna,
I have problems with read() function blocking and
waiting for characters on serial line with cygwin:

Here are some code fragments:
========================================================
fd = open(sl, O_RDWR | O_NOCTTY | O_NONBLOCK | O_NDELAY)

newpio.c_cflag = brate | CS8 | CLOCAL | CREAD;
newpio.c_iflag = IGNPAR | ICRNL;
newpio.c_oflag = 0;
newpio.c_lflag = 0;
newpio.c_cc[VTIME]    = 1;
newpio.c_cc[VMIN]     = 0;
...

n = ioctl(fd, TIOCINQ, &n); //It gives me an error (return -1) why??!!!

and

n = read(fd, buffer, 1);  <<< HERE IS BLOCKING!!!
========================================================

TIOCINQ is working on CYGWIN,

Is there another way to solve this problem???

Thank you in advance,
  Ernesto.

-- 
Ernesto PAISER ____________________ paiser@esrf.fr
E.S.R.F. - European Synchrotron Radiation Facility
6 rue Jules Horowitz  BP 220 Grenoble CEDEX France
phone +33 4 76 88 23 48      fax +33 4 76 88 23 25


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