diff options
author | NIIBE Yutaka <[email protected]> | 2015-04-14 05:17:03 +0000 |
---|---|---|
committer | NIIBE Yutaka <[email protected]> | 2015-04-14 05:17:03 +0000 |
commit | 971d558e862db878a7310e06ed7116dbe36886ab (patch) | |
tree | 452c09ee685f3f5c61c67c2c8533e4028cb8a46a /scd/app-common.h | |
parent | gpg: Fix NULL-segv due to invalid imported data. (diff) | |
download | gnupg-971d558e862db878a7310e06ed7116dbe36886ab.tar.gz gnupg-971d558e862db878a7310e06ed7116dbe36886ab.zip |
scd: better handling of extended APDU.
* scd/apdu.c (send_le): Bug fix for not append Z when lc<0&&le<0.
* scd/app-common.h (struct app_ctx_s): Use bit fields for flags.
* scd/ccid-driver.c (CCID_MAX_BUF): New. Only for OpenPGPcard.
(struct ccid_driver_s): New field of max_ccid_msglen.
Remove ifsd field.
(parse_ccid_descriptor): Initialize max_ccid_msglen.
(ccid_transceive_apdu_level): Implement sending extended APDU in
chain of CCID message.
--
With this patch, we won't need PC/SC library/service any more.
GnuPG-bug-id: 1947
Diffstat (limited to 'scd/app-common.h')
-rw-r--r-- | scd/app-common.h | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/scd/app-common.h b/scd/app-common.h index 50046a4e3..379bcd18d 100644 --- a/scd/app-common.h +++ b/scd/app-common.h @@ -67,10 +67,10 @@ struct app_ctx_s { size_t serialnolen; /* Length in octets of serialnumber. */ const char *apptype; unsigned int card_version; - int did_chv1; - int force_chv1; /* True if the card does not cache CHV1. */ - int did_chv2; - int did_chv3; + unsigned int did_chv1:1; + unsigned int force_chv1:1; /* True if the card does not cache CHV1. */ + unsigned int did_chv2:1; + unsigned int did_chv3:1; struct app_local_s *app_local; /* Local to the application. */ struct { void (*deinit) (app_t app); |