[Pcsclite-cvs-commit] Drivers/ccid/src parse.c,1.7,1.8

rousseau@haydn.debian.org rousseau@haydn.debian.org


Update of /cvsroot/pcsclite/Drivers/ccid/src
In directory haydn:/tmp/cvs-serv30158/src

Modified Files:
	parse.c 
Log Message:
- use get_ccid_usb_interface() to also manage USB composite devices (keyboards)
- continue parsing even if bDescriptorType == 0xFF (proprietary)


Index: parse.c
===================================================================
RCS file: /cvsroot/pcsclite/Drivers/ccid/src/parse.c,v
retrieving revision 1.7
retrieving revision 1.8
diff -u -d -r1.7 -r1.8
--- parse.c	29 Jan 2004 10:32:20 -0000	1.7
+++ parse.c	30 Mar 2004 12:45:26 -0000	1.8
@@ -109,7 +109,7 @@
 	else
 		printf(" iProduct: %s\n", buffer);
 
-	usb_interface = dev->config->interface->altsetting;
+	usb_interface = get_ccid_usb_interface(dev)->altsetting;
 	
 	printf(" bLength: %d\n", usb_interface->bLength);
 	
@@ -166,8 +166,13 @@
 	printf("  bDescriptorType: 0x%02X\n", extra[1]);
 	if (extra[1] != 0x21)
 	{
-		printf("   UNSUPPORTED bDescriptorType\n");
-		return TRUE;
+		if (0xFF == extra[1])
+			printf("   PROPRIETARY bDescriptorType\n");
+		else
+		{
+			printf("   UNSUPPORTED bDescriptorType\n");
+			return TRUE;
+		}
 	}
 
 	printf("  bcdCCID: %X.%02X\n", extra[3], extra[2]);