On Windows, it looks like using the C type socklen_t for getsockopt() (instead
of int) is fine, it was already used in socket.getsockopt().
else if (timeout == 0) {
socklen_t res_size = sizeof res;
if (!getsockopt(s->sock_fd, SOL_SOCKET, SO_ERROR,
- (char*)&res, &res_size)) {
+ (void *)&res, &res_size)) {
if (res == EISCONN)
res = 0;
err = res;
return NULL;
if (res != 0) {
#ifdef MS_WINDOWS
- /* getsockopt also clears WSAGetLastError,
- so reset it back. */
WSASetLastError(res);
#else
errno = res;