https://bugs.winehq.org/show_bug.cgi?id=32328
--- Comment #24 from Anastasius Focht focht@gmx.net --- Hello folks,
today's commit series brought in the support:
http://source.winehq.org/git/wine.git/commitdiff/1239663fcb82dee80c94bd5d121... ("server: Implement socket-specific ioctl() routine.")
http://source.winehq.org/git/wine.git/commitdiff/315de61bb20a17862911c2e77df... ("server: Add socket-side support for the interface change notification object.")
http://source.winehq.org/git/wine.git/commitdiff/b121f27b72dbe80548c1f2cfd7a... ("server: Add blocked support for SIO_ADDRESS_LIST_CHANGE ioctl()." ("server: Implement the interface change notification object.")
http://source.winehq.org/git/wine.git/commitdiff/67c47e401ba7bc00b0b178588ff... ("server: Implement the interface change notification object.")
Thanks Erich!
Unfortunately the apps linked/mentioned here still don't work.
It's because those apps issue the ioctl on the non-blocking socket without overlapped parameters, expecting WSAEWOULDBLOCK (currently WSA_IO_PENDING is passed to caller in non-blocking case, regardless of overlapped args).
See also here: https://msdn.microsoft.com/en-us/library/windows/desktop/ms742282%28v=vs.85%...
--- quote --- It is assumed (although not required) that the Windows Sockets SPI client uses overlapped I/O to be notified of change by completion of IO_ADDRESS_LIST_CHANGE request.
Alternatively, if the SIO_ADDRESS_LIST_CHANGE IOCTL is issued on a nonblocking socket and without overlapped parameters (lpOverlapped and lpCompletionRoutine are set to NULL), it will complete immediately with error WSAEWOULDBLOCK. The Windows Sockets SPI client can then wait for address list change events through a call to WSPEventSelect or WSPAsyncSelect with the FD_ADDRESS_LIST_CHANGE bit set in the network event bitmask. --- quote ---
I've already tested a fix, taking this into account (makes all of them to work).
Do we want to keep this one open just waiting for the final fix, or create a new bug? We got all apps collected here...
Thanks for the work so far!
$ wine --version wine-1.7.36-28-ga679cae
Regards