Improvement of WSAIoctl

Dan Kegel dank at
Tue Mar 27 18:48:13 CDT 2007

Hi Axel,
> some days ago, I tried to run the retail management software, we are developing in our
> company now for over 15 years, with Wine on Linux. Unfortunatly it didn't work.
> The reason was not our product itself, but the ODBC driver form MS for MS-SQL-Server.
> It uses a command for WSAIoctl in ws2_32.dll, wich isn't implemented in Wine yet.
> Because of the lack of this command, the driver fails and our software does not work.
> With other databases it works great, but unfortunatly most of our customers prefer using
> MS-SQL-Server, so this piece of MS-Software is a must for us.

I'm thrilled you're doing this.  What's your software called?

> +   {
> +        /* FIXME: not fully implemented */
> +        BOOL value;
> +
> +        if (cbInBuffer < sizeof(struct tcp_keepalive) || !lpvInBuffer)
> +        {
> +            WSASetLastError(WSAEFAULT);
> +            return SOCKET_ERROR;
> +        }
> +
> +        value = ((struct tcp_keepalive *)lpvInBuffer)->onoff;
> +        return WS_setsockopt(s, WS_SOL_SOCKET, WS_SO_KEEPALIVE, (char *)&value, sizeof(BOOL));
> +   }

I think that looks great.  If your patch isn't accepted in the next
couple of days, consider adding a simple conformance test and resubmitting.

But you can't do this:

> + * Copyright (C) the Wine project

as there's no legal entity called "the Wine project".  You have
to use your company's name, I think.  (And be sure they've
granted permission.)  Or if you have the rights to what you
do in your spare time, your own name is fine.
- Dan

Wine for Windows ISVs:

More information about the wine-devel mailing list