aboutsummaryrefslogtreecommitdiffstats
path: root/scd/command.c
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--scd/command.c7
1 files changed, 6 insertions, 1 deletions
diff --git a/scd/command.c b/scd/command.c
index b835aac73..73e02c22d 100644
--- a/scd/command.c
+++ b/scd/command.c
@@ -405,7 +405,12 @@ open_card (ctrl_t ctrl, const char *apptype)
select_application. */
int sw = apdu_connect (slot);
if (sw && sw != SW_HOST_ALREADY_CONNECTED)
- err = gpg_error (GPG_ERR_CARD);
+ {
+ if (sw == SW_HOST_NO_CARD)
+ err = gpg_error (GPG_ERR_CARD_NOT_PRESENT);
+ else
+ err = gpg_error (GPG_ERR_CARD);
+ }
else
err = select_application (ctrl, slot, apptype, &ctrl->app_ctx);
}