- Queries
- All Stories
- Search
- Advanced Search
- Transactions
- Transaction Logs
All Stories
Mar 1 2024
In 2.4 we have rG1383aa475 which does
Pushed the change in: rGf50c543326c2: agent: Allow simple KEYINFO command when restricted.
Apply the change in: rPTH417abd56fd7b: Fix INSERT_EXPOSE_RWLOCK_API for musl C library.
It looks like hardware problem or card reader problem.
Please test with debug-ccid-driver line in scdaemon.conf to see lower-lever (driver debug) message.
Since I don't like to introduce hppa specific workaround in a way like pragma (and I have no time to fix compiler itself), I tried to improve the ec-nist.c for hppa so that register pressure can be lower.
Here is my solution.
Feb 29 2024
Hi, I agree with Andrea's idea
The logs of the failed run contain the following:
2024-02-29 15:12:09 scdaemon[20881] DBG: enter: apdu_get_status: slot=0 hang=0 2024-02-29 15:12:09 scdaemon[20881] DBG: leave: apdu_get_status => sw=0x1000c status=0 2024-02-29 15:12:09 scdaemon[20881] DBG: chan_7 -> S DEVINFO_STATUS removal 2024-02-29 15:12:09 scdaemon[20881] DBG: Removal of a card: 0 2024-02-29 15:12:09 scdaemon[20881] DBG: enter: apdu_close_reader: slot=0 2024-02-29 15:12:09 scdaemon[20881] DBG: enter: apdu_disconnect: slot=0 2024-02-29 15:12:09 scdaemon[20881] DBG: leave: apdu_disconnect => sw=0x0
For comparison, the logs when it doesn't fail:
2024-02-29 15:08:33 scdaemon[20536] handler for fd 13 started 2024-02-29 15:08:33 scdaemon[20536] DBG: chan_13 -> OK GNU Privacy Guard's Smartcard server ready 2024-02-29 15:08:33 scdaemon[20536] DBG: chan_13 <- SERIALNO --all 2024-02-29 15:08:33 scdaemon[20536] DBG: apdu_open_reader: BAI=60900 2024-02-29 15:08:33 scdaemon[20536] DBG: apdu_open_reader: new device=60900 2024-02-29 15:08:33 scdaemon[20536] ccid open error: skip 2024-02-29 15:08:33 scdaemon[20536] DBG: apdu_open_reader: BAI=60a00 2024-02-29 15:08:33 scdaemon[20536] DBG: apdu_open_reader: new device=60a00 2024-02-29 15:08:34 scdaemon[20536] reader slot 0: using ccid driver 2024-02-29 15:08:34 scdaemon[20536] slot 0: ATR=3bbf96008131fe5d00640411030131c073f701d00090007d 2024-02-29 15:08:34 scdaemon[20536] DBG: enter: apdu_connect: slot=0 2024-02-29 15:08:34 scdaemon[20536] DBG: leave: apdu_connect => sw=0x0 2024-02-29 15:08:36 scdaemon[20536] Detected NKS version: 3 2024-02-29 15:08:36 scdaemon[20536] DBG: apdu_open_reader: BAI=40200 2024-02-29 15:08:36 scdaemon[20536] DBG: apdu_open_reader: new device=40200 2024-02-29 15:08:36 scdaemon[20536] ccid open error: skip 2024-02-29 15:08:36 scdaemon[20536] DBG: enter: apdu_get_status: slot=0 hang=0 2024-02-29 15:08:36 scdaemon[20536] DBG: leave: apdu_get_status => sw=0x0 status=7 2024-02-29 15:08:36 scdaemon[20536] DBG: chan_7 -> S DEVINFO_STATUS new 2024-02-29 15:08:36 scdaemon[20536] DBG: enter: apdu_get_status: slot=0 hang=0 2024-02-29 15:08:36 scdaemon[20536] DBG: leave: apdu_get_status => sw=0x0 status=7 2024-02-29 15:08:36 scdaemon[20536] DBG: chan_7 -> S DEVINFO_START 2024-02-29 15:08:36 scdaemon[20536] DBG: chan_7 -> S DEVICE generic 89490173300026616520 nks 2024-02-29 15:08:36 scdaemon[20536] DBG: chan_7 -> S DEVINFO_END 2024-02-29 15:08:36 scdaemon[20536] DBG: chan_13 -> S SERIALNO 89490173300026616520 2024-02-29 15:08:36 scdaemon[20536] DBG: chan_13 -> OK 2024-02-29 15:08:36 scdaemon[20536] DBG: chan_13 <- GETINFO all_active_apps 2024-02-29 15:08:36 scdaemon[20536] DBG: chan_13 -> S SERIALNO 89490173300026616520 nks 2024-02-29 15:08:36 scdaemon[20536] DBG: chan_13 -> OK 2024-02-29 15:08:36 scdaemon[20536] DBG: chan_13 <- SWITCHCARD 89490173300026616520 2024-02-29 15:08:36 scdaemon[20536] DBG: chan_13 -> S SERIALNO 89490173300026616520 2024-02-29 15:08:36 scdaemon[20536] DBG: chan_13 -> OK 2024-02-29 15:08:36 scdaemon[20536] DBG: chan_13 <- SWITCHAPP nks 2024-02-29 15:08:36 scdaemon[20536] DBG: slot 0: have=nks want=nks keyref=[none] 2024-02-29 15:08:36 scdaemon[20536] DBG: chan_13 -> S SERIALNO 89490173300026616520 nks 2024-02-29 15:08:36 scdaemon[20536] DBG: chan_13 -> OK 2024-02-29 15:08:36 scdaemon[20536] DBG: chan_13 <- GETATTR $SIGNKEYID 2024-02-29 15:08:36 scdaemon[20536] DBG: slot 0: have=nks want=nks keyref=[none] 2024-02-29 15:08:36 scdaemon[20536] DBG: slot 0 app nks: calling getattr($SIGNKEYID) 2024-02-29 15:08:36 scdaemon[20536] DBG: chan_13 -> S $SIGNKEYID NKS-NKS3.4531 2024-02-29 15:08:36 scdaemon[20536] DBG: chan_13 -> OK 2024-02-29 15:08:36 scdaemon[20536] DBG: chan_13 <- GETATTR $ENCRKEYID 2024-02-29 15:08:36 scdaemon[20536] DBG: slot 0: have=nks want=nks keyref=[none] 2024-02-29 15:08:36 scdaemon[20536] DBG: slot 0 app nks: calling getattr($ENCRKEYID) 2024-02-29 15:08:36 scdaemon[20536] DBG: chan_13 -> S $ENCRKEYID NKS-NKS3.45B1 2024-02-29 15:08:36 scdaemon[20536] DBG: chan_13 -> OK 2024-02-29 15:08:36 scdaemon[20536] DBG: chan_13 <- GETATTR NKS-VERSION 2024-02-29 15:08:36 scdaemon[20536] DBG: slot 0: have=nks want=nks keyref=[none] 2024-02-29 15:08:36 scdaemon[20536] DBG: slot 0 app nks: calling getattr(NKS-VERSION) 2024-02-29 15:08:36 scdaemon[20536] DBG: chan_13 -> S NKS-VERSION 3 2024-02-29 15:08:36 scdaemon[20536] DBG: chan_13 -> OK 2024-02-29 15:08:36 scdaemon[20536] DBG: chan_13 <- GETATTR $DISPSERIALNO 2024-02-29 15:08:36 scdaemon[20536] DBG: slot 0: have=nks want=nks keyref=[none] 2024-02-29 15:08:36 scdaemon[20536] DBG: slot 0 app nks: calling getattr($DISPSERIALNO) 2024-02-29 15:08:36 scdaemon[20536] DBG: chan_13 -> S $DISPSERIALNO 8949017330002661652 2024-02-29 15:08:36 scdaemon[20536] DBG: chan_13 -> OK 2024-02-29 15:08:36 scdaemon[20536] DBG: chan_13 <- GETATTR CHV-STATUS 2024-02-29 15:08:36 scdaemon[20536] DBG: slot 0: have=nks want=nks keyref=[none] 2024-02-29 15:08:36 scdaemon[20536] DBG: slot 0 app nks: calling getattr(CHV-STATUS) 2024-02-29 15:08:36 scdaemon[20536] nks: switching to SigG 2024-02-29 15:08:37 scdaemon[20536] DBG: chan_13 -> S CHV-STATUS 3+0+3+0 2024-02-29 15:08:37 scdaemon[20536] DBG: chan_13 -> OK 2024-02-29 15:08:37 scdaemon[20536] DBG: chan_13 <- LEARN --force 2024-02-29 15:08:37 scdaemon[20536] DBG: chan_13 -> S READER 04E6:E003:51271834208013:0 2024-02-29 15:08:37 scdaemon[20536] DBG: chan_13 -> S SERIALNO 89490173300026616520 2024-02-29 15:08:37 scdaemon[20536] DBG: slot 0: have=nks want=nks keyref=[none] 2024-02-29 15:08:37 scdaemon[20536] DBG: chan_13 -> S APPTYPE nks 2024-02-29 15:08:37 scdaemon[20536] DBG: chan_13 -> S APPVERSION 3 2024-02-29 15:08:37 scdaemon[20536] nks: switching to NKS 2024-02-29 15:08:38 scdaemon[20536] nks: switching to SigG 2024-02-29 15:08:39 scdaemon[20536] DBG: chan_13 -> S CHV-STATUS 3+0+3+0 2024-02-29 15:08:39 scdaemon[20536] nks: switching to NKS 2024-02-29 15:08:40 scdaemon[20536] DBG: chan_13 -> S KEYPAIRINFO 39400430E38BB96F105B740A7119FE113578B59D NKS-NKS3.4531 sa - rsa2048 2024-02-29 15:08:40 scdaemon[20536] DBG: chan_13 -> S CERTINFO 101 NKS-NKS3.C000 2024-02-29 15:08:40 scdaemon[20536] error selecting FID 0x4331: No such file or directory 2024-02-29 15:08:40 scdaemon[20536] error selecting FID 0x4332: No such file or directory 2024-02-29 15:08:40 scdaemon[20536] DBG: chan_13 -> S CERTINFO 110 NKS-NKS3.B000 2024-02-29 15:08:41 scdaemon[20536] DBG: chan_13 -> S KEYPAIRINFO 42C3CA6F9D7A725A59DDE06B16B61E88C62777C4 NKS-NKS3.45B1 e - rsa2048 2024-02-29 15:08:41 scdaemon[20536] DBG: chan_13 -> S CERTINFO 101 NKS-NKS3.C200 2024-02-29 15:08:41 scdaemon[20536] error selecting FID 0x43B1: No such file or directory 2024-02-29 15:08:41 scdaemon[20536] error selecting FID 0x43B2: No such file or directory 2024-02-29 15:08:41 scdaemon[20536] DBG: chan_13 -> S KEYPAIRINFO 20E7CB1D5299669CABF29B103C692AB34CB03528 NKS-NKS3.45B2 e - rsa1024 2024-02-29 15:08:41 scdaemon[20536] DBG: chan_13 -> S CERTINFO 101 NKS-NKS3.C201 2024-02-29 15:08:41 scdaemon[20536] nks: switching to SigG 2024-02-29 15:08:42 scdaemon[20536] DBG: chan_13 -> S KEYPAIRINFO A69B0D3796EE33E4426E5CE4B6BEEE5F1209FBA4 NKS-SIGG.4531 se - rsa2048 2024-02-29 15:08:42 scdaemon[20536] DBG: chan_13 -> S CERTINFO 101 NKS-SIGG.C000 2024-02-29 15:08:42 scdaemon[20536] data at FID 0xC008 does not look like a certificate 2024-02-29 15:08:42 scdaemon[20536] data at FID 0xC00E does not look like a certificate 2024-02-29 15:08:42 scdaemon[20536] DBG: chan_13 -> OK 2024-02-29 15:08:42 scdaemon[20536] DBG: chan_13 <- GETATTR SERIALNO 2024-02-29 15:08:42 scdaemon[20536] DBG: slot 0: have=nks want=nks keyref=[none] 2024-02-29 15:08:42 scdaemon[20536] DBG: chan_13 -> S SERIALNO 89490173300026616520 2024-02-29 15:08:42 scdaemon[20536] DBG: chan_13 -> OK 2024-02-29 15:08:42 scdaemon[20536] DBG: chan_13 <- READKEY -- NKS-NKS3.4531 2024-02-29 15:08:42 scdaemon[20536] DBG: slot 0: have=nks want=nks keyref=NKS-NKS3.4531 2024-02-29 15:08:42 scdaemon[20536] DBG: slot 0 app nks: calling readkey(NKS-NKS3.4531) 2024-02-29 15:08:42 scdaemon[20536] DBG: slot 0: have=nks want=nks keyref=NKS-NKS3.4531 2024-02-29 15:08:42 scdaemon[20536] DBG: slot 0 app nks: calling readcert(NKS-NKS3.4531) 2024-02-29 15:08:42 scdaemon[20536] nks: switching to NKS 2024-02-29 15:08:44 scdaemon[20536] DBG: chan_13 -> [ 44 20 28 31 30 3a 70 75 62 6c 69 63 2d 6b 65 79 ...(291 byte(s) skipped) ] 2024-02-29 15:08:44 scdaemon[20536] DBG: chan_13 -> OK 2024-02-29 15:08:44 scdaemon[20536] DBG: chan_13 <- GETATTR $DISPSERIALNO 39400430E38BB96F105B740A7119FE113578B59D 2024-02-29 15:08:44 scdaemon[20536] DBG: slot 0, app nks: calling with_keygrip(lookup) 2024-02-29 15:08:44 scdaemon[20536] DBG: slot 0: have=nks want=nks keyref=[none] 2024-02-29 15:08:44 scdaemon[20536] DBG: slot 0 app nks: calling getattr($DISPSERIALNO) 2024-02-29 15:08:44 scdaemon[20536] DBG: chan_13 -> S $DISPSERIALNO 8949017330002661652 2024-02-29 15:08:44 scdaemon[20536] DBG: chan_13 -> OK 2024-02-29 15:08:44 scdaemon[20536] DBG: chan_13 <- GETATTR SERIALNO 2024-02-29 15:08:44 scdaemon[20536] DBG: slot 0: have=nks want=nks keyref=[none] 2024-02-29 15:08:44 scdaemon[20536] DBG: chan_13 -> S SERIALNO 89490173300026616520 2024-02-29 15:08:44 scdaemon[20536] DBG: chan_13 -> OK 2024-02-29 15:08:44 scdaemon[20536] DBG: chan_13 <- READKEY -- NKS-NKS3.45B1 2024-02-29 15:08:44 scdaemon[20536] DBG: slot 0: have=nks want=nks keyref=NKS-NKS3.45B1 2024-02-29 15:08:44 scdaemon[20536] DBG: slot 0 app nks: calling readkey(NKS-NKS3.45B1) 2024-02-29 15:08:44 scdaemon[20536] DBG: slot 0: have=nks want=nks keyref=NKS-NKS3.45B1 2024-02-29 15:08:44 scdaemon[20536] DBG: slot 0 app nks: calling readcert(NKS-NKS3.45B1) 2024-02-29 15:08:44 scdaemon[20536] DBG: chan_13 -> [ 44 20 28 31 30 3a 70 75 62 6c 69 63 2d 6b 65 79 ...(293 byte(s) skipped) ] 2024-02-29 15:08:44 scdaemon[20536] DBG: chan_13 -> OK 2024-02-29 15:08:44 scdaemon[20536] DBG: chan_13 <- GETATTR $DISPSERIALNO 42C3CA6F9D7A725A59DDE06B16B61E88C62777C4 2024-02-29 15:08:44 scdaemon[20536] DBG: slot 0, app nks: calling with_keygrip(lookup) 2024-02-29 15:08:44 scdaemon[20536] DBG: slot 0: have=nks want=nks keyref=[none] 2024-02-29 15:08:44 scdaemon[20536] DBG: slot 0 app nks: calling getattr($DISPSERIALNO) 2024-02-29 15:08:44 scdaemon[20536] DBG: chan_13 -> S $DISPSERIALNO 8949017330002661652 2024-02-29 15:08:44 scdaemon[20536] DBG: chan_13 -> OK 2024-02-29 15:08:44 scdaemon[20536] DBG: chan_13 <- GETATTR SERIALNO 2024-02-29 15:08:44 scdaemon[20536] DBG: slot 0: have=nks want=nks keyref=[none] 2024-02-29 15:08:44 scdaemon[20536] DBG: chan_13 -> S SERIALNO 89490173300026616520 2024-02-29 15:08:44 scdaemon[20536] DBG: chan_13 -> OK 2024-02-29 15:08:44 scdaemon[20536] DBG: chan_13 <- READKEY -- NKS-NKS3.45B2 2024-02-29 15:08:44 scdaemon[20536] DBG: slot 0: have=nks want=nks keyref=NKS-NKS3.45B2 2024-02-29 15:08:44 scdaemon[20536] DBG: slot 0 app nks: calling readkey(NKS-NKS3.45B2) 2024-02-29 15:08:44 scdaemon[20536] DBG: slot 0: have=nks want=nks keyref=NKS-NKS3.45B2 2024-02-29 15:08:44 scdaemon[20536] DBG: slot 0 app nks: calling readcert(NKS-NKS3.45B2) 2024-02-29 15:08:45 scdaemon[20536] DBG: chan_13 -> [ 44 20 28 31 30 3a 70 75 62 6c 69 63 2d 6b 65 79 ...(157 byte(s) skipped) ] 2024-02-29 15:08:45 scdaemon[20536] DBG: chan_13 -> OK 2024-02-29 15:08:45 scdaemon[20536] DBG: chan_13 <- GETATTR $DISPSERIALNO 20E7CB1D5299669CABF29B103C692AB34CB03528 2024-02-29 15:08:45 scdaemon[20536] DBG: slot 0, app nks: calling with_keygrip(lookup) 2024-02-29 15:08:45 scdaemon[20536] DBG: slot 0: have=nks want=nks keyref=[none] 2024-02-29 15:08:45 scdaemon[20536] DBG: slot 0 app nks: calling getattr($DISPSERIALNO) 2024-02-29 15:08:45 scdaemon[20536] DBG: chan_13 -> S $DISPSERIALNO 8949017330002661652 2024-02-29 15:08:45 scdaemon[20536] DBG: chan_13 -> OK 2024-02-29 15:08:45 scdaemon[20536] DBG: chan_13 <- GETATTR SERIALNO 2024-02-29 15:08:45 scdaemon[20536] DBG: slot 0: have=nks want=nks keyref=[none] 2024-02-29 15:08:45 scdaemon[20536] DBG: chan_13 -> S SERIALNO 89490173300026616520 2024-02-29 15:08:45 scdaemon[20536] DBG: chan_13 -> OK 2024-02-29 15:08:45 scdaemon[20536] DBG: chan_13 <- READKEY -- NKS-SIGG.4531 2024-02-29 15:08:45 scdaemon[20536] DBG: slot 0: have=nks want=nks keyref=NKS-SIGG.4531 2024-02-29 15:08:45 scdaemon[20536] DBG: slot 0 app nks: calling readkey(NKS-SIGG.4531) 2024-02-29 15:08:45 scdaemon[20536] DBG: slot 0: have=nks want=nks keyref=NKS-SIGG.4531 2024-02-29 15:08:45 scdaemon[20536] DBG: slot 0 app nks: calling readcert(NKS-SIGG.4531) 2024-02-29 15:08:45 scdaemon[20536] nks: switching to SigG 2024-02-29 15:08:47 scdaemon[20536] DBG: chan_13 -> [ 44 20 28 31 30 3a 70 75 62 6c 69 63 2d 6b 65 79 ...(293 byte(s) skipped) ] 2024-02-29 15:08:47 scdaemon[20536] DBG: chan_13 -> OK 2024-02-29 15:08:47 scdaemon[20536] DBG: chan_13 <- GETATTR $DISPSERIALNO A69B0D3796EE33E4426E5CE4B6BEEE5F1209FBA4 2024-02-29 15:08:47 scdaemon[20536] DBG: slot 0, app nks: calling with_keygrip(lookup) 2024-02-29 15:08:47 scdaemon[20536] nks: switching to NKS 2024-02-29 15:08:48 scdaemon[20536] nks: switching to SigG 2024-02-29 15:08:49 scdaemon[20536] DBG: slot 0: have=nks want=nks keyref=[none] 2024-02-29 15:08:49 scdaemon[20536] DBG: slot 0 app nks: calling getattr($DISPSERIALNO) 2024-02-29 15:08:49 scdaemon[20536] nks: switching to NKS 2024-02-29 15:08:50 scdaemon[20536] DBG: chan_13 -> S $DISPSERIALNO 8949017330002661652 2024-02-29 15:08:50 scdaemon[20536] DBG: chan_13 -> OK 2024-02-29 15:08:50 scdaemon[20536] DBG: chan_13 <- GETINFO all_active_apps 2024-02-29 15:08:50 scdaemon[20536] DBG: chan_13 -> S SERIALNO 89490173300026616520 nks 2024-02-29 15:08:50 scdaemon[20536] DBG: chan_13 -> OK 2024-02-29 15:08:50 scdaemon[20536] DBG: chan_13 <- BYE 2024-02-29 15:08:50 scdaemon[20536] DBG: chan_13 -> OK closing connection 2024-02-29 15:08:50 scdaemon[20536] handler for fd 13 terminated
Here are logs with debug ipc,app,reader:
2024-02-29 15:12:07 scdaemon[20881] handler for fd 13 started 2024-02-29 15:12:07 scdaemon[20881] DBG: chan_13 -> OK GNU Privacy Guard's Smartcard server ready 2024-02-29 15:12:07 scdaemon[20881] DBG: chan_13 <- SERIALNO --all 2024-02-29 15:12:07 scdaemon[20881] DBG: apdu_open_reader: BAI=60900 2024-02-29 15:12:07 scdaemon[20881] DBG: apdu_open_reader: new device=60900 2024-02-29 15:12:07 scdaemon[20881] ccid open error: skip 2024-02-29 15:12:07 scdaemon[20881] DBG: apdu_open_reader: BAI=60a00 2024-02-29 15:12:07 scdaemon[20881] DBG: apdu_open_reader: new device=60a00 2024-02-29 15:12:08 scdaemon[20881] reader slot 0: using ccid driver 2024-02-29 15:12:08 scdaemon[20881] slot 0: ATR=3bbf96008131fe5d00640411030131c073f701d00090007d 2024-02-29 15:12:08 scdaemon[20881] DBG: enter: apdu_connect: slot=0 2024-02-29 15:12:08 scdaemon[20881] DBG: leave: apdu_connect => sw=0x0 2024-02-29 15:12:09 scdaemon[20881] Detected NKS version: 3 2024-02-29 15:12:09 scdaemon[20881] DBG: apdu_open_reader: BAI=40200 2024-02-29 15:12:09 scdaemon[20881] DBG: apdu_open_reader: new device=40200 2024-02-29 15:12:09 scdaemon[20881] ccid open error: skip 2024-02-29 15:12:09 scdaemon[20881] DBG: enter: apdu_get_status: slot=0 hang=0 2024-02-29 15:12:09 scdaemon[20881] DBG: leave: apdu_get_status => sw=0x0 status=7 2024-02-29 15:12:09 scdaemon[20881] DBG: chan_7 -> S DEVINFO_STATUS new 2024-02-29 15:12:09 scdaemon[20881] DBG: enter: apdu_get_status: slot=0 hang=0 2024-02-29 15:12:09 scdaemon[20881] DBG: leave: apdu_get_status => sw=0x0 status=7 2024-02-29 15:12:09 scdaemon[20881] DBG: chan_7 -> S DEVINFO_START 2024-02-29 15:12:09 scdaemon[20881] DBG: chan_7 -> S DEVICE generic 89490173300026616520 nks 2024-02-29 15:12:09 scdaemon[20881] DBG: chan_7 -> S DEVINFO_END 2024-02-29 15:12:09 scdaemon[20881] DBG: chan_13 -> S SERIALNO 89490173300026616520 2024-02-29 15:12:09 scdaemon[20881] DBG: chan_13 -> OK 2024-02-29 15:12:09 scdaemon[20881] DBG: chan_13 <- GETINFO all_active_apps 2024-02-29 15:12:09 scdaemon[20881] DBG: chan_13 -> S SERIALNO 89490173300026616520 nks 2024-02-29 15:12:09 scdaemon[20881] DBG: chan_13 -> OK 2024-02-29 15:12:09 scdaemon[20881] DBG: chan_13 <- SWITCHCARD 89490173300026616520 2024-02-29 15:12:09 scdaemon[20881] DBG: chan_13 -> S SERIALNO 89490173300026616520 2024-02-29 15:12:09 scdaemon[20881] DBG: chan_13 -> OK 2024-02-29 15:12:09 scdaemon[20881] DBG: chan_13 <- SWITCHAPP nks 2024-02-29 15:12:09 scdaemon[20881] DBG: slot 0: have=nks want=nks keyref=[none] 2024-02-29 15:12:09 scdaemon[20881] DBG: chan_13 -> S SERIALNO 89490173300026616520 nks 2024-02-29 15:12:09 scdaemon[20881] DBG: chan_13 -> OK 2024-02-29 15:12:09 scdaemon[20881] DBG: chan_13 <- GETATTR $SIGNKEYID 2024-02-29 15:12:09 scdaemon[20881] DBG: slot 0: have=nks want=nks keyref=[none] 2024-02-29 15:12:09 scdaemon[20881] DBG: slot 0 app nks: calling getattr($SIGNKEYID) 2024-02-29 15:12:09 scdaemon[20881] DBG: chan_13 -> S $SIGNKEYID NKS-NKS3.4531 2024-02-29 15:12:09 scdaemon[20881] DBG: chan_13 -> OK 2024-02-29 15:12:09 scdaemon[20881] DBG: chan_13 <- GETATTR $ENCRKEYID 2024-02-29 15:12:09 scdaemon[20881] DBG: slot 0: have=nks want=nks keyref=[none] 2024-02-29 15:12:09 scdaemon[20881] DBG: slot 0 app nks: calling getattr($ENCRKEYID) 2024-02-29 15:12:09 scdaemon[20881] DBG: chan_13 -> S $ENCRKEYID NKS-NKS3.45B1 2024-02-29 15:12:09 scdaemon[20881] DBG: chan_13 -> OK 2024-02-29 15:12:09 scdaemon[20881] DBG: chan_13 <- GETATTR NKS-VERSION 2024-02-29 15:12:09 scdaemon[20881] DBG: slot 0: have=nks want=nks keyref=[none] 2024-02-29 15:12:09 scdaemon[20881] DBG: slot 0 app nks: calling getattr(NKS-VERSION) 2024-02-29 15:12:09 scdaemon[20881] DBG: chan_13 -> S NKS-VERSION 3 2024-02-29 15:12:09 scdaemon[20881] DBG: chan_13 -> OK 2024-02-29 15:12:09 scdaemon[20881] DBG: chan_13 <- GETATTR $DISPSERIALNO 2024-02-29 15:12:09 scdaemon[20881] DBG: slot 0: have=nks want=nks keyref=[none] 2024-02-29 15:12:09 scdaemon[20881] DBG: slot 0 app nks: calling getattr($DISPSERIALNO) 2024-02-29 15:12:09 scdaemon[20881] DBG: chan_13 -> S $DISPSERIALNO 8949017330002661652 2024-02-29 15:12:09 scdaemon[20881] DBG: chan_13 -> OK 2024-02-29 15:12:09 scdaemon[20881] DBG: enter: apdu_get_status: slot=0 hang=0 2024-02-29 15:12:09 scdaemon[20881] DBG: leave: apdu_get_status => sw=0x1000c status=0 2024-02-29 15:12:09 scdaemon[20881] DBG: chan_7 -> S DEVINFO_STATUS removal 2024-02-29 15:12:09 scdaemon[20881] DBG: Removal of a card: 0 2024-02-29 15:12:09 scdaemon[20881] DBG: enter: apdu_close_reader: slot=0 2024-02-29 15:12:09 scdaemon[20881] DBG: enter: apdu_disconnect: slot=0 2024-02-29 15:12:09 scdaemon[20881] DBG: leave: apdu_disconnect => sw=0x0 2024-02-29 15:12:09 scdaemon[20881] DBG: chan_13 <- GETATTR CHV-STATUS 2024-02-29 15:12:09 scdaemon[20881] DBG: chan_13 -> ERR 100663406 Card removed <SCD> 2024-02-29 15:12:09 scdaemon[20881] DBG: leave: apdu_close_reader => 0x0 (close_reader) 2024-02-29 15:12:09 scdaemon[20881] DBG: chan_7 -> S DEVINFO_START 2024-02-29 15:12:09 scdaemon[20881] DBG: chan_7 -> S DEVINFO_END 2024-02-29 15:12:09 scdaemon[20881] DBG: chan_13 <- GETINFO all_active_apps 2024-02-29 15:12:09 scdaemon[20881] DBG: chan_13 -> ERR 100663408 Card not present <SCD> 2024-02-29 15:12:09 scdaemon[20881] DBG: chan_13 <- BYE 2024-02-29 15:12:09 scdaemon[20881] DBG: chan_13 -> OK closing connection 2024-02-29 15:12:09 scdaemon[20881] handler for fd 13 terminated
Andre said instead of removing "more documentation" for Gpg4win, he'd like to put links to relevant documentation there, e.g. the gpg manual.
@gniibe Thank you very much! That works.
No, thank you both for the speedy responses :)
@thesamesam Thank you for the report.
Thanks a lot for your quick testing.
The commit rGff42ed0d69bb: gpg: Enhance agent_probe_secret_key to return bigger value. of GnuPG 2.2 introduced this bug.
Alternatively (more narrow workaround), when I add a line:
#pragma GCC optimize("O1")
before the function _gcry_mpi_ec_nist256_mod in mpi/ec-nist.c, it works for me on panama.debian.net (Debian porterbox for hppa).
Ah, thanks Werner, I'll keep that in mind.
This seems to have regressed musl support, per https://bugs.gentoo.org/925443.
Fixed in libksba 1.6.6.
Fixed in npth 1.7.
Feb 28 2024
No, hardware barrier is not needed here. Compiler barrier is used here to prevent optimization removing mask generation and usage in following constant-time code.
Clarification from Dave:
Thanks, I can confirm that this patch fixes the issue. I'll let Sam decide if this is how we want to handle it downstream or wait for confirmation from gcc.
So after taking this down to where it was only patching status.h and mainproc.c to add a write_status_output() I realized the whole issue is down to status-codes.h not being updated automatically if you apply a patch to status.h in a released version.
Having looked at the build log again after applying the patch, I see the first test failing is
Although I don't think this is the case here one should be aware that tests mail fail due to global configuration of GnuPG (/etc/gnupg/*.conf). There is no easy way so solve this except for running a per-test local installation of GnuPG using the gpgconf.ctl feature.