From 7312fb1c3c6faa1bbd8e00f9c7fb7fb5827b4c0b Mon Sep 17 00:00:00 2001 From: Toshaan Bharvani Date: Fri, 1 Jul 2022 17:01:40 +0200 Subject: [PATCH] initial package creation Signed-off-by: Toshaan Bharvani --- SOURCES/ccid-1.4.26-omnikey-3121.patch | 133 +++++++ SOURCES/ccid-1.4.34-maxreaders.patch | 12 + SOURCES/ccid-1.4.36-etoken.patch | 94 +++++ ...E11B9FFE911146F41D953D78A1B4DFE8F9C57E.gpg | Bin 0 -> 14174 bytes SPECS/pcsc-lite-ccid.spec | 368 ++++++++++++++++++ 5 files changed, 607 insertions(+) create mode 100644 SOURCES/ccid-1.4.26-omnikey-3121.patch create mode 100644 SOURCES/ccid-1.4.34-maxreaders.patch create mode 100644 SOURCES/ccid-1.4.36-etoken.patch create mode 100644 SOURCES/gpgkey-F5E11B9FFE911146F41D953D78A1B4DFE8F9C57E.gpg create mode 100644 SPECS/pcsc-lite-ccid.spec diff --git a/SOURCES/ccid-1.4.26-omnikey-3121.patch b/SOURCES/ccid-1.4.26-omnikey-3121.patch new file mode 100644 index 0000000..98bab90 --- /dev/null +++ b/SOURCES/ccid-1.4.26-omnikey-3121.patch @@ -0,0 +1,133 @@ +diff -up ccid-1.4.26/src/ccid.c.omnikey ccid-1.4.26/src/ccid.c +--- ccid-1.4.26/src/ccid.c.omnikey 2017-02-24 10:04:25.742132234 +0100 ++++ ccid-1.4.26/src/ccid.c 2017-02-24 10:07:26.145976335 +0100 +@@ -55,8 +55,16 @@ int ccid_open_hack_pre(unsigned int read + { + _ccid_descriptor *ccid_descriptor = get_ccid_descriptor(reader_index); + ++ ccid_descriptor->dwNonStandardFlags = 0; ++ + switch (ccid_descriptor->readerID) + { ++ case CARDMAN3121: ++ ccid_descriptor->dwNonStandardFlags = CCID_NON_STAND_OMK_3121_T1; ++ ccid_descriptor->dwFeatures &= ~CCID_CLASS_EXCHANGE_MASK; ++ ccid_descriptor->dwFeatures |= CCID_CLASS_TPDU; ++ break; ++ + case MYSMARTPAD: + ccid_descriptor->dwMaxIFSD = 254; + break; +diff -up ccid-1.4.26/src/ccid.h.omnikey ccid-1.4.26/src/ccid.h +--- ccid-1.4.26/src/ccid.h.omnikey 2017-01-07 15:50:47.000000000 +0100 ++++ ccid-1.4.26/src/ccid.h 2017-02-24 10:04:25.742132234 +0100 +@@ -137,6 +137,7 @@ typedef struct + */ + char zlp; + #endif ++ unsigned int dwNonStandardFlags; + } _ccid_descriptor; + + /* Features from dwFeatures */ +@@ -153,6 +154,9 @@ typedef struct + #define CCID_CLASS_EXTENDED_APDU 0x00040000 + #define CCID_CLASS_EXCHANGE_MASK 0x00070000 + ++/* Features from the swNonStandardFlags */ ++#define CCID_NON_STAND_OMK_3121_T1 0x00000001 ++ + /* Features from bPINSupport */ + #define CCID_CLASS_PIN_VERIFY 0x01 + #define CCID_CLASS_PIN_MODIFY 0x02 +diff -up ccid-1.4.26/src/commands.c.omnikey ccid-1.4.26/src/commands.c +--- ccid-1.4.26/src/commands.c.omnikey 2017-01-07 15:50:47.000000000 +0100 ++++ ccid-1.4.26/src/commands.c 2017-02-24 10:11:21.297778870 +0100 +@@ -1292,6 +1292,39 @@ RESPONSECODE CmdXfrBlock(unsigned int re + return return_value; + } /* CmdXfrBlock */ + ++static RESPONSECODE omnikey_transmit_tpdu(unsigned int reader_index, ++ _ccid_descriptor *ccid_descriptor, unsigned int tx_length, ++ const unsigned char *tx_buffer) ++{ ++ unsigned char cmd[11+CMD_BUF_SIZE]; /* CCID + APDU buffer */ ++ status_t ret; ++ ++ cmd[0] = 0x6B; /* 3121 escape */ ++ i2dw(tx_length+1, cmd+1); /* APDU length */ ++ cmd[5] = ccid_descriptor->bCurrentSlotIndex; /* slot number */ ++ cmd[6] = (*ccid_descriptor->pbSeq)++; ++ cmd[7] = 0; ++ cmd[8] = 0; ++ cmd[9] = 0; ++ cmd[10] = 0x1A; ++ ++ /* check that the command is not too large */ ++ if (tx_length > CMD_BUF_SIZE) ++ { ++ DEBUG_CRITICAL2("TX Length too big: %d", tx_length); ++ return IFD_NOT_SUPPORTED; ++ } ++ ++ memcpy(cmd+11, tx_buffer, tx_length); ++ ++ ret = WritePort(reader_index, 11+tx_length, cmd); ++ if (STATUS_NO_SUCH_DEVICE == ret) ++ return IFD_NO_SUCH_DEVICE; ++ if (ret != STATUS_SUCCESS) ++ return IFD_COMMUNICATION_ERROR; ++ ++ return IFD_SUCCESS; ++} /* omnikey_transmit_tpdu */ + + /***************************************************************************** + * +@@ -1348,6 +1381,13 @@ RESPONSECODE CCID_Transmit(unsigned int + } + #endif + ++ /* hack for Onmikey 3121 */ ++ if ((ccid_descriptor->dwNonStandardFlags & CCID_NON_STAND_OMK_3121_T1) && ++ (ccid_descriptor->cardProtocol == SCARD_PROTOCOL_T1)) { ++ return omnikey_transmit_tpdu(reader_index, ccid_descriptor, tx_length, ++ tx_buffer); ++ } ++ + cmd[0] = 0x6F; /* XfrBlock */ + i2dw(tx_length, cmd+1); /* APDU length */ + cmd[5] = ccid_descriptor->bCurrentSlotIndex; /* slot number */ +@@ -1373,8 +1413,9 @@ RESPONSECODE CCID_Transmit(unsigned int + RESPONSECODE CCID_Receive(unsigned int reader_index, unsigned int *rx_length, + unsigned char rx_buffer[], unsigned char *chain_parameter) + { +- unsigned char cmd[10+CMD_BUF_SIZE]; /* CCID + APDU buffer */ ++ unsigned char cmd[11+CMD_BUF_SIZE]; /* CCID + APDU buffer */ + unsigned int length; ++ unsigned char *rx_ptr = cmd+10; + RESPONSECODE return_value = IFD_SUCCESS; + status_t ret; + _ccid_descriptor *ccid_descriptor = get_ccid_descriptor(reader_index); +@@ -1565,6 +1606,14 @@ time_request: + } + + length = dw2i(cmd, 1); ++ ++ if (length && ++ (ccid_descriptor->dwNonStandardFlags & CCID_NON_STAND_OMK_3121_T1) && ++ (ccid_descriptor->cardProtocol == SCARD_PROTOCOL_T1)) { ++ length--; ++ rx_ptr = cmd+11; ++ } ++ + if (length <= *rx_length) + *rx_length = length; + else +@@ -1581,7 +1630,7 @@ time_request: + } + else + if (length) +- memcpy(rx_buffer, cmd+10, length); ++ memcpy(rx_buffer, rx_ptr, length); + + /* Extended case? + * Only valid for RDR_to_PC_DataBlock frames */ diff --git a/SOURCES/ccid-1.4.34-maxreaders.patch b/SOURCES/ccid-1.4.34-maxreaders.patch new file mode 100644 index 0000000..64a5607 --- /dev/null +++ b/SOURCES/ccid-1.4.34-maxreaders.patch @@ -0,0 +1,12 @@ +diff -up ./src/ccid_ifdhandler.h.readers_32 ./src/ccid_ifdhandler.h +--- ./src/ccid_ifdhandler.h.readers_32 2018-08-20 16:06:34.080905748 -0700 ++++ ./src/ccid_ifdhandler.h 2018-08-20 16:07:04.638097096 -0700 +@@ -47,7 +47,7 @@ extern int DriverOptions; + * The maximum number of readers is also limited in pcsc-lite (16 by default) + * see the definition of PCSCLITE_MAX_READERS_CONTEXTS in src/PCSC/pcsclite.h + */ +-#define CCID_DRIVER_MAX_READERS 16 ++#define CCID_DRIVER_MAX_READERS 48 + + /* + * CCID driver specific functions diff --git a/SOURCES/ccid-1.4.36-etoken.patch b/SOURCES/ccid-1.4.36-etoken.patch new file mode 100644 index 0000000..d87bb90 --- /dev/null +++ b/SOURCES/ccid-1.4.36-etoken.patch @@ -0,0 +1,94 @@ +From b48e1e697010431b7f03d4ecfe917ceee95e2c64 Mon Sep 17 00:00:00 2001 +From: Ludovic Rousseau +Date: Tue, 7 Sep 2021 14:06:46 +0200 +Subject: [PATCH] Fix SafeNet eToken 5110 SC issue + +Some SafeNet eToken 5100 (but not all) have issues when IFSD is negotiated. +For some APDU the communication stops and the token returns 0 bytes. + +It is the case with the SafeNet eToken 5110 SC with +ATR: 3B D5 18 00 81 31 3A 7D 80 73 C8 21 10 30 +and PC/SC name "SafeNet eToken 5100 [eToken 5110 SC]" + +Another SafeNet eToken 5100 with +ATR: 3B D5 18 00 81 31 FE 7D 80 73 C8 21 10 F4 +and PC/SC name "SafeNet eToken 5100 [Main Interface]" +does NOT have problems with the the IFSD negotiation. + + +This fixes Debian bug #993647 +https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=993647 +--- + src/ccid.c | 7 +++++++ + src/ccid.h | 1 + + 2 files changed, 8 insertions(+) + +diff --git a/src/ccid.c b/src/ccid.c +index efef240..0d7ba54 100644 +--- a/src/ccid.c ++++ b/src/ccid.c +@@ -576,6 +576,13 @@ int ccid_open_hack_post(unsigned int reader_index) + * have one */ + ccid_descriptor->bPINSupport = 0; + break; ++ ++ case SAFENET_ETOKEN_5100: ++ /* the old SafeNet eToken 5110 SC (firmware 0.12) does not ++ * like IFSD negotiation. So disable it. */ ++ if (0x0012 == ccid_descriptor->IFD_bcdDevice) ++ ccid_descriptor->dwFeatures |= CCID_CLASS_AUTO_IFSD; ++ break; + } + + /* Gemalto readers may report additional information */ +diff --git a/src/ccid.h b/src/ccid.h +index b28f0c1..00ce07a 100644 +--- a/src/ccid.h ++++ b/src/ccid.h +@@ -239,6 +239,7 @@ typedef struct + #define IDENTIV_uTrust3701F 0x04E65791 + #define IDENTIV_uTrust4701F 0x04E65724 + #define BIT4ID_MINILECTOR 0x25DD3111 ++#define SAFENET_ETOKEN_5100 0x05290620 + + #define VENDOR_GEMALTO 0x08E6 + #define GET_VENDOR(readerID) ((readerID >> 16) & 0xFFFF) +-- +GitLab + +From 26ad96076523472e9d0d383d014e7b1ad241fd5b Mon Sep 17 00:00:00 2001 +From: Ludovic Rousseau +Date: Wed, 8 Sep 2021 11:28:48 +0200 +Subject: [PATCH] Fix SafeNet eToken 5110 SC issue (firmware 0.13) + +The SafeNet eToken 5110 SC with firmware 0.13 has the same problem as +the token with firmware 0.12. +We use the same oslution to fix the problem. + +Thanks again to Vladimir K for the bug report. +--- + src/ccid.c | 7 ++++--- + 1 file changed, 4 insertions(+), 3 deletions(-) + +diff --git a/src/ccid.c b/src/ccid.c +index 0d7ba54..21a2fe8 100644 +--- a/src/ccid.c ++++ b/src/ccid.c +@@ -578,9 +578,10 @@ int ccid_open_hack_post(unsigned int reader_index) + break; + + case SAFENET_ETOKEN_5100: +- /* the old SafeNet eToken 5110 SC (firmware 0.12) does not +- * like IFSD negotiation. So disable it. */ +- if (0x0012 == ccid_descriptor->IFD_bcdDevice) ++ /* the old SafeNet eToken 5110 SC (firmware 0.12 & 0.13) ++ * does not like IFSD negotiation. So disable it. */ ++ if ((0x0012 == ccid_descriptor->IFD_bcdDevice) ++ || (0x0013 == ccid_descriptor->IFD_bcdDevice)) + ccid_descriptor->dwFeatures |= CCID_CLASS_AUTO_IFSD; + break; + } +-- +GitLab + + diff --git a/SOURCES/gpgkey-F5E11B9FFE911146F41D953D78A1B4DFE8F9C57E.gpg b/SOURCES/gpgkey-F5E11B9FFE911146F41D953D78A1B4DFE8F9C57E.gpg new file mode 100644 index 0000000000000000000000000000000000000000..d3cd6318aa80c3d94e019231597ca5c10886f36e GIT binary patch literal 14174 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/dev/null) +%global pcsc_lite_ver 1.8.9 + +Name: pcsc-lite-ccid +Version: 1.4.36 +Release: 1%{?dist} +Summary: Generic USB CCID smart card reader driver + +License: LGPLv2+ +URL: https://ccid.apdu.fr/files +Source0: https://ccid.apdu.fr/files/ccid-%{version}.tar.bz2 +Source1: https://ccid.apdu.fr/files/ccid-%{version}.tar.bz2.asc +Source2: gpgkey-F5E11B9FFE911146F41D953D78A1B4DFE8F9C57E.gpg +Patch0: ccid-1.4.26-omnikey-3121.patch +Patch1: ccid-1.4.34-maxreaders.patch +Patch2: ccid-1.4.36-etoken.patch + +BuildRequires: make +BuildRequires: perl-interpreter +BuildRequires: perl-Getopt-Long +BuildRequires: libusb1-devel +BuildRequires: pcsc-lite-devel >= %{pcsc_lite_ver} +BuildRequires: gnupg2 gcc +Requires(post): systemd +Requires(postun): systemd +Requires: pcsc-lite%{?_isa} >= %{pcsc_lite_ver} +Provides: pcsc-ifd-handler +# Provide upgrade path from 'ccid' package +Obsoletes: ccid < 1.4.0-3 +Provides: ccid = %{version}-%{release} +# This is bundled from pcsc-lite upstream +Provides: bundled(simclist) = 1.6 + +%description +Generic USB CCID (Chip/Smart Card Interface Devices) driver for use with the +PC/SC Lite daemon. + + +%prep +gpgv2 --keyring %{SOURCE2} %{SOURCE1} %{SOURCE0} +%setup -q -n ccid-%{version} +%patch0 -p1 -b .omnikey +%patch1 -p0 -b .maxreaders +%patch2 -p1 -b .etoken + +%build +%configure --enable-twinserial +%make_build + + +%install +%make_install +cp -p src/openct/LICENSE LICENSE.openct + + +%post +/bin/systemctl try-restart pcscd.service >/dev/null 2>&1 || : + +%postun +/bin/systemctl try-restart pcscd.service >/dev/null 2>&1 || : + + +%files +%doc AUTHORS ChangeLog README.md +%license COPYING LICENSE.openct +%{dropdir}/ifd-ccid.bundle/ +%{dropdir}/serial/ +%config(noreplace) %{_sysconfdir}/reader.conf.d/libccidtwin + + +%changelog +* Thu Nov 18 2021 Jakub Jelen - 1.4.36-1 +- Rebase to current version from Fedora (#2017830) + +* Mon Aug 09 2021 Mohan Boddu - 1.4.34-5 +- Rebuilt for IMA sigs, glibc 2.34, aarch64 flags + Related: rhbz#1991688 + +* Fri Jun 25 2021 Jakub Jelen - 1.4.34-4 +- Increase the maximum readers count (#1975424) + +* Fri Apr 21 2021 Bob Relyea - 1.4.34-3 +- fix %{?dist} tag in Release: line (was missing the ?) + +* Fri Apr 16 2021 Mohan Boddu - 1.4.34-2 +- Rebuilt for RHEL 9 BETA on Apr 15th 2021. Related: rhbz#1947937 + +* Fri Feb 05 2021 Jakub Jelen - 1.4.34-1 +- New upstream release + +* Tue Jan 26 2021 Fedora Release Engineering - 1.4.33-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild + +* Tue Jul 28 2020 Fedora Release Engineering - 1.4.33-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild + +* Thu Jun 25 2020 Jakub Jelen - 1.4.33-1 +- New upstream release (#1851217) + +* Wed Apr 22 2020 Jakub Jelen - 1.4.32-1 +- New upstream release (#1826675) + +* Wed Jan 29 2020 Fedora Release Engineering - 1.4.31-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild + +* Mon Aug 19 2019 Jakub Jelen - 1.4.31-1 +- New upstream release (#1742657) + +* Fri Jul 26 2019 Fedora Release Engineering - 1.4.30-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild + +* Fri Feb 01 2019 Fedora Release Engineering - 1.4.30-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild + +* Tue Nov 20 2018 Jakub Jelen - 1.4.30-1 +- New upstream release (#1651350) + +* Fri Jul 13 2018 Fedora Release Engineering - 1.4.29-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild + +* Wed Feb 21 2018 Jakub Jelen - 1.4.29-1 +- New upstream release (#1547482) + +* Thu Feb 08 2018 Fedora Release Engineering - 1.4.28-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild + +* Fri Oct 20 2017 Jakub Jelen - 1.4.28-1 +- New upstream release (#1504404) + +* Thu Aug 03 2017 Fedora Release Engineering - 1.4.27-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Binutils_Mass_Rebuild + +* Thu Jul 27 2017 Fedora Release Engineering - 1.4.27-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild + +* Mon May 22 2017 Jakub Jelen - 1.4.27-1 +- New upstream release (#1453026) + +* Thu Mar 02 2017 Jakub Jelen - 1.4.26-3 +- Return support for OMNIKEY CardMan 3121 long writes (#1420024) + +* Sat Feb 11 2017 Fedora Release Engineering - 1.4.26-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild + +* Mon Jan 9 2017 Nikos Mavrogiannopoulos - 1.4.26-1 +- Updated to 1.4.26 + +* Mon Nov 21 2016 Nikos Mavrogiannopoulos - 1.4.25-1 +- Updated to 1.4.25 + +* Tue Jun 21 2016 Nikos Mavrogiannopoulos - 1.4.24-1 +- Updated to 1.4.24 + +* Mon Apr 25 2016 Nikos Mavrogiannopoulos - 1.4.23-1 +- Updated to 1.4.23 (#1328849, #1330087) +- Added gpg verification of package as part of build process + +* Thu Feb 04 2016 Fedora Release Engineering - 1.4.22-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild + +* Mon Jan 11 2016 Nikos Mavrogiannopoulos - 1.4.22-1 +- Updated to 1.4.22 + +* Thu Nov 12 2015 Nikos Mavrogiannopoulos - 1.4.21-1 +- Updated to 1.4.21 + +* Wed Aug 5 2015 Nikos Mavrogiannopoulos - 1.4.20-1 +- Updated to 1.4.20 + +* Fri Jul 10 2015 Nikos Mavrogiannopoulos - 1.4.19-1 +- Updated to 1.4.19 (#1241842) + +* Thu Jun 18 2015 Fedora Release Engineering - 1.4.18-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild + +* Thu Sep 18 2014 Nikos Mavrogiannopoulos - 1.4.18-1 +- Update to 1.4.18 + +* Sun Aug 17 2014 Fedora Release Engineering - 1.4.17-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_22_Mass_Rebuild + +* Thu Jun 12 2014 Nikos Mavrogiannopoulos - 1.4.17-1 +- Update to 1.4.17 + +* Fri Jun 06 2014 Fedora Release Engineering - 1.4.13-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild + +* Sun Oct 20 2013 Kalev Lember - 1.4.13-1 +- Update to 1.4.13 +- Tighten pcsc-lite deps with %%{?_isa} + +* Sat Aug 03 2013 Fedora Release Engineering - 1.4.11-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_20_Mass_Rebuild + +* Wed Jun 12 2013 Kalev Lember - 1.4.11-1 +- Update to 1.4.11 + +* Wed Apr 17 2013 Kalev Lember - 1.4.10-1 +- Update to 1.4.10 + +* Thu Feb 28 2013 Kalev Lember - 1.4.9-1 +- Update to 1.4.9 + +* Thu Feb 14 2013 Fedora Release Engineering - 1.4.8-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_19_Mass_Rebuild + +* Sun Oct 07 2012 Kalev Lember - 1.4.8-1 +- Update to 1.4.8 + +* Fri Jul 20 2012 Fedora Release Engineering - 1.4.7-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_18_Mass_Rebuild + +* Tue Jun 26 2012 Kalev Lember - 1.4.7-1 +- Update to 1.4.7 + +* Sat Apr 07 2012 Kalev Lember - 1.4.6-1 +- Update to 1.4.6 + +* Fri Jan 13 2012 Fedora Release Engineering - 1.4.5-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_17_Mass_Rebuild + +* Fri Oct 14 2011 Kalev Lember - 1.4.5-1 +- Update to 1.4.5 +- Switch to systemctl for restarting pcscd after upgrade now that it is using + native systemd unit files. + +* Fri May 27 2011 Kalev Lember - 1.4.4-1 +- Update to 1.4.4 +- Clean up the spec file for modern rpmbuild + +* Sat Apr 02 2011 Kalev Lember - 1.4.3-1 +- Update to 1.4.3 +- GPLv2+ licensed RSA_SecurID no longer gets installed, which changes + the license of the binary RPM from 'LGPLv2+ and GPLv2+' to 'LGPLv2+'. + +* Tue Mar 29 2011 Kalev Lember - 1.4.2-2 +- Don't install the udev rules + +* Fri Feb 25 2011 Kalev Lember - 1.4.2-1 +- Update to 1.4.2 + +* Tue Feb 08 2011 Fedora Release Engineering - 1.4.1-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_15_Mass_Rebuild + +* Mon Dec 13 2010 Kalev Lember - 1.4.1-1 +- Update to 1.4.1 + +* Thu Dec 09 2010 Kalev Lember - 1.4.0-4 +- Install src/openct/LICENSE file as LICENSE.openct in docs (#660600) +- Added 'and GPLv2+' to license tag to cover RSA_SecurID (#660600) + +* Tue Dec 07 2010 Kalev Lember - 1.4.0-3 +- Renamed ccid package to pcsc-lite-ccid (#654377) +- Mark files under reader.conf.d as config(noreplace) +- Don't mark udev rules as config + +* Tue Dec 07 2010 Kalev Lember - 1.4.0-2 +- Removed ExcludeArch: s390 s390x as these arches now have libusb1 +- Updated description + +* Wed Aug 04 2010 Kalev Lember - 1.4.0-1 +- Update to 1.4.0 +- Build against libusb1 instead of libusb 0.1 +- Install libccidtwin configuration file +- Spec file clean up + +* Sun Jul 04 2010 Kalev Lember - 1.3.13-1 +- Update to 1.3.13 + +* Thu Nov 19 2009 Kalev Lember - 1.3.11-1 +- Updated to ccid 1.3.11 +- Removed iso-8859-1 to utf-8 conversion as the files are in utf-8 now + +* Fri Jul 24 2009 Fedora Release Engineering - 1.3.9-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_12_Mass_Rebuild + +* Tue Feb 24 2009 Bob Relyea - 1.3.9-1 +- update to ccid 1.3.9 + +* Mon Feb 23 2009 Fedora Release Engineering - 1.3.8-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_11_Mass_Rebuild + +* Tue Aug 26 2008 Bob Relyea - 1.3.8-1 +- update to ccid 1.3.8 + +* Tue Feb 19 2008 Fedora Release Engineering - 1.2.1-4 +- Autorebuild for GCC 4.3 + +* Mon Aug 20 2007 Bob Relyea - 1.2.1-3 +- Update License description to the new Fedora standard + +* Mon Apr 30 2007 Bob Relyea - 1.2.1-2 +- Fix the missed use of the version macro + +* Tue Feb 06 2007 Bob Relyea - 1.2.1-1 +- Pick up ccid 1.2.1 +- use pcscd 'hotplug' feature instead of restarting the daemon +- add enable_udev + +* Mon Nov 06 2006 Bob Relyea - 1.1.0-2 +- Fix version macro to remove '-' + +* Thu Nov 02 2006 Bob Relyea - 1.1.0-1 +- Pickup ccid 1.1.0 + +* Thu Jul 20 2006 Florian La Roche - 1.0.1-5 +- require initscripts for post/postun + +* Sun Jul 16 2006 Florian La Roche - 1.0.1-4 +- fix excludearch line + +* Wed Jul 12 2006 Jesse Keating - 1.0.1-3.1 +- rebuild + +* Mon Jul 10 2006 Bob Relyea - 1.0.1-3 +- remove s390 from the build + +* Mon Jun 5 2006 Bob Relyea - 1.0.1-2 +- Move to Fedora Core, removed %%{_dist}. + +* Sat Apr 22 2006 Ville Skyttä - 1.0.1-1 +- 1.0.1. + +* Mon Mar 6 2006 Ville Skyttä - 1.0.0-1 +- 1.0.0, license changed to LGPL. + +* Wed Feb 15 2006 Ville Skyttä - 0.4.1-7 +- Rebuild. + +* Thu Nov 3 2005 Ville Skyttä - 0.4.1-6 +- Clean up build dependencies. +- Convert docs to UTF-8. + +* Thu Apr 7 2005 Michael Schwendt - 0.4.1-5 +- rebuilt + +* Fri Feb 25 2005 Ville Skyttä - 0.4.1-4 +- Drop Epoch: 0. +- Improve summary. +- Build with dependency tracking disabled. + +* Thu Jul 1 2004 Ville Skyttä - 0:0.4.1-0.fdr.3 +- Restart pcscd in post(un)install phase if it's available and running. + +* Thu May 13 2004 Ville Skyttä - 0:0.4.1-0.fdr.2 +- Provide pcsc-ifd-handler (idea from Debian). + +* Sat Feb 14 2004 Ville Skyttä - 0:0.4.1-0.fdr.1 +- Update to 0.4.1. + +* Fri Feb 13 2004 Ville Skyttä - 0:0.4.0-0.fdr.1 +- Update to 0.4.0. + +* Wed Nov 5 2003 Ville Skyttä - 0:0.3.2-0.fdr.1 +- Update to 0.3.2. +- Update URL. + +* Thu Oct 16 2003 Ville Skyttä - 0:0.3.1-0.fdr.1 +- Update to 0.3.1. + +* Wed Sep 10 2003 Ville Skyttä - 0:0.3.0-0.fdr.1 +- Update to 0.3.0. + +* Wed Aug 27 2003 Ville Skyttä - 0:0.2.0-0.fdr.1 +- Update to 0.2.0. + +* Tue Aug 19 2003 Ville Skyttä - 0:0.1.0-0.fdr.1 +- First build.