In case scdaemon is killed or crashed, gpg-agent does not restart scdaemon but attempts to send commands and waits indefinitely for responses. That used to work. Reproducer is obvious. Not tested with 2.2.
Description
Description
Details
Details
- Version
- 2.3.0 master
Revisions and Commits
Revisions and Commits
rG GnuPG | |||
rG2abad7585a00 agent: Fix detection of exit of scdaemon. |
Event Timeline
Comment Actions
Does not happen in 2.2. Additional requirement to test this bug in master: Another connection to the scdaemon must be open. For example running scute or, easier, call "gpg --card-edit" and keep it open.
Comment Actions
That's my badness. In wait_child_thread, assuan_release may cause thread context switch to agent_reset_scd which accesses scd_local_list; This access should be serialized.
And... in start_scd, calling unlock_scd should be after unlocking start_scd_lock.