The forum

winsock error in PlayOnMac but not on Linux

winsock: wsaErrno errno 22, (Invalid argument).

Author Replies
PlayPal Wednesday 11 May 2016 at 21:31
PlayPalAnonymous

Bonjour!

I'm fairly new to POL and wrote some scripts successfully, but now I'm stuck on a error I don't understand.

System: OSX Mavericks 10.9.5, Wine 1.7.55, 1.81, 1.9.4 - none work

Program: AION (NCLauncher.exe)

What works: AION itself runs just fine. Also the installation process is working like a charm.

Problem: NCLauncher.exe fails because it cannot connect to the update server, so launching AION only works when directly invoking POL_Wine aion.bin with parameters. On Linux the NCLauncher.exe works perfectly fine.

I don't see any difference in the wine implementation for Mac so I guess it must be a problem specific to Mac?

I'm grateful for any help. If requested I can deliver any kind of debug output from Linux (Ubuntu 14.04) and Mac.

PlayPal

PlayOnMac +winsock:

PlayOnMac: /Users/muc/Library/PlayOnMac/wineprefix/AION/drive_c/AION > export WINEDEBUG=+winsock,+wininet,+mswsock,+loaddll
PlayOnMac: /Users/muc/Library/PlayOnMac/wineprefix/AION/drive_c/AION > POL_Wine NCLauncher.exe /LauncherID:GameForge /CompanyID:11 /GameID:AION-LIVE /LUpdateAddr:update.aion.gfsrv.net
[POL_Wine] Message: Running wine- NCLauncher.exe /LauncherID:GameForge /CompanyID:11 /GameID:AION-LIVE /LUpdateAddr:update.aion.gfsrv.net (Working directory : /Users/muc/Library/PlayOnMac/wineprefix/AION/drive_c/AION)
trace:loaddll:load_builtin_dll Loaded L"KERNEL32.dll" at 0x7b810000: builtin
trace:loaddll:load_builtin_dll Loaded L"KERNEL32.dll" at 0x7b810000: builtin
trace:loaddll:load_builtin_dll Loaded L"C:\\windows\\system32\\wineboot.exe" at 0x403b0000: builtin
trace:loaddll:load_builtin_dll Loaded L"C:\\windows\\system32\\advapi32.dll" at 0x41a90000: builtin
fixme:winediag:start_process Wine Staging 1.8 is a testing version containing experimental patches.
fixme:winediag:start_process Please mention your exact version when filing bug reports on winehq.org.
trace:loaddll:load_builtin_dll Loaded L"C:\\windows\\system32\\gdi32.dll" at 0x41db0000: builtin
trace:loaddll:load_builtin_dll Loaded L"C:\\windows\\system32\\version.dll" at 0x41f80000: builtin
trace:loaddll:load_builtin_dll Loaded L"C:\\windows\\system32\\user32.dll" at 0x41bd0000: builtin
trace:loaddll:load_builtin_dll Loaded L"C:\\windows\\system32\\shlwapi.dll" at 0x41b30000: builtin
trace:loaddll:load_builtin_dll Loaded L"C:\\windows\\system32\\imm32.dll" at 0x41fa0000: builtin
trace:loaddll:load_builtin_dll Loaded L"KERNEL32.dll" at 0x7b810000: builtin
trace:loaddll:load_builtin_dll Loaded L"KERNEL32.dll" at 0x7b810000: builtin
trace:loaddll:load_builtin_dll Loaded L"C:\\windows\\system32\\services.exe" at 0x403b0000: builtin
trace:loaddll:load_builtin_dll Loaded L"C:\\windows\\system32\\advapi32.dll" at 0x426c0000: builtin
trace:loaddll:load_builtin_dll Loaded L"C:\\windows\\system32\\rpcrt4.dll" at 0x42610000: builtin
trace:loaddll:load_builtin_dll Loaded L"C:\\windows\\system32\\userenv.dll" at 0x403f0000: builtin
fixme:ntdll:__syscall_NtCreateNamedPipeFile Message mode not supported, falling back to byte mode.
trace:loaddll:load_builtin_dll Loaded L"KERNEL32.dll" at 0x7b810000: builtin
trace:loaddll:load_builtin_dll Loaded L"C:\\windows\\system32\\winedevice.exe" at 0x403b0000: builtin
trace:loaddll:load_builtin_dll Loaded L"C:\\windows\\system32\\advapi32.dll" at 0x42510000: builtin
trace:loaddll:load_builtin_dll Loaded L"C:\\windows\\system32\\ntoskrnl.exe" at 0x42090000: builtin
trace:loaddll:load_builtin_dll Loaded L"C:\\windows\\system32\\rpcrt4.dll" at 0x425a0000: builtin
fixme:ntdll:__syscall_NtCreateNamedPipeFile Message mode not supported, falling back to byte mode.
trace:loaddll:load_builtin_dll Loaded L"C:\\windows\\system32\\mountmgr.sys" at 0x403c0000: builtin
trace:loaddll:load_builtin_dll Loaded L"KERNEL32.dll" at 0x7b810000: builtin
trace:loaddll:load_builtin_dll Loaded L"C:\\windows\\system32\\plugplay.exe" at 0x403b0000: builtin
trace:loaddll:load_builtin_dll Loaded L"C:\\windows\\system32\\advapi32.dll" at 0x41d10000: builtin
trace:loaddll:load_builtin_dll Loaded L"C:\\windows\\system32\\rpcrt4.dll" at 0x41da0000: builtin
fixme:ntdll:__syscall_NtCreateNamedPipeFile Message mode not supported, falling back to byte mode.
trace:loaddll:load_builtin_dll Loaded L"C:\\windows\\system32\\shell32.dll" at 0x43010000: builtin
trace:loaddll:load_builtin_dll Loaded L"C:\\windows\\system32\\rpcrt4.dll" at 0x434e0000: builtin
trace:loaddll:load_builtin_dll Loaded L"C:\\windows\\system32\\ole32.dll" at 0x43330000: builtin
trace:loaddll:load_native_dll Loaded L"C:\\AION\\NCLauncher.exe" at 0x400000: native
trace:loaddll:load_builtin_dll Loaded L"C:\\windows\\system32\\advapi32.dll" at 0x43350000: builtin
trace:loaddll:load_builtin_dll Loaded L"C:\\windows\\system32\\gdi32.dll" at 0x431e0000: builtin
trace:loaddll:load_builtin_dll Loaded L"C:\\windows\\system32\\version.dll" at 0x41ad0000: builtin
trace:loaddll:load_builtin_dll Loaded L"C:\\windows\\system32\\user32.dll" at 0x43010000: builtin
trace:loaddll:load_builtin_dll Loaded L"C:\\windows\\system32\\shlwapi.dll" at 0x43710000: builtin
trace:loaddll:load_builtin_dll Loaded L"C:\\windows\\system32\\shell32.dll" at 0x433f0000: builtin
trace:loaddll:load_builtin_dll Loaded L"C:\\windows\\system32\\rpcrt4.dll" at 0x43970000: builtin
trace:loaddll:load_builtin_dll Loaded L"C:\\windows\\system32\\ole32.dll" at 0x437b0000: builtin
trace:loaddll:load_builtin_dll Loaded L"C:\\windows\\system32\\oleaut32.dll" at 0x43a30000: builtin
trace:loaddll:load_builtin_dll Loaded L"C:\\windows\\system32\\ws2_32.dll" at 0x43bd0000: builtin
trace:loaddll:load_builtin_dll Loaded L"C:\\windows\\system32\\comctl32.dll" at 0x43c10000: builtin
trace:loaddll:load_builtin_dll Loaded L"C:\\windows\\system32\\wtsapi32.dll" at 0x403f0000: builtin
trace:loaddll:load_builtin_dll Loaded L"C:\\windows\\system32\\gdiplus.dll" at 0x43d90000: builtin
trace:loaddll:load_builtin_dll Loaded L"C:\\windows\\system32\\mpr.dll" at 0x43ef0000: builtin
trace:loaddll:load_builtin_dll Loaded L"C:\\windows\\system32\\wininet.dll" at 0x43e50000: builtin
trace:loaddll:load_builtin_dll Loaded L"C:\\windows\\system32\\iphlpapi.dll" at 0x43f20000: builtin
trace:loaddll:load_builtin_dll Loaded L"C:\\windows\\system32\\mswsock.dll" at 0x41ae0000: builtin
trace:loaddll:load_builtin_dll Loaded L"C:\\windows\\system32\\imm32.dll" at 0x43f50000: builtin
trace:winsock:DllMain 0x43bd0000 0x1 0x1
trace:loaddll:load_builtin_dll Loaded L"KERNEL32.dll" at 0x7b810000: builtin
trace:loaddll:load_builtin_dll Loaded L"C:\\windows\\system32\\explorer.exe" at 0x403b0000: builtin
trace:loaddll:load_builtin_dll Loaded L"C:\\windows\\system32\\advapi32.dll" at 0x426c0000: builtin
trace:loaddll:load_builtin_dll Loaded L"C:\\windows\\system32\\rpcrt4.dll" at 0x42610000: builtin
trace:loaddll:load_builtin_dll Loaded L"C:\\windows\\system32\\gdi32.dll" at 0x431e0000: builtin
trace:loaddll:load_builtin_dll Loaded L"C:\\windows\\system32\\version.dll" at 0x42760000: builtin
trace:loaddll:load_builtin_dll Loaded L"C:\\windows\\system32\\user32.dll" at 0x43010000: builtin
trace:loaddll:load_builtin_dll Loaded L"C:\\windows\\system32\\imm32.dll" at 0x42780000: builtin
trace:loaddll:load_builtin_dll Loaded L"C:\\windows\\system32\\winemac.drv" at 0x43350000: builtin
trace:loaddll:load_builtin_dll Loaded L"C:\\windows\\system32\\shlwapi.dll" at 0x49b40000: builtin
trace:loaddll:load_builtin_dll Loaded L"C:\\windows\\system32\\shell32.dll" at 0x49820000: builtin
trace:loaddll:load_builtin_dll Loaded L"C:\\windows\\system32\\ole32.dll" at 0x49bf0000: builtin
fixme:ntdll:__syscall_NtCreateNamedPipeFile Message mode not supported, falling back to byte mode.
trace:loaddll:load_builtin_dll Loaded L"C:\\windows\\system32\\oleaut32.dll" at 0x49f30000: builtin
trace:loaddll:load_builtin_dll Loaded L"C:\\windows\\system32\\actxprxy.dll" at 0x49db0000: builtin
trace:loaddll:load_builtin_dll Loaded L"C:\\windows\\system32\\winemac.drv" at 0x43f80000: builtin
trace:loaddll:load_builtin_dll Loaded L"C:\\windows\\system32\\uxtheme.dll" at 0x445c0000: builtin
trace:wininet:DllMain 0x43e50000,1,0x1
trace:loaddll:load_builtin_dll Loaded L"C:\\windows\\system32\\usp10.dll" at 0x44790000: builtin
trace:loaddll:load_builtin_dll Loaded L"C:\\windows\\system32\\riched20.dll" at 0x7ac10000: builtin
trace:winsock:WSAStartup verReq=202
trace:winsock:WSAStartup succeeded starts: 1
trace:winsock:DllMain 0x43bd0000 0x2 0x0
trace:wininet:DllMain 0x43e50000,2,0x0
fixme:ver:GetCurrentPackageId (0x8bf638 0x0): stub
trace:winsock:WS_getaddrinfo "update.aion.gfsrv.net", "0" 0x32e854 -> 0x32e89c 0
trace:winsock:WS_inet_ntop family 2, addr (0x15c204), buffer (0x32e69c), len 16
trace:winsock:WS_getaddrinfo => 0x15c2e0, flags 0, family 2, type 1, protocol 6, len 16, name (null), addr { family AF_INET, address 79.110.83.91, port 0 }
trace:winsock:WS_inet_ntop family 2, addr (0x15c204), buffer (0x32e6fc), len 16
trace:winsock:WS_getnameinfo { family AF_INET, address 79.110.83.91, port 0 } 16 0x32e8b8 64 0x0 0 2
trace:winsock:WSASocketA af=2 type=1 protocol=6 protocol_info=0x0 group=0 flags=0x1
trace:winsock:WSASocketW af=2 type=1 protocol=6 protocol_info=0x0 group=0 flags=0x1
trace:winsock:WSASocketW        created 0094
trace:winsock:WSAIoctl 0094, _IOW('f', 126, 4), 0x32e7f0, 4, 0x32e7f0, 4, 0x32e7c0, 0x0, 0x0
trace:winsock:WSAIoctl -> FIONBIO (1)
trace:winsock:WS_setsockopt (socket 0094, level SOL_SOCKET, name SO_RCVBUF, optval 0x32e7f0 (0), optlen 4)
warn:winsock:WS_setsockopt SO_RCVBF for 0 bytes is too small: ignored
trace:winsock:WS_setsockopt (socket 0094, level SOL_SOCKET, name SO_SNDBUF, optval 0x32e7f0 (0), optlen 4)
warn:winsock:wsaErrno errno 22, (Invalid argument).
trace:winsock:WS_setsockopt Setting socket error, 10022
warn:winsock:wsaErrno errno 22, (Invalid argument).
trace:winsock:WS_closesocket (socket 0094) -> 0
trace:wininet:DllMain 0x43e50000,3,0x0
trace:winsock:DllMain 0x43bd0000 0x3 0x0
trace:winsock:WSACleanup pending cleanups: 0
trace:wininet:DllMain 0x43e50000,0,0x1
trace:winsock:DllMain 0x43bd0000 0x0 0x1
[POL_Wine] Message: Wine return: 0

PlayOnLinux: +winsock

trace:winsock:WS_getaddrinfo "update.aion.gfsrv.net", "0" 0x33ec5c -> 0x33eca4 0
trace:winsock:WS_getaddrinfo => 0x2051a0, flags 0, family 2, type 1, protocol 6, len 16, name (null), addr { family AF_INET, address 79.110.83.91, port 0 }
trace:winsock:WS_getnameinfo { family AF_INET, address 79.110.83.91, port 0 } 16 0x33ecc0 64 (nil) 0 2
trace:winsock:WSASocketA af=2 type=1 protocol=6 protocol_info=(nil) group=0 flags=0x1
trace:winsock:WSASocketW af=2 type=1 protocol=6 protocol_info=(nil) group=0 flags=0x1
trace:winsock:WSASocketW        created 008c
trace:winsock:WSAIoctl 008c, _IOW('f', 126, 4), 0x33ebf8, 4, 0x33ebf8, 4, 0x33ebbc, (nil), (nil)
trace:winsock:WSAIoctl -> FIONBIO (1)
trace:winsock:WS_setsockopt socket: 008c, level 0xffff, name 0x1002, ptr 0x33ebf8, len 4
warn:winsock:WS_setsockopt SO_RCVBF for 0 bytes is too small: ignored
trace:winsock:WS_setsockopt socket: 008c, level 0xffff, name 0x1001, ptr 0x33ebf8, len 4
trace:winsock:WS_setsockopt socket: 008c, level 0xffff, name 0x4, ptr 0x33ebf8, len 4
trace:winsock:WS_setsockopt socket: 008c, level 0x6, name 0x1, ptr 0x33ec08, len 4
trace:winsock:WSAIoctl 008c, _WSAIORW(IOC_WS2, 6), 0x33ebe8, 16, 0x33ebd0, 4, 0x33ebd4, (nil), (nil)
trace:winsock:WS_getaddrinfo "0.0.0.0", "0" 0x33ebd8 -> 0x33ebd4 0
trace:winsock:WS_getaddrinfo => 0x157258, flags 0x5, family 2, type 1, protocol 6, len 16, name (null), addr { family AF_INET, address 0.0.0.0, port 0 }
trace:winsock:WS_bind socket 008c, ptr 0x15c600 { family AF_INET, address 0.0.0.0, port 0 }, length 16
trace:winsock:WS_getaddrinfo "79.110.83.91", "27500" 0x33ebd8 -> 0x33ebd4 0
trace:winsock:WS_getaddrinfo => 0x157258, flags 0x4, family 2, type 1, protocol 6, len 16, name (null), addr { family AF_INET, address 79.110.83.91, port 27500 }
trace:winsock:WS2_ConnectEx socket 008c, ptr 0x15c600 { family AF_INET, address 79.110.83.91, port 27500 }, length 16, sendptr (nil), len 0, ov 0x1deae4

 

MTres19 Wednesday 18 May 2016 at 0:50
MTres19Anonymous

Unfortunately, I probably can't help with the root of the problem; that's more likely a Wine bug than a problem in your script.

That  being said, POL_Shortcut allows for adding arguments, so there could be a workaround. See http://wiki.playonlinux.com/index.php/Scripting_-_Chapter_11:_List_of_Functions#POL_Shortcut_.284.0.2B.29

You could do something like this to get it working on Mac, maybe:

[ "$POL_OS" = "Linux" ] && POL_Shortcut "NCLauncher.exe" "$TITLE" || POL_Shortcut "aion.bin" "$TITLE" "" "<your parameters here>"
PlayPal Friday 10 June 2016 at 19:25
PlayPalAnonymous

Hi MTres19,

thank you for your input!

Unfortunately that does not help very much since the launcher is needed to get the latest patches of the game. Besides, when I tried creating a Shortcut to aion.bin manually (not in the script) PlayOnMac would not let me do it, because it expects an .exe file.

So I guess as long as the winsock issue persists with wine and Mac, I cannot provide a script for Mac to play AION.

PlayPal

This site allows content generated by members, and we promptly remove any content that infringes copyright according to our Terms of Service. To report copyright infringement, please send a notice to dmcayonlinux.com