diff options
author | NIIBE Yutaka <[email protected]> | 2013-01-11 04:19:17 +0000 |
---|---|---|
committer | NIIBE Yutaka <[email protected]> | 2013-01-11 04:19:17 +0000 |
commit | aba76f91cbfe0f758e3cb61484ac5a7318cc31d6 (patch) | |
tree | 99d8f74f7fcf3929d527c0923ab67a9ade145d59 | |
parent | Merge branch 'scd-serialize-bugfix' into scd-work (diff) | |
download | gnupg-aba76f91cbfe0f758e3cb61484ac5a7318cc31d6.tar.gz gnupg-aba76f91cbfe0f758e3cb61484ac5a7318cc31d6.zip |
SCD: Better interoperability.
* scd/apdu.c: Fill bTeoPrologue[2] field.
--
ccid-1.4.5 or older requires this field is filled by application.
-rw-r--r-- | scd/apdu.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/scd/apdu.c b/scd/apdu.c index f78463ae2..c9d24eefc 100644 --- a/scd/apdu.c +++ b/scd/apdu.c @@ -2084,7 +2084,7 @@ pcsc_keypad_verify (int slot, int class, int ins, int p0, int p1, pin_verify[11] = 0x00; /* bMsgIndex */ pin_verify[12] = 0x00; /* bTeoPrologue[0] */ pin_verify[13] = 0x00; /* bTeoPrologue[1] */ - pin_verify[14] = 0x00; /* bTeoPrologue[2] */ + pin_verify[14] = pininfo->fixedlen + 0x05; /* bTeoPrologue[2] */ pin_verify[15] = pininfo->fixedlen + 0x05; /* ulDataLength */ pin_verify[16] = 0x00; /* ulDataLength */ pin_verify[17] = 0x00; /* ulDataLength */ @@ -2178,7 +2178,7 @@ pcsc_keypad_modify (int slot, int class, int ins, int p0, int p1, pin_modify[16] = 0x00; /* bMsgIndex3 */ pin_modify[17] = 0x00; /* bTeoPrologue[0] */ pin_modify[18] = 0x00; /* bTeoPrologue[1] */ - pin_modify[19] = 0x00; /* bTeoPrologue[2] */ + pin_modify[19] = 2 * pininfo->fixedlen + 0x05; /* bTeoPrologue[2] */ pin_modify[20] = 2 * pininfo->fixedlen + 0x05; /* ulDataLength */ pin_modify[21] = 0x00; /* ulDataLength */ pin_modify[22] = 0x00; /* ulDataLength */ |