New upstream version 1.4.31

This commit is contained in:
Ludovic Rousseau 2019-08-10 11:56:57 +02:00
parent 6b2ce452cd
commit e1844232e3
17 changed files with 1888 additions and 1589 deletions

333
ChangeLog
View File

@ -1,4 +1,335 @@
commit db45750ebb2ce8d841f8e555e79f09108527aaa8 (HEAD -> master, origin/master, origin/HEAD) commit 743e9a9daf4dd27128eb6be8b13562f0ea695fd5 (HEAD -> master, tag: ccid-1.4.31)
Author: Ludovic Rousseau <ludovic.rousseau@free.fr>
Date: Sat Aug 10 11:49:32 2019 +0200
Distribute README.md
Autotools does not know about README.md file so we must add it explicitly.
Makefile.am | 1 +
1 file changed, 1 insertion(+)
commit 680d7479c6b9eb02fabc657a727888c35e6fd31d (origin/master, origin/HEAD)
Author: Ludovic Rousseau <ludovic.rousseau@free.fr>
Date: Sat Aug 10 11:43:21 2019 +0200
Release 1.4.31
Signed-off-by: Ludovic Rousseau <ludovic.rousseau@free.fr>
README.md | 27 +++++++++++++++++++++++++++
configure.ac | 2 +-
2 files changed, 28 insertions(+), 1 deletion(-)
commit 6768d39c987a2fcca2d34516e7d042ebca63e009
Author: Ludovic Rousseau <ludovic.rousseau@free.fr>
Date: Sat Aug 10 11:41:26 2019 +0200
Reformat README.md for a better MarkDown
README.md | 1412 ++++++++++++++++++++++++++++++-------------------------------
1 file changed, 706 insertions(+), 706 deletions(-)
commit 71d442ed5ef02a4115e6a2406db020fc3a7c417e
Author: Ludovic Rousseau <ludovic.rousseau@free.fr>
Date: Sat Aug 10 11:37:36 2019 +0200
Rename README in README.md
We can now have a nice MarkDown rendering.
README => README.md | 0
1 file changed, 0 insertions(+), 0 deletions(-)
commit d66f0fad276cf1210536c7534a2edd56e4f8350c (zotac/master)
Author: Ludovic Rousseau <ludovic.rousseau@free.fr>
Date: Wed Jul 31 17:08:12 2019 +0200
Add SPECINFOSYSTEMS DIAMOND token
readers/SPECINFOSYSTEMS_DIAMOND_token.txt | 52 +++++++++++++++++++++++++++++++
readers/supported_readers.txt | 5 ++-
2 files changed, 56 insertions(+), 1 deletion(-)
commit c53375f8e8b1d41c729fac149b1c41218b94ae64
Author: Ludovic Rousseau <ludovic.rousseau@free.fr>
Date: Mon Jul 29 23:08:05 2019 +0200
Add AvestUA AvestKey
readers/AvestUA_AvestKey.txt | 49 +++++++++++++++++++++++++++++++++++++++++++
readers/supported_readers.txt | 5 ++++-
2 files changed, 53 insertions(+), 1 deletion(-)
commit 25fee850dd3de47d518f14e0fe84d9c98a4345b6
Author: Godfrey Chung <godfrey.chung@acs.com.hk>
Date: Fri Jun 28 15:46:03 2019 +0800
MacOSX/configure: fix checking error for dynamic library libusb
The directory may contain other dynamic libraries and therefore libusb
is incorrectly found.
MacOSX/configure | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
commit ebf5010b64bc5e69346bff4617fa6eebed4fc40b
Author: Ludovic Rousseau <ludovic.rousseau@free.fr>
Date: Thu Jun 20 17:47:29 2019 +0200
Update PCSC-contib submodule
PCSC-contrib | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
commit fd83c6f797be6091e432a259c2ad65782fbaaa43
Author: Ludovic Rousseau <ludovic.rousseau@free.fr>
Date: Thu Jun 20 17:46:30 2019 +0200
Update PCSC submodule
Update PCSC/src/misc.h to get the fix for warning: 'PCSC_API' macro redefined
PCSC | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
commit 0b88e9c82c9d1c795f7c6adfca83aa47a1bbaa76
Author: Ludovic Rousseau <ludovic.rousseau@free.fr>
Date: Mon Jun 17 21:52:09 2019 +0200
Add HID Global Crescendo Key 0x002D
readers/HID_Global_Crescendo_Key_0x002D.txt | 51 +++++++++++++++++++++++++++++
readers/supported_readers.txt | 1 +
2 files changed, 52 insertions(+)
commit 3139b814bec05a5ea22ed063134d6611eca58110
Author: Ludovic Rousseau <ludovic.rousseau@free.fr>
Date: Mon Jun 17 18:07:53 2019 +0200
Add HID Global Crescendo Key 0x002B
readers/HID_Global_Crescendo_Key_0x002B.txt | 51 +++++++++++++++++++++++++++++
readers/supported_readers.txt | 1 +
2 files changed, 52 insertions(+)
commit 0e1923bd3b0872a39b0ec25c24c84f9a768aad9d
Author: Ludovic Rousseau <ludovic.rousseau@free.fr>
Date: Mon Jun 17 18:06:39 2019 +0200
Add HID Global Crescendo Key 0x0029
readers/HID_Global_Crescendo_Key_0x0029.txt | 51 +++++++++++++++++++++++++++++
readers/supported_readers.txt | 1 +
2 files changed, 52 insertions(+)
commit 4475166e07382b5b9a6cc88d0984308b72a2edc7
Author: Ludovic Rousseau <ludovic.rousseau@free.fr>
Date: Mon Jun 17 18:05:22 2019 +0200
Add HID Global Crescendo Key 0x0028
readers/HID_Global_Crescendo_Key_0x0028.txt | 51 +++++++++++++++++++++++++++++
readers/supported_readers.txt | 3 +-
2 files changed, 53 insertions(+), 1 deletion(-)
commit dd0b2865d970ef7b69dbcf14f2bcaef13329d71d
Author: Ludovic Rousseau <ludovic.rousseau@free.fr>
Date: Sat Jun 15 15:37:24 2019 +0200
Add Route1 MobiKEY Fusion3
readers/Route1_MobiKEY_Fusion3.txt | 55 ++++++++++++++++++++++++++++++++++++++
readers/supported_readers.txt | 5 +++-
2 files changed, 59 insertions(+), 1 deletion(-)
commit 903ffe6f61dc1b3e2bd870ab8153114ced394277
Author: Ludovic Rousseau <ludovic.rousseau@free.fr>
Date: Fri Jun 14 08:46:51 2019 +0200
Add extra_features for Gemalto IDBridge CT710
readers/extra_features/Gemalto_IDBridge_CT710.txt | 39 +++++++++++++++++++++++
1 file changed, 39 insertions(+)
commit 006e405ecd534d9bfce93ebdcd40e3e687d4dbd4
Author: Ludovic Rousseau <ludovic.rousseau@free.fr>
Date: Tue Jun 11 11:14:41 2019 +0200
parse: use libusb_strerror() instead of strerror(errno)
We now display the error message from libusb when a libusb call fails.
Fixes https://salsa.debian.org/rousseau/CCID/issues/2
src/parse.c | 9 +++++----
1 file changed, 5 insertions(+), 4 deletions(-)
commit 0d98000b414e6c489eeae71c83bc76bceb564f49
Author: Ludovic Rousseau <ludovic.rousseau@free.fr>
Date: Tue Apr 2 19:00:19 2019 +0200
Add Avtor SecureToken (idProduct: 0x0020)
readers/Avtor_SecureToken_0x0020.txt | 57 ++++++++++++++++++++++++++++++++++++
readers/supported_readers.txt | 3 +-
2 files changed, 59 insertions(+), 1 deletion(-)
commit 2a6c7245b19640eb3c71598cfe5f44abd1d75a23
Author: Ludovic Rousseau <ludovic.rousseau@free.fr>
Date: Wed Mar 13 19:47:23 2019 +0100
Update Aladdin R.D. JaCartaReader reader name
Is was "JaCarta3"
readers/supported_readers.txt | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
commit f37941d448e0fca17ffb20282ce27311e02687e7
Author: Ludovic Rousseau <ludovic.rousseau@free.fr>
Date: Tue Mar 12 18:29:58 2019 +0100
Add Aladdin R.D. JaCarta3
readers/Aladdin_R.D._JaCarta3.txt | 51 +++++++++++++++++++++++++++++++++++++++
readers/supported_readers.txt | 3 ++-
2 files changed, 53 insertions(+), 1 deletion(-)
commit 266d092cfab467d05fbd48b56436340adfd4e17a
Author: Ludovic Rousseau <ludovic.rousseau@free.fr>
Date: Thu Jan 17 20:15:28 2019 +0100
Add Bit4id miniLector Blue
readers/bit4id_minilector-BLUE.txt | 54 ++++++++++++++++++++++++++++++++++++++
readers/supported_readers.txt | 1 +
2 files changed, 55 insertions(+)
commit 51df9ec8c7d701df9ff78aa32ea19f0a561a29aa
Author: Ludovic Rousseau <ludovic.rousseau@free.fr>
Date: Thu Jan 17 20:11:56 2019 +0100
Add Bit4id TokenME EVO v2
readers/bit4id_TokenME-EVO.txt | 50 ++++++++++++++++++++++++++++++++++++++++++
readers/supported_readers.txt | 1 +
2 files changed, 51 insertions(+)
commit bd6bd148ccd077073ecf8bd2a25eee94f485b935
Author: Ludovic Rousseau <ludovic.rousseau@free.fr>
Date: Thu Jan 17 20:08:38 2019 +0100
Add Bit4id miniLector AIR EVO
readers/bit4id_minilector-AIR.txt | 48 +++++++++++++++++++++++++++++++++++++++
readers/supported_readers.txt | 3 ++-
2 files changed, 50 insertions(+), 1 deletion(-)
commit 476f5a7b5eb4747ee22e5affec68e28cb4750597
Author: Ludovic Rousseau <ludovic.rousseau@free.fr>
Date: Wed Jan 16 09:33:57 2019 +0100
Add Certgate GmbH ONEKEY ID 2 USB
readers/Certgate_ONEKEY_ID_2_USB.txt | 49 ++++++++++++++++++++++++++++++++++++
readers/supported_readers.txt | 3 ++-
2 files changed, 51 insertions(+), 1 deletion(-)
commit 2795ef5ab70a0de91071e1be84e29dcd727911d8
Author: Ludovic Rousseau <ludovic.rousseau@free.fr>
Date: Sun Dec 30 17:35:40 2018 +0100
Add Alcor Link AK9563
readers/Alcor_Link_AK9563.txt | 156 ++++++++++++++++++++++++++++++++++++++++++
readers/supported_readers.txt | 5 +-
2 files changed, 160 insertions(+), 1 deletion(-)
commit 54831a762e888c8ad12b7e8d17a1be0dacd7404e
Author: Ludovic Rousseau <ludovic.rousseau@free.fr>
Date: Wed Dec 19 13:56:32 2018 +0100
Add Identiv SCR3500 C Contact Reader
readers/Identiv_SCR3500_C_Contact_Reader.txt | 55 ++++++++++++++++++++++++++++
readers/supported_readers.txt | 3 +-
2 files changed, 57 insertions(+), 1 deletion(-)
commit a691e5cbc53bf693c27c846f08612a08c4a1c331
Author: Ludovic Rousseau <ludovic.rousseau@free.fr>
Date: Fri Nov 30 16:49:25 2018 +0100
Add Broadcom Corp 58200 (idProduct: 0x5845)
readers/Broadcom_58200_0x5845.txt | 52 +++++++++++++++++++++++++++++++++++++++
readers/supported_readers.txt | 1 +
2 files changed, 53 insertions(+)
commit d882261ebc3f43f1ca3f984ea8d8a7d99701f72d
Author: Ludovic Rousseau <ludovic.rousseau@free.fr>
Date: Fri Nov 30 16:47:52 2018 +0100
Add Broadcom Corp 58200 (idProduct: 0x5844)
readers/Broadcom_58200_0x5844.txt | 52 +++++++++++++++++++++++++++++++++++++++
readers/supported_readers.txt | 1 +
2 files changed, 53 insertions(+)
commit 869544330fe96810eb7f3f8ab39cad7fa7686539
Author: Ludovic Rousseau <ludovic.rousseau@free.fr>
Date: Fri Nov 30 16:45:10 2018 +0100
Add Broadcom Corp 58200 (idProduct: 0x5843)
readers/Broadcom_58200_0x5843.txt | 106 ++++++++++++++++++++++++++++++++++++++
readers/supported_readers.txt | 3 +-
2 files changed, 108 insertions(+), 1 deletion(-)
commit 25ab9d6e4fad9ac1f70ef4c76e3be3ce175f79fb
Author: Ludovic Rousseau <ludovic.rousseau@free.fr>
Date: Wed Oct 24 18:48:26 2018 +0200
Add InfoCert WirelessKey
readers/InfoCert_WirelessKey.txt | 53 ++++++++++++++++++++++++++++++++++++++++
readers/supported_readers.txt | 5 +++-
2 files changed, 57 insertions(+), 1 deletion(-)
commit 5adffb317bcae37144e6fad7840d8c0970851c25
Author: Ludovic Rousseau <ludovic.rousseau@free.fr>
Date: Fri Oct 12 16:19:00 2018 +0200
Add ACS ACR1252 Reader
readers/ACS_ACR1252_Reader.txt | 53 ++++++++++++++++++++++++++++++++++++++++++
readers/supported_readers.txt | 3 ++-
2 files changed, 55 insertions(+), 1 deletion(-)
commit f262442ca2b48ac6cf47a556721dabb6c3a9d0a9
Author: Ludovic Rousseau <ludovic.rousseau@free.fr>
Date: Thu Oct 4 14:31:54 2018 +0200
InterruptRead(): log the timeout used
This change allows to differentiate between a short
(PCSCLITE_POWER_OFF_GRACE_PERIOD, 5 seconds by default) and a long
(PCSCLITE_STATUS_EVENT_TIMEOUT, 10 minutes by default) timeout.
src/ccid_usb.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
commit 4529d6d723009a62dab31dc8c9fda03b2204e05f
Author: Ludovic Rousseau <ludovic.rousseau@free.fr>
Date: Mon Sep 24 21:00:04 2018 +0200
Add NXP PN7462AU CCID
readers/NXP_PN7462AU_CCID.txt | 310 ++++++++++++++++++++++++++++++++++++++++++
readers/supported_readers.txt | 3 +-
2 files changed, 312 insertions(+), 1 deletion(-)
commit db45750ebb2ce8d841f8e555e79f09108527aaa8 (tag: ccid-1.4.30)
Author: Ludovic Rousseau <ludovic.rousseau@free.fr> Author: Ludovic Rousseau <ludovic.rousseau@free.fr>
Date: Wed Sep 19 09:33:32 2018 +0200 Date: Wed Sep 19 09:33:32 2018 +0200

2
MacOSX/configure vendored
View File

@ -48,7 +48,7 @@ LIBUSB_ARCHIVE="$LIBUSB_DIR"/libusb-1.0.a
LIBUSB_CFLAGS=$(pkg-config --cflags --static libusb-1.0) LIBUSB_CFLAGS=$(pkg-config --cflags --static libusb-1.0)
LIBUSB_LIBS=$(pkg-config --libs --static libusb-1.0) LIBUSB_LIBS=$(pkg-config --libs --static libusb-1.0)
if ls "$LIBUSB_DIR"/*.dylib 2> /dev/null if ls "$LIBUSB_DIR"/libusb-1.0*.dylib 2> /dev/null
then then
echo -en $RED echo -en $RED
echo "*****************************" echo "*****************************"

View File

@ -40,7 +40,7 @@ THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
The routines specified hereafter will allow you to write an IFD handler The routines specified hereafter will allow you to write an IFD handler
for the PC/SC Lite resource manager. Please use the complement for the PC/SC Lite resource manager. Please use the complement
developer's kit complete with headers and Makefile at: developer's kit complete with headers and Makefile at:
http://www.musclecard.com/drivers.html https://muscle.apdu.fr/musclecard.com/sourcedrivers.html
This gives a common API for communication to most readers in a This gives a common API for communication to most readers in a
homogeneous fashion. This document assumes that the driver developer is homogeneous fashion. This document assumes that the driver developer is
@ -82,7 +82,7 @@ Example:
<string>0x04E6</string> <string>0x04E6</string>
@endverbatim @endverbatim
You may have an OEM of this reader in which an additional @c <string> You may have an OEM of this reader in which an additional @c \<string>
can be used like in the below example: can be used like in the below example:
@verbatim @verbatim
@ -202,7 +202,7 @@ It has the following syntax:
# Configuration file for pcsc-lite # Configuration file for pcsc-lite
# David Corcoran <corcoran@musclecard.com> # David Corcoran <corcoran@musclecard.com>
FRIENDLYNAME Generic Reader FRIENDLYNAME "Generic Reader"
DEVICENAME /dev/ttyS0 DEVICENAME /dev/ttyS0
LIBPATH /usr/lib/pcsc/drivers/libgen_ifd.so LIBPATH /usr/lib/pcsc/drivers/libgen_ifd.so
CHANNELID 1 CHANNELID 1

View File

@ -3,6 +3,7 @@ ACLOCAL_AMFLAGS = -I m4
SUBDIRS = readers examples contrib src SUBDIRS = readers examples contrib src
EXTRA_DIST = bootstrap ChangeLog SCARDGETATTRIB.txt \ EXTRA_DIST = bootstrap ChangeLog SCARDGETATTRIB.txt \
README.md \
$(AUX_DIST) \ $(AUX_DIST) \
m4/ax_pthread.m4 \ m4/ax_pthread.m4 \
MacOSX/configure \ MacOSX/configure \

View File

@ -162,8 +162,8 @@ CTAGS = ctags
CSCOPE = cscope CSCOPE = cscope
DIST_SUBDIRS = $(SUBDIRS) DIST_SUBDIRS = $(SUBDIRS)
am__DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/config.h.in AUTHORS \ am__DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/config.h.in AUTHORS \
COPYING ChangeLog INSTALL NEWS README ar-lib compile \ COPYING ChangeLog INSTALL NEWS ar-lib compile config.guess \
config.guess config.sub install-sh ltmain.sh missing ylwrap config.sub install-sh ltmain.sh missing ylwrap
DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
distdir = $(PACKAGE)-$(VERSION) distdir = $(PACKAGE)-$(VERSION)
top_distdir = $(distdir) top_distdir = $(distdir)
@ -354,6 +354,7 @@ usbdropdir = @usbdropdir@
ACLOCAL_AMFLAGS = -I m4 ACLOCAL_AMFLAGS = -I m4
SUBDIRS = readers examples contrib src SUBDIRS = readers examples contrib src
EXTRA_DIST = bootstrap ChangeLog SCARDGETATTRIB.txt \ EXTRA_DIST = bootstrap ChangeLog SCARDGETATTRIB.txt \
README.md \
$(AUX_DIST) \ $(AUX_DIST) \
m4/ax_pthread.m4 \ m4/ax_pthread.m4 \
MacOSX/configure \ MacOSX/configure \

1312
README

File diff suppressed because it is too large Load Diff

1339
README.md Normal file

File diff suppressed because it is too large Load Diff

27
configure vendored
View File

@ -1,6 +1,6 @@
#! /bin/sh #! /bin/sh
# Guess values for system-dependent variables and create Makefiles. # Guess values for system-dependent variables and create Makefiles.
# Generated by GNU Autoconf 2.69 for ccid 1.4.30. # Generated by GNU Autoconf 2.69 for ccid 1.4.31.
# #
# #
# Copyright (C) 1992-1996, 1998-2012 Free Software Foundation, Inc. # Copyright (C) 1992-1996, 1998-2012 Free Software Foundation, Inc.
@ -587,8 +587,8 @@ MAKEFLAGS=
# Identity of this package. # Identity of this package.
PACKAGE_NAME='ccid' PACKAGE_NAME='ccid'
PACKAGE_TARNAME='ccid' PACKAGE_TARNAME='ccid'
PACKAGE_VERSION='1.4.30' PACKAGE_VERSION='1.4.31'
PACKAGE_STRING='ccid 1.4.30' PACKAGE_STRING='ccid 1.4.31'
PACKAGE_BUGREPORT='' PACKAGE_BUGREPORT=''
PACKAGE_URL='' PACKAGE_URL=''
@ -1378,7 +1378,7 @@ if test "$ac_init_help" = "long"; then
# Omit some internal or obsolete options to make the list less imposing. # Omit some internal or obsolete options to make the list less imposing.
# This message is too long to be a string in the A/UX 3.1 sh. # This message is too long to be a string in the A/UX 3.1 sh.
cat <<_ACEOF cat <<_ACEOF
\`configure' configures ccid 1.4.30 to adapt to many kinds of systems. \`configure' configures ccid 1.4.31 to adapt to many kinds of systems.
Usage: $0 [OPTION]... [VAR=VALUE]... Usage: $0 [OPTION]... [VAR=VALUE]...
@ -1449,7 +1449,7 @@ fi
if test -n "$ac_init_help"; then if test -n "$ac_init_help"; then
case $ac_init_help in case $ac_init_help in
short | recursive ) echo "Configuration of ccid 1.4.30:";; short | recursive ) echo "Configuration of ccid 1.4.31:";;
esac esac
cat <<\_ACEOF cat <<\_ACEOF
@ -1593,7 +1593,7 @@ fi
test -n "$ac_init_help" && exit $ac_status test -n "$ac_init_help" && exit $ac_status
if $ac_init_version; then if $ac_init_version; then
cat <<\_ACEOF cat <<\_ACEOF
ccid configure 1.4.30 ccid configure 1.4.31
generated by GNU Autoconf 2.69 generated by GNU Autoconf 2.69
Copyright (C) 2012 Free Software Foundation, Inc. Copyright (C) 2012 Free Software Foundation, Inc.
@ -2012,7 +2012,7 @@ cat >config.log <<_ACEOF
This file contains any messages produced by compilers while This file contains any messages produced by compilers while
running configure, to aid debugging if configure makes a mistake. running configure, to aid debugging if configure makes a mistake.
It was created by ccid $as_me 1.4.30, which was It was created by ccid $as_me 1.4.31, which was
generated by GNU Autoconf 2.69. Invocation command line was generated by GNU Autoconf 2.69. Invocation command line was
$ $0 $@ $ $0 $@
@ -2876,7 +2876,7 @@ fi
# Define the identity of the package. # Define the identity of the package.
PACKAGE='ccid' PACKAGE='ccid'
VERSION='1.4.30' VERSION='1.4.31'
cat >>confdefs.h <<_ACEOF cat >>confdefs.h <<_ACEOF
@ -7135,11 +7135,8 @@ _LT_EOF
test $ac_status = 0; }; then test $ac_status = 0; }; then
# Now try to grab the symbols. # Now try to grab the symbols.
nlist=conftest.nm nlist=conftest.nm
if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$NM conftest.$ac_objext \| "$lt_cv_sys_global_symbol_pipe" \> $nlist\""; } >&5 $ECHO "$as_me:$LINENO: $NM conftest.$ac_objext | $lt_cv_sys_global_symbol_pipe > $nlist" >&5
(eval $NM conftest.$ac_objext \| "$lt_cv_sys_global_symbol_pipe" \> $nlist) 2>&5 if eval "$NM" conftest.$ac_objext \| "$lt_cv_sys_global_symbol_pipe" \> $nlist 2>&5 && test -s "$nlist"; then
ac_status=$?
$as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
test $ac_status = 0; } && test -s "$nlist"; then
# Try sorting and uniquifying the output. # Try sorting and uniquifying the output.
if sort "$nlist" | uniq > "$nlist"T; then if sort "$nlist" | uniq > "$nlist"T; then
mv -f "$nlist"T "$nlist" mv -f "$nlist"T "$nlist"
@ -14711,7 +14708,7 @@ cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
# report actual input values of CONFIG_FILES etc. instead of their # report actual input values of CONFIG_FILES etc. instead of their
# values after options handling. # values after options handling.
ac_log=" ac_log="
This file was extended by ccid $as_me 1.4.30, which was This file was extended by ccid $as_me 1.4.31, which was
generated by GNU Autoconf 2.69. Invocation command line was generated by GNU Autoconf 2.69. Invocation command line was
CONFIG_FILES = $CONFIG_FILES CONFIG_FILES = $CONFIG_FILES
@ -14777,7 +14774,7 @@ _ACEOF
cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`" ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`"
ac_cs_version="\\ ac_cs_version="\\
ccid config.status 1.4.30 ccid config.status 1.4.31
configured by $0, generated by GNU Autoconf 2.69, configured by $0, generated by GNU Autoconf 2.69,
with options \\"\$ac_cs_config\\" with options \\"\$ac_cs_config\\"

View File

@ -4,7 +4,7 @@
# Require autoconf 2.61 # Require autoconf 2.61
AC_PREREQ([2.69]) AC_PREREQ([2.69])
AC_INIT([ccid],[1.4.30]) AC_INIT([ccid],[1.4.31])
AC_CONFIG_SRCDIR(src/ifdhandler.c) AC_CONFIG_SRCDIR(src/ifdhandler.c)
AC_CONFIG_AUX_DIR([.]) AC_CONFIG_AUX_DIR([.])
AM_INIT_AUTOMAKE(1.8 dist-bzip2 no-dist-gzip subdir-objects) AM_INIT_AUTOMAKE(1.8 dist-bzip2 no-dist-gzip subdir-objects)

385
ltmain.sh
View File

@ -31,7 +31,7 @@
PROGRAM=libtool PROGRAM=libtool
PACKAGE=libtool PACKAGE=libtool
VERSION="2.4.6 Debian-2.4.6-4" VERSION="2.4.6 Debian-2.4.6-9"
package_revision=2.4.6 package_revision=2.4.6
@ -64,7 +64,7 @@ package_revision=2.4.6
# libraries, which are installed to $pkgauxdir. # libraries, which are installed to $pkgauxdir.
# Set a version string for this script. # Set a version string for this script.
scriptversion=2015-10-12.13; # UTC scriptversion=2015-01-20.17; # UTC
# General shell script boiler plate, and helper functions. # General shell script boiler plate, and helper functions.
# Written by Gary V. Vaughan, 2004 # Written by Gary V. Vaughan, 2004
@ -580,16 +580,16 @@ if test yes = "$_G_HAVE_PLUSEQ_OP"; then
{ {
$debug_cmd $debug_cmd
func_quote_arg pretty "$2" func_quote_for_eval "$2"
eval "$1+=\\ \$func_quote_arg_result" eval "$1+=\\ \$func_quote_for_eval_result"
}' }'
else else
func_append_quoted () func_append_quoted ()
{ {
$debug_cmd $debug_cmd
func_quote_arg pretty "$2" func_quote_for_eval "$2"
eval "$1=\$$1\\ \$func_quote_arg_result" eval "$1=\$$1\\ \$func_quote_for_eval_result"
} }
fi fi
@ -1091,184 +1091,88 @@ func_relative_path ()
} }
# func_quote_portable EVAL ARG # func_quote_for_eval ARG...
# ---------------------------- # --------------------------
# Internal function to portably implement func_quote_arg. Note that we still # Aesthetically quote ARGs to be evaled later.
# keep attention to performance here so we as much as possible try to avoid # This function returns two values:
# calling sed binary (so far O(N) complexity as long as func_append is O(1)). # i) func_quote_for_eval_result
func_quote_portable () # double-quoted, suitable for a subsequent eval
# ii) func_quote_for_eval_unquoted_result
# has all characters that are still active within double
# quotes backslashified.
func_quote_for_eval ()
{ {
$debug_cmd $debug_cmd
func_quote_portable_result=$2 func_quote_for_eval_unquoted_result=
func_quote_for_eval_result=
# one-time-loop (easy break) while test 0 -lt $#; do
while true case $1 in
do *[\\\`\"\$]*)
if $1; then _G_unquoted_arg=`printf '%s\n' "$1" |$SED "$sed_quote_subst"` ;;
func_quote_portable_result=`$ECHO "$2" | $SED \ *)
-e "$sed_double_quote_subst" -e "$sed_double_backslash"` _G_unquoted_arg=$1 ;;
break esac
if test -n "$func_quote_for_eval_unquoted_result"; then
func_append func_quote_for_eval_unquoted_result " $_G_unquoted_arg"
else
func_append func_quote_for_eval_unquoted_result "$_G_unquoted_arg"
fi fi
# Quote for eval. case $_G_unquoted_arg in
case $func_quote_portable_result in # Double-quote args containing shell metacharacters to delay
*[\\\`\"\$]*) # word splitting, command substitution and variable expansion
case $func_quote_portable_result in # for a subsequent eval.
*[\[\*\?]*) # Many Bourne shells cannot handle close brackets correctly
func_quote_portable_result=`$ECHO "$func_quote_portable_result" | $SED "$sed_quote_subst"` # in scan sets, so we specify it separately.
break *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \ ]*|*]*|"")
;; _G_quoted_arg=\"$_G_unquoted_arg\"
esac
func_quote_portable_old_IFS=$IFS
for _G_char in '\' '`' '"' '$'
do
# STATE($1) PREV($2) SEPARATOR($3)
set start "" ""
func_quote_portable_result=dummy"$_G_char$func_quote_portable_result$_G_char"dummy
IFS=$_G_char
for _G_part in $func_quote_portable_result
do
case $1 in
quote)
func_append func_quote_portable_result "$3$2"
set quote "$_G_part" "\\$_G_char"
;;
start)
set first "" ""
func_quote_portable_result=
;;
first)
set quote "$_G_part" ""
;;
esac
done
done
IFS=$func_quote_portable_old_IFS
;; ;;
*) ;; *)
_G_quoted_arg=$_G_unquoted_arg
;;
esac esac
break
done
func_quote_portable_unquoted_result=$func_quote_portable_result if test -n "$func_quote_for_eval_result"; then
case $func_quote_portable_result in func_append func_quote_for_eval_result " $_G_quoted_arg"
# double-quote args containing shell metacharacters to delay
# word splitting, command substitution and variable expansion
# for a subsequent eval.
# many bourne shells cannot handle close brackets correctly
# in scan sets, so we specify it separately.
*[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \ ]*|*]*|"")
func_quote_portable_result=\"$func_quote_portable_result\"
;;
esac
}
# func_quotefast_eval ARG
# -----------------------
# Quote one ARG (internal). This is equivalent to 'func_quote_arg eval ARG',
# but optimized for speed. Result is stored in $func_quotefast_eval.
if test xyes = `(x=; printf -v x %q yes; echo x"$x") 2>/dev/null`; then
func_quotefast_eval ()
{
printf -v func_quotefast_eval_result %q "$1"
}
else
func_quotefast_eval ()
{
func_quote_portable false "$1"
func_quotefast_eval_result=$func_quote_portable_result
}
fi
# func_quote_arg MODEs ARG
# ------------------------
# Quote one ARG to be evaled later. MODEs argument may contain zero ore more
# specifiers listed below separated by ',' character. This function returns two
# values:
# i) func_quote_arg_result
# double-quoted (when needed), suitable for a subsequent eval
# ii) func_quote_arg_unquoted_result
# has all characters that are still active within double
# quotes backslashified. Available only if 'unquoted' is specified.
#
# Available modes:
# ----------------
# 'eval' (default)
# - escape shell special characters
# 'expand'
# - the same as 'eval'; but do not quote variable references
# 'pretty'
# - request aesthetic output, i.e. '"a b"' instead of 'a\ b'. This might
# later used in func_quote to get output like: 'echo "a b"' instead of
# 'echo a\ b'. This is slower than default on some shells.
# 'unquoted'
# - produce also $func_quote_arg_unquoted_result which does not contain
# wrapping double-quotes.
#
# Examples for 'func_quote_arg pretty,unquoted string':
#
# string | *_result | *_unquoted_result
# ------------+-----------------------+-------------------
# " | \" | \"
# a b | "a b" | a b
# "a b" | "\"a b\"" | \"a b\"
# * | "*" | *
# z="${x-$y}" | "z=\"\${x-\$y}\"" | z=\"\${x-\$y}\"
#
# Examples for 'func_quote_arg pretty,unquoted,expand string':
#
# string | *_result | *_unquoted_result
# --------------+---------------------+--------------------
# z="${x-$y}" | "z=\"${x-$y}\"" | z=\"${x-$y}\"
func_quote_arg ()
{
_G_quote_expand=false
case ,$1, in
*,expand,*)
_G_quote_expand=:
;;
esac
case ,$1, in
*,pretty,*|*,expand,*|*,unquoted,*)
func_quote_portable $_G_quote_expand "$2"
func_quote_arg_result=$func_quote_portable_result
func_quote_arg_unquoted_result=$func_quote_portable_unquoted_result
;;
*)
# Faster quote-for-eval for some shells.
func_quotefast_eval "$2"
func_quote_arg_result=$func_quotefast_eval_result
;;
esac
}
# func_quote MODEs ARGs...
# ------------------------
# Quote all ARGs to be evaled later and join them into single command. See
# func_quote_arg's description for more info.
func_quote ()
{
$debug_cmd
_G_func_quote_mode=$1 ; shift
func_quote_result=
while test 0 -lt $#; do
func_quote_arg "$_G_func_quote_mode" "$1"
if test -n "$func_quote_result"; then
func_append func_quote_result " $func_quote_arg_result"
else else
func_append func_quote_result "$func_quote_arg_result" func_append func_quote_for_eval_result "$_G_quoted_arg"
fi fi
shift shift
done done
} }
# func_quote_for_expand ARG
# -------------------------
# Aesthetically quote ARG to be evaled later; same as above,
# but do not quote variable references.
func_quote_for_expand ()
{
$debug_cmd
case $1 in
*[\\\`\"]*)
_G_arg=`$ECHO "$1" | $SED \
-e "$sed_double_quote_subst" -e "$sed_double_backslash"` ;;
*)
_G_arg=$1 ;;
esac
case $_G_arg in
# Double-quote args containing shell metacharacters to delay
# word splitting and command substitution for a subsequent eval.
# Many Bourne shells cannot handle close brackets correctly
# in scan sets, so we specify it separately.
*[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \ ]*|*]*|"")
_G_arg=\"$_G_arg\"
;;
esac
func_quote_for_expand_result=$_G_arg
}
# func_stripname PREFIX SUFFIX NAME # func_stripname PREFIX SUFFIX NAME
# --------------------------------- # ---------------------------------
# strip PREFIX and SUFFIX from NAME, and store in func_stripname_result. # strip PREFIX and SUFFIX from NAME, and store in func_stripname_result.
@ -1311,8 +1215,8 @@ func_show_eval ()
_G_cmd=$1 _G_cmd=$1
_G_fail_exp=${2-':'} _G_fail_exp=${2-':'}
func_quote_arg pretty,expand "$_G_cmd" func_quote_for_expand "$_G_cmd"
eval "func_notquiet $func_quote_arg_result" eval "func_notquiet $func_quote_for_expand_result"
$opt_dry_run || { $opt_dry_run || {
eval "$_G_cmd" eval "$_G_cmd"
@ -1337,8 +1241,8 @@ func_show_eval_locale ()
_G_fail_exp=${2-':'} _G_fail_exp=${2-':'}
$opt_quiet || { $opt_quiet || {
func_quote_arg expand,pretty "$_G_cmd" func_quote_for_expand "$_G_cmd"
eval "func_echo $func_quote_arg_result" eval "func_echo $func_quote_for_expand_result"
} }
$opt_dry_run || { $opt_dry_run || {
@ -1466,7 +1370,7 @@ func_lt_ver ()
#! /bin/sh #! /bin/sh
# Set a version string for this script. # Set a version string for this script.
scriptversion=2015-10-12.13; # UTC scriptversion=2015-10-07.11; # UTC
# A portable, pluggable option parser for Bourne shell. # A portable, pluggable option parser for Bourne shell.
# Written by Gary V. Vaughan, 2010 # Written by Gary V. Vaughan, 2010
@ -1676,8 +1580,8 @@ func_run_hooks ()
# ' # '
# # No change in '$@' (ignored completely by this hook). There is # # No change in '$@' (ignored completely by this hook). There is
# # no need to do the equivalent (but slower) action: # # no need to do the equivalent (but slower) action:
# # func_quote eval ${1+"$@"} # # func_quote_for_eval ${1+"$@"}
# # my_options_prep_result=$func_quote_result # # my_options_prep_result=$func_quote_for_eval_result
# false # false
# } # }
# func_add_hook func_options_prep my_options_prep # func_add_hook func_options_prep my_options_prep
@ -1713,8 +1617,8 @@ func_run_hooks ()
# done # done
# #
# if $args_changed; then # if $args_changed; then
# func_quote eval ${1+"$@"} # func_quote_for_eval ${1+"$@"}
# my_silent_option_result=$func_quote_result # my_silent_option_result=$func_quote_for_eval_result
# fi # fi
# #
# $args_changed # $args_changed
@ -1781,8 +1685,8 @@ func_options ()
if $_G_rc_options; then if $_G_rc_options; then
func_options_result=$_G_res_var func_options_result=$_G_res_var
else else
func_quote eval ${1+"$@"} func_quote_for_eval ${1+"$@"}
func_options_result=$func_quote_result func_options_result=$func_quote_for_eval_result
fi fi
$_G_rc_options $_G_rc_options
@ -1925,8 +1829,8 @@ func_parse_options ()
if $_G_rc_parse_options; then if $_G_rc_parse_options; then
# save modified positional parameters for caller # save modified positional parameters for caller
func_quote eval ${1+"$@"} func_quote_for_eval ${1+"$@"}
func_parse_options_result=$func_quote_result func_parse_options_result=$func_quote_for_eval_result
fi fi
$_G_rc_parse_options $_G_rc_parse_options
@ -2237,7 +2141,7 @@ include the following information:
compiler: $LTCC compiler: $LTCC
compiler flags: $LTCFLAGS compiler flags: $LTCFLAGS
linker: $LD (gnu? $with_gnu_ld) linker: $LD (gnu? $with_gnu_ld)
version: $progname $scriptversion Debian-2.4.6-4 version: $progname $scriptversion Debian-2.4.6-9
automake: `($AUTOMAKE --version) 2>/dev/null |$SED 1q` automake: `($AUTOMAKE --version) 2>/dev/null |$SED 1q`
autoconf: `($AUTOCONF --version) 2>/dev/null |$SED 1q` autoconf: `($AUTOCONF --version) 2>/dev/null |$SED 1q`
@ -2471,8 +2375,8 @@ libtool_options_prep ()
if $_G_rc_lt_options_prep; then if $_G_rc_lt_options_prep; then
# Pass back the list of options. # Pass back the list of options.
func_quote eval ${1+"$@"} func_quote_for_eval ${1+"$@"}
libtool_options_prep_result=$func_quote_result libtool_options_prep_result=$func_quote_for_eval_result
fi fi
$_G_rc_lt_options_prep $_G_rc_lt_options_prep
@ -2578,8 +2482,8 @@ libtool_parse_options ()
if $_G_rc_lt_parse_options; then if $_G_rc_lt_parse_options; then
# save modified positional parameters for caller # save modified positional parameters for caller
func_quote eval ${1+"$@"} func_quote_for_eval ${1+"$@"}
libtool_parse_options_result=$func_quote_result libtool_parse_options_result=$func_quote_for_eval_result
fi fi
$_G_rc_lt_parse_options $_G_rc_lt_parse_options
@ -2639,8 +2543,8 @@ libtool_validate_options ()
} }
# Pass back the unparsed argument list # Pass back the unparsed argument list
func_quote eval ${1+"$@"} func_quote_for_eval ${1+"$@"}
libtool_validate_options_result=$func_quote_result libtool_validate_options_result=$func_quote_for_eval_result
} }
func_add_hook func_validate_options libtool_validate_options func_add_hook func_validate_options libtool_validate_options
@ -3606,8 +3510,8 @@ func_mode_compile ()
esac esac
done done
func_quote_arg pretty "$libobj" func_quote_for_eval "$libobj"
test "X$libobj" != "X$func_quote_arg_result" \ test "X$libobj" != "X$func_quote_for_eval_result" \
&& $ECHO "X$libobj" | $GREP '[]~#^*{};<>?"'"'"' &()|`$[]' \ && $ECHO "X$libobj" | $GREP '[]~#^*{};<>?"'"'"' &()|`$[]' \
&& func_warning "libobj name '$libobj' may not contain shell special characters." && func_warning "libobj name '$libobj' may not contain shell special characters."
func_dirname_and_basename "$obj" "/" "" func_dirname_and_basename "$obj" "/" ""
@ -3680,8 +3584,8 @@ compiler."
func_to_tool_file "$srcfile" func_convert_file_msys_to_w32 func_to_tool_file "$srcfile" func_convert_file_msys_to_w32
srcfile=$func_to_tool_file_result srcfile=$func_to_tool_file_result
func_quote_arg pretty "$srcfile" func_quote_for_eval "$srcfile"
qsrcfile=$func_quote_arg_result qsrcfile=$func_quote_for_eval_result
# Only build a PIC object if we are building libtool libraries. # Only build a PIC object if we are building libtool libraries.
if test yes = "$build_libtool_libs"; then if test yes = "$build_libtool_libs"; then
@ -4284,8 +4188,8 @@ func_mode_install ()
case $nonopt in *shtool*) :;; *) false;; esac case $nonopt in *shtool*) :;; *) false;; esac
then then
# Aesthetically quote it. # Aesthetically quote it.
func_quote_arg pretty "$nonopt" func_quote_for_eval "$nonopt"
install_prog="$func_quote_arg_result " install_prog="$func_quote_for_eval_result "
arg=$1 arg=$1
shift shift
else else
@ -4295,8 +4199,8 @@ func_mode_install ()
# The real first argument should be the name of the installation program. # The real first argument should be the name of the installation program.
# Aesthetically quote it. # Aesthetically quote it.
func_quote_arg pretty "$arg" func_quote_for_eval "$arg"
func_append install_prog "$func_quote_arg_result" func_append install_prog "$func_quote_for_eval_result"
install_shared_prog=$install_prog install_shared_prog=$install_prog
case " $install_prog " in case " $install_prog " in
*[\\\ /]cp\ *) install_cp=: ;; *[\\\ /]cp\ *) install_cp=: ;;
@ -4353,12 +4257,12 @@ func_mode_install ()
esac esac
# Aesthetically quote the argument. # Aesthetically quote the argument.
func_quote_arg pretty "$arg" func_quote_for_eval "$arg"
func_append install_prog " $func_quote_arg_result" func_append install_prog " $func_quote_for_eval_result"
if test -n "$arg2"; then if test -n "$arg2"; then
func_quote_arg pretty "$arg2" func_quote_for_eval "$arg2"
fi fi
func_append install_shared_prog " $func_quote_arg_result" func_append install_shared_prog " $func_quote_for_eval_result"
done done
test -z "$install_prog" && \ test -z "$install_prog" && \
@ -4369,8 +4273,8 @@ func_mode_install ()
if test -n "$install_override_mode" && $no_mode; then if test -n "$install_override_mode" && $no_mode; then
if $install_cp; then :; else if $install_cp; then :; else
func_quote_arg pretty "$install_override_mode" func_quote_for_eval "$install_override_mode"
func_append install_shared_prog " -m $func_quote_arg_result" func_append install_shared_prog " -m $func_quote_for_eval_result"
fi fi
fi fi
@ -4666,8 +4570,8 @@ func_mode_install ()
relink_command=`$ECHO "$relink_command" | $SED 's%@OUTPUT@%'"$outputname"'%g'` relink_command=`$ECHO "$relink_command" | $SED 's%@OUTPUT@%'"$outputname"'%g'`
$opt_quiet || { $opt_quiet || {
func_quote_arg expand,pretty "$relink_command" func_quote_for_expand "$relink_command"
eval "func_echo $func_quote_arg_result" eval "func_echo $func_quote_for_expand_result"
} }
if eval "$relink_command"; then : if eval "$relink_command"; then :
else else
@ -5446,8 +5350,7 @@ else
if test \"\$libtool_execute_magic\" != \"$magic\"; then if test \"\$libtool_execute_magic\" != \"$magic\"; then
file=\"\$0\"" file=\"\$0\""
func_quote_arg pretty "$ECHO" qECHO=`$ECHO "$ECHO" | $SED "$sed_quote_subst"`
qECHO=$func_quote_arg_result
$ECHO "\ $ECHO "\
# A function that is used when there is no print builtin or printf. # A function that is used when there is no print builtin or printf.
@ -5457,7 +5360,7 @@ func_fallback_echo ()
\$1 \$1
_LTECHO_EOF' _LTECHO_EOF'
} }
ECHO=$qECHO ECHO=\"$qECHO\"
fi fi
# Very basic option parsing. These options are (a) specific to # Very basic option parsing. These options are (a) specific to
@ -6800,9 +6703,9 @@ func_mode_link ()
while test "$#" -gt 0; do while test "$#" -gt 0; do
arg=$1 arg=$1
shift shift
func_quote_arg pretty,unquoted "$arg" func_quote_for_eval "$arg"
qarg=$func_quote_arg_unquoted_result qarg=$func_quote_for_eval_unquoted_result
func_append libtool_args " $func_quote_arg_result" func_append libtool_args " $func_quote_for_eval_result"
# If the previous option needs an argument, assign it. # If the previous option needs an argument, assign it.
if test -n "$prev"; then if test -n "$prev"; then
@ -7400,9 +7303,9 @@ func_mode_link ()
save_ifs=$IFS; IFS=, save_ifs=$IFS; IFS=,
for flag in $args; do for flag in $args; do
IFS=$save_ifs IFS=$save_ifs
func_quote_arg pretty "$flag" func_quote_for_eval "$flag"
func_append arg " $func_quote_arg_result" func_append arg " $func_quote_for_eval_result"
func_append compiler_flags " $func_quote_arg_result" func_append compiler_flags " $func_quote_for_eval_result"
done done
IFS=$save_ifs IFS=$save_ifs
func_stripname ' ' '' "$arg" func_stripname ' ' '' "$arg"
@ -7416,10 +7319,10 @@ func_mode_link ()
save_ifs=$IFS; IFS=, save_ifs=$IFS; IFS=,
for flag in $args; do for flag in $args; do
IFS=$save_ifs IFS=$save_ifs
func_quote_arg pretty "$flag" func_quote_for_eval "$flag"
func_append arg " $wl$func_quote_arg_result" func_append arg " $wl$func_quote_for_eval_result"
func_append compiler_flags " $wl$func_quote_arg_result" func_append compiler_flags " $wl$func_quote_for_eval_result"
func_append linker_flags " $func_quote_arg_result" func_append linker_flags " $func_quote_for_eval_result"
done done
IFS=$save_ifs IFS=$save_ifs
func_stripname ' ' '' "$arg" func_stripname ' ' '' "$arg"
@ -7443,8 +7346,8 @@ func_mode_link ()
# -msg_* for osf cc # -msg_* for osf cc
-msg_*) -msg_*)
func_quote_arg pretty "$arg" func_quote_for_eval "$arg"
arg=$func_quote_arg_result arg=$func_quote_for_eval_result
;; ;;
# Flags to be passed through unchanged, with rationale: # Flags to be passed through unchanged, with rationale:
@ -7464,12 +7367,13 @@ func_mode_link ()
# -specs=* GCC specs files # -specs=* GCC specs files
# -stdlib=* select c++ std lib with clang # -stdlib=* select c++ std lib with clang
# -fsanitize=* Clang/GCC memory and address sanitizer # -fsanitize=* Clang/GCC memory and address sanitizer
# -fuse-ld=* Linker select flags for GCC
-64|-mips[0-9]|-r[0-9][0-9]*|-xarch=*|-xtarget=*|+DA*|+DD*|-q*|-m*| \ -64|-mips[0-9]|-r[0-9][0-9]*|-xarch=*|-xtarget=*|+DA*|+DD*|-q*|-m*| \
-t[45]*|-txscale*|-p|-pg|--coverage|-fprofile-*|-F*|@*|-tp=*|--sysroot=*| \ -t[45]*|-txscale*|-p|-pg|--coverage|-fprofile-*|-F*|@*|-tp=*|--sysroot=*| \
-O*|-g*|-flto*|-fwhopr*|-fuse-linker-plugin|-fstack-protector*|-stdlib=*| \ -O*|-g*|-flto*|-fwhopr*|-fuse-linker-plugin|-fstack-protector*|-stdlib=*| \
-specs=*|-fsanitize=*) -specs=*|-fsanitize=*|-fuse-ld=*)
func_quote_arg pretty "$arg" func_quote_for_eval "$arg"
arg=$func_quote_arg_result arg=$func_quote_for_eval_result
func_append compile_command " $arg" func_append compile_command " $arg"
func_append finalize_command " $arg" func_append finalize_command " $arg"
func_append compiler_flags " $arg" func_append compiler_flags " $arg"
@ -7490,15 +7394,15 @@ func_mode_link ()
continue continue
else else
# Otherwise treat like 'Some other compiler flag' below # Otherwise treat like 'Some other compiler flag' below
func_quote_arg pretty "$arg" func_quote_for_eval "$arg"
arg=$func_quote_arg_result arg=$func_quote_for_eval_result
fi fi
;; ;;
# Some other compiler flag. # Some other compiler flag.
-* | +*) -* | +*)
func_quote_arg pretty "$arg" func_quote_for_eval "$arg"
arg=$func_quote_arg_result arg=$func_quote_for_eval_result
;; ;;
*.$objext) *.$objext)
@ -7618,8 +7522,8 @@ func_mode_link ()
*) *)
# Unknown arguments in both finalize_command and compile_command need # Unknown arguments in both finalize_command and compile_command need
# to be aesthetically quoted because they are evaled later. # to be aesthetically quoted because they are evaled later.
func_quote_arg pretty "$arg" func_quote_for_eval "$arg"
arg=$func_quote_arg_result arg=$func_quote_for_eval_result
;; ;;
esac # arg esac # arg
@ -10131,8 +10035,8 @@ EOF
for cmd in $concat_cmds; do for cmd in $concat_cmds; do
IFS=$save_ifs IFS=$save_ifs
$opt_quiet || { $opt_quiet || {
func_quote_arg expand,pretty "$cmd" func_quote_for_expand "$cmd"
eval "func_echo $func_quote_arg_result" eval "func_echo $func_quote_for_expand_result"
} }
$opt_dry_run || eval "$cmd" || { $opt_dry_run || eval "$cmd" || {
lt_exit=$? lt_exit=$?
@ -10225,8 +10129,8 @@ EOF
eval cmd=\"$cmd\" eval cmd=\"$cmd\"
IFS=$save_ifs IFS=$save_ifs
$opt_quiet || { $opt_quiet || {
func_quote_arg expand,pretty "$cmd" func_quote_for_expand "$cmd"
eval "func_echo $func_quote_arg_result" eval "func_echo $func_quote_for_expand_result"
} }
$opt_dry_run || eval "$cmd" || { $opt_dry_run || eval "$cmd" || {
lt_exit=$? lt_exit=$?
@ -10700,12 +10604,12 @@ EOF
elif eval var_value=\$$var; test -z "$var_value"; then elif eval var_value=\$$var; test -z "$var_value"; then
relink_command="$var=; export $var; $relink_command" relink_command="$var=; export $var; $relink_command"
else else
func_quote_arg pretty "$var_value" func_quote_for_eval "$var_value"
relink_command="$var=$func_quote_arg_result; export $var; $relink_command" relink_command="$var=$func_quote_for_eval_result; export $var; $relink_command"
fi fi
done done
func_quote_arg pretty,unquoted "(cd `pwd`; $relink_command)" relink_command="(cd `pwd`; $relink_command)"
relink_command=$func_quote_arg_unquoted_result relink_command=`$ECHO "$relink_command" | $SED "$sed_quote_subst"`
fi fi
# Only actually do things if not in dry run mode. # Only actually do things if not in dry run mode.
@ -10945,14 +10849,13 @@ EOF
elif eval var_value=\$$var; test -z "$var_value"; then elif eval var_value=\$$var; test -z "$var_value"; then
relink_command="$var=; export $var; $relink_command" relink_command="$var=; export $var; $relink_command"
else else
func_quote_arg pretty,unquoted "$var_value" func_quote_for_eval "$var_value"
relink_command="$var=$func_quote_arg_unquoted_result; export $var; $relink_command" relink_command="$var=$func_quote_for_eval_result; export $var; $relink_command"
fi fi
done done
# Quote the link command for shipping. # Quote the link command for shipping.
relink_command="(cd `pwd`; $SHELL \"$progpath\" $preserve_args --mode=relink $libtool_args @inst_prefix_dir@)" relink_command="(cd `pwd`; $SHELL \"$progpath\" $preserve_args --mode=relink $libtool_args @inst_prefix_dir@)"
func_quote_arg pretty,unquoted "$relink_command" relink_command=`$ECHO "$relink_command" | $SED "$sed_quote_subst"`
relink_command=$func_quote_arg_unquoted_result
if test yes = "$hardcode_automatic"; then if test yes = "$hardcode_automatic"; then
relink_command= relink_command=
fi fi

3
m4/libtool.m4 vendored
View File

@ -4063,7 +4063,8 @@ _LT_EOF
if AC_TRY_EVAL(ac_compile); then if AC_TRY_EVAL(ac_compile); then
# Now try to grab the symbols. # Now try to grab the symbols.
nlist=conftest.nm nlist=conftest.nm
if AC_TRY_EVAL(NM conftest.$ac_objext \| "$lt_cv_sys_global_symbol_pipe" \> $nlist) && test -s "$nlist"; then $ECHO "$as_me:$LINENO: $NM conftest.$ac_objext | $lt_cv_sys_global_symbol_pipe > $nlist" >&AS_MESSAGE_LOG_FD
if eval "$NM" conftest.$ac_objext \| "$lt_cv_sys_global_symbol_pipe" \> $nlist 2>&AS_MESSAGE_LOG_FD && test -s "$nlist"; then
# Try sorting and uniquifying the output. # Try sorting and uniquifying the output.
if sort "$nlist" | uniq > "$nlist"T; then if sort "$nlist" | uniq > "$nlist"T; then
mv -f "$nlist"T "$nlist" mv -f "$nlist"T "$nlist"

View File

@ -1,6 +1,6 @@
# #
# List of readers supported by the CCID driver # List of readers supported by the CCID driver
# Generated: 2018-09-04 # Generated: 2019-07-31
# #
# DO NOT EDIT BY HAND # DO NOT EDIT BY HAND
@ -130,6 +130,7 @@
0x072F:0x1204:ACS ACR101 ICC Reader 0x072F:0x1204:ACS ACR101 ICC Reader
0x072F:0x221A:ACS ACR1251 Dual Reader 0x072F:0x221A:ACS ACR1251 Dual Reader
0x072F:0x223B:ACS ACR1252 Dual Reader 0x072F:0x223B:ACS ACR1252 Dual Reader
0x072F:0x223E:ACS ACR1252 Reader
0x072F:0x223F:ACS ACR1255U-J1 0x072F:0x223F:ACS ACR1255U-J1
0x072F:0x8201:ACS APG8201 PINhandy 1 0x072F:0x8201:ACS APG8201 PINhandy 1
0x072F:0x8202:ACS APG8201 USB Reader 0x072F:0x8202:ACS APG8201 USB Reader
@ -162,9 +163,13 @@
0x24DC:0x0201:Aladdin R.D. JCR-770 0x24DC:0x0201:Aladdin R.D. JCR-770
0x24DC:0x0401:Aladdin R.D. JC-WebPass (JC600) 0x24DC:0x0401:Aladdin R.D. JC-WebPass (JC600)
0x24DC:0x0402:Aladdin R.D. JaCarta 0x24DC:0x0402:Aladdin R.D. JaCarta
0x24DC:0x0428:Aladdin R.D. JaCartaReader
0x24DC:0x0501:Aladdin R.D. JaCarta U2F (JC602) 0x24DC:0x0501:Aladdin R.D. JaCarta U2F (JC602)
0x24DC:0x100F:Aladdin R.D. JaCarta Flash 0x24DC:0x100F:Aladdin R.D. JaCarta Flash
# Alcor Link
0x2CE3:0x9563:Alcor Link AK9563
# Alcor Micro # Alcor Micro
0x058F:0x9522:Alcor Micro AU9522 0x058F:0x9522:Alcor Micro AU9522
@ -193,9 +198,13 @@
0x03EB:0x6012:ATMEL VaultIC420 Smart Object 0x03EB:0x6012:ATMEL VaultIC420 Smart Object
0x03EB:0x6014:ATMEL VaultIC440 0x03EB:0x6014:ATMEL VaultIC440
# AvestUA
0xC1A6:0x0131:AvestUA AvestKey
# Avtor # Avtor
0x15CF:0x0019:Avtor SecureToken 0x15CF:0x0019:Avtor SecureToken
0x15CF:0x001D:Avtor SC Reader 371 0x15CF:0x001D:Avtor SC Reader 371
0x15CF:0x0020:Avtor SecureToken
# Axalto # Axalto
0x04E6:0x511C:Axalto Reflex USB v3 0x04E6:0x511C:Axalto Reflex USB v3
@ -215,7 +224,10 @@
0x25DD:0x2351:Bit4id Digital DNA Key 0x25DD:0x2351:Bit4id Digital DNA Key
0x25DD:0x2361:Bit4id Digital-DNA Key BT 0x25DD:0x2361:Bit4id Digital-DNA Key BT
0x25DD:0x2362:Bit4id Digital-DNA Key 0x25DD:0x2362:Bit4id Digital-DNA Key
0x25DD:0x2371:Bit4id TokenME EVO v2
0x25DD:0x3111:Bit4id miniLector 0x25DD:0x3111:Bit4id miniLector
0x25DD:0x3211:Bit4id miniLector AIR EVO
0x25DD:0xB001:Bit4id miniLector Blue
# Bluink Ltd. # Bluink Ltd.
0x2ABE:0x1003:Bluink Ltd. Bluink CCID 0x2ABE:0x1003:Bluink Ltd. Bluink CCID
@ -230,6 +242,9 @@
0x0A5C:0x5833:Broadcom Corp 5880 0x0A5C:0x5833:Broadcom Corp 5880
0x0A5C:0x5834:Broadcom Corp 5880 0x0A5C:0x5834:Broadcom Corp 5880
0x0A5C:0x5842:Broadcom Corp 58200 0x0A5C:0x5842:Broadcom Corp 58200
0x0A5C:0x5843:Broadcom Corp 58200
0x0A5C:0x5844:Broadcom Corp 58200
0x0A5C:0x5845:Broadcom Corp 58200
# C3PO # C3PO
0x0783:0x0007:C3PO TLTC2USB 0x0783:0x0007:C3PO TLTC2USB
@ -245,6 +260,7 @@
# Certgate GmbH # Certgate GmbH
0x2DFF:0xB601:Certgate GmbH AirID 2 USB 0x2DFF:0xB601:Certgate GmbH AirID 2 USB
0x2DFF:0xB602:Certgate GmbH ONEKEY ID 2 USB
# charismathics # charismathics
0x19E7:0x0002:charismathics plug'n'crypt CCID token 0x19E7:0x0002:charismathics plug'n'crypt CCID token
@ -384,6 +400,10 @@
# HID # HID
# HID Global # HID Global
0x09C3:0x0028:HID Global Crescendo Key
0x09C3:0x0029:HID Global Crescendo Key
0x09C3:0x002B:HID Global Crescendo Key
0x09C3:0x002D:HID Global Crescendo Key
0x076B:0x3031:HID Global OMNIKEY 3x21 Smart Card Reader 0x076B:0x3031:HID Global OMNIKEY 3x21 Smart Card Reader
0x076B:0x5022:HID Global OMNIKEY 5022 Smart Card Reader 0x076B:0x5022:HID Global OMNIKEY 5022 Smart Card Reader
0x076B:0x5023:HID Global OMNIKEY 5023 Smart Card Reader 0x076B:0x5023:HID Global OMNIKEY 5023 Smart Card Reader
@ -422,6 +442,7 @@
0x04E6:0x581A:Identiv uTrust 3522 embd SE RFID Token 0x04E6:0x581A:Identiv uTrust 3522 embd SE RFID Token
0x04E6:0x581B:Identiv uTrust 2910 R Taglio SC Reader 0x04E6:0x581B:Identiv uTrust 2910 R Taglio SC Reader
0x04E6:0x581C:Identiv SCR35xx USB Smart Card Reader 0x04E6:0x581C:Identiv SCR35xx USB Smart Card Reader
0x04E6:0x581D:Identiv SCR3500 C Contact Reader
# Identive # Identive
0x04E6:0x5710:Identive CLOUD 2700 F Smart Card Reader 0x04E6:0x5710:Identive CLOUD 2700 F Smart Card Reader
@ -441,6 +462,9 @@
0x03EB:0x9308:IIT E.Key Crystal-1 0x03EB:0x9308:IIT E.Key Crystal-1
0x03EB:0x9324:IIT E.Key Almaz-1C 0x03EB:0x9324:IIT E.Key Almaz-1C
# InfoCert
0x2FD2:0x0100:InfoCert WirelessKey
# InfoThink # InfoThink
0x1FC9:0x0102:InfoThink IT-102MU Reader 0x1FC9:0x0102:InfoThink IT-102MU Reader
0x1403:0x7506:InfoThink IT-500U Reader 0x1403:0x7506:InfoThink IT-500U Reader
@ -540,6 +564,7 @@
# NXP # NXP
0x1FC9:0x0107:NXP Pegoda 2 N 0x1FC9:0x0107:NXP Pegoda 2 N
0x1FC9:0x010B:NXP PR533 0x1FC9:0x010B:NXP PR533
0x1FC9:0x0117:NXP PN7462AU CCID
# OBERTHUR TECHNOLOGIES # OBERTHUR TECHNOLOGIES
0x1A74:0xB111:OBERTHUR TECHNOLOGIES ID-ONE TOKEN SLIM v2 0x1A74:0xB111:OBERTHUR TECHNOLOGIES ID-ONE TOKEN SLIM v2
@ -592,6 +617,9 @@
# Rocketek # Rocketek
0x14CD:0x8166:Rocketek RT-SCR1 0x14CD:0x8166:Rocketek RT-SCR1
# Route1
0x13FE:0xC831:Route1 MobiKEY Fusion3
# SafeNet # SafeNet
0x0529:0x0602:SafeNet eToken 7300 0x0529:0x0602:SafeNet eToken 7300
0x0529:0x0620:SafeNet eToken 5100 0x0529:0x0620:SafeNet eToken 5100
@ -631,6 +659,9 @@
# Softforum Co., Ltd # Softforum Co., Ltd
0x04E8:0x0007:Softforum Co., Ltd XecureHSM 0x04E8:0x0007:Softforum Co., Ltd XecureHSM
# SPECINFOSYSTEMS
0x316E:0x0001:SPECINFOSYSTEMS DIAMOND token
# SpringCard # SpringCard
0x1C34:0x7113:SpringCard CrazyWriter 0x1C34:0x7113:SpringCard CrazyWriter
0x1C34:0x7121:SpringCard CSB6 Basic 0x1C34:0x7121:SpringCard CSB6 Basic

View File

@ -1303,7 +1303,7 @@ int InterruptRead(int reader_index, int timeout /* in ms */)
if (usbDevice[reader_index].multislot_extension != NULL) if (usbDevice[reader_index].multislot_extension != NULL)
return Multi_InterruptRead(reader_index, timeout); return Multi_InterruptRead(reader_index, timeout);
DEBUG_PERIODIC2("before (%d)", reader_index); DEBUG_PERIODIC3("before (%d), timeout: %d ms", reader_index, timeout);
transfer = libusb_alloc_transfer(0); transfer = libusb_alloc_transfer(0);
if (NULL == transfer) if (NULL == transfer)

View File

@ -44,7 +44,9 @@ THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
(__GNUC__ >= 4 || (__GNUC__ == 3 && __GNUC_MINOR__ >= 3)) || \ (__GNUC__ >= 4 || (__GNUC__ == 3 && __GNUC_MINOR__ >= 3)) || \
defined(__SUNPRO_C) && __SUNPRO_C >= 0x590 defined(__SUNPRO_C) && __SUNPRO_C >= 0x590
#define INTERNAL __attribute__ ((visibility("hidden"))) #define INTERNAL __attribute__ ((visibility("hidden")))
#ifndef PCSC_API
#define PCSC_API __attribute__ ((visibility("default"))) #define PCSC_API __attribute__ ((visibility("default")))
#endif
#elif defined(__SUNPRO_C) && __SUNPRO_C >= 0x550 #elif defined(__SUNPRO_C) && __SUNPRO_C >= 0x550
/* http://wikis.sun.com/display/SunStudio/Macros+for+Shared+Library+Symbol+Visibility */ /* http://wikis.sun.com/display/SunStudio/Macros+for+Shared+Library+Symbol+Visibility */
#define INTERNAL __hidden #define INTERNAL __hidden

View File

@ -101,7 +101,8 @@ int main(int argc, char *argv[])
r = libusb_open(dev, &handle); r = libusb_open(dev, &handle);
if (r < 0) if (r < 0)
{ {
(void)fprintf(stderr, "Can't libusb_open(): %s\n", strerror(errno)); (void)fprintf(stderr, "Can't libusb_open(): %s\n",
libusb_error_name(r));
if (getuid()) if (getuid())
{ {
(void)fprintf(stderr, (void)fprintf(stderr,
@ -196,7 +197,7 @@ again:
(void)fprintf(stderr, (void)fprintf(stderr,
"Can't claim interface (bus %d, device %d): %s\n", "Can't claim interface (bus %d, device %d): %s\n",
libusb_get_bus_number(dev), libusb_get_device_address(dev), libusb_get_bus_number(dev), libusb_get_device_address(dev),
strerror(errno)); libusb_error_name(r));
(void)libusb_close(handle); (void)libusb_close(handle);
if (EBUSY == errno) if (EBUSY == errno)
@ -421,7 +422,7 @@ static int ccid_parse_interface_descriptor(libusb_device_handle *handle,
/* we got an error? */ /* we got an error? */
if (n <= 0) if (n <= 0)
{ {
(void)(void)printf(" IFD does not support GET CLOCK FREQUENCIES request: %s\n", strerror(errno)); (void)(void)printf(" IFD does not support GET CLOCK FREQUENCIES request: %s\n", libusb_error_name(n));
if (EBUSY == errno) if (EBUSY == errno)
{ {
(void)fprintf(stderr, (void)fprintf(stderr,
@ -473,7 +474,7 @@ static int ccid_parse_interface_descriptor(libusb_device_handle *handle,
/* we got an error? */ /* we got an error? */
if (n <= 0) if (n <= 0)
(void)printf(" IFD does not support GET_DATA_RATES request: %s\n", (void)printf(" IFD does not support GET_DATA_RATES request: %s\n",
strerror(errno)); libusb_error_name(n));
else else
if (n % 4) /* not a multiple of 4 */ if (n % 4) /* not a multiple of 4 */
(void)printf(" wrong size for GET_DATA_RATES: %d\n", n); (void)printf(" wrong size for GET_DATA_RATES: %d\n", n);

View File

@ -44,8 +44,10 @@
/* disable asserts */ /* disable asserts */
#ifndef SIMCLIST_DEBUG #ifndef SIMCLIST_DEBUG
#ifndef NDEBUG
#define NDEBUG #define NDEBUG
#endif #endif
#endif
#include <assert.h> #include <assert.h>
@ -1222,7 +1224,7 @@ int list_dump_filedescriptor(const list_t *restrict l, int fd, size_t *restrict
/* speculation confirmed */ /* speculation confirmed */
WRITE_ERRCHECK(fd, ser_buf, bufsize); WRITE_ERRCHECK(fd, ser_buf, bufsize);
} else { /* speculation found broken */ } else { /* speculation found broken */
WRITE_ERRCHECK(fd, & bufsize, sizeof(size_t)); WRITE_ERRCHECK(fd, &bufsize, sizeof(bufsize));
WRITE_ERRCHECK(fd, ser_buf, bufsize); WRITE_ERRCHECK(fd, ser_buf, bufsize);
} }
free(ser_buf); free(ser_buf);
@ -1245,7 +1247,7 @@ int list_dump_filedescriptor(const list_t *restrict l, int fd, size_t *restrict
} }
WRITE_ERRCHECK(fd, x->data, bufsize); WRITE_ERRCHECK(fd, x->data, bufsize);
} else { } else {
WRITE_ERRCHECK(fd, &bufsize, sizeof(size_t)); WRITE_ERRCHECK(fd, &bufsize, sizeof(bufsize));
WRITE_ERRCHECK(fd, x->data, bufsize); WRITE_ERRCHECK(fd, x->data, bufsize);
} }
} }
@ -1337,7 +1339,7 @@ int list_restore_filedescriptor(list_t *restrict l, int fd, size_t *restrict len
if (NULL == buf) if (NULL == buf)
return -1; return -1;
for (cnt = 0; cnt < header.numels; cnt++) { for (cnt = 0; cnt < header.numels; cnt++) {
READ_ERRCHECK(fd, buf, header.elemlen); READ_ERRCHECK(fd, buf, (ssize_t) header.elemlen);
list_append(l, l->attrs.unserializer(buf, & elsize)); list_append(l, l->attrs.unserializer(buf, & elsize));
totmemorylen += elsize; totmemorylen += elsize;
} }
@ -1347,7 +1349,7 @@ int list_restore_filedescriptor(list_t *restrict l, int fd, size_t *restrict len
buf = malloc(header.elemlen); buf = malloc(header.elemlen);
if (NULL == buf) if (NULL == buf)
return -1; return -1;
READ_ERRCHECK(fd, buf, header.elemlen); READ_ERRCHECK(fd, buf, (ssize_t) header.elemlen);
list_append(l, buf); list_append(l, buf);
} }
totmemorylen = header.numels * header.elemlen; totmemorylen = header.numels * header.elemlen;
@ -1362,7 +1364,7 @@ int list_restore_filedescriptor(list_t *restrict l, int fd, size_t *restrict len
buf = malloc((size_t)elsize); buf = malloc((size_t)elsize);
if (NULL == buf) if (NULL == buf)
return -1; return -1;
READ_ERRCHECK(fd, buf, elsize); READ_ERRCHECK(fd, buf, (ssize_t) elsize);
totreadlen += elsize; totreadlen += elsize;
list_append(l, l->attrs.unserializer(buf, & elsize)); list_append(l, l->attrs.unserializer(buf, & elsize));
totmemorylen += elsize; totmemorylen += elsize;
@ -1374,7 +1376,7 @@ int list_restore_filedescriptor(list_t *restrict l, int fd, size_t *restrict len
buf = malloc(elsize); buf = malloc(elsize);
if (NULL == buf) if (NULL == buf)
return -1; return -1;
READ_ERRCHECK(fd, buf, elsize); READ_ERRCHECK(fd, buf, (ssize_t) elsize);
totreadlen += elsize; totreadlen += elsize;
list_append(l, buf); list_append(l, buf);
} }

View File

@ -44,7 +44,9 @@ THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
#include <stdio.h> #include <stdio.h>
#include <string.h> #include <string.h>
#include <errno.h> #include <errno.h>
#ifndef NDEBUG
#define NDEBUG #define NDEBUG
#endif
#include <assert.h> #include <assert.h>
#include "simclist.h" #include "simclist.h"