diff options
| author | NIIBE Yutaka <[email protected]> | 2017-09-20 01:06:43 +0000 |
|---|---|---|
| committer | NIIBE Yutaka <[email protected]> | 2017-09-20 01:06:43 +0000 |
| commit | 2396055c096884d521c26b76f26263a146207c24 (patch) | |
| tree | 08782084a7bf005b1774723b00a20aa15e609da3 /scd/apdu.c | |
| parent | common: Accept the Z-suffix for yymmddThhmmssZ format. (diff) | |
| download | gnupg-2396055c096884d521c26b76f26263a146207c24.tar.gz gnupg-2396055c096884d521c26b76f26263a146207c24.zip | |
scd: Distinguish cancel by user and protocol error.
* scd/apdu.h (SW_HOST_CANCELLED): New.
* scd/apdu.c (host_sw_string): Support SW_HOST_CANCELLED.
(pcsc_error_to_sw): Return SW_HOST_CANCELLED for PCSC_E_CANCELLED.
* scd/iso7816.c (map_sw): Return GPG_ERR_INV_RESPONSE for
SW_HOST_ABORTED and GPG_ERR_CANCELED for SW_HOST_CANCELLED.
Signed-off-by: NIIBE Yutaka <[email protected]>
Diffstat (limited to 'scd/apdu.c')
| -rw-r--r-- | scd/apdu.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/scd/apdu.c b/scd/apdu.c index 97624ebad..1b25ceb95 100644 --- a/scd/apdu.c +++ b/scd/apdu.c @@ -496,6 +496,7 @@ host_sw_string (long err) case SW_HOST_ABORTED: return "aborted"; case SW_HOST_NO_PINPAD: return "no pinpad"; case SW_HOST_ALREADY_CONNECTED: return "already connected"; + case SW_HOST_CANCELLED: return "cancelled"; default: return "unknown host status error"; } } @@ -602,7 +603,7 @@ pcsc_error_to_sw (long ec) { case 0: rc = 0; break; - case PCSC_E_CANCELLED: rc = SW_HOST_ABORTED; break; + case PCSC_E_CANCELLED: rc = SW_HOST_CANCELLED; break; case PCSC_E_NO_MEMORY: rc = SW_HOST_OUT_OF_CORE; break; case PCSC_E_TIMEOUT: rc = SW_HOST_CARD_IO_ERROR; break; case PCSC_E_NO_SERVICE: |
