Home GnuPG
Diffusion GnuPG 67e1834ad402

scd: Remove context reference counting from pc/sc

Description

scd: Remove context reference counting from pc/sc

* scd/apdu.c (pcsc): Add flag context_valid, remove count.
(close_pcsc_reader): Use new flag instead of looking at magic context
value.
(pcsc_init): Set new flag.
(open_pcsc_reader): Use new flag.
(apdu_init): Clear new flag.
* scd/apdu.c: Remove assert.h.  Replace all assert by log_assert.

The previous fix 192113552faa98f40cc91fe014ec55861474626c did not
help, thus the new hypothesis is that PC/SC might return a valid
context with the value -1. We now use a dedicated flag to track the
validity of the context.

The reference counting seems to be superfluous and is a relict due to
backporting from 2.3. Removed.

Details

Provenance
wernerAuthored on Sep 14 2021, 1:04 PM
Parents
rG117afec01891: common: New envvar GNUPG_EXEC_DEBUG_FLAGS.
Branches
Unknown
Tags
Unknown