Mike Kaplinskiy mike.kaplinskiy at
Mon Sep 7 09:13:47 CDT 2009

On Mon, Sep 7, 2009 at 2:45 AM, Nicholas LaRoche<nlaroche at> wrote:
> I ran into a bug last week regarding the lack of
> Are there any outstanding issues preventing it's implementation?
> Perhaps if anyone has worked in this area, are there any things I should
> look out for when trying to implement it? At first glance it looks like
> returning an arbitrary pointer may prove tricky since wine likes to relocate
> DLLs to unpredictable addresses at runtime. (i.e. kernel32.dll is not
> predictably mapped to a single address as with Windows XP; turning off ASR
> for the current shell has no effect)
> -Nick

There is nothing particularly hard about implementing it.
SIO_GET_EXTENSION_FUNCTION_POINTER is microsoft's special "winsock
extensions"; it is a way to call functions like AcceptEx,
GetAcceptExSockaddrs, ConnectEx, DisconnectEx, and TransmitFile. Each
of these functions has its own guid which you pass to wsaioctl to get
a pointer to it (look at ws2_32 acceptex tests). It doesn't matter
what the memory maps to, it's simply that they are not implemented.

For AcceptEx & GetAcceptExSockaddrs, there is a patch in the mailing
list that implemented them, but Alexandre rejected the patch.


More information about the wine-devel mailing list