components/pcsc-lite/patches/08-scardconnect_mem.patch
author pkidd <patrick.kidd@oracle.com>
Wed, 26 Apr 2017 08:46:08 -0700
branchs11u3-sru
changeset 7947 3fa78a5a2366
parent 6361 2a305758f590
permissions -rw-r--r--
build metadata for S11.3SRU20.3
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
6361
2a305758f590 PSARC/2016/217 Smartcard Reintroduction
Jan Parcel <jan.parcel@oracle.com>
parents:
diff changeset
     1
Upstream fix that will be included in the 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 2269f10c2d2c5be1308d59469722024650a19b6d 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: Wed, 13 Apr 2016 18:29:53 +0200
2a305758f590 PSARC/2016/217 Smartcard Reintroduction
Jan Parcel <jan.parcel@oracle.com>
parents:
diff changeset
     6
Subject: [PATCH] SCardConnect(): fix a Valgrind warning
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
==19635== Memcheck, a memory error detector
2a305758f590 PSARC/2016/217 Smartcard Reintroduction
Jan Parcel <jan.parcel@oracle.com>
parents:
diff changeset
     9
==19635== Copyright (C) 2002-2012, and GNU GPL'd, by Julian Seward et al.
2a305758f590 PSARC/2016/217 Smartcard Reintroduction
Jan Parcel <jan.parcel@oracle.com>
parents:
diff changeset
    10
==19635== Using Valgrind-3.8.1 and LibVEX; rerun with -h for copyright info
2a305758f590 PSARC/2016/217 Smartcard Reintroduction
Jan Parcel <jan.parcel@oracle.com>
parents:
diff changeset
    11
==19635== Command: /usr/rtests/bin/Pkcs11UnitTest.X64 pkcs11_common
2a305758f590 PSARC/2016/217 Smartcard Reintroduction
Jan Parcel <jan.parcel@oracle.com>
parents:
diff changeset
    12
==19635==
2a305758f590 PSARC/2016/217 Smartcard Reintroduction
Jan Parcel <jan.parcel@oracle.com>
parents:
diff changeset
    13
Running pkcs11_common
2a305758f590 PSARC/2016/217 Smartcard Reintroduction
Jan Parcel <jan.parcel@oracle.com>
parents:
diff changeset
    14
pkcs11_common::testGetInfo==19635== Syscall param socketcall.sendto(msg) points to uninitialised byte(s)
2a305758f590 PSARC/2016/217 Smartcard Reintroduction
Jan Parcel <jan.parcel@oracle.com>
parents:
diff changeset
    15
==19635== at 0x605A1F7: send (send.c:32)
2a305758f590 PSARC/2016/217 Smartcard Reintroduction
Jan Parcel <jan.parcel@oracle.com>
parents:
diff changeset
    16
==19635== by 0xBC47CE6: ??? (in /lib/x86_64-linux-gnu/libpcsclite.so.1.0.0)
2a305758f590 PSARC/2016/217 Smartcard Reintroduction
Jan Parcel <jan.parcel@oracle.com>
parents:
diff changeset
    17
==19635== by 0xBC47E22: ??? (in /lib/x86_64-linux-gnu/libpcsclite.so.1.0.0)
2a305758f590 PSARC/2016/217 Smartcard Reintroduction
Jan Parcel <jan.parcel@oracle.com>
parents:
diff changeset
    18
==19635== by 0xBC43BBE: SCardConnect (in /lib/x86_64-linux-gnu/libpcsclite.so.1.0.0)
2a305758f590 PSARC/2016/217 Smartcard Reintroduction
Jan Parcel <jan.parcel@oracle.com>
parents:
diff changeset
    19
...
2a305758f590 PSARC/2016/217 Smartcard Reintroduction
Jan Parcel <jan.parcel@oracle.com>
parents:
diff changeset
    20
2a305758f590 PSARC/2016/217 Smartcard Reintroduction
Jan Parcel <jan.parcel@oracle.com>
parents:
diff changeset
    21
The field scConnectStruct.szReader (containing the reader name) was not
2a305758f590 PSARC/2016/217 Smartcard Reintroduction
Jan Parcel <jan.parcel@oracle.com>
parents:
diff changeset
    22
completely initialized.
2a305758f590 PSARC/2016/217 Smartcard Reintroduction
Jan Parcel <jan.parcel@oracle.com>
parents:
diff changeset
    23
2a305758f590 PSARC/2016/217 Smartcard Reintroduction
Jan Parcel <jan.parcel@oracle.com>
parents:
diff changeset
    24
Thanks to Andrey Roussev for the patch
2a305758f590 PSARC/2016/217 Smartcard Reintroduction
Jan Parcel <jan.parcel@oracle.com>
parents:
diff changeset
    25
https://lists.alioth.debian.org/pipermail/pcsclite-muscle/Week-of-Mon-20160404/000560.html
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
 src/winscard_clnt.c | 1 +
2a305758f590 PSARC/2016/217 Smartcard Reintroduction
Jan Parcel <jan.parcel@oracle.com>
parents:
diff changeset
    28
 1 file changed, 1 insertion(+)
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
diff --git a/src/winscard_clnt.c b/src/winscard_clnt.c
2a305758f590 PSARC/2016/217 Smartcard Reintroduction
Jan Parcel <jan.parcel@oracle.com>
parents:
diff changeset
    31
index e36cab7..ea480de 100644
2a305758f590 PSARC/2016/217 Smartcard Reintroduction
Jan Parcel <jan.parcel@oracle.com>
parents:
diff changeset
    32
--- a/src/winscard_clnt.c
2a305758f590 PSARC/2016/217 Smartcard Reintroduction
Jan Parcel <jan.parcel@oracle.com>
parents:
diff changeset
    33
+++ b/src/winscard_clnt.c
2a305758f590 PSARC/2016/217 Smartcard Reintroduction
Jan Parcel <jan.parcel@oracle.com>
parents:
diff changeset
    34
@@ -794,6 +794,7 @@ LONG SCardConnect(SCARDCONTEXT hContext, LPCSTR szReader,
2a305758f590 PSARC/2016/217 Smartcard Reintroduction
Jan Parcel <jan.parcel@oracle.com>
parents:
diff changeset
    35
 	if (NULL == currentContextMap)
2a305758f590 PSARC/2016/217 Smartcard Reintroduction
Jan Parcel <jan.parcel@oracle.com>
parents:
diff changeset
    36
 		return SCARD_E_INVALID_HANDLE;
2a305758f590 PSARC/2016/217 Smartcard Reintroduction
Jan Parcel <jan.parcel@oracle.com>
parents:
diff changeset
    37
 
2a305758f590 PSARC/2016/217 Smartcard Reintroduction
Jan Parcel <jan.parcel@oracle.com>
parents:
diff changeset
    38
+	memset(scConnectStruct.szReader, 0, sizeof scConnectStruct.szReader);
2a305758f590 PSARC/2016/217 Smartcard Reintroduction
Jan Parcel <jan.parcel@oracle.com>
parents:
diff changeset
    39
 	strncpy(scConnectStruct.szReader, szReader, sizeof scConnectStruct.szReader);
2a305758f590 PSARC/2016/217 Smartcard Reintroduction
Jan Parcel <jan.parcel@oracle.com>
parents:
diff changeset
    40
 	scConnectStruct.szReader[sizeof scConnectStruct.szReader -1] = '\0';
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
1.9.1
2a305758f590 PSARC/2016/217 Smartcard Reintroduction
Jan Parcel <jan.parcel@oracle.com>
parents:
diff changeset
    44
2a305758f590 PSARC/2016/217 Smartcard Reintroduction
Jan Parcel <jan.parcel@oracle.com>
parents:
diff changeset
    45