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

[PATCH] Re: [corinna-cygwin@cygwin.com: Re: ENOTSOCK errors withcygwin dll 1.3.21 and 1.3.22]



On Mon, 26 May 2003, Corinna Vinschen wrote:

> Ouch!  That's the implementation of sock_event::load().  It uses a bunch
> of functions which are only available in WinSock2.
>
> I've checked in a patch to fhandler_socket::connect() and
> fhandler_socket::accept()).  Could you test it please?  Basically it's
> just checking for WinSock2 availability before calling sock_event::load()
> and sock_event::wait().
>

Corinna,

may i suggest the attached patch to solve this issue. Instead of checking
winsock2_active at 3 different locations i would move this into
sock_event::load. If winsock2 is not active or something with the event
select will fail continue in non interruptible mode.

Thomas

2003-05-27  Thomas Pfaff  <tpfaff@gmx.net>

	* fhandler_socket.cc (sock_event::~sock_event): New method.
	(sock_event::load): Change to void. Check if winsock2 is available.
	(socke_event::wait): Return 0 if interruptible mode is not available.
	(fhandler_socket::connect): Remove checks for winsock2 availability.
	(fhandler_socket::accept): Ditto.

Attachment: fhandler_socket.patch
Description: Text document


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