In select_application function, we can minimize the holding W-lock.
- Queries
- All Stories
- Search
- Advanced Search
- Transactions
- Transaction Logs
Advanced Search
Mon, Nov 18
This may requires major changes for scdaemon.
For the cancelling operation, each card reader access should have an independent resource manager context.
Currently, a single pcsc.contex is shared by all reader accesses.
Hard lockup should be avoided. In particular, following conditions should meet:
- gpgconf --kill scdaemon can kill scdaemon
- KEYINFO requests can be answered for other connections of scdaemon
As of 2024-11-18, my hypothesis is:
- there are some sort of race conditions between PC/SC + card reader (or its driver) + smartcard + scdaemon on Windows, at least at initial use after boot
- because of this, SCardConnect of PC/SC call wrongly fails (somehow confirmed by @ebo's experiments + @gniibe's speculation), or wrongly never returns (@gniibe's guess, side info: its slowness is observed in T7400).
@ebo Thank you for your testing.
Sat, Nov 16
@ikloecker indeed we try only for 5 seconds:
Fri, Nov 15
I think that the card reader is not connected and there is no Scardsvr at this time.
And the card reader connection to USB port results invoking Scardsvr. Then, "SCD SERIALNO --all" gets success.
For T6567 I changed the way that Kleopatra runs "gpgconf --launch gpg-agent". This change is not yet in Eva's test build. It seems my change is not good because running "gpgconf --launch gpg-agent" timed out after 5 seconds in 3 of 3 tests starting Kleopatra after a reboot of the VM. To check if "gpgconf --launch gpg-agent" really takes that long I measured the time in PowerShell after another reboot of the VM. The result is shocking.
Please note that a card insertion to a card reader and a card reader connection to PC are different things.
It may cause different results.
Thu, Nov 14
I put "scd" tag and let me claim this ticket.
The symptom of this bug was:
- there are multiple waiters for COND.
- COND is fired by npth_cond_broadcast, all waiters should be waken up, but only one wakes up by the old code of 1.7.
- other waiters keep waiting forever.
After I fixed the problem, I realized that the description of this ticket was not accurate, so, modified.
Wed, Nov 13
Tue, Nov 12
Oct 8 2024
gpg4win 4 has been released with unicode support. Closing.
Oct 1 2024
Sep 26 2024
with gpg4win-Beta-50: "Rückstellcode" is shown correctly with an ü
Aug 19 2024
Aug 9 2024
This works now.
Aug 8 2024
Well for 3.3 we will have full support for high contrast with the correct icons on all platforms, additionally we detect and support dark mode on all Windows 10 Versions > 1709 So this can be resolved. (Both for Qt5 and 6). What I have not yet checked if Qt6::systemInfo::colorScheme reports the correct one under windows 11 desert theme, but as you mention that is also part of a different issue where when then also should clean up the kleo systeminfo etc. if this is reliably supplied as information by qt.
Aug 7 2024
Setting this to testing. Could be tested as described in https://dev.gnupg.org/T7188#188093 by verifying that the logged debug messages also use correct encoding.
Aug 5 2024
Okay. Done in gpgme for gpgrt >= 1.51 (T7188).
Aug 2 2024
Sounds like a good idea.
@werner Would it be okay to call gettext_use_utf8 (3) in gpgme's do_subsystem_inits where we currently call gettext_use_utf8 (1)? See https://dev.gnupg.org/source/gpgme/browse/master/src/version.c$77
Alright: Call gettext_use_utf8 (3) to set the current thread to utf8 and init all new threads to utf8 as well. This function with that value (actually bit 1 is relevant) can be used several times but it will never switch back the initialization to utf8. However, switching back and force to utf8 per threads is still possible.
Jul 22 2024
KWin has a script called "Dim screen for Administrator Mode" which mimics the windows behavior.
Jul 5 2024
This should be tested as part of testing T5960 by checking that the German error description "Falscher Rückstellcode" is shown after entering a wrong reset code (PUK) for an OpenPGP smart card (https://dev.gnupg.org/T5960#188013).
Jul 4 2024
Using/setting a value of 2 would work for Kleopatra.
That is probably right for gpgme as used by kleopatra. However in gnupg we need to switch utf8 on and off.
Jul 2 2024
This also works for VSD 3.3 (because the required changes/patches are in gpg4win).
Jun 26 2024
For the white high-contrast mode we use the normal (black) Breeze icons now. I think for Qt 5 that's all we can do with reasonable effort. For Qt 6/KF6 we have to revisit this anyway because a lot has changed (see T6932).
Jun 24 2024
Jun 23 2024
In T7175#187690, @jukivili wrote:Hm, CFI directives should not be used on WIN32 target. This patch should solve the issue for now:
0001-src-hwf-x86-disable-inline-assembly-CFI-directivies-.patch984 BDownload
Jun 22 2024
Using clang for Windows is not tested or suggested. Thus low priority.
Jun 21 2024
Done in 3.0.0.
Jun 17 2024
Jun 3 2024
In future, when spawn function API is used by libassuan (and stable), we can support gpgme with no gpgme-w32-spawn.exe.
(And it will be simpler, just using native functions in libassuan, instead of replacing ones by assuan_system_hooks.)
May 8 2024
The official GPG binary from "c:\Program Files (x86)\GnuPG\bin\gpg.exe" does not exhibit this problem. I will report it to the msys2 folks.
Yes, it is the msys2 build of gpg, installed using the standard msys2 methods. The pwd in my example was from msys2 zsh.
I reproduced the error running under msys2 zsh and in Powershell.
If I understand your response correctly, you are saying this will not be fixed in gnupg itself? I can report it to the cygwin/msys2 folks of course, if you think that is best. But I still suspect the root cause is in gnupg, probably in homedir.c or the code that makes an absolute path from a relative one.
I will retest with the official gpg4win and let you know the results.
pwd is not a standard Windows command. It is availabe in powershell but there I get
Mar 19 2024
The reset was due to running gpg-connect-agent reset /bye. I am currently testing something elese will get back as soon as I can turn back to 2.4
There are two locks here; (1) rw_lock for card_top (list of cards) access and (2) individual card lock.
It looks for me that:
- don't know how/what the thread 7208.2 does
- the thread 7208.3: KEYINFO, then PKSIGN (gets read lock for card_top, then, individual card lock)
- the thread 7208.4: SERIALNO --all (and wait for write lock for card_top)
Mar 18 2024
Mar 4 2024
In case if someone finds it through a search:
Feb 23 2024
Removing gpgrt because we meanwhile have full utf-8 support there.
Feb 20 2024
Jan 30 2024
That is an old bug report with a couple of fixes introduced over the years. As of now we sometimes see hangs on Windows on our test VMs. The common cause here seems to be USB card reader issues. Let's close this bug and wait for another bug report with current software versions.
Jan 24 2024
No regression, assuming things work.
Jan 15 2024
All icons that are available in normal/light mode should now also be available in dark mode.
Jan 11 2024
And another note: In KF6 icon inverting happens automatically in ksvg or so, so that we don't need to ship breeze-dark anymore. And there will be a BreezeIcons library including the icons that can be used instead of the RCC file. This means we just need a quick fix for VSD and not a general solution for upstream.
One more data point: breeze-icons installs a copy of all breeze icons that do not exist in breeze-dark in the breeze-dark icons folder. So, with icon files on disk breeze-dark has all icons that breeze has even without using breeze as fallback icon theme. Looks like an oversight that the breeze-dark RCC generated by breeze-icons doesn't include missing breeze icons.
KIconTheme sets the fallback theme name to breeze, but those icons cannot be found because we only load the icon theme RCC for breeze-dark. I think we need to load both RCC files in dark mode. No, that doesn't work.
Possible reason: There's a kleopatra.svg in breeze-icons/icons, but there's none in breeze-icons/icons-dark.
Jan 10 2024
Jan 5 2024
Dec 26 2023
Dec 22 2023
Nov 28 2023
Nov 27 2023
Nov 14 2023
I'd prefer to not use the spawn helper at all. All currrent Windows versions allow to decide which handles are to be inherited and thus there is no more need for the helper.
Oct 27 2023
Thanks. I'll apply your patch.
Oct 25 2023
Oct 10 2023
I think ".UTF8" is always better than LC_TIME="" if the display string contains non-English Unicode chars.
Oct 6 2023
Oct 2 2023
Do you have any hint how I can test this? I installed Chinese-Simplified (zh_CN) but I fear switching the display Language. Maybe I should just use _wasctime and convert to utf8
Sep 29 2023
Thanks for the report and the helpful suggestion. I was anyway about to change the time format but your suggestion is better.
Sep 21 2023
Tested in VS-Desktop-3.2.0.0-beta214 by encrypting a large file with Kleopatra. The progress bar shows percentage finished, progress looks all right