author | Jan Parcel <jan.parcel@oracle.com> |
Wed, 06 Jul 2016 18:42:38 -0700 | |
branch | s11u3-sru |
changeset 6361 | 2a305758f590 |
permissions | -rw-r--r-- |
6361
2a305758f590
PSARC/2016/217 Smartcard Reintroduction
Jan Parcel <jan.parcel@oracle.com>
parents:
diff
changeset
|
1 |
Upstream fix that will be included in another release of pcsclite. |
2a305758f590
PSARC/2016/217 Smartcard Reintroduction
Jan Parcel <jan.parcel@oracle.com>
parents:
diff
changeset
|
2 |
|
2a305758f590
PSARC/2016/217 Smartcard Reintroduction
Jan Parcel <jan.parcel@oracle.com>
parents:
diff
changeset
|
3 |
From 9d0438ae384c33276d671cdf0830fe5d51901192 Mon Sep 17 00:00:00 2001 |
2a305758f590
PSARC/2016/217 Smartcard Reintroduction
Jan Parcel <jan.parcel@oracle.com>
parents:
diff
changeset
|
4 |
From: Ludovic Rousseau <[email protected]> |
2a305758f590
PSARC/2016/217 Smartcard Reintroduction
Jan Parcel <jan.parcel@oracle.com>
parents:
diff
changeset
|
5 |
Date: Fri, 18 Mar 2016 13:29:35 +0100 |
2a305758f590
PSARC/2016/217 Smartcard Reintroduction
Jan Parcel <jan.parcel@oracle.com>
parents:
diff
changeset
|
6 |
Subject: [PATCH] libusb hotplug: handle error in parsing drivers |
2a305758f590
PSARC/2016/217 Smartcard Reintroduction
Jan Parcel <jan.parcel@oracle.com>
parents:
diff
changeset
|
7 |
|
2a305758f590
PSARC/2016/217 Smartcard Reintroduction
Jan Parcel <jan.parcel@oracle.com>
parents:
diff
changeset
|
8 |
If HPReadBundleValues() returned an error (-1) it was considered as a |
2a305758f590
PSARC/2016/217 Smartcard Reintroduction
Jan Parcel <jan.parcel@oracle.com>
parents:
diff
changeset
|
9 |
correct value in HPSearchHotPluggables() |
2a305758f590
PSARC/2016/217 Smartcard Reintroduction
Jan Parcel <jan.parcel@oracle.com>
parents:
diff
changeset
|
10 |
|
2a305758f590
PSARC/2016/217 Smartcard Reintroduction
Jan Parcel <jan.parcel@oracle.com>
parents:
diff
changeset
|
11 |
We now check that at least 1 driver has been found. |
2a305758f590
PSARC/2016/217 Smartcard Reintroduction
Jan Parcel <jan.parcel@oracle.com>
parents:
diff
changeset
|
12 |
|
2a305758f590
PSARC/2016/217 Smartcard Reintroduction
Jan Parcel <jan.parcel@oracle.com>
parents:
diff
changeset
|
13 |
Thanks to Maksim Ivanov for the bug report |
2a305758f590
PSARC/2016/217 Smartcard Reintroduction
Jan Parcel <jan.parcel@oracle.com>
parents:
diff
changeset
|
14 |
https://lists.alioth.debian.org/pipermail/pcsclite-muscle/Week-of-Mon-20160314/000550.html |
2a305758f590
PSARC/2016/217 Smartcard Reintroduction
Jan Parcel <jan.parcel@oracle.com>
parents:
diff
changeset
|
15 |
--- |
2a305758f590
PSARC/2016/217 Smartcard Reintroduction
Jan Parcel <jan.parcel@oracle.com>
parents:
diff
changeset
|
16 |
src/hotplug_libusb.c | 6 ++---- |
2a305758f590
PSARC/2016/217 Smartcard Reintroduction
Jan Parcel <jan.parcel@oracle.com>
parents:
diff
changeset
|
17 |
1 file changed, 2 insertions(+), 4 deletions(-) |
2a305758f590
PSARC/2016/217 Smartcard Reintroduction
Jan Parcel <jan.parcel@oracle.com>
parents:
diff
changeset
|
18 |
|
2a305758f590
PSARC/2016/217 Smartcard Reintroduction
Jan Parcel <jan.parcel@oracle.com>
parents:
diff
changeset
|
19 |
diff --git a/src/hotplug_libusb.c b/src/hotplug_libusb.c |
2a305758f590
PSARC/2016/217 Smartcard Reintroduction
Jan Parcel <jan.parcel@oracle.com>
parents:
diff
changeset
|
20 |
index 71d5192..eff8519 100644 |
2a305758f590
PSARC/2016/217 Smartcard Reintroduction
Jan Parcel <jan.parcel@oracle.com>
parents:
diff
changeset
|
21 |
--- a/src/hotplug_libusb.c |
2a305758f590
PSARC/2016/217 Smartcard Reintroduction
Jan Parcel <jan.parcel@oracle.com>
parents:
diff
changeset
|
22 |
+++ b/src/hotplug_libusb.c |
2a305758f590
PSARC/2016/217 Smartcard Reintroduction
Jan Parcel <jan.parcel@oracle.com>
parents:
diff
changeset
|
23 |
@@ -263,19 +263,17 @@ static LONG HPReadBundleValues(void) |
2a305758f590
PSARC/2016/217 Smartcard Reintroduction
Jan Parcel <jan.parcel@oracle.com>
parents:
diff
changeset
|
24 |
driverSize = listCount; |
2a305758f590
PSARC/2016/217 Smartcard Reintroduction
Jan Parcel <jan.parcel@oracle.com>
parents:
diff
changeset
|
25 |
closedir(hpDir); |
2a305758f590
PSARC/2016/217 Smartcard Reintroduction
Jan Parcel <jan.parcel@oracle.com>
parents:
diff
changeset
|
26 |
|
2a305758f590
PSARC/2016/217 Smartcard Reintroduction
Jan Parcel <jan.parcel@oracle.com>
parents:
diff
changeset
|
27 |
- rv = TRUE; |
2a305758f590
PSARC/2016/217 Smartcard Reintroduction
Jan Parcel <jan.parcel@oracle.com>
parents:
diff
changeset
|
28 |
if (driverSize == 0) |
2a305758f590
PSARC/2016/217 Smartcard Reintroduction
Jan Parcel <jan.parcel@oracle.com>
parents:
diff
changeset
|
29 |
{ |
2a305758f590
PSARC/2016/217 Smartcard Reintroduction
Jan Parcel <jan.parcel@oracle.com>
parents:
diff
changeset
|
30 |
Log1(PCSC_LOG_INFO, "No bundle files in pcsc drivers directory: " PCSCLITE_HP_DROPDIR); |
2a305758f590
PSARC/2016/217 Smartcard Reintroduction
Jan Parcel <jan.parcel@oracle.com>
parents:
diff
changeset
|
31 |
Log1(PCSC_LOG_INFO, "Disabling USB support for pcscd"); |
2a305758f590
PSARC/2016/217 Smartcard Reintroduction
Jan Parcel <jan.parcel@oracle.com>
parents:
diff
changeset
|
32 |
- rv = FALSE; |
2a305758f590
PSARC/2016/217 Smartcard Reintroduction
Jan Parcel <jan.parcel@oracle.com>
parents:
diff
changeset
|
33 |
} |
2a305758f590
PSARC/2016/217 Smartcard Reintroduction
Jan Parcel <jan.parcel@oracle.com>
parents:
diff
changeset
|
34 |
#ifdef DEBUG_HOTPLUG |
2a305758f590
PSARC/2016/217 Smartcard Reintroduction
Jan Parcel <jan.parcel@oracle.com>
parents:
diff
changeset
|
35 |
else |
2a305758f590
PSARC/2016/217 Smartcard Reintroduction
Jan Parcel <jan.parcel@oracle.com>
parents:
diff
changeset
|
36 |
Log2(PCSC_LOG_INFO, "Found drivers for %d readers", listCount); |
2a305758f590
PSARC/2016/217 Smartcard Reintroduction
Jan Parcel <jan.parcel@oracle.com>
parents:
diff
changeset
|
37 |
#endif |
2a305758f590
PSARC/2016/217 Smartcard Reintroduction
Jan Parcel <jan.parcel@oracle.com>
parents:
diff
changeset
|
38 |
|
2a305758f590
PSARC/2016/217 Smartcard Reintroduction
Jan Parcel <jan.parcel@oracle.com>
parents:
diff
changeset
|
39 |
- return rv; |
2a305758f590
PSARC/2016/217 Smartcard Reintroduction
Jan Parcel <jan.parcel@oracle.com>
parents:
diff
changeset
|
40 |
+ return driverSize; |
2a305758f590
PSARC/2016/217 Smartcard Reintroduction
Jan Parcel <jan.parcel@oracle.com>
parents:
diff
changeset
|
41 |
} |
2a305758f590
PSARC/2016/217 Smartcard Reintroduction
Jan Parcel <jan.parcel@oracle.com>
parents:
diff
changeset
|
42 |
|
2a305758f590
PSARC/2016/217 Smartcard Reintroduction
Jan Parcel <jan.parcel@oracle.com>
parents:
diff
changeset
|
43 |
static void HPRescanUsbBus(void) |
2a305758f590
PSARC/2016/217 Smartcard Reintroduction
Jan Parcel <jan.parcel@oracle.com>
parents:
diff
changeset
|
44 |
@@ -490,7 +488,7 @@ LONG HPSearchHotPluggables(void) |
2a305758f590
PSARC/2016/217 Smartcard Reintroduction
Jan Parcel <jan.parcel@oracle.com>
parents:
diff
changeset
|
45 |
readerTracker[i].fullName = NULL; |
2a305758f590
PSARC/2016/217 Smartcard Reintroduction
Jan Parcel <jan.parcel@oracle.com>
parents:
diff
changeset
|
46 |
} |
2a305758f590
PSARC/2016/217 Smartcard Reintroduction
Jan Parcel <jan.parcel@oracle.com>
parents:
diff
changeset
|
47 |
|
2a305758f590
PSARC/2016/217 Smartcard Reintroduction
Jan Parcel <jan.parcel@oracle.com>
parents:
diff
changeset
|
48 |
- if (HPReadBundleValues()) |
2a305758f590
PSARC/2016/217 Smartcard Reintroduction
Jan Parcel <jan.parcel@oracle.com>
parents:
diff
changeset
|
49 |
+ if (HPReadBundleValues() > 0) |
2a305758f590
PSARC/2016/217 Smartcard Reintroduction
Jan Parcel <jan.parcel@oracle.com>
parents:
diff
changeset
|
50 |
{ |
2a305758f590
PSARC/2016/217 Smartcard Reintroduction
Jan Parcel <jan.parcel@oracle.com>
parents:
diff
changeset
|
51 |
int pipefd[2]; |
2a305758f590
PSARC/2016/217 Smartcard Reintroduction
Jan Parcel <jan.parcel@oracle.com>
parents:
diff
changeset
|
52 |
char c; |
2a305758f590
PSARC/2016/217 Smartcard Reintroduction
Jan Parcel <jan.parcel@oracle.com>
parents:
diff
changeset
|
53 |
-- |
2a305758f590
PSARC/2016/217 Smartcard Reintroduction
Jan Parcel <jan.parcel@oracle.com>
parents:
diff
changeset
|
54 |
1.9.1 |
2a305758f590
PSARC/2016/217 Smartcard Reintroduction
Jan Parcel <jan.parcel@oracle.com>
parents:
diff
changeset
|
55 |