RFC - ws2_32/socket.c: SIO_KEEPALIVE_VALS vs TCP_KEEPIDLE/TCP_KEEPINTVL
Juan Lang
juan.lang at gmail.com
Tue Aug 30 10:38:56 CDT 2011
Hi Bruno,
> The SIO_KEEPALIVE_VALS message on windows takes parameters as
> miliseconds, on some other systems there are the equivalent
> TCP_KEEPIDLE/TCP_KEEPINTVL which takes the parameters as seconds. To
> solve this there is a division by 1000 on wine source code but the
> problem is that values < 1000 become 0 making the setsockopt function
> return error.
>
> Is it reasonable to do a check to see if the result of the division is
> zero and then set the variable to one so we can get closer to the
> windows implementation and not fail the setsockopt function? It will
Yes, it's reasonable. I think API-level compatibility is generally
more important to appilcations than timing-level compatibility.
I.o.w. function(args) -> result should be invariant across Windows and
Wine. The time required to before function(args) yields result is
oftentimes not guaranteed in Windows, so a little fuzziness here is
often okay.
--Juan
More information about the wine-devel
mailing list