mirror of
git://git.gnupg.org/gnupg.git
synced 2025-02-01 16:33:02 +01:00
scd: Don't keep CCID reader open when card is not available.
* scd/apdu.c (open_ccid_reader): Fail if no ATR. Signed-off-by: NIIBE Yutaka <gniibe@fsij.org>
This commit is contained in:
parent
ebe12be034
commit
3c93595d70
11
scd/apdu.c
11
scd/apdu.c
@ -1496,6 +1496,9 @@ open_ccid_reader (struct dev_list *dl)
|
||||
|
||||
err = ccid_open_reader (dl->portstr, dl->idx, dl->ccid_table,
|
||||
&slotp->ccid.handle, &slotp->rdrname);
|
||||
if (!err)
|
||||
err = ccid_get_atr (slotp->ccid.handle,
|
||||
slotp->atr, sizeof slotp->atr, &slotp->atrlen);
|
||||
if (err)
|
||||
{
|
||||
slotp->used = 0;
|
||||
@ -1503,14 +1506,6 @@ open_ccid_reader (struct dev_list *dl)
|
||||
return -1;
|
||||
}
|
||||
|
||||
err = ccid_get_atr (slotp->ccid.handle,
|
||||
slotp->atr, sizeof slotp->atr, &slotp->atrlen);
|
||||
if (err)
|
||||
{
|
||||
slotp->atrlen = 0;
|
||||
err = 0;
|
||||
}
|
||||
|
||||
require_get_status = ccid_require_get_status (slotp->ccid.handle);
|
||||
|
||||
reader_table[slot].close_reader = close_ccid_reader;
|
||||
|
Loading…
x
Reference in New Issue
Block a user