Hello,

Trying to get Sametime Coworker (a Lotus IM application) running again.
It
worked well with wine up to
wine release 991031, when it looks like some major winsock changes went
in. Still works
with 990923 but with version 991031 and later versions I get a
connection refused and then
the application hangs, although netstat -a shows an established socket.
After poking around the source code for a while and haven't been able to
come up
with a solution (not deep in sockets skill), so thought I'd throw some
data over the wall to the experts. 

Thanks,
Eric

After the connection refused the full strace just shows a polling loop:

write(5, "\0\0\0\0", 4)                 = 4
rt_sigprocmask(0x1, 0xbffff570, 0, 0x8, 0x1) = 0
poll(0x805e808, 0x5, 0xffffffff, 0x4015d520, 0x805e808)
= 1
rt_sigprocmask(0, 0xbffff570, 0, 0x8, 0) = 0
socketcall(0x11, 0xbffff474)            = 4
write(5, "\0\0\0\0", 4)                 = 4
rt_sigprocmask(0x1, 0xbffff570, 0, 0x8, 0x1) = 0
poll(0x805e808, 0x5, 0xffffffff, 0x4015d520, 0x805e808)
= 1
rt_sigprocmask(0, 0xbffff570, 0, 0x8, 0) = 0
socketcall(0x11, 0xbffff474)            = 4
write(5, "\0\0\0\0", 4)                 = 4


Using wine version 20000430 here is a network strace and corresponding
wine debugmsg.

connect(9, {sun_family=AF_UNIX, sun_path="/var/run/.nscd_socket"}, 110)
= -1 ECONNREFUSED (Connection refused)
socketpair(PF_UNIX, SOCK_STREAM, , 0, [10, 11]) = 0
socketpair(PF_UNIX, SOCK_STREAM, , 0, [12, 13]) = 0
socketpair(PF_UNIX, SOCK_STREAM, , 0, [20, 21]) = 0
socket(PF_INET, SOCK_STREAM, IPPROTO_IP) = 24

trace:winsock:WSOCK32_LibMain 0x40cc0000 0x1 0x1
trace:winsock:WSAStartup16 verReq=101
trace:winsock:WSAStartup16 succeeded
trace:winsock:WSOCK32_LibMain 0x40cc0000 0x2 (nil)
trace:winsock:WSAStartup16 verReq=101
trace:winsock:WSAStartup16 succeeded
trace:winsock:WSOCK32_socket (4044f8fc): af=2 type=1 protocol=0
trace:winsock:WSOCK32_socket    created 0104
trace:winsock:WSOCK32_ioctlsocket (4044f8fc): socket 0104, cmd 8004667e,
ptr 40ad6aac
trace:winsock:WSOCK32_setsockopt (4044f8fc): socket 0104, lev 65535, opt
8, ptr 40ad6ac8, len 4
trace:winsock:WSOCK32_connect (4044f8fc): socket 0104, ptr 40ad6a98,
length 16
trace:winsock:WSAAsyncSelect (4044f8fc): 0104, hWnd 0450, uMsg 00000500,
event 00000033
trace:winsock:WSAEventSelect (4044f8fc): 00000104, hEvent 00000108,
event 01000033
trace:winsock:WSAIsBlocking
trace:winsock:WINSOCK_DoAsyncEvent socket 00000104, event 00000108
trace:winsock:WINSOCK_DoAsyncEvent post: event bit 1, error 0
trace:winsock:WINSOCK_DoAsyncEvent post: event bit 4, error 0
trace:winsock:WSAIsBlocking
trace:winsock:WSAIsBlocking
trace:winsock:WINSOCK_DoAsyncEvent socket 00000104, event 00000108
trace:winsock:WINSOCK_DoAsyncEvent post: event bit 0, error 0
trace:winsock:WSAIsBlocking
trace:winsock:WSOCK32_recv (4044f8fc): socket 0104, buf 41555c9c, len 5,
flags 0
trace:winsock:WSOCK32_recv  -> 5 bytes
trace:winsock:WINSOCK_DoAsyncEvent socket 00000104, event 00000108
trace:winsock:WINSOCK_DoAsyncEvent post: event bit 0, error 0
trace:winsock:WSAIsBlocking
trace:winsock:WSOCK32_recv (4044f8fc): socket 0104, buf 41555c9c, len 4,
flags 0
trace:winsock:WSOCK32_recv  -> 4 bytes
trace:winsock:WSAAsyncSelect (4044f8fc): 0104, hWnd 0450, uMsg 00000500,
event 00000023
trace:winsock:WSAEventSelect (4044f8fc): 00000104, hEvent 0000004c,
event 01000023
trace:winsock:WINSOCK_DoAsyncEvent socket 00000104, event 00000108
trace:winsock:WINSOCK_DoAsyncEvent orphaned event, self-destructing
trace:winsock:WSAAsyncSelect (4044f8fc): 0104, hWnd 0450, uMsg 00000500,
event 00000023
trace:winsock:WSAEventSelect (4044f8fc): 00000104, hEvent 00000050,
event 01000023
trace:winsock:WINSOCK_DoAsyncEvent socket 00000104, event 0000004c
trace:winsock:WINSOCK_DoAsyncEvent orphaned event, self-destructing
trace:winsock:WSAAsyncSelect (4044f8fc): 0104, hWnd 0450, uMsg 00000500,
event 00000023
trace:winsock:WSAEventSelect (4044f8fc): 00000104, hEvent 0000004c,
event 01000023
trace:winsock:WINSOCK_DoAsyncEvent socket 00000104, event 00000050

Reply via email to