https://bugs.winehq.org/show_bug.cgi?id=45749
Bug ID: 45749
Summary: Visual Studio 2017 Installer fails due to
node.js/libuv listen(named pipe) error
Product: Wine
Version: 3.14
Hardware: x86-64
OS: Linux
Status: UNCONFIRMED
Severity: normal
Priority: P2
Component: -unknown
Assignee: wine-bugs(a)winehq.org
Reporter: jimbo1qaz(a)gmail.com
Distribution: ---
Created attachment 62190
--> https://bugs.winehq.org/attachment.cgi?id=62190
Visual Studio Installer logs (mostly useless)
Running Kubuntu 18.04 64-bit. I created a 32-bit .wine32 prefix, installed
dotnet46 via winetricks, then the Build Tools for Visual Studio installer
(https://visualstudio.microsoft.com/downloads/#build-tools-for-visual-studio…
) (which shares the core with VS2017 installer. It's written in node.js and
involves multiple processes communicating via what the source describes as
"pipe"s).
The error is "Hub Controller process exited prematurely with exit code 1
(NodeUncaughtFatalException)."
Interestingly, the installer's source is user-readable and located in
WINEPREFIX / drive_c/Program Files/Microsoft Visual
Studio/Installer/resources/app/node_modules/microsoft-servicehub/host/. I was
able to edit the .js files to add control flow logging:
const fs = require('fs');
function logg(val, args){
fs.writeFileSync("C:\\"+process.hrtime()[1] + '_'+val, ""+args,
function(err) {});
}
Installer seems to be codenamed "microsoft-servicehub". Strangely, many of the
Installer files appear to test for Windows and/or *nix, despite VS being
Windows-only. It also references open-source VS Code, but I was unable to find
any hits when Googling for quoted strings.
----------
The error message "Hub Controller process exited prematurely with exit code" is
raised from within "drive_c/Program Files/Microsoft Visual
Studio/Installer/resources/app/node_modules/microsoft-servicehub/controllerConnection.js":
ControllerConnection.prototype.startController `var connectPromise` fails,
calling `function (err)` to spawn a process (which crashes).
ControllerConnection.prototype.onControllerProcessExited is responsible for
noticing the process has terminated, and raising the exception.
---------
The actual crash originates from "drive_c/Program Files/Microsoft Visual
Studio/Installer/resources/app/node_modules/microsoft-servicehub/host/HubController.js".
HubController.js is executed by several distinct processes, and `process.pid`
is the same within `function HubController()` and the global scope.
I systematically replaced all calls to `logger.error()` (info, etc.) to
`logg()` (since Logger.error() called within subprocess did not show up in
Visual Studio's debug logs). I get two sequentially numbered files, 1
millisecond apart:
"429988399_Successfully started server on pipe
5d74f51d8cc5d690c261c26d3e9e3408e060bd352875558b9320be9c213e0610"
"430873100_Terminating controller due to some unknown error: " with contents
"listen EINVAL
\\?\pipe\5d74f51d8cc5d690c261c26d3e9e3408e060bd352875558b9320be9c213e0610"
This error is thrown by `function retryStartServer`. `e.code` is EINVAL, while
the code only handles `e.code === ec.EADDRINUSE.code`.
Looking at
https://stackoverflow.com/questions/11040460/get-the-listen-einval-when-sta…
suggests:
> > EINVAL The socket is already connected.
> Make sure something isn't already listening on that port.
`man errno` suggests otherwise: > EINVAL Invalid argument (POSIX.1-2001).
Adding `|| e.code === ec.EINVAL.code` and commenting `process.platform ===
'win32' ||` sends the installer into an endless "kill and restart
HubController" loop, which isn't what we want.
Extra notes on control flow at
https://gist.github.com/jimbo1qaz/1c972422fd5c31706920b9be5c2a0f42#server
--------
The `EINVAL` error comes with a node.js stack trace:
https://gist.github.com/jimbo1qaz/1c972422fd5c31706920b9be5c2a0f42#file-net…
(The hexadecimal path originates from
https://gist.github.com/jimbo1qaz/1c972422fd5c31706920b9be5c2a0f42#determin…
)
https://github.com/nodejs/node/blob/68dff4a67b7222770f90fc5d9bdd884f8db4a24…
`const ex = new Error(`${syscall} ${code}${details}`);`
"listen EINVAL
\\?\pipe\5d74f51d8cc5d690c261c26d3e9e3408e060bd352875558b9320be9c213e0610"
I think the call which failed is `listen`, which returns EINVAL for some
reason.
------------
Comparing my stack trace with node.js source code (node.dll 8.9.3):
`Server.listen (net.js:1487:5)` =
https://github.com/nodejs/node/blob/v8.9.3/lib/net.js#L1487
- listenInCluster(server=this, address=pipeName, port=-1, addressType=-1,
backlog=backlog, fd=undefined, exclusive=options.exclusive);
`listenInCluster (net.js:1392:12)` =
https://github.com/nodejs/node/blob/v8.9.3/lib/net.js#L1392
- server._listen2(=address, =port, =addressType, =backlog, =fd);
Unpeeling layers of abstraction on top of Windows named pipes:
`Server.setupListenHandle [as _listen2] (net.js:1351:14)` =
https://github.com/nodejs/node/blob/v8.9.3/lib/net.js#L1351
(Bullet points are not in stack trace, but I assume they executed)
- `handle = new Pipe(PipeConstants.SERVER);`
https://github.com/nodejs/node/blob/v8.9.3/lib/net.js#L1267
- `const { Pipe } = process.binding('pipe_wrap');` which refers to C++ code
at https://github.com/nodejs/node/blob/v8.9.3/src/pipe_wrap.cc
- pipes are handled by https://github.com/libuv/libuv
- `var err = this._handle.listen(backlog || 511);` is the operation which fails
=
https://github.com/nodejs/node/blob/8a44289089a08b7b19fa3c4651b5f1f5d1edd71…
- Routes to https://github.com/nodejs/node/blob/v8.9.3/src/pipe_wrap.cc#L154
- which calls uv_listen(). `return uv_translate_sys_error(err);` and EINVAL is
located at https://github.com/libuv/libuv/blob/v1.x/src/win/error.c#L101 ...
There are 7 Win32 errors all mapping to UV_EINVAL==EINVAL, but only WSAEINVAL
can happen.
- uv_listen() either [assert(0) and sets err=ERROR_INVALID_PARAMETER] (I hope
not), calls uv_tcp_listen (I hope not)
- Most likely calls uv_pipe_listen() =
https://github.com/libuv/libuv/blob/1391a3d9d0996fcf1a116a9c6c58e8b1c730319…
- It has 4 return paths, only `if (!(handle->flags & UV_HANDLE_BOUND)) { return
WSAEINVAL;` is happening =
https://github.com/libuv/libuv/blob/1391a3d9d0996fcf1a116a9c6c58e8b1c730319…
- What initializes `handle->flags` without |=UV_HANDLE_BOUND?
ok i'm getting a headache
--
Do not reply to this email, post in Bugzilla using the
above URL to reply.
You are receiving this mail because:
You are watching all bug changes.
https://bugs.winehq.org/show_bug.cgi?id=45998
Bug ID: 45998
Summary: 64-bit FACEIT Anti-cheat client claims "Your system is
out of date, you are missing important Windows
updates!" (needs
'wintrust.CryptCATAdminAcquireContext2' stub)
Product: Wine
Version: 3.18
Hardware: x86-64
OS: Linux
Status: NEW
Severity: normal
Priority: P2
Component: wintrust
Assignee: wine-bugs(a)winehq.org
Reporter: focht(a)gmx.net
Distribution: ---
Hello folks,
as it says.
Download: https://anticheat-client.faceit.com/FACEITInstaller_64.exe
--- snip ---
$ pwd
/home/focht/.wine/drive_c/Program Files/FACEIT AC
$ WINEDEBUG=+seh,+relay wine ./faceitclient.exe >>log.txt 2>&1
...
002c:Call KERNEL32.LoadLibraryA(141215440 "wintrust.dll") ret=1400b1653
002c:Ret KERNEL32.LoadLibraryA() retval=7fd071b90000 ret=1400b1653
002c:Call KERNEL32.GetProcAddress(7fd071b90000,141215450
"CryptCATAdminAcquireContext2") ret=1400b1670
002c:Ret KERNEL32.GetProcAddress() retval=00000000 ret=1400b1670
002c:Call KERNEL32.FreeLibrary(7fd071b90000) ret=1400b167c
002c:Ret KERNEL32.FreeLibrary() retval=00000001 ret=1400b167c
002c:Call ntdll.RtlAllocateHeap(00010000,00000000,00000050) ret=1411adc3c
002c:Ret ntdll.RtlAllocateHeap() retval=000b09e0 ret=1411adc3c
002c:Call user32.MessageBoxA(00000000,000b09e0 "Your system is out of date, you
are missing important Windows updates!",00000000,00000010) ret=1400edd5d
...
--- snip ---
Microsoft Docs:
https://docs.microsoft.com/en-us/windows/desktop/api/mscat/nf-mscat-cryptca…
--- quote ---
The CryptCATAdminAcquireContext2 function acquires a handle to a catalog
administrator context for a given hash algorithm and hash policy.
You can use this handle in subsequent calls to the following functions:
CryptCATAdminAddCatalog
CryptCATAdminEnumCatalogFromHash
CryptCATAdminRemoveCatalog
This function has no associated import library. You must use the LoadLibrary
and GetProcAddress functions to dynamically link to Wintrust.dll.
Syntax
BOOL CryptCATAdminAcquireContext2(
HCATADMIN *phCatAdmin,
const GUID *pgSubsystem,
PCWSTR pwszHashAlgorithm,
PCCERT_STRONG_SIGN_PARA pStrongHashPolicy,
DWORD dwFlags
);
--- quote ---
It's Windows 8+ API.
With a FIXME stub that prints parameters, returning FALSE:
--- snip ---
...
0064:Call KERNEL32.LoadLibraryA(141215440 "wintrust.dll") ret=1400b1653
0064:Ret KERNEL32.LoadLibraryA() retval=7f9b71860000 ret=1400b1653
0064:Call KERNEL32.GetProcAddress(7f9b71860000,141215450
"CryptCATAdminAcquireContext2") ret=1400b1670
0064:Ret KERNEL32.GetProcAddress() retval=7f9b718680d0 ret=1400b1670
0064:Call KERNEL32.FreeLibrary(7f9b71860000) ret=1400b167c
0064:Ret KERNEL32.FreeLibrary() retval=00000001 ret=1400b167c
--- snip ---
I didn't see any call to the stub, so one might get away even with
auto-generated unimplemented stub.
The client executable has some anti-debug trickery and custom obfuscation
scheme. Crashes later due to other insufficiencies though.
$ sha1sum FACEITInstaller_64.exe
ed8f8c2f6ec2d113bed882faa9d8b8a7a3b56a3c FACEITInstaller_64.exe
$ du -sh FACEITInstaller_64.exe
85M FACEITInstaller_64.exe
$ wine --version
wine-3.18
Regards
--
Do not reply to this email, post in Bugzilla using the
above URL to reply.
You are receiving this mail because:
You are watching all bug changes.
https://bugs.winehq.org/show_bug.cgi?id=43155
Bug ID: 43155
Summary: WarBR: (WarS game v5.5 p4) Crashes on login
"fixme:wmp:PersistStreamInit_Load
(0x1c1f58)->(0x1362090)"
Product: Wine
Version: 2.10
Hardware: x86-64
OS: Linux
Status: UNCONFIRMED
Severity: normal
Priority: P2
Component: -unknown
Assignee: wine-bugs(a)winehq.org
Reporter: rodrigodavy(a)gmail.com
Distribution: ---
In wine 2.9 I could login into the game using native wmvcore.dll
In wine 2.10 the game doesn't login with both the wine and the native dll
--
Do not reply to this email, post in Bugzilla using the
above URL to reply.
You are receiving this mail because:
You are watching all bug changes.
https://bugs.winehq.org/show_bug.cgi?id=50637
Bug ID: 50637
Summary: battle.net 2020-02-04 update graphical glitches
(browser acceleration must be disabled)
Product: Wine
Version: 6.1
Hardware: x86-64
OS: Linux
Status: UNCONFIRMED
Severity: normal
Priority: P2
Component: -unknown
Assignee: wine-bugs(a)winehq.org
Reporter: aerusso(a)aerusso.net
Distribution: ---
Running 6.1 wine-staging, I loaded battle.net perfectly fine, and then allowed
Battle.net to upgrade itself. It re-launched with a completely black window.
By right clicking on the tray icon, you can select the settings, and disable
"Use browser hardware acceleration". After re-launching, the new (imo ugly---a
completely irrelevant, off-topic comment for this bug report) Battle.net UI is
visible. It's almost completely functional---but not all re-draws of the
window seem to be captured, resulting in a much of the window being completely
black. Moving the window or highlighting buttons prompts a re-draw.
As a note: originally I didn't think to access the settings menu from the tray.
I was still able to start, e.g. Starcraft 2, by running SC2Switcher_x64.exe
directly. It plays perfectly fine.
Are other people experiencing this?
--
Do not reply to this email, post in Bugzilla using the
above URL to reply.
You are receiving this mail because:
You are watching all bug changes.
https://bugs.winehq.org/show_bug.cgi?id=50484
Bug ID: 50484
Summary: Far Manager 3 crashes when ShifÂt+EÂnter Execute in
separate window pressed
Product: Wine
Version: 5.0.3
Hardware: x86-64
OS: Linux
Status: UNCONFIRMED
Severity: normal
Priority: P2
Component: kernel32
Assignee: wine-bugs(a)winehq.org
Reporter: lanthruster(a)gmail.com
Distribution: ---
Far Manager 3 crashes when executing a file association.
1. Download and extract farmanager3
https://www.farmanager.com/download.php?l=en (zip archive)
2. Create a text file with no or arbitrary content test.txt
3. Select test.txt and press Shift + Enter
Wine will crash. That bug was there for years, including Wine 2.3 and earlier
releases.
--
Do not reply to this email, post in Bugzilla using the
above URL to reply.
You are receiving this mail because:
You are watching all bug changes.
https://bugs.winehq.org/show_bug.cgi?id=50285
Bug ID: 50285
Summary: File renamings involving symbolic links fail
Product: Wine-staging
Version: unspecified
Hardware: x86-64
OS: Linux
Status: UNCONFIRMED
Severity: normal
Priority: P2
Component: -unknown
Assignee: wine-bugs(a)winehq.org
Reporter: martin(a)martin.st
CC: erich.e.hoover(a)gmail.com, leslie_alistair(a)hotmail.com,
z.figura12(a)gmail.com
Distribution: ---
Created attachment 68842
--> https://bugs.winehq.org/attachment.cgi?id=68842
Sample for case 1
Two cases of file renamings involving symlinks fail:
Case 1: A regular file, named "regular", and a symlink named "symlink" pointing
at "regular". Rename "regular" to "symlink" (which should overwrite the
existing symlink). This should leave one single file, a regular file, named
"symlink". In practice, no rename happens (but no error is reported either).
Case 2: A symlink pointing at a missing file. Renaming the symlink with
MoveFileEx fails.
--
Do not reply to this email, post in Bugzilla using the
above URL to reply.
You are receiving this mail because:
You are watching all bug changes.
http://bugs.winehq.org/show_bug.cgi?id=22077
Summary: cspro 4.0 error in wine (1.1.40)
Product: Wine
Version: 1.1.40
Platform: x86
OS/Version: Linux
Status: UNCONFIRMED
Severity: normal
Priority: P2
Component: -unknown
AssignedTo: wine-bugs(a)winehq.org
ReportedBy: iip.umar.rifai(a)gmail.com
CC: iip.umar.rifai(a)gmail.com
Created an attachment (id=26903)
--> (http://bugs.winehq.org/attachment.cgi?id=26903)
screen show when hang
Cspro get hang when pressing key or mouse during popup selection (selcase
function in cspro), and also the icon on the tree look weird.
How to test:
1. download cspro here http://www.census.gov/ipc/www/cspro/
2. Run Cspro 4.0 program
3. Open file/application, goto examples/capi
4. BUG 1. you will see that the icon in the left are black. Different when you
see it in native windows.
5. BUG-2. now, run the program, from the menu file->run. Just clik ok on every
prompt or enter everything. On roster screen, enter only one line, and leave
blank in the second row, to directly end the data entry, you will see yes/no
popup, just klik or press up/down arrow, then cspro will hang.
Screenshot can be see here
http://sites.google.com/site/iipumarrifai2/wine-cspro-error1.jpg
I think this the only one problem I found in cspro, if this can be fix than it
will be gold in wine. And the problem is the same problem since wine Beta and
cspro 3.x, but I never send it to wine.
I'm running this on Linux Mint 8 (Ubuntu karmic)
Best Regards,
-iip-
--
Configure bugmail: http://bugs.winehq.org/userprefs.cgi?tab=email
Do not reply to this email, post in Bugzilla using the
above URL to reply.
------- You are receiving this mail because: -------
You are watching all bug changes.
https://bugs.winehq.org/show_bug.cgi?id=50808
Bug ID: 50808
Summary: Guidwars 2 is unable to login after 6.3 staging update
Product: Wine
Version: 6.3
Hardware: x86-64
OS: Linux
Status: UNCONFIRMED
Severity: normal
Priority: P2
Component: -unknown
Assignee: wine-bugs(a)winehq.org
Reporter: proteve(a)mail.com
Distribution: ---
i have to admit that i jump from 6.0 to 6.3 directly and i'm not very sure if
it started with 6.3 but after this update i'm 90% of the time unable to login
in guildwars 2. the game launcher downloads any update necessary and everything
looks ok except it can't login. i was able to login when the launcher updated
the game but after that i couldn't login anymore.
initially i thought its some patch from tkg that are not working with these
version but then i've tried 6.3 staging under linuxmint and i have the same bug
there too.
--
Do not reply to this email, post in Bugzilla using the
above URL to reply.
You are receiving this mail because:
You are watching all bug changes.
https://bugs.winehq.org/show_bug.cgi?id=50803
Bug ID: 50803
Summary: Reolink's Windows software will not function, get only
black rectangle on opening
Product: Wine
Version: 6.0
Hardware: x86-64
OS: Linux
Status: UNCONFIRMED
Severity: normal
Priority: P2
Component: -unknown
Assignee: wine-bugs(a)winehq.org
Reporter: lilleyen(a)gmail.com
Distribution: ---
Created attachment 69611
--> https://bugs.winehq.org/attachment.cgi?id=69611
This was the report generated by the Reolink software when it wouldn't run
Black rectangle only when trying to use Reolink's security camera software.
--
Do not reply to this email, post in Bugzilla using the
above URL to reply.
You are receiving this mail because:
You are watching all bug changes.