fdopen() and winsock

John R Hanson JRSON@NetZero.Net
Mon Aug 23 00:31:00 GMT 1999

Actually They are regular file handles, just like any other.
There is a bug in all 9x/kernel32 libc/msv/crtdll interface
implementations GetFileType() returns TYPE_UNKNOWN for handles to
sockets. Since this is AFAIK the only unknown type there is, you know you have
a socket handle;-)
there is a fix in the more recent perl distrib's
that you can use as a general solution.
-loldnames -lperlcrt -lmsvcrt will get you TYPE_CHAR
for socket handles. that are put into an fd with _open_osfhandle()
also fixes several other nasty bugs in the MS libcXXX.

On Sun, 22 Aug 1999 17:53:18 CEST, you wrote:

>>Ah, as far as I know, one of the big limitations of winsock is that
>>the SOCKET type is *not* equivalent to file descriptor unlike that
>>using BSD or POSIX sockets. That's one of the major reasons for using
>>a separate data type, SOCKET, as opposed to int, typical type of a
>>file descriptor. This implies that you cannot mix SOCKETs and stdio,
>>sorry. This is the case when you use -mno-cygwin.
>socket handles are NOT file handles only under win9x. Under WNT they ARE 
>file handles.
>Get Your Private, Free Email at http://www.hotmail.com

NetZero - We believe in a FREE Internet.  Shouldn't you?
Get your FREE Internet Access and Email at

Want to unsubscribe from this list?
Send a message to cygwin-unsubscribe@sourceware.cygnus.com

More information about the Cygwin mailing list