Your message dated Wed, 25 Mar 2009 13:47:04 +0000
with message-id <[email protected]>
and subject line Bug#520283: fixed in libchipcard 4.2.4-3
has caused the Debian Bug report #520283,
regarding libccid driver improvement
to be marked as done.
This means that you claim that the problem has been dealt with.
If this is not the case it is now your responsibility to reopen the
Bug report if necessary, and/or fix the problem forthwith.
(NB: If you are a system administrator and have no idea what this
message is talking about, this may indicate a serious mail system
misconfiguration somewhere. Please contact [email protected]
immediately.)
--
520283: http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=520283
Debian Bug Tracking System
Contact [email protected] with problems
--- Begin Message ---
Package: libchipcard
Version: 4.2.4-2
Severity: normal
Tags: patch
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1
Hi Micha,
the patch appended to
https://devel.aqbanking.de/trac/libchipcard/ticket/15
makes the GemPC Express reader, and probably other libccid based
readers, work.
Thanks,
Joachim
- -- System Information:
Debian Release: squeeze/sid
APT prefers unstable
APT policy: (500, 'unstable'), (1, 'experimental')
Architecture: amd64 (x86_64)
Kernel: Linux 2.6.28-1-amd64 (SMP w/2 CPU cores)
Locale: LANG=de_DE.UTF-8, LC_CTYPE=de_DE.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/bash
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.9 (GNU/Linux)
iEYEARECAAYFAknBJKIACgkQ9ijrk0dDIGyRqwCeKS4845COFUTb2TEh/S7gCobZ
ds0AoMIYEtNq2CHYm3qxzatuMbvjXnrO
=lBzq
-----END PGP SIGNATURE-----
#! /bin/sh /usr/share/dpatch/dpatch-run
## 20_gemexpress.dpatch by Joachim Breitner <[email protected]>
##
## All lines beginning with `## DP:' are a description of the patch.
## DP: No description.
@DPATCH@
diff -urNad libchipcard-4.2.4~/data/drivers/posix/ccid_ifd/ccid_ifd.xml libchipcard-4.2.4/data/drivers/posix/ccid_ifd/ccid_ifd.xml
--- libchipcard-4.2.4~/data/drivers/posix/ccid_ifd/ccid_ifd.xml 2009-01-22 00:20:49.000000000 +0100
+++ libchipcard-4.2.4/data/drivers/posix/ccid_ifd/ccid_ifd.xml 2009-03-18 10:43:25.000000000 +0100
@@ -47,6 +47,13 @@
<readers>
+ <reader name="ccid_gempc_express" busType="UsbRaw"
+ addressType="devicePath"
+ devicePathTmpl="usb:$(vendorId:04x)/$(productId:04x):libusb:$(busName):$(deviceName)"
+ vendor="0x08e6" product="0x34ec" >
+ <short>GemPC Express</short>
+ </reader>
+
<reader name="ccid_gempc_key" busType="UsbRaw"
addressType="devicePath"
devicePathTmpl="usb:$(vendorId:04x)/$(productId:04x):libusb:$(busName):$(deviceName)"
diff -urNad libchipcard-4.2.4~/src/drivers/ifd/driverifd.c libchipcard-4.2.4/src/drivers/ifd/driverifd.c
--- libchipcard-4.2.4~/src/drivers/ifd/driverifd.c 2008-04-09 09:39:21.000000000 +0200
+++ libchipcard-4.2.4/src/drivers/ifd/driverifd.c 2009-03-18 10:43:25.000000000 +0100
@@ -285,6 +285,9 @@
case CCID_ICC_NOT_PRESENT:
s="Card not present";
break;
+ case CCID_COMMUNICATION_ERROR:
+ s="Communication error";
+ break;
default:
s="Unknow error code";
};
@@ -511,7 +514,7 @@
-long DriverIFD__ConnectSlot(LCD_DRIVER *d, LCD_SLOT *sl) {
+uint32_t DriverIFD_ConnectSlot(LCD_DRIVER *d, LCD_SLOT *sl) {
long retval;
unsigned char atrBuffer[300];
DWORD atrLen;
@@ -584,6 +587,27 @@
LCD_Slot_AddFlags(sl, LCD_SLOT_FLAGS_PROCESSORCARD);
}
LCD_Slot_SetProtocolInfo(sl, proto);
+
+ int ccid_proto;
+ switch (proto) {
+ case 0: ccid_proto = 1; break;
+ case 1: ccid_proto = 2; break;
+ default:
+ DBG_ERROR(LCD_Reader_GetLogger(LCD_Slot_GetReader(sl)),
+ "CCID: Unkown Protocol in ATR: T=%d", proto);
+ break;
+ }
+ DBG_INFO(LCD_Reader_GetLogger(LCD_Slot_GetReader(sl)),
+ "CCID: Setting Protocol T=%d", proto);
+ retval=dct->setProtoFn(LCD_Slot_GetSlotNum(sl),
+ ccid_proto, 0, 0, 0, 0);
+ if (retval) {
+ DBG_ERROR(LCD_Reader_GetLogger(LCD_Slot_GetReader(sl)),
+ "CCID: Error setting protocol T=%d (%d)",
+ proto, (int)retval);
+ return retval;
+ }
+
}
else if (retval==CCID_ICC_NOT_PRESENT) {
DBG_NOTICE(LCD_Reader_GetLogger(r), "No card inserted");
@@ -600,57 +624,6 @@
return 0;
}
-
-
-uint32_t DriverIFD_ConnectSlot(LCD_DRIVER *d, LCD_SLOT *sl) {
- int i;
- DRIVER_IFD *dct;
- long retval;
-
- assert(d);
- dct=GWEN_INHERIT_GETDATA(LCD_DRIVER, DRIVER_IFD, d);
- assert(dct);
-
- retval=DriverIFD__ConnectSlot(d, sl);
- if (retval!=CCID_ERROR_POWER_ACTION) {
- DBG_INFO(LCD_Reader_GetLogger(LCD_Slot_GetReader(sl)),
- "CCID: Result is not POWER_ACTION (%d)",
- (int)retval);
- return retval;
- }
-
- if (dct->setProtoFn==NULL)
- return retval;
-
- /* try protocols 0 through 15 */
- for (i=0; i<16; i++) {
- /* set protocol bt don't change PTS */
- retval=dct->setProtoFn(LCD_Slot_GetSlotNum(sl),
- i, 0, 0, 0, 0);
- if (retval) {
- DBG_INFO(LCD_Reader_GetLogger(LCD_Slot_GetReader(sl)),
- "CCID: Error setting protocol %d (%d)",
- i, (int)retval);
- }
- else {
- retval=DriverIFD__ConnectSlot(d, sl);
- if (retval!=CCID_ERROR_POWER_ACTION) {
- DBG_INFO(LCD_Reader_GetLogger(LCD_Slot_GetReader(sl)),
- "CCID: Result is not POWER_ACTION (%d, proto=%d)",
- (int)retval, i);
- return retval;
- }
- }
- }
-
- /* assuming no card inserted */
- DBG_INFO(LCD_Reader_GetLogger(LCD_Slot_GetReader(sl)),
- "Assuming no card is inserted");
- return 0;
-}
-
-
-
uint32_t DriverIFD_DisconnectSlot(LCD_DRIVER *d, LCD_SLOT *sl) {
long retval;
unsigned char atrBuffer[300];
@@ -716,6 +689,29 @@
else if (retval==0) {
LCD_Slot_AddStatus(sl, LCD_SLOT_STATUS_CARD_INSERTED);
LCD_Slot_AddStatus(sl, LCD_SLOT_STATUS_CARD_CONNECTED);
+
+ int proto;
+ proto=DriverIFD_ExtractProtocolInfo(atrBuffer, atrLen);
+ // Or should it be read from LCD_Slot_GetProtocolInfo?
+ int ccid_proto;
+ switch (proto) {
+ case 0: ccid_proto = 1; break;
+ case 1: ccid_proto = 2; break;
+ default:
+ DBG_ERROR(LCD_Reader_GetLogger(LCD_Slot_GetReader(sl)),
+ "CCID: Unkown Protocol in ATR: T=%d", proto);
+ break;
+ }
+ DBG_INFO(LCD_Reader_GetLogger(LCD_Slot_GetReader(sl)),
+ "CCID: Setting Protocol T=%d", proto);
+ retval=dct->setProtoFn(LCD_Slot_GetSlotNum(sl),
+ ccid_proto, 0, 0, 0, 0);
+ if (retval) {
+ DBG_ERROR(LCD_Reader_GetLogger(LCD_Slot_GetReader(sl)),
+ "CCID: Error setting protocol T=%d (%d)",
+ proto, (int)retval);
+ return retval;
+ }
}
else {
DBG_NOTICE(LCD_Reader_GetLogger(LCD_Slot_GetReader(sl)),
--- End Message ---
--- Begin Message ---
Source: libchipcard
Source-Version: 4.2.4-3
We believe that the bug you reported is fixed in the latest version of
libchipcard, which is due to be installed in the Debian FTP archive:
libchipcard-ctapi0_4.2.4-3_i386.deb
to pool/main/libc/libchipcard/libchipcard-ctapi0_4.2.4-3_i386.deb
libchipcard-data_4.2.4-3_all.deb
to pool/main/libc/libchipcard/libchipcard-data_4.2.4-3_all.deb
libchipcard-dev_4.2.4-3_i386.deb
to pool/main/libc/libchipcard/libchipcard-dev_4.2.4-3_i386.deb
libchipcard-libgwenhywfar47-plugins_4.2.4-3_i386.deb
to
pool/main/libc/libchipcard/libchipcard-libgwenhywfar47-plugins_4.2.4-3_i386.deb
libchipcard-tools_4.2.4-3_i386.deb
to pool/main/libc/libchipcard/libchipcard-tools_4.2.4-3_i386.deb
libchipcard_4.2.4-3.diff.gz
to pool/main/libc/libchipcard/libchipcard_4.2.4-3.diff.gz
libchipcard_4.2.4-3.dsc
to pool/main/libc/libchipcard/libchipcard_4.2.4-3.dsc
libchipcardc2_4.2.4-3_i386.deb
to pool/main/libc/libchipcard/libchipcardc2_4.2.4-3_i386.deb
libchipcardd0_4.2.4-3_i386.deb
to pool/main/libc/libchipcard/libchipcardd0_4.2.4-3_i386.deb
A summary of the changes between this version and the previous one is
attached.
Thank you for reporting the bug, which will now be closed. If you
have further comments please address them to [email protected],
and the maintainer will reopen the bug report if appropriate.
Debian distribution maintenance software
pp.
Micha Lenk <[email protected]> (supplier of updated libchipcard package)
(This message was generated automatically at their request; if you
believe that there is a problem with it please contact the archive
administrators by mailing [email protected])
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1
Format: 1.8
Date: Wed, 25 Mar 2009 14:28:55 +0100
Source: libchipcard
Binary: libchipcard-dev libchipcardc2 libchipcardd0 libchipcard-ctapi0
libchipcard-data libchipcard-tools libchipcard-libgwenhywfar47-plugins
Architecture: source i386 all
Version: 4.2.4-3
Distribution: unstable
Urgency: low
Maintainer: Micha Lenk <[email protected]>
Changed-By: Micha Lenk <[email protected]>
Description:
libchipcard-ctapi0 - library for accessing smartcards
libchipcard-data - configuration files for libchipcard
libchipcard-dev - API for smartcard readers
libchipcard-libgwenhywfar47-plugins - crypttoken plugin to libgwenhywfar
libchipcard-tools - tools for accessing chipcards
libchipcardc2 - library for accessing smartcards
libchipcardd0 - library for accessing smartcards
Closes: 508084 520283 520418
Changes:
libchipcard (4.2.4-3) unstable; urgency=low
.
* libchipcard-tools: Suggest installation of packages libtowitoko2 and
libccid (closes: #520418).
* Add man pages for chipcard-tool and kvkcard written by Karsten Hilbert
(closes: #508084). Thanks a lot, Karsten, for your contributions.
* Add patch 20_gemexpress for improved libccid driver handling
(closes: #520283). This makes GemPC Express readers work.
Thanks to Joachim Breitner for contributing the patch.
Checksums-Sha1:
45112a79c1cc18a91a55c37b9de548ebfda780c4 1401 libchipcard_4.2.4-3.dsc
f811032a604c62d10ed46d5cdbc47b88c953004a 22824 libchipcard_4.2.4-3.diff.gz
e474f1d7852e34281690af944ac8a6cfe55f6cf8 54622 libchipcard-dev_4.2.4-3_i386.deb
f838aa9f03866772eda186d51b22406c87b990a8 182586 libchipcardc2_4.2.4-3_i386.deb
d34d0a56eda74232577137fb3e1c20cd6243df66 95992 libchipcardd0_4.2.4-3_i386.deb
db62bb8e2f8af713b128ab17a1300dc835885852 39146
libchipcard-ctapi0_4.2.4-3_i386.deb
69823175ecec16f351abd4963a12af10d9daf26a 214804
libchipcard-tools_4.2.4-3_i386.deb
d69f36cf58d846260fb39ffdfdf2817deb3c086a 98820
libchipcard-libgwenhywfar47-plugins_4.2.4-3_i386.deb
95d59a4e49f39615966718e9ea17f35b6c78596c 58200 libchipcard-data_4.2.4-3_all.deb
Checksums-Sha256:
829befb264fe42366bb2a07a577371a25278d683da03b4726c95187990ce17b3 1401
libchipcard_4.2.4-3.dsc
3f2446b4b83f6595a0d51671b22ccacb5694d03316857444c6627865610dd3c4 22824
libchipcard_4.2.4-3.diff.gz
b41cec9b3a02ed784cce5cd44e807dfa68ccb86a691bc5800c8106a17d41ebbe 54622
libchipcard-dev_4.2.4-3_i386.deb
200f129f5be20ad5f6c3cb9b36c1eeebeec710468b56d6fa20b857ec62278068 182586
libchipcardc2_4.2.4-3_i386.deb
37512abd0228d1c2ac98462187b3ca0b1c8d0bff5a3c3d88c65d7aadeb09e8ee 95992
libchipcardd0_4.2.4-3_i386.deb
6538c7ec59842d639e3042fb810e1a9f5ff6d825f527aa983fd20c91608152eb 39146
libchipcard-ctapi0_4.2.4-3_i386.deb
489fad7b8d895d36aa42a5b9eeea225dbe95a9ce7ad57fdf1f31d9c0a13a9a6a 214804
libchipcard-tools_4.2.4-3_i386.deb
6f3d4bad90b056502df9b97ea8ac713290a52ff0a55f73c0e67730515d4678a4 98820
libchipcard-libgwenhywfar47-plugins_4.2.4-3_i386.deb
b420b84338596bdce4c8d63a6d852c17eb5aa24f71045cfef6aa8be9bf0a2127 58200
libchipcard-data_4.2.4-3_all.deb
Files:
6fc4f26b14017cdf2b6bb53b8641c955 1401 libs optional libchipcard_4.2.4-3.dsc
ffbbd0b55fbf940ae41d1269b2a76785 22824 libs optional
libchipcard_4.2.4-3.diff.gz
9be0efd403e47bbca79f38a8140641a7 54622 libdevel extra
libchipcard-dev_4.2.4-3_i386.deb
0fb0cf6b412cd26f549be5c74e5c0f58 182586 libs optional
libchipcardc2_4.2.4-3_i386.deb
5073c143104f5615fccb11ad42e7bb74 95992 libs optional
libchipcardd0_4.2.4-3_i386.deb
573be7fa09cc6219121512659403b06e 39146 libs optional
libchipcard-ctapi0_4.2.4-3_i386.deb
729da30b12c7d092ac076e9b00beb5da 214804 misc optional
libchipcard-tools_4.2.4-3_i386.deb
7dea04018887cdf2eb4a9b919d4304e0 98820 misc optional
libchipcard-libgwenhywfar47-plugins_4.2.4-3_i386.deb
254f3cd08d781530243a7fbd32d74583 58200 libs optional
libchipcard-data_4.2.4-3_all.deb
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.9 (GNU/Linux)
iEYEARECAAYFAknKM90ACgkQWN0/4pnhQbSsxQCeJp3oCgzBKrUwGq0AxNhZw5JV
Lk8AoKW9Wb684WVjZofrVHh2LxPqn8nm
=0DNK
-----END PGP SIGNATURE-----
--- End Message ---