http://bugs.winehq.org/show_bug.cgi?id=11621
--- Comment #17 from Kenneth Robinette support@securenetterm.com 2010-01-15 09:59:00 --- (In reply to comment #16)
I dont know if its a behavior of wine+linux or just linux. On Windows, if you send SIOCATMARK per ioctl it returns 1, which seems to mean "urgent data in the buffer" On Wine+Linux it returns 0 for "normal data" The best way to fix that issue is to fix it in Wine. That behavior disturbs function select_result in Putty's file ./windows/winnet.c
I already added a testcase, its the test "expected a non-zero value" in function test_ioctlsocket in file http://source.winehq.org/source//dlls/ws2_32/tests/sock.c actually line 2480
I am not sure that this is all that is going on. Our NetTerm product DOES NOT send a SIOCATMARK, yet the behavior is much like Putty's. That is, it connects to the host ok, then about 2-3 seconds after the connect, it freezes.
Note that it IS NOT a the same place everytime. That is, if I run NetTerm without a script, I cannot type fast enough to enter my userid at the Login: prompt before the application locks up. However if I use a script, it logs in and gets to the command line then locks up.
It appears that some type of timer is involved.
The really strange thing is our SNetTerm product is not affected by the bug at all. It does a telnet connect and everything works ok. The same is true for the Microsoft telnet.exe program.