diff options
Diffstat (limited to 'scd')
-rw-r--r-- | scd/ChangeLog | 7 | ||||
-rw-r--r-- | scd/apdu.c | 4 |
2 files changed, 9 insertions, 2 deletions
diff --git a/scd/ChangeLog b/scd/ChangeLog index 3e65fc9eb..49896af94 100644 --- a/scd/ChangeLog +++ b/scd/ChangeLog @@ -1,3 +1,10 @@ +2006-11-28 Werner Koch <[email protected]> + + * apdu.c (send_le, apdu_send_direct): Increase RESULTLEN to 258 to + allow for full 256 byte and the status word. This might break + some old PC/SC drivers or cards, but we will see. Suggested by + Kenneth Wang. + 2006-11-23 Werner Koch <[email protected]> * command.c (scd_command_handler): Fixed use of CTRL. diff --git a/scd/apdu.c b/scd/apdu.c index 3057d6415..ac2f3c44b 100644 --- a/scd/apdu.c +++ b/scd/apdu.c @@ -2603,7 +2603,7 @@ send_le (int slot, int class, int ins, int p0, int p1, unsigned char **retbuf, size_t *retbuflen, struct pininfo_s *pininfo) { -#define RESULTLEN 256 +#define RESULTLEN 258 unsigned char result[RESULTLEN+10]; /* 10 extra in case of bugs in the driver. */ size_t resultlen; @@ -2866,7 +2866,7 @@ apdu_send_direct (int slot, const unsigned char *apdudata, size_t apdudatalen, int handle_more, unsigned char **retbuf, size_t *retbuflen) { -#define RESULTLEN 256 +#define RESULTLEN 258 unsigned char apdu[5+256+1]; size_t apdulen; unsigned char result[RESULTLEN+10]; /* 10 extra in case of bugs in |