http://bugs.winehq.org/show_bug.cgi?id=19397
--- Comment #86 from wolfgang.schwotzer@gmx.net 2010-08-26 15:27:51 --- Status update: - The error is still reproducible on Polar ProTrainer V5.40.171 - The data transmition in Polar Pro Trainer has type=SOCK_STREAM. It works like this: - WS2_sendto some bytes - WS2_recvfrom some bytes - 5-7 times: WS2_sendto zero bytes ... - WS2_sendto some bytes - WS2_recvfrom some bytes - 5-7 times: WS2_sendto zero bytes
- The errno ENOTCONN (107) is created in the Linux IrDA stack in net/irda/irttp.c, function irttp_data_request: http://lxr.linux.no/linux+v2.6.35/net/irda/irttp.c#L590 - As already mentioned above (See comment #79) a kernel log entry is written when buffer size is zero: ....irttp_data_request: No data, or not connected - The check for skb->len == 0 is already part of the Linux kernel since IrDA stack has been included in linux-2.2.0 (26-Jan-1999). - The Windows/Linux AF_INET stack returns 0 when sending a buffer with size 0 (Tested on all 32/64bit Windows Versions, Linux 2.6.32) - The Windows AF_IRDA stack returns 0 when sending a buffer with size 0 (Tested on Windows XP)
Next steps: - I've posted a message to the Linux IrDA newsgroup to evtl. get more information about the Linux IrDA stack, waiting for feedback: http://thread.gmane.org/gmane.linux.irda.general/1643 - I will write a wine test for AF_IRDA to get the current behavior on all Windows versions