From 96b0f4a670358328933e35f6f362a2a4ca3fa70d Mon Sep 17 00:00:00 2001 From: alonbl Date: Fri, 2 May 2008 17:56:52 +0000 Subject: [PATCH] Verify PIN support Plug&Play If card was reset or reader reconnected, verify can restart transaction, as upper level will not cache PIN in this case. git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@3508 c6295689-39f2-0310-b995-f0e70906c6a9 --- src/libopensc/pkcs15-pin.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/libopensc/pkcs15-pin.c b/src/libopensc/pkcs15-pin.c index d43bac08..70ba20df 100644 --- a/src/libopensc/pkcs15-pin.c +++ b/src/libopensc/pkcs15-pin.c @@ -203,6 +203,8 @@ int sc_pkcs15_verify_pin(struct sc_pkcs15_card *p15card, card = p15card->card; r = sc_lock(card); + if (r == SC_ERROR_CARD_RESET || r == SC_ERROR_READER_REATTACHED) + r = sc_lock(card); SC_TEST_RET(card->ctx, r, "sc_lock() failed"); /* the path in the pin object is optional */ if (pin->path.len > 0) {