This is the mail archive of the cygwin@cygwin.com 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]

1.3.14-1: poll and accept bug/incorrect behavior



Hi All,

I am porting application from Unix to Cygwin. The application works fine
on SunOS, IRIX, Linux and native win32. But it's failed to work under
cygwin. The problem is poll implementation. In our the code we have a
part, which calling the poll before accept as it have to check for several
sockets at the same time.

As I can see in the winsup/cygwin/poll.cc:94-97

 if (!sock)
      fds[i].revents |= POLLIN;
 else
       switch (sock->recvfrom (peek, sizeof (peek), MSG_PEEK,  NULL, NULL))

in case of a socket, poll only checks for reading, but not for incoming
connection, while peek_socket from winsup/cygwin/select.cc:1150 does it
correctly.

I hope it's correct mailing list.

	Tigran.

________________________________________________________________________
Tigran Mkrtchyan                               DESY, IT,
tigran@mail.desy.de                            Notkestrasse 85,
Tel: + 49 40 89983946                          Hamburg 22607,
Fax: + 49 40 89984429                          Germany.

Attachment: cygcheck.out
Description: Text document

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

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