From f6c95792fe8e763dc8b71baf4fc676102b8a9f37 Mon Sep 17 00:00:00 2001 From: nils Date: Wed, 7 Sep 2005 08:33:55 +0000 Subject: [PATCH] let src/libopensc/ compile with -Wall -W -Wno-unused-parameter -Werror git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@2546 c6295689-39f2-0310-b995-f0e70906c6a9 --- src/libopensc/card-atrust-acos.c | 2 +- src/libopensc/card-belpic.c | 15 +++++----- src/libopensc/card-default.c | 3 +- src/libopensc/card-emv.c | 3 +- src/libopensc/card-etoken.c | 19 +++++++------ src/libopensc/card-flex.c | 48 +++++++++++++++++--------------- src/libopensc/card-gpk.c | 21 +++++++------- src/libopensc/card-mcrd.c | 11 ++++---- src/libopensc/card-miocos.c | 9 +++--- src/libopensc/card-oberthur.c | 21 ++++++++------ src/libopensc/card-openpgp.c | 9 +++--- src/libopensc/card-setcos.c | 2 +- src/libopensc/card-starcos.c | 8 +++--- src/libopensc/card-tcos.c | 15 ++++++---- src/libopensc/reader-ctapi.c | 3 +- src/libopensc/reader-pcsc.c | 3 +- 16 files changed, 105 insertions(+), 87 deletions(-) diff --git a/src/libopensc/card-atrust-acos.c b/src/libopensc/card-atrust-acos.c index de67d326..1744f439 100644 --- a/src/libopensc/card-atrust-acos.c +++ b/src/libopensc/card-atrust-acos.c @@ -41,7 +41,7 @@ static struct sc_card_driver atrust_acos_drv = { "A-Trust ACOS cards", "atrust-acos", &atrust_acos_ops, - NULL, 0 + NULL, 0, NULL }; /* internal structure to save the current security enviroment */ diff --git a/src/libopensc/card-belpic.c b/src/libopensc/card-belpic.c index 9a378d71..3981b655 100644 --- a/src/libopensc/card-belpic.c +++ b/src/libopensc/card-belpic.c @@ -136,18 +136,18 @@ static size_t next_idx = (size_t)-1; static struct sc_atr_table belpic_atrs[] = { /* Applet V1.1 */ - { "3B:98:13:40:0A:A5:03:01:01:01:AD:13:11", NULL, NULL, SC_CARD_TYPE_BELPIC_EID }, + { "3B:98:13:40:0A:A5:03:01:01:01:AD:13:11", NULL, NULL, SC_CARD_TYPE_BELPIC_EID, 0, NULL }, /* Applet V1.0 with new EMV-compatible ATR */ - { "3B:98:94:40:0A:A5:03:01:01:01:AD:13:10", NULL, NULL, SC_CARD_TYPE_BELPIC_EID }, + { "3B:98:94:40:0A:A5:03:01:01:01:AD:13:10", NULL, NULL, SC_CARD_TYPE_BELPIC_EID, 0, NULL }, /* Applet beta 5 + V1.0 */ - { "3B:98:94:40:FF:A5:03:01:01:01:AD:13:10", NULL, NULL, SC_CARD_TYPE_BELPIC_EID }, + { "3B:98:94:40:FF:A5:03:01:01:01:AD:13:10", NULL, NULL, SC_CARD_TYPE_BELPIC_EID, 0, NULL }, #if 0 /* Applet beta 3 + 4 */ - { "3B:98:11:40:FF:A5:03:01:01:01:AD:13:04", NULL, NULL, SC_CARD_TYPE_BELPIC_EID }, + { "3B:98:11:40:FF:A5:03:01:01:01:AD:13:04", NULL, NULL, SC_CARD_TYPE_BELPIC_EID, 0, NULL }, /* Applet beta 2 */ - { "3B:68:00:00:29:05:01:02:01:AD:13:03", NULL, NULL, SC_CARD_TYPE_BELPIC_EID }, + { "3B:68:00:00:29:05:01:02:01:AD:13:03", NULL, NULL, SC_CARD_TYPE_BELPIC_EID, 0, NULL }, #endif - { NULL } + { NULL, NULL, NULL, 0, 0, NULL } }; struct belpic_priv_data { @@ -174,7 +174,8 @@ static struct sc_card_operations belpic_ops; static struct sc_card_driver belpic_drv = { "Belpic cards", "belpic", - &belpic_ops + &belpic_ops, + NULL, 0, NULL }; static const struct sc_card_operations *iso_ops = NULL; diff --git a/src/libopensc/card-default.c b/src/libopensc/card-default.c index bf40c62e..0b699b79 100644 --- a/src/libopensc/card-default.c +++ b/src/libopensc/card-default.c @@ -25,7 +25,8 @@ static struct sc_card_operations default_ops; static struct sc_card_driver default_drv = { "Default driver for unknown cards", "default", - &default_ops + &default_ops, + NULL, 0, NULL }; static int default_finish(sc_card_t *card) diff --git a/src/libopensc/card-emv.c b/src/libopensc/card-emv.c index da1d9635..b3d2417b 100644 --- a/src/libopensc/card-emv.c +++ b/src/libopensc/card-emv.c @@ -25,7 +25,8 @@ static struct sc_card_operations emv_ops; static struct sc_card_driver emv_drv = { "EMV compatible cards", "emv", - &emv_ops + &emv_ops, + NULL, 0, NULL }; static int emv_finish(sc_card_t *card) diff --git a/src/libopensc/card-etoken.c b/src/libopensc/card-etoken.c index 80ffad30..8bf8bd5a 100644 --- a/src/libopensc/card-etoken.c +++ b/src/libopensc/card-etoken.c @@ -37,25 +37,26 @@ struct sc_card_operations etoken_ops; static struct sc_card_driver etoken_drv = { "Siemens CardOS", "etoken", - &etoken_ops + &etoken_ops, + NULL, 0, NULL }; static struct sc_atr_table etoken_atrs[] = { /* 4.0 */ - { "3b:e2:00:ff:c1:10:31:fe:55:c8:02:9c", NULL, NULL, SC_CARD_TYPE_ETOKEN_GENERIC }, + { "3b:e2:00:ff:c1:10:31:fe:55:c8:02:9c", NULL, NULL, SC_CARD_TYPE_ETOKEN_GENERIC, 0, NULL }, /* 4.01 */ - { "3b:f2:98:00:ff:c1:10:31:fe:55:c8:03:15", NULL, NULL, SC_CARD_TYPE_ETOKEN_GENERIC }, + { "3b:f2:98:00:ff:c1:10:31:fe:55:c8:03:15", NULL, NULL, SC_CARD_TYPE_ETOKEN_GENERIC, 0, NULL }, /* 4.01a */ - { "3b:f2:98:00:ff:c1:10:31:fe:55:c8:04:12", NULL, NULL, SC_CARD_TYPE_ETOKEN_GENERIC }, + { "3b:f2:98:00:ff:c1:10:31:fe:55:c8:04:12", NULL, NULL, SC_CARD_TYPE_ETOKEN_GENERIC, 0, NULL }, /* aladdin etoken pro 64 - aj: not compatible :/ */ - /* { "3b f2 18 00 ff c1 0a 31 fe 55 c8 06 8a", NULL, NULL, SC_CARD_TYPE_ETOKEN_GENERIC }, */ + /* { "3b f2 18 00 ff c1 0a 31 fe 55 c8 06 8a", NULL, NULL, SC_CARD_TYPE_ETOKEN_GENERIC, 0, NULL }, */ /* Italian eID card, postecert */ - { "3b:e9:00:ff:c1:10:31:fe:55:00:64:05:00:c8:02:31:80:00:47", NULL, NULL, SC_CARD_TYPE_ETOKEN_GENERIC }, + { "3b:e9:00:ff:c1:10:31:fe:55:00:64:05:00:c8:02:31:80:00:47", NULL, NULL, SC_CARD_TYPE_ETOKEN_GENERIC, 0, NULL }, /* Italian eID card, infocamere */ - { "3b:fb:98:00:ff:c1:10:31:fe:55:00:64:05:20:47:03:31:80:00:90:00:f3", NULL, NULL, SC_CARD_TYPE_ETOKEN_GENERIC }, + { "3b:fb:98:00:ff:c1:10:31:fe:55:00:64:05:20:47:03:31:80:00:90:00:f3", NULL, NULL, SC_CARD_TYPE_ETOKEN_GENERIC, 0, NULL }, /* Another Italian InfocamereCard */ - { "3b:fc:98:00:ff:c1:10:31:fe:55:c8:03:49:6e:66:6f:63:61:6d:65:72:65:28", NULL, NULL, SC_CARD_TYPE_ETOKEN_GENERIC }, - { NULL } + { "3b:fc:98:00:ff:c1:10:31:fe:55:c8:03:49:6e:66:6f:63:61:6d:65:72:65:28", NULL, NULL, SC_CARD_TYPE_ETOKEN_GENERIC, 0, NULL }, + { NULL, NULL, NULL, 0, 0, NULL } }; static int etoken_finish(sc_card_t *card) diff --git a/src/libopensc/card-flex.c b/src/libopensc/card-flex.c index f4e86c95..c5b13c26 100644 --- a/src/libopensc/card-flex.c +++ b/src/libopensc/card-flex.c @@ -28,50 +28,50 @@ static struct sc_atr_table flex_atrs[] = { /* Cryptoflex */ /* 8k win2000 */ - { "3b:95:15:40:20:68:01:02:00:00", NULL, "Cryptoflex 8K", SC_CARD_TYPE_FLEX_CRYPTO, 0 }, + { "3b:95:15:40:20:68:01:02:00:00", NULL, "Cryptoflex 8K", SC_CARD_TYPE_FLEX_CRYPTO, 0, NULL }, /* 8k */ - { "3B:95:15:40:FF:68:01:02:02:01", NULL, "Cryptoflex 8K", SC_CARD_TYPE_FLEX_CRYPTO, 0 }, + { "3B:95:15:40:FF:68:01:02:02:01", NULL, "Cryptoflex 8K", SC_CARD_TYPE_FLEX_CRYPTO, 0, NULL }, /* 8k */ - { "3B:95:15:40:FF:68:01:02:02:04", NULL, "Cryptoflex 8K", SC_CARD_TYPE_FLEX_CRYPTO, 0 }, + { "3B:95:15:40:FF:68:01:02:02:04", NULL, "Cryptoflex 8K", SC_CARD_TYPE_FLEX_CRYPTO, 0, NULL }, /* 8k */ - { "3B:85:40:20:68:01:01:05:01", NULL, "Cryptoflex 8K", SC_CARD_TYPE_FLEX_CRYPTO, 0 }, + { "3B:85:40:20:68:01:01:05:01", NULL, "Cryptoflex 8K", SC_CARD_TYPE_FLEX_CRYPTO, 0, NULL }, /* 16k */ - { "3B:95:94:40:FF:63:01:01:02:01", NULL, "Cryptoflex 16K", SC_CARD_TYPE_FLEX_CRYPTO, SC_CARD_FLAG_ONBOARD_KEY_GEN }, + { "3B:95:94:40:FF:63:01:01:02:01", NULL, "Cryptoflex 16K", SC_CARD_TYPE_FLEX_CRYPTO, SC_CARD_FLAG_ONBOARD_KEY_GEN, NULL }, /* 32K v4 */ - { "3B:95:18:40:FF:64:02:01:01:02", NULL, "Cryptoflex 32K v4", SC_CARD_TYPE_FLEX_CRYPTO, SC_CARD_FLAG_ONBOARD_KEY_GEN }, + { "3B:95:18:40:FF:64:02:01:01:02", NULL, "Cryptoflex 32K v4", SC_CARD_TYPE_FLEX_CRYPTO, SC_CARD_FLAG_ONBOARD_KEY_GEN, NULL }, /* 32K e-gate */ - { "3B:95:18:40:FF:62:01:02:01:04", NULL, "Cryptoflex 32K e-gate", SC_CARD_TYPE_FLEX_CRYPTO, SC_CARD_FLAG_ONBOARD_KEY_GEN }, + { "3B:95:18:40:FF:62:01:02:01:04", NULL, "Cryptoflex 32K e-gate", SC_CARD_TYPE_FLEX_CRYPTO, SC_CARD_FLAG_ONBOARD_KEY_GEN, NULL }, /* 32K e-gate v4 */ - { "3B:95:18:40:FF:62:04:01:01:05", NULL, "Cryptoflex 32K e-gate v4", SC_CARD_TYPE_FLEX_CRYPTO, SC_CARD_FLAG_ONBOARD_KEY_GEN }, + { "3B:95:18:40:FF:62:04:01:01:05", NULL, "Cryptoflex 32K e-gate v4", SC_CARD_TYPE_FLEX_CRYPTO, SC_CARD_FLAG_ONBOARD_KEY_GEN, NULL }, - { "3B:E2:00:00:40:20:49:06", NULL, "Cryptoflex", SC_CARD_TYPE_FLEX_CRYPTO, 0 }, + { "3B:E2:00:00:40:20:49:06", NULL, "Cryptoflex", SC_CARD_TYPE_FLEX_CRYPTO, 0, NULL }, /* + full DES option */ - { "3B:E2:00:00:40:20:49:05", NULL, "Cryptoflex", SC_CARD_TYPE_FLEX_CRYPTO, 0 }, + { "3B:E2:00:00:40:20:49:05", NULL, "Cryptoflex", SC_CARD_TYPE_FLEX_CRYPTO, 0, NULL }, /* + Key Generation */ - { "3B:E2:00:00:40:20:49:07", NULL, "Cryptoflex", SC_CARD_TYPE_FLEX_CRYPTO, SC_CARD_FLAG_ONBOARD_KEY_GEN }, + { "3B:E2:00:00:40:20:49:07", NULL, "Cryptoflex", SC_CARD_TYPE_FLEX_CRYPTO, SC_CARD_FLAG_ONBOARD_KEY_GEN, NULL }, /* + Key Generation */ - { "3B:85:40:20:68:01:01:03:05", NULL, "Cryptoflex", SC_CARD_TYPE_FLEX_CRYPTO, SC_CARD_FLAG_ONBOARD_KEY_GEN }, + { "3B:85:40:20:68:01:01:03:05", NULL, "Cryptoflex", SC_CARD_TYPE_FLEX_CRYPTO, SC_CARD_FLAG_ONBOARD_KEY_GEN, NULL }, /* Multiflex */ /* 3K */ - { "3B:02:14:50", NULL, "Multiflex 3K", SC_CARD_TYPE_FLEX_MULTI, 0 }, + { "3B:02:14:50", NULL, "Multiflex 3K", SC_CARD_TYPE_FLEX_MULTI, 0, NULL }, /* 4K */ - { "3B:19:14:55:90:01:02:01:00:05:04:B0", NULL, "Multiflex 4K", SC_CARD_TYPE_FLEX_MULTI, 0 }, + { "3B:19:14:55:90:01:02:01:00:05:04:B0", NULL, "Multiflex 4K", SC_CARD_TYPE_FLEX_MULTI, 0, NULL }, /* 8K */ - { "3B:32:15:00:06:80", NULL, "Multiflex 8K", SC_CARD_TYPE_FLEX_MULTI, 0 }, + { "3B:32:15:00:06:80", NULL, "Multiflex 8K", SC_CARD_TYPE_FLEX_MULTI, 0, NULL }, /* 8K + full DES option */ - { "3B:32:15:00:06:95", NULL, "Multiflex 8K", SC_CARD_TYPE_FLEX_MULTI, 0 }, + { "3B:32:15:00:06:95", NULL, "Multiflex 8K", SC_CARD_TYPE_FLEX_MULTI, 0, NULL }, /* 8K */ - { "3B:19:14:59:01:01:0F:01:00:05:08:B0", NULL, "Multiflex 8K", SC_CARD_TYPE_FLEX_MULTI, 0 }, + { "3B:19:14:59:01:01:0F:01:00:05:08:B0", NULL, "Multiflex 8K", SC_CARD_TYPE_FLEX_MULTI, 0, NULL }, /* 8K */ - { "3B:19:14:55:90:01:01:01:00:05:08:B0", NULL, "Multiflex 8K", SC_CARD_TYPE_FLEX_MULTI, 0 }, + { "3B:19:14:55:90:01:01:01:00:05:08:B0", NULL, "Multiflex 8K", SC_CARD_TYPE_FLEX_MULTI, 0, NULL }, /* Cyberflex Access */ /* Crypto */ - { "3B:16:94:81:10:06:01:81:3F", NULL, "Cyberflex Access", SC_CARD_TYPE_FLEX_CYBER, 0 }, + { "3B:16:94:81:10:06:01:81:3F", NULL, "Cyberflex Access", SC_CARD_TYPE_FLEX_CYBER, 0, NULL }, /* Aug. Crypto */ - { "3B:16:94:81:10:06:01:81:2F", NULL, "Cyberflex Access", SC_CARD_TYPE_FLEX_CYBER, 0 }, - { NULL } + { "3B:16:94:81:10:06:01:81:2F", NULL, "Cyberflex Access", SC_CARD_TYPE_FLEX_CYBER, 0, NULL }, + { NULL, NULL, NULL, 0, 0, NULL } }; struct flex_private_data { @@ -91,12 +91,14 @@ static struct sc_card_operations *iso_ops; static struct sc_card_driver cryptoflex_drv = { "Schlumberger Multiflex/Cryptoflex", "flex", - &cryptoflex_ops + &cryptoflex_ops, + NULL, 0, NULL }; static struct sc_card_driver cyberflex_drv = { "Schlumberger Cyberflex", "cyberflex", - &cyberflex_ops + &cyberflex_ops, + NULL, 0, NULL }; static int flex_finish(sc_card_t *card) diff --git a/src/libopensc/card-gpk.c b/src/libopensc/card-gpk.c index df9f1a74..ab77bafb 100644 --- a/src/libopensc/card-gpk.c +++ b/src/libopensc/card-gpk.c @@ -90,15 +90,15 @@ static int gpk_get_info(sc_card_t *, int, int, u8 *, size_t); * ATRs of GPK4000 cards courtesy of libscez */ static struct sc_atr_table gpk_atrs[] = { - { "3B:27:00:80:65:A2:04:01:01:37", NULL, "GPK 4K", SC_CARD_TYPE_GPK_GPK4000_s }, - { "3B:27:00:80:65:A2:05:01:01:37", NULL, "GPK 4K", SC_CARD_TYPE_GPK_GPK4000_sp }, - { "3B:27:00:80:65:A2:0C:01:01:37", NULL, "GPK 4K", SC_CARD_TYPE_GPK_GPK4000_su256 }, - { "3B:A7:00:40:14:80:65:A2:14:01:01:37", NULL, "GPK 4K", SC_CARD_TYPE_GPK_GPK4000_sdo }, - { "3B:A7:00:40:18:80:65:A2:08:01:01:52", NULL, "GPK 8K", SC_CARD_TYPE_GPK_GPK8000_8K }, - { "3B:A7:00:40:18:80:65:A2:09:01:01:52", NULL, "GPK 8K", SC_CARD_TYPE_GPK_GPK8000_16K }, - { "3B:A7:00:40:18:80:65:A2:09:01:02:52", NULL, "GPK 16K", SC_CARD_TYPE_GPK_GPK16000 }, - { "3B:A7:00:40:18:80:65:A2:09:01:03:52", NULL, "GPK 16K", SC_CARD_TYPE_GPK_GPK16000 }, - { NULL } + { "3B:27:00:80:65:A2:04:01:01:37", NULL, "GPK 4K", SC_CARD_TYPE_GPK_GPK4000_s, 0, NULL }, + { "3B:27:00:80:65:A2:05:01:01:37", NULL, "GPK 4K", SC_CARD_TYPE_GPK_GPK4000_sp, 0, NULL }, + { "3B:27:00:80:65:A2:0C:01:01:37", NULL, "GPK 4K", SC_CARD_TYPE_GPK_GPK4000_su256, 0, NULL }, + { "3B:A7:00:40:14:80:65:A2:14:01:01:37", NULL, "GPK 4K", SC_CARD_TYPE_GPK_GPK4000_sdo, 0, NULL }, + { "3B:A7:00:40:18:80:65:A2:08:01:01:52", NULL, "GPK 8K", SC_CARD_TYPE_GPK_GPK8000_8K, 0, NULL }, + { "3B:A7:00:40:18:80:65:A2:09:01:01:52", NULL, "GPK 8K", SC_CARD_TYPE_GPK_GPK8000_16K, 0, NULL }, + { "3B:A7:00:40:18:80:65:A2:09:01:02:52", NULL, "GPK 16K", SC_CARD_TYPE_GPK_GPK16000, 0, NULL }, + { "3B:A7:00:40:18:80:65:A2:09:01:03:52", NULL, "GPK 16K", SC_CARD_TYPE_GPK_GPK16000, 0, NULL }, + { NULL, NULL, NULL, 0, 0, NULL } }; /* @@ -108,7 +108,8 @@ static struct sc_card_operations gpk_ops, *iso_ops; static struct sc_card_driver gpk_drv = { "Gemplus GPK", "gpk", - &gpk_ops + &gpk_ops, + NULL, 0, NULL }; /* diff --git a/src/libopensc/card-mcrd.c b/src/libopensc/card-mcrd.c index b91492db..cf5afaab 100644 --- a/src/libopensc/card-mcrd.c +++ b/src/libopensc/card-mcrd.c @@ -31,17 +31,18 @@ #include "esteid.h" static struct sc_atr_table mcrd_atrs[] = { - { "3B:FF:94:00:FF:80:B1:FE:45:1F:03:00:68:D2:76:00:00:28:FF:05:1E:31:80:00:90:00:23", NULL, "German BMI", SC_CARD_TYPE_MCRD_GENERIC }, - { "3B:FE:94:00:FF:80:B1:FA:45:1F:03:45:73:74:45:49:44:20:76:65:72:20:31:2E:30:43", NULL, "EstEID (cold)", SC_CARD_TYPE_MCRD_ESTEID }, - { "3B:6E:00:FF:45:73:74:45:49:44:20:76:65:72:20:31:2E:30", NULL, "EstEID (warm)", SC_CARD_TYPE_MCRD_ESTEID }, - { NULL } + { "3B:FF:94:00:FF:80:B1:FE:45:1F:03:00:68:D2:76:00:00:28:FF:05:1E:31:80:00:90:00:23", NULL, "German BMI", SC_CARD_TYPE_MCRD_GENERIC, 0, NULL }, + { "3B:FE:94:00:FF:80:B1:FA:45:1F:03:45:73:74:45:49:44:20:76:65:72:20:31:2E:30:43", NULL, "EstEID (cold)", SC_CARD_TYPE_MCRD_ESTEID, 0, NULL }, + { "3B:6E:00:FF:45:73:74:45:49:44:20:76:65:72:20:31:2E:30", NULL, "EstEID (warm)", SC_CARD_TYPE_MCRD_ESTEID, 0, NULL }, + { NULL, NULL, NULL, 0, 0, NULL } }; static struct sc_card_operations mcrd_ops; static struct sc_card_driver mcrd_drv = { "MICARDO 2.1", "mcrd", - &mcrd_ops + &mcrd_ops, + NULL, 0, NULL }; static const struct sc_card_operations *iso_ops = NULL; diff --git a/src/libopensc/card-miocos.c b/src/libopensc/card-miocos.c index 2828a161..9114e85a 100644 --- a/src/libopensc/card-miocos.c +++ b/src/libopensc/card-miocos.c @@ -26,17 +26,18 @@ static struct sc_atr_table miocos_atrs[] = { /* Test card with 32 kB memory */ - { "3B:9D:94:40:23:00:68:10:11:4D:69:6F:43:4F:53:00:90:00", NULL, NULL, SC_CARD_TYPE_MIOCOS_GENERIC }, + { "3B:9D:94:40:23:00:68:10:11:4D:69:6F:43:4F:53:00:90:00", NULL, NULL, SC_CARD_TYPE_MIOCOS_GENERIC, 0, NULL }, /* Test card with 64 kB memory */ - { "3B:9D:94:40:23:00:68:20:01:4D:69:6F:43:4F:53:00:90:00", NULL, NULL, SC_CARD_TYPE_MIOCOS_GENERIC }, - { NULL } + { "3B:9D:94:40:23:00:68:20:01:4D:69:6F:43:4F:53:00:90:00", NULL, NULL, SC_CARD_TYPE_MIOCOS_GENERIC, 0, NULL }, + { NULL, NULL, NULL, 0, 0, NULL } }; static struct sc_card_operations miocos_ops; static struct sc_card_driver miocos_drv = { "MioCOS 1.1", "miocos", - &miocos_ops + &miocos_ops, + NULL, 0, NULL }; static int miocos_finish(sc_card_t *card) diff --git a/src/libopensc/card-oberthur.c b/src/libopensc/card-oberthur.c index a4dd7756..fc8a51ff 100644 --- a/src/libopensc/card-oberthur.c +++ b/src/libopensc/card-oberthur.c @@ -42,15 +42,15 @@ static struct sc_atr_table oberthur_atrs[] = { #if 0 - { "3B:7F:18:00:00:00:31:C0:73:9E:01:0B:64:52:D9:04:00:82:90:00", NULL, "Oberthur 32k", SC_CARD_TYPE_OBERTHUR_32K }, - { "3B:7F:18:00:00:00:31:C0:73:9E:01:0B:64:52:D9:05:00:82:90:00", NULL, "Oberthur 32k BIO", SC_CARD_TYPE_OBERTHUR_32K_BIO }, + { "3B:7F:18:00:00:00:31:C0:73:9E:01:0B:64:52:D9:04:00:82:90:00", NULL, "Oberthur 32k", SC_CARD_TYPE_OBERTHUR_32K, 0, NULL }, + { "3B:7F:18:00:00:00:31:C0:73:9E:01:0B:64:52:D9:05:00:82:90:00", NULL, "Oberthur 32k BIO", SC_CARD_TYPE_OBERTHUR_32K_BIO, 0, NULL }, #endif - { "3B:7D:18:00:00:00:31:80:71:8E:64:77:E3:01:00:82:90:00", NULL, "Oberthur 64k v4/2.1.1", SC_CARD_TYPE_OBERTHUR_64K }, - { "3B:7D:18:00:00:00:31:80:71:8E:64:77:E3:02:00:82:90:00", NULL, "Oberthur 64k v4/2.1.1", SC_CARD_TYPE_OBERTHUR_64K }, - { "3B:7D:11:00:00:00:31:80:71:8E:64:77:E3:01:00:82:90:00", NULL, "Oberthur 64k v5", SC_CARD_TYPE_OBERTHUR_64K }, - { "3B:7D:11:00:00:00:31:80:71:8E:64:77:E3:02:00:82:90:00", NULL, "Oberthur 64k v5/2.2.0", SC_CARD_TYPE_OBERTHUR_64K }, - { "3B:7B:18:00:00:00:31:C0:64:77:E3:03:00:82:90:00", NULL, "Oberthur 64k CosmopolIC v5.2/2.2", SC_CARD_TYPE_OBERTHUR_64K }, - { NULL } + { "3B:7D:18:00:00:00:31:80:71:8E:64:77:E3:01:00:82:90:00", NULL, "Oberthur 64k v4/2.1.1", SC_CARD_TYPE_OBERTHUR_64K, 0, NULL }, + { "3B:7D:18:00:00:00:31:80:71:8E:64:77:E3:02:00:82:90:00", NULL, "Oberthur 64k v4/2.1.1", SC_CARD_TYPE_OBERTHUR_64K, 0, NULL }, + { "3B:7D:11:00:00:00:31:80:71:8E:64:77:E3:01:00:82:90:00", NULL, "Oberthur 64k v5", SC_CARD_TYPE_OBERTHUR_64K, 0, NULL }, + { "3B:7D:11:00:00:00:31:80:71:8E:64:77:E3:02:00:82:90:00", NULL, "Oberthur 64k v5/2.2.0", SC_CARD_TYPE_OBERTHUR_64K, 0, NULL }, + { "3B:7B:18:00:00:00:31:C0:64:77:E3:03:00:82:90:00", NULL, "Oberthur 64k CosmopolIC v5.2/2.2", SC_CARD_TYPE_OBERTHUR_64K, 0, NULL }, + { NULL, NULL, NULL, 0, 0, NULL } }; struct NTLV { @@ -120,7 +120,8 @@ static struct sc_card_operations *iso_ops; static struct sc_card_driver auth_drv = { "Oberthur AuthentIC.v2/CosmopolIC.v4", "oberthur", - &auth_ops + &auth_ops, + NULL, 0, NULL }; static int auth_get_pin_reference (sc_card_t *card, @@ -1858,6 +1859,7 @@ auth_init_pin_info(sc_card_t *card, struct sc_pin_cmd_pin *pin, } } +#if 0 static int auth_pin_cmd(struct sc_card *card, struct sc_pin_cmd_data *data, int *tries_left) @@ -1871,6 +1873,7 @@ auth_pin_cmd(struct sc_card *card, struct sc_pin_cmd_data *data, data->pin_reference = pin_ref; return iso_ops->pin_cmd(card, data, tries_left); } +#endif static int auth_verify(sc_card_t *card, unsigned int type, diff --git a/src/libopensc/card-openpgp.c b/src/libopensc/card-openpgp.c index d499ed74..6af3834e 100644 --- a/src/libopensc/card-openpgp.c +++ b/src/libopensc/card-openpgp.c @@ -26,8 +26,8 @@ #include static struct sc_atr_table pgp_atrs[] = { - { "3b:fa:13:00:ff:81:31:80:45:00:31:c1:73:c0:01:00:00:90:00:b1", NULL, NULL, SC_CARD_TYPE_OPENPGP_GENERIC }, - { NULL } + { "3b:fa:13:00:ff:81:31:80:45:00:31:c1:73:c0:01:00:00:90:00:b1", NULL, NULL, SC_CARD_TYPE_OPENPGP_GENERIC, 0, NULL }, + { NULL, NULL, NULL, 0, 0, NULL } }; static struct sc_card_operations *iso_ops; @@ -35,7 +35,8 @@ static struct sc_card_operations pgp_ops; static struct sc_card_driver pgp_drv = { "OpenPGP card", "openpgp", - &pgp_ops + &pgp_ops, + NULL, 0, NULL }; /* @@ -93,7 +94,7 @@ static struct do_info pgp_objects[] = { { 0xb801, 0, 0, pgp_get_pubkey_pem,NULL }, { 0xa401, 0, 0, pgp_get_pubkey_pem,NULL }, - { 0 }, + { 0, 0, 0, NULL, NULL }, }; #define DRVDATA(card) ((struct pgp_priv_data *) ((card)->drv_data)) diff --git a/src/libopensc/card-setcos.c b/src/libopensc/card-setcos.c index b923c692..f7a05def 100644 --- a/src/libopensc/card-setcos.c +++ b/src/libopensc/card-setcos.c @@ -442,7 +442,7 @@ static int setcos_create_file_44(sc_card_t *card, sc_file_t *file) bBuf[len++] = bCommands_always; } /* Add commands that require pins */ - for (i = 0; i < sizeof(bCommands_pin) && pins[i] != -1; i++) { + for (i = 0; i < (int)sizeof(bCommands_pin) && pins[i] != -1; i++) { bBuf[len++] = 2; bBuf[len++] = bCommands_pin[i]; bBuf[len++] = pins[i] & 0x07; /* pin ref */ diff --git a/src/libopensc/card-starcos.c b/src/libopensc/card-starcos.c index 073b9da2..01499541 100644 --- a/src/libopensc/card-starcos.c +++ b/src/libopensc/card-starcos.c @@ -25,9 +25,9 @@ #include static struct sc_atr_table starcos_atrs[] = { - { "3B:B7:94:00:c0:24:31:fe:65:53:50:4b:32:33:90:00:b4", NULL, NULL, SC_CARD_TYPE_STARCOS_GENERIC }, - { "3B:B7:94:00:81:31:fe:65:53:50:4b:32:33:90:00:d1", NULL, NULL, SC_CARD_TYPE_STARCOS_GENERIC }, - { NULL } + { "3B:B7:94:00:c0:24:31:fe:65:53:50:4b:32:33:90:00:b4", NULL, NULL, SC_CARD_TYPE_STARCOS_GENERIC, 0, NULL }, + { "3B:B7:94:00:81:31:fe:65:53:50:4b:32:33:90:00:d1", NULL, NULL, SC_CARD_TYPE_STARCOS_GENERIC, 0, NULL }, + { NULL, NULL, NULL, 0, 0, NULL } }; static struct sc_card_operations starcos_ops; @@ -37,7 +37,7 @@ static struct sc_card_driver starcos_drv = { "STARCOS SPK 2.3", "starcos", &starcos_ops, - NULL, 0 + NULL, 0, NULL }; static const struct sc_card_error starcos_errors[] = diff --git a/src/libopensc/card-tcos.c b/src/libopensc/card-tcos.c index 94ea7c38..ced25271 100644 --- a/src/libopensc/card-tcos.c +++ b/src/libopensc/card-tcos.c @@ -29,19 +29,20 @@ static struct sc_atr_table tcos_atrs[] = { /* SLE44 */ - { "3B:BA:13:00:81:31:86:5D:00:64:05:0A:02:01:31:80:90:00:8B", NULL, NULL, SC_CARD_TYPE_TCOS_GENERIC }, + { "3B:BA:13:00:81:31:86:5D:00:64:05:0A:02:01:31:80:90:00:8B", NULL, NULL, SC_CARD_TYPE_TCOS_GENERIC, 0, NULL }, /* SLE66S */ - { "3B:BA:14:00:81:31:86:5D:00:64:05:14:02:02:31:80:90:00:91", NULL, NULL, SC_CARD_TYPE_TCOS_GENERIC }, + { "3B:BA:14:00:81:31:86:5D:00:64:05:14:02:02:31:80:90:00:91", NULL, NULL, SC_CARD_TYPE_TCOS_GENERIC, 0, NULL }, /* SLE66P */ - { "3B:BA:96:00:81:31:86:5D:00:64:05:60:02:03:31:80:90:00:66", NULL, NULL, SC_CARD_TYPE_TCOS_GENERIC }, - { NULL } + { "3B:BA:96:00:81:31:86:5D:00:64:05:60:02:03:31:80:90:00:66", NULL, NULL, SC_CARD_TYPE_TCOS_GENERIC, 0, NULL }, + { NULL, NULL, NULL, 0, 0, NULL } }; static struct sc_card_operations tcos_ops; static struct sc_card_driver tcos_drv = { "TCOS 2.0", "tcos", - &tcos_ops + &tcos_ops, + NULL, 0, NULL }; static const struct sc_card_operations *iso_ops = NULL; @@ -695,6 +696,7 @@ static int tcos_restore_security_env(sc_card_t *card, int se_num) static int tcos_compute_signature(sc_card_t *card, const u8 * data, size_t datalen, u8 * out, size_t outlen) { int r; + size_t i; sc_apdu_t apdu; u8 rbuf[SC_MAX_APDU_BUFFER_SIZE]; u8 sbuf[SC_MAX_APDU_BUFFER_SIZE]; @@ -709,7 +711,8 @@ static int tcos_compute_signature(sc_card_t *card, const u8 * data, size_t datal } else { unsigned int keylen=128; /* FIXME: use correct key-size */ sc_format_apdu(card, &apdu, SC_APDU_CASE_4_SHORT, 0x2A, 0x80, 0x84); - for(r=0;r