From 03576dcaddb097f8456c6a768636449986899d21c75a98b1fdd34aa96aadd590 Mon Sep 17 00:00:00 2001 From: Angel Yankov Date: Tue, 26 Nov 2024 16:50:52 +0000 Subject: [PATCH] - Fix compilationo with gcc14 and fix some warnings * Added pcsc-eco5000-fix-compile-gcc14.patch * Added pcsc-eco5000-clean-warnings.patch OBS-URL: https://build.opensuse.org/package/show/security:chipcard/pcsc-eco5000?expand=0&rev=7 --- pcsc-eco5000-clean-warnings.patch | 50 +++++++++++++++++++++ pcsc-eco5000-fix-compile-gcc14.patch | 67 ++++++++++++++++++++++++++++ pcsc-eco5000.changes | 7 +++ pcsc-eco5000.spec | 40 ++++++++++++----- 4 files changed, 152 insertions(+), 12 deletions(-) create mode 100644 pcsc-eco5000-clean-warnings.patch create mode 100644 pcsc-eco5000-fix-compile-gcc14.patch diff --git a/pcsc-eco5000-clean-warnings.patch b/pcsc-eco5000-clean-warnings.patch new file mode 100644 index 0000000..774ca7c --- /dev/null +++ b/pcsc-eco5000-clean-warnings.patch @@ -0,0 +1,50 @@ +Index: eco5000-1.2.0/ifd_handler.c +=================================================================== +--- eco5000-1.2.0.orig/ifd_handler.c ++++ eco5000-1.2.0/ifd_handler.c +@@ -71,7 +71,6 @@ int IFDGetATR (struct eco5000_t *ctx) + { + + int response; +- int prot; + + memset(ctx->ATR, 0, sizeof(ctx->ATR)); /* Clear parts of the context */ + memset(ctx->HCC, 0, sizeof(ctx->HCC)); +@@ -90,7 +89,6 @@ int IFDGetATR (struct eco5000_t *ctx) + + ctx->Type = ASYNC_ICC; + +- prot = ctx->Protocol; + } + + return 0; +@@ -316,7 +314,6 @@ RESPONSECODE IFDHGetCapabilities ( DWORD + + int rc; + struct eco5000_t *ctx; +- struct memorycard_t *pt; + + rc = LookupLun(Lun); + +Index: eco5000-1.2.0/ecotools.c +=================================================================== +--- eco5000-1.2.0.orig/ecotools.c ++++ eco5000-1.2.0/ecotools.c +@@ -3,7 +3,7 @@ + * |.**> <**.| CardContact + * |* *| Software & System Consulting + * |* *| Minden, Germany +- * |´**> <**´| Copyright (c) 1999. All rights reserved ++ * |�**> <**�| Copyright (c) 1999. All rights reserved + * --------- + * + * See file LICENSE for details on licensing +@@ -169,7 +169,7 @@ int ecoChangeBaudrate(struct eco5000_t * + + buff = 0xFF - 14318000 / (32 * baudrate); /* 115200 = 0xFC */ + +- if ((rc = ecoCommand(ctx, SET_BAUDRATE, 1, &buff, 0, NULL)) < 0) ++ if ((rc = ecoCommand(ctx, SET_BAUDRATE, 1, (unsigned char *) &buff, 0, NULL)) < 0) + return rc; + + rs232Mode(ctx->fh, baudrate, 0, -1, -1, -1); diff --git a/pcsc-eco5000-fix-compile-gcc14.patch b/pcsc-eco5000-fix-compile-gcc14.patch new file mode 100644 index 0000000..a781dd7 --- /dev/null +++ b/pcsc-eco5000-fix-compile-gcc14.patch @@ -0,0 +1,67 @@ +Index: eco5000-1.2.0/ifd_handler.c +=================================================================== +--- eco5000-1.2.0.orig/ifd_handler.c ++++ eco5000-1.2.0/ifd_handler.c +@@ -26,6 +26,7 @@ + #include "pcscdefines.h" + #include "ifd_handler.h" + ++#include "atr.h" + #include "defines.h" + #include "ctapi.h" + #include "sercom.h" +Index: eco5000-1.2.0/atr.h +=================================================================== +--- eco5000-1.2.0.orig/atr.h ++++ eco5000-1.2.0/atr.h +@@ -3,7 +3,7 @@ + * |.**> <**.| CardContact + * |* *| Software & System Consulting + * |* *| Minden, Germany +- * |´**> <**´| Copyright (c) 1999. All rights reserved ++ * |�**> <**�| Copyright (c) 1999. All rights reserved + * --------- + * + * See file LICENSE for details on licensing +@@ -19,6 +19,7 @@ + #ifndef _ATR_H_ + #define _ATR_H_ + ++#include "eco5000.h" + + int GetATR(struct eco5000_t *ctx); + /* GetATR - fills structure vars (HCC, ATR, ...) */ +@@ -29,4 +30,7 @@ int ASync_GetATR(struct eco5000_t *ctx); + + int Sync_GetATR(struct eco5000_t *ctx); + ++int PerformPPS(struct eco5000_t *ctx, unsigned char PPS0, ++ unsigned char PPS1, unsigned char PPS2, unsigned char PPS3); ++ + #endif +Index: eco5000-1.2.0/ctbcs.h +=================================================================== +--- eco5000-1.2.0.orig/ctbcs.h ++++ eco5000-1.2.0/ctbcs.h +@@ -53,6 +53,8 @@ int GetStatus (struct eco5000_t *ctx, + unsigned int *lr, + unsigned char *rsp); + ++int InstallHandler (struct eco5000_t *ctx); ++ + #endif + + +Index: eco5000-1.2.0/ctbcs.c +=================================================================== +--- eco5000-1.2.0.orig/ctbcs.c ++++ eco5000-1.2.0/ctbcs.c +@@ -19,6 +19,8 @@ + #include + #include + #include ++#include ++ + #include "eco5000.h" + #include "ctbcs.h" + #include "ctapi.h" diff --git a/pcsc-eco5000.changes b/pcsc-eco5000.changes index 51ed79c..db9207a 100644 --- a/pcsc-eco5000.changes +++ b/pcsc-eco5000.changes @@ -1,3 +1,10 @@ +------------------------------------------------------------------- +Tue Nov 26 09:48:30 UTC 2024 - Angel Yankov + +- Fix compilationo with gcc14 and fix some warnings + * Added pcsc-eco5000-fix-compile-gcc14.patch + * Added pcsc-eco5000-clean-warnings.patch + ------------------------------------------------------------------- Sun Nov 20 06:27:40 UTC 2011 - coolo@suse.com diff --git a/pcsc-eco5000.spec b/pcsc-eco5000.spec index 03c78d8..70e5cf4 100644 --- a/pcsc-eco5000.spec +++ b/pcsc-eco5000.spec @@ -1,7 +1,7 @@ # # spec file for package pcsc-eco5000 # -# Copyright (c) 2011 SUSE LINUX Products GmbH, Nuernberg, Germany. +# Copyright (c) 2024 SUSE LLC # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed @@ -12,22 +12,24 @@ # license that conforms to the Open Source Definition (Version 1.9) # published by the Open Source Initiative. -# Please submit bugfixes or comments via http://bugs.opensuse.org/ +# Please submit bugfixes or comments via https://bugs.opensuse.org/ # -# norootforbuild - Name: pcsc-eco5000 %define _name eco5000 -BuildRequires: libtool pcsc-lite-devel pkg-config +BuildRequires: libtool +BuildRequires: pcsc-lite-devel +BuildRequires: pkg-config Version: 1.2.0 -Release: 66 +Release: 0 Group: Productivity/Security -License: GPL-2.0+ -Url: http://www.cardcontact.de/download/driverdownload.html +License: GPL-2.0-or-later +URL: http://www.cardcontact.de/download/driverdownload.html Summary: PC/SC IFD Handler for the ECO 5000 Serial Smart Card Reader Source: %{_name}-%{version}.tar.bz2 +Patch0: pcsc-eco5000-fix-compile-gcc14.patch +Patch1: pcsc-eco5000-clean-warnings.patch BuildRoot: %{_tmppath}/%{name}-%{version}-build Requires: pcsc-lite %define ifddir %(pkg-config --variable=usbdropdir libpcsclite) @@ -52,6 +54,13 @@ This driver only works with the serial interface version of the ECO 5000. ORGA also sells a USB version, that is incompatible with the serial version. This driver will not work with the USB version! +%package devel +Summary: PC/SC IFD Handler for the ECO 5000 Serial Smart Card Reader +Group: Productivity/Security +Requires: %{name} = %{version} + +%description devel +Driver for the ECO 5000 Serial Smart Card Reader. Authors: @@ -61,6 +70,8 @@ Authors: %prep %setup -q -n %{_name}-%{version} +%patch -P 0 -p1 +%patch -P 1 -p1 %build autoreconf -f -i @@ -76,12 +87,17 @@ rm $RPM_BUILD_ROOT%{ifddir}/*.la rm $RPM_BUILD_ROOT%{_includedir}/ctapi.h rmdir $RPM_BUILD_ROOT%{_includedir} -%clean -rm -rf $RPM_BUILD_ROOT +%check +%make_build check %files %defattr(-,root,root) -%doc AUTHORS COPYING ChangeLog NEWS README README.html -%{ifddir}/* +%doc AUTHORS ChangeLog NEWS README README.html +%license COPYING +%{ifddir}/libcteco5000.so.0.0.0 +%{ifddir}/libcteco5000.so.0 + +%files devel +%{ifddir}/libcteco5000.so %changelog