Hello Martin.
I tested your new series of patches with aol7 and I get a crash. Attached is the output of aol7 with the segfault caused by the last series of patches.
The wine debugger comes up and says " Unhandled exception: page fault on read access to 0x00000000 in 32bit code...
FILE_GetUnixHandleType+0x4c [file.c: 346] in libntdll.dll.so 346 if (((access & GENERIC_READ) && (*flags & FD_FLAG_RECV_SHUTDOWN) ) ||"
I've been working on trying to figure out why aol7 doesn't work under wine for a few weeks, but I was using the old code up until now. Actually, with the current wine tree, you can launch aol and login, but you can't get any web content or your buddy list. I think that both of these operations go through aol's web proxies and require a successful handshake with the proxy to succeed.
Getting aol to run under wine is a major priority for us here at Lindows because of 1.) the sheer size of the installed base of aol users, which is in the tens of millions, and 2.) the fact that for people who rely on aol for internet access, linux is basically useless.
Basically, what I know is that aol7 uses asynchronous sockets, but doesn't seem to use overlapped io, unless you're on a modem. When aol is trying to connect to it's web proxy it only sends one packet out when running under wine, and then after a while gets an ACK packet in response from the proxy. The one packet that gets sent is completely identical to the one sent under windows. Under windows, it actually sends out three packets in rapid succession, and then gets a response from the proxy. The packets sent are using the AIM protocol and can be examined using ethereal under windows and under linux. The handshake between the aol client and the proxy is as follows:
client -> AIM packet, family: 0x5472 client -> AIM packet, family: 0x5472 client -> AIM packet, family: 0x7963 proxy -> AIM packet, family: 0x7963
I looked at the return code from ws2_32.send and it claims that the requested number of bytes were sent successfully. Also, there are no obvious errors around the time that the handshake packets are sent. I can send the output of +winsock once I get this new seg fault resolved.
I have to thank you for the amazing work you're doing on sockets and overlapped IO, and for any help you would be so generous as to offer me.
Thanks michael
On Tuesday 23 April 2002 01:39 pm, Martin Wilck wrote:
Hi,
I will now start to submit a new series of patches for Winsock2-related issues. Most of it is for overlapped IO, but there are some other issues, too.
I have done a fair bit of testing with 16 and 32 bit network-oriented Windows apps, and found no regressions (well some apps wouldn't install or run with either the CVS version or my patched version of wine).