On 15/08/06, Johannes Becker <[EMAIL PROTECTED]> wrote:
Hello,

Hi,

can I get the Pinpad on the reader "Kobil Advanced" working?

I use today's pcscd, pcsc-tools, libccid, opensc, libopenct1 from
Debian/unstable which seems to be up to date.
Everything works with firefox except asking the PIN from the PINPad.

Secure PIN pad will not work in OpenSC until Martin Paljak (or someone
else) change the code to reflect the changes in my CCID driver version
1.1.0.

I attach a patch for that. I don't know if using ntohl() from
<arpa/inet.h> is the best thing to do in OpenSC. Is it portable
enough?

Do you have to configure the PINPad somwhere?

I don't think so but I never used this feature in OpenSC :-)

Bye,

--
 Dr. Ludovic Rousseau
Index: src/libopensc/reader-pcsc.c
===================================================================
--- src/libopensc/reader-pcsc.c (révision 3006)
+++ src/libopensc/reader-pcsc.c (copie de travail)
@@ -25,6 +25,7 @@
 #include <stdlib.h>
 #include <string.h>
 #include <time.h>
+#include <arpa/inet.h>
 #ifdef PCSC_INCLUDES_IN_PCSC
 #include <PCSC/wintypes.h>
 #include <PCSC/winscard.h>
@@ -546,7 +547,7 @@ static int pcsc_connect(sc_reader_t *rea
                                char *log_disabled = "but it's disabled in 
configuration file";
                                if (pcsc_tlv[i].tag == 
FEATURE_VERIFY_PIN_DIRECT) {
                                        char *log_text = "Reader supports 
pinpad PIN verification";
-                                       pslot->verify_ioctl = pcsc_tlv[i].value;
+                                       pslot->verify_ioctl = 
ntohl(pcsc_tlv[i].value);
                                        if (priv->gpriv->enable_pinpad) {
                                                sc_debug(reader->ctx, log_text);
                                                slot->capabilities |= 
SC_SLOT_CAP_PIN_PAD;
@@ -555,7 +556,7 @@ static int pcsc_connect(sc_reader_t *rea
                                        }
                                } else if (pcsc_tlv[i].tag == 
FEATURE_MODIFY_PIN_DIRECT) {
                                        char *log_text = "Reader supports 
pinpad PIN modification";
-                                       pslot->modify_ioctl = pcsc_tlv[i].value;
+                                       pslot->modify_ioctl = 
ntohl(pcsc_tlv[i].value);
                                        if (priv->gpriv->enable_pinpad) {
                                                sc_debug(reader->ctx, log_text);
                                                slot->capabilities |= 
SC_SLOT_CAP_PIN_PAD;
_______________________________________________
opensc-devel mailing list
opensc-devel@lists.opensc-project.org
http://www.opensc-project.org/mailman/listinfo/opensc-devel

Reply via email to