https://bugs.winehq.org/show_bug.cgi?id=53574
Bug ID: 53574 Summary: MSYS2 "pacman -Sy" fails key lookup Product: Wine Version: 7.15 Hardware: x86-64 OS: Linux Status: UNCONFIRMED Severity: normal Priority: P2 Component: -unknown Assignee: wine-bugs@winehq.org Reporter: joel@airwebreathe.org.uk Distribution: ---
Created attachment 72951 --> https://bugs.winehq.org/attachment.cgi?id=72951 Log of console interaction
With a fresh Msys2 installation, pacman fails to run, because it keeps producing "key lookup failed" errors. The user is prompted to with the following message:
error: mingw32: key "5F944B027F7FE2091985AA2EFA11531AA0AA7F57" is unknown :: Import PGP key 5F944B027F7FE2091985AA2EFA11531AA0AA7F57? [Y/n] Y
However, if the user selects "yes", pacman simply asks the same question again after a short delay, in an infinite loop.
https://bugs.winehq.org/show_bug.cgi?id=53574
Bernhard Übelacker bernhardu@mailbox.org changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |bernhardu@mailbox.org
--- Comment #1 from Bernhard Übelacker bernhardu@mailbox.org --- I came accross this issue too. If I remember correctly this looks like an issue with the silent failure of the key import at the initial setup. This should be visible afterwards by `pacman-key --populate`. Calling this leaves each time a process dirmngr.exe. It looks like this process dirmngr.exe hangs during startup:
(gdb) bt #0 0x0000000100437de0 in assuan_sock_connect_byname () #1 0x0000000100402531 in dirmngr_use_tor () at dirmngr.c:607 #2 0x000000010040256c in set_tor_mode () at dirmngr.c:582 #3 0x00000001004025eb in post_option_parsing () at dirmngr.c:898 #4 0x0000000100403532 in main (argc=<optimized out>, argv=<optimized out>) at dirmngr.c:1211
A workaround for me was to creating this configuration: echo no-use-tor > .wine/drive_c/msys64/etc/pacman.d/gnupg/dirmngr.conf
https://bugs.winehq.org/show_bug.cgi?id=53574
--- Comment #2 from Bernhard Übelacker bernhardu@mailbox.org --- Created attachment 74546 --> https://bugs.winehq.org/attachment.cgi?id=74546 server: Reset reported_events if socket gets reused.
Hello, I took a deeper look and it looks like the issue in dirmngr.exe is caused by it reusing the same socket for multiple failing connection attempts. wineserver stores flags in reported_events, which gets not reset for the second connection attempt. Therefore WSAEnumNetworkEvents returns no events, which causes the function wait_for_events in msys2 to never return.
Attached patch resets this reported_events at the second connection attempt and contains a test that should show the issue.
There are additional issues about file deletion/renaming, but that deserves maybe another bug report.
https://bugs.winehq.org/show_bug.cgi?id=53574
Christopher Degawa ccom@randomderp.com changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |ccom@randomderp.com