1
0
mirror of git://git.gnupg.org/gnupg.git synced 2025-02-26 20:31:06 +01:00
NIIBE Yutaka 9934889415 scd: Fix "Conflicting usage" bug.
* scd/apdu.c (apdu_close_reader): Call CLOSE_READER method even if we
  got an error from apdu_disconnect.
* scd/app-common.h (no_reuse): Remove.
* scd/app.c (application_notify_card_reset): Deallocate APP here.
(select_application, release_application): Don't use NO_REUSE.

--

Reproducible scenario: Invoke gpg --card-edit session from a terminal.
Invoke another gpg --card-edit session from another.  Remove a token.
Insert a token again.  Type RET on both terminals.  One of terminal
answers "Conflicting usage".

Perhaps, having NO_REUSE field was to avoid race conditions.  Now,
APP can be safely deallocated by application_notify_card_reset.

Thanks to the2nd.

(backport of commit f42c50dbf00c2e6298ca6830cbe6d36805fa54a3)
2015-12-15 09:48:06 +09:00
..
2015-12-15 09:48:06 +09:00
2013-02-08 09:20:43 +09:00
2015-12-15 09:48:06 +09:00
2013-02-08 09:20:43 +09:00
2009-05-08 15:07:45 +00:00
2013-02-08 09:20:43 +09:00
2009-12-21 16:19:09 +00:00
2015-12-15 09:48:06 +09:00
2007-07-04 19:49:40 +00:00
2007-07-04 19:49:40 +00:00
2007-07-04 19:49:40 +00:00
2008-11-03 10:54:18 +00:00
2007-07-04 19:49:40 +00:00
2013-02-08 09:20:43 +09:00
2013-02-08 09:20:43 +09:00
2013-02-08 09:20:43 +09:00