aboutsummaryrefslogtreecommitdiffstats
path: root/scd
diff options
context:
space:
mode:
Diffstat (limited to 'scd')
-rw-r--r--scd/ChangeLog7
-rw-r--r--scd/apdu.c4
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