> > > I have done exactly that. I assume fcntl(), ioctl(),
> > > select() use errno
> > > even if used on a socket, while getsockopt(), setsockopt(),
> > socket(),
> > > connect(), getsockname(), send(), recv() use WSAGetLastError. Is
> > this
> > > list correct?
> >
> > I don't know enough about such things.
>
> The web page wasn't clear about that.
No, that list is not correct.
1) select() can *only* be used on a socket in Windows, and it puts its
error info in WSAGetLastError().
2) ioctl() should *not* be used on sockets. Instead, ioctlsocket()
shuold be used. ioctlsocket() puts its error info in WSAGetLastError().
(http://msdn.microsoft.com/library/psdk/winsock/ovrvw3_98mq.htm). (loads
fine in my Netscape, doesn't look all that good, but definitly readable)
3) fcntl() should *not* be used on sockets. ioctlsocket() again.
Generaelly, all functions dealing with sockets use WSAGetLastError().
And sockets and file descriptors are *not* necessarily interchangable on
Win32.
Note - this is Win32, *not* cygwin. Cygwin maps to errno, AFAIK.
//Magnus