bug in tcp/ip on windows?

Filip Konvička filip.konvicka.removethisantispamtoken at logis.cz
Wed Nov 23 16:40:53 CET 2005


> %*********************** error in OS module *********************
> %**
> %** Operating system error
> %**
> %** System call:  read
> %** Error number: 9
> %** Description:  Bad filedescriptor
> %** In statement: {<P/5 OS.read> 1336 1024 _<optimized> nil _<optimized>}
> %**
> %** Call Stack:
> %** procedure 'SockAndPipe,read' in file 
> "c:/cygwin/sources/mozart/share/lib/op/Open.oz", line 405, column 2, PC 
> = 19191028
> %** procedure 'SockAndPipe,read' in file 
> "c:/cygwin/sources/mozart/share/lib/op/Open.oz", line 405, column 2, PC 
> = 19190940
> %**--------------------------------------------------------------

P.S. I got the error also in other circumstances. My problem is that I 
have a Java-based client connecting through TCP/IP to my Oz server 
running on Windows. After several (non-concurrent) connections, the 
system starts giving this error, and eventually starts connecting well 
(for a while).

I was doing some googling and found a short discussion which talked 
about write() being used instead of send() when Unix sources are ported 
to Windows. I read somewhere that Mozart on Windows is compiled in 
Cygwin but not as a "Cygwin binary" (i.e. it does not depend on Cygwin 
DLLs). So I think that it should use send/recv instead of write/read, 
and I fear that this might not be the case. This would explain the 
strange behavior. Do you think that it could be the case?

(See 
http://groups.inetbot.com/showgrp/comp_pos_pms-windows_pprogrammer_ptools_pwinsock_s21.html)

Thanks,
Filip




More information about the mozart-hackers mailing list