Compare commits

..

1 Commits
rawhide ... f20

Author SHA1 Message Date
Nikos Mavrogiannopoulos 31d0166d35 Safer usage of udev functions (#1071243) 2014-06-03 10:22:05 +02:00
5 changed files with 60 additions and 258 deletions

25
.gitignore vendored
View File

@ -1,26 +1 @@
/pcsc-lite-*.tar.bz2
/pcsc-lite-1.8.11.tar.bz2.asc
/pcsc-lite-1.8.12.tar.bz2.asc
/pcsc-lite-1.8.13.tar.bz2.asc
/pcsc-lite-1.8.14.tar.bz2.asc
/pcsc-lite-1.8.15.tar.bz2.asc
/pcsc-lite-1.8.16.tar.bz2.asc
/pcsc-lite-1.8.17.tar.bz2.asc
/pcsc-lite-1.8.18.tar.bz2.asc
/pcsc-lite-1.8.19.tar.bz2.asc
/pcsc-lite-1.8.20.tar.bz2.asc
/pcsc-lite-1.8.22.tar.bz2.asc
/pcsc-lite-1.8.23.tar.bz2.asc
/pcsc-lite-1.8.24.tar.bz2.asc
/pcsc-lite-1.8.25.tar.bz2.asc
/pcsc-lite-1.8.26.tar.bz2.asc
/pcsc-lite-1.9.0.tar.bz2.asc
/pcsc-lite-1.9.1.tar.bz2.asc
/pcsc-lite-1.9.2.tar.bz2.asc
/pcsc-lite-1.9.3.tar.bz2.asc
/pcsc-lite-1.9.4.tar.bz2.asc
/pcsc-lite-1.9.5.tar.bz2.asc
/pcsc-lite-1.9.6.tar.bz2.asc
/pcsc-lite-1.9.7.tar.bz2.asc
/pcsc-lite-1.9.8.tar.bz2.asc
/pcsc-lite-1.9.9.tar.bz2.asc

View File

@ -1,52 +1,27 @@
# doesn't make sense to install a polkit configuration inside a Flatpak
%if 0%{?flatpak}
%global with_polkit 0
%else
%global with_polkit 1
%endif
%global upstream_build 3963
Name: pcsc-lite
Version: 1.9.9
Release: 3%{?dist}
Version: 1.8.10
Release: 2%{?dist}
Summary: PC/SC Lite smart card framework and applications
Group: System Environment/Daemons
License: BSD
URL: https://pcsclite.apdu.fr/
Source0: https://pcsclite.apdu.fr/files/%{name}-%{version}.tar.bz2
Source1: https://pcsclite.apdu.fr/files/%{name}-%{version}.tar.bz2.asc
Source2: gpgkey-F5E11B9FFE911146F41D953D78A1B4DFE8F9C57E.gpg
URL: http://pcsclite.alioth.debian.org/
Source0: https://alioth.debian.org/frs/download.php/file/%{upstream_build}/%{name}-%{version}.tar.bz2
Patch0: pcscd-1.8.10-safer-udev-usage.patch
BuildRequires: make
BuildRequires: doxygen
BuildRequires: graphviz
BuildRequires: systemd-devel
BuildRequires: systemd-rpm-macros
BuildRequires: /usr/bin/pod2man
%if %{with_polkit}
BuildRequires: polkit-devel
%endif
BuildRequires: autoconf
BuildRequires: automake
BuildRequires: gettext-devel
BuildRequires: libtool
BuildRequires: gnupg2
BuildRequires: gcc
BuildRequires: python3-devel
BuildRequires: flex
Requires(post): systemd
Requires(preun): systemd
Requires(postun): systemd
Requires: pcsc-ifd-handler
Requires: %{name}-libs = %{version}-%{release}
%if %{with_polkit}
Requires: polkit
%endif
Requires: python3
Recommends: pcsc-lite-ccid
# This is bundled in upstream without simple way to remove
Provides: bundled(simclist) = 1.6
%description
The purpose of PC/SC Lite is to provide a Windows(R) SCard interface
@ -59,12 +34,14 @@ line tools.
%package libs
Summary: PC/SC Lite libraries
Group: System Environment/Libraries
%description libs
PC/SC Lite libraries.
%package devel
Summary: PC/SC Lite development files
Group: Development/Libraries
Requires: %{name}-libs = %{version}-%{release}
%description devel
@ -72,6 +49,7 @@ PC/SC Lite development files.
%package doc
Summary: PC/SC Lite developer documentation
Group: Documentation
BuildArch: noarch
Requires: %{name}-libs = %{version}-%{release}
@ -80,9 +58,8 @@ Requires: %{name}-libs = %{version}-%{release}
%prep
gpgv2 --keyring %{SOURCE2} %{SOURCE1} %{SOURCE0}
%setup -q
%patch0 -p1 -b .udev
# Convert to utf-8
for file in ChangeLog; do
@ -95,18 +72,13 @@ done
%build
%configure \
--disable-static \
%if %{with_polkit}
--enable-polkit \
%endif
--with-systemdsystemunitdir=%{_unitdir} \
--enable-usbdropdir=%{_libdir}/pcsc/drivers
%make_build
make %{?_smp_mflags}
doxygen doc/doxygen.conf ; rm -f doc/api/*.{map,md5}
%py3_shebang_fix src/spy/pcsc-spy
%install
%make_install
make install DESTDIR=$RPM_BUILD_ROOT
# Create empty directories
mkdir -p $RPM_BUILD_ROOT%{_sysconfdir}/reader.conf.d
@ -115,18 +87,12 @@ mkdir -p $RPM_BUILD_ROOT%{_localstatedir}/run/pcscd
rm $RPM_BUILD_ROOT%{_libdir}/*.la
# Remove documentation installed in a wrong directory
rm $RPM_BUILD_ROOT%{_docdir}/pcsc-lite/README.DAEMON
%post
%systemd_post pcscd.socket pcscd.service
# If install, test if pcscd socket is enabled.
# If enabled, then attempt to start it. This will silently fail
# in chroots or other environments where services aren't expected
# to be started.
if [ $1 -eq 1 ] ; then
if systemctl -q is-enabled pcscd.socket > /dev/null 2>&1 ; then
systemctl start pcscd.socket > /dev/null 2>&1 || :
fi
fi
%preun
%systemd_preun pcscd.socket pcscd.service
@ -134,13 +100,13 @@ fi
%postun
%systemd_postun_with_restart pcscd.socket pcscd.service
%ldconfig_scriptlets libs
%post libs -p /sbin/ldconfig
%postun libs -p /sbin/ldconfig
%files
%doc AUTHORS ChangeLog HELP README SECURITY TODO
%doc doc/README.polkit
%doc install_spy.sh uninstall_spy.sh
%doc AUTHORS ChangeLog DRIVERS HELP README SECURITY TODO
%dir %{_sysconfdir}/reader.conf.d/
%{_unitdir}/pcscd.service
%{_unitdir}/pcscd.socket
@ -150,12 +116,9 @@ fi
%{_mandir}/man5/reader.conf.5*
%{_mandir}/man8/pcscd.8*
%ghost %dir %{_localstatedir}/run/pcscd/
%if %{with_polkit}
%{_datadir}/polkit-1/actions/org.debian.pcsc-lite.policy
%endif
%files libs
%license COPYING
%doc COPYING
%{_libdir}/libpcsclite.so.*
%files devel
@ -171,171 +134,8 @@ fi
%changelog
* Thu Jan 19 2023 Fedora Release Engineering <releng@fedoraproject.org> - 1.9.9-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild
* Tue Nov 01 2022 Jakub Jelen <jjelen@redhat.com> - 1.9.9-2
- Remove downstream patch breaking flatpak (#2054826)
* Mon Sep 19 2022 Jakub Jelen <jjelen@redhat.com> - 1.9.9-1
- New upstream release (#2126065)
* Fri Jul 22 2022 Fedora Release Engineering <releng@fedoraproject.org> - 1.9.8-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild
* Mon Jun 13 2022 Jakub Jelen <jjelen@redhat.com> - 1.9.8-1
- New upstream release (#2095962)
* Fri May 13 2022 Jakub Jelen <jjelen@redhat.com> - 1.9.7-1
- New upstream release (#2085514)
* Thu May 12 2022 Jakub Jelen <jjelen@redhat.com> - 1.9.6-1
- New upstream release (#2084468)
* Thu Jan 20 2022 Fedora Release Engineering <releng@fedoraproject.org> - 1.9.5-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild
* Mon Dec 06 2021 Jakub Jelen <jjelen@redhat.com> - 1.9.5-1
- New upstream release (#2029098)
* Mon Oct 04 2021 Jakub Jelen <jjelen@redhat.com> - 1.9.4-1
- New upstream release (#2009927)
* Mon Aug 09 2021 Jakub Jelen <jjelen@redhat.com> - 1.9.3-1
- New upstream release (#1991071)
* Wed Aug 04 2021 Jakub Jelen <jjelen@redhat.com> - 1.9.2-1
- New upstream release (#1989875)
* Fri Jul 23 2021 Jakub Jelen <jjelen@redhat.com> - 1.9.1-5
- Use upstream polkit policy to avoid annoying prompts in remote sessions (#1478345)
* Thu Jul 22 2021 Fedora Release Engineering <releng@fedoraproject.org> - 1.9.1-4
- Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild
* Fri Jun 25 2021 Jakub Jelen <jjelen@redhat.com> - 1.9.1-3
- Add support for more readers
* Tue Mar 02 2021 Zbigniew Jędrzejewski-Szmek <zbyszek@in.waw.pl> - 1.9.1-2
- Rebuilt for updated systemd-rpm-macros
See https://pagure.io/fesco/issue/2583.
* Thu Feb 25 2021 Jakub Jelen <jjelen@redhat.com> - 1.9.1-1
- New upstream release (#1932519)
* Tue Jan 26 2021 Fedora Release Engineering <releng@fedoraproject.org> - 1.9.0-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild
* Tue Jul 28 2020 Fedora Release Engineering <releng@fedoraproject.org> - 1.9.0-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild
* Mon Jun 15 2020 Jakub Jelen <jjelen@redhat.com> - 1.9.0-1
- New upstream release (#1846925)
* Wed Jan 29 2020 Fedora Release Engineering <releng@fedoraproject.org> - 1.8.26-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild
* Mon Jan 20 2020 Jakub Jelen <jjelen@redhat.com> - 1.8.26-1
- New upstream release
* Fri Jul 26 2019 Fedora Release Engineering <releng@fedoraproject.org> - 1.8.25-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild
* Fri Apr 05 2019 Jakub Jelen <jjelen@redhat.com> - 1.8.25-1
- New upstream release (#1692559)
- Fix memory leak in SCardEstablishContextTH() (#1684674)
- Enable socket activation after installation (#1545027)
* Fri Feb 01 2019 Fedora Release Engineering <releng@fedoraproject.org> - 1.8.24-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild
* Tue Nov 20 2018 Jakub Jelen <jjelen@redhat.com> - 1.8.24-1
- New upstream release (#1651353)
* Mon Jul 23 2018 Jakub Jelen <jjelen@redhat.com> - 1.8.23-4
- Add missing dependencies (#1605389)
* Fri Jul 13 2018 Fedora Release Engineering <releng@fedoraproject.org> - 1.8.23-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild
* Thu Feb 08 2018 Fedora Release Engineering <releng@fedoraproject.org> - 1.8.23-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild
* Tue Dec 19 2017 Nikos Mavrogiannopoulos <nmav@redhat.com> - 1.8.23-1
- New upstream release
* Thu Aug 03 2017 Fedora Release Engineering <releng@fedoraproject.org> - 1.8.22-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Binutils_Mass_Rebuild
* Thu Jul 27 2017 Fedora Release Engineering <releng@fedoraproject.org> - 1.8.22-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild
* Tue Jun 27 2017 Nikos Mavrogiannopoulos <nmav@redhat.com> - 1.8.22-1
- New upstream release
* Sat Feb 11 2017 Fedora Release Engineering <releng@fedoraproject.org> - 1.8.20-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild
* Mon Jan 2 2017 Nikos Mavrogiannopoulos <nmav@redhat.com> - 1.8.20-1
- New upstream release
* Fri Dec 9 2016 Nikos Mavrogiannopoulos <nmav@redhat.com> - 1.8.19-1
- New upstream release
* Wed Nov 30 2016 Nikos Mavrogiannopoulos <nmav@redhat.com> - 1.8.18-1
- New upstream release
* Thu Jun 30 2016 Ville Skyttä <ville.skytta@iki.fi> - 1.8.17-2
- Add dependency on polkit
- Mark COPYING as %%license
- Fix bogus dates in %%changelog
* Tue Jun 21 2016 Nikos Mavrogiannopoulos <nmav@redhat.com> - 1.8.17-1
- New upstream release
* Fri Apr 1 2016 Nikos Mavrogiannopoulos <nmav@redhat.com> - 1.8.16-1
- New upstream release (#1319539)
- Added gpg key verification as part of build process
* Thu Feb 04 2016 Fedora Release Engineering <releng@fedoraproject.org> - 1.8.15-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild
* Mon Jan 11 2016 Nikos Mavrogiannopoulos <nmav@redhat.com> - 1.8.15-1
- New upstream release (#1294262)
* Wed Nov 18 2015 Nikos Mavrogiannopoulos <nmav@redhat.com> - 1.8.14-2
- Recommend pcsc-lite-ccid package (#1280447)
* Wed Aug 5 2015 Nikos Mavrogiannopoulos <nmav@redhat.com> - 1.8.14-1
- New upstream release
* Thu Jun 18 2015 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.8.13-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild
* Fri Nov 7 2014 Nikos Mavrogiannopoulos <nmav@redhat.com> - 1.8.13-1
- New upstream release
* Wed Sep 24 2014 Nikos Mavrogiannopoulos <nmav@redhat.com> - 1.8.12-1
- New upstream release (#1079514)
* Sun Aug 17 2014 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.8.11-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_22_Mass_Rebuild
* Fri Jun 06 2014 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.8.11-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild
* Tue Jun 03 2014 Nikos Mavrogiannopoulos <nmav@redhat.com> - 1.8.11-1
- New upstream release
- Safer usage of libudev functions
* Tue Mar 11 2014 Nikos Mavrogiannopoulos <nmav@redhat.com> - 1.8.10-3
- The default installed polkit policy allows console users to access
smart cards. Non-interactive or remote usage now requires admin
rights, or a specific policy (see README.polkit)
* Tue Feb 11 2014 Nikos Mavrogiannopoulos <nmav@redhat.com> - 1.8.10-2
- Added upstream patch to support polkit
- Force sanity of parameters received by the client
* Tue Jun 03 2014 Nikos Mavrogiannopoulos <nmav@redhat.com> - 1.8.10-2
- Safer usage of udev functions (#1071243)
* Sun Oct 20 2013 Kalev Lember <kalevlember@gmail.com> - 1.8.10-1
- Update to 1.8.10
@ -503,16 +303,16 @@ fi
even though s390 does not have libusb or smartCards, the libusb
packages are required to build other packages.
* Thu Aug 28 2008 Bob Relyea <rrelyea@redhat.com> - 1.4.102-3
* Thu Aug 18 2008 Bob Relyea <rrelyea@redhat.com> - 1.4.102-3
- bump tag becaue the build system can't deal with mistakes.
* Thu Aug 28 2008 Bob Relyea <rrelyea@redhat.com> - 1.4.102-2
* Thu Aug 18 2008 Bob Relyea <rrelyea@redhat.com> - 1.4.102-2
- mock build changes
* Thu Aug 28 2008 Bob Relyea <rrelyea@redhat.com> - 1.4.102-1
* Wed Aug 17 2008 Bob Relyea <rrelyea@redhat.com> - 1.4.102-1
- Pick up 1.4.102
* Tue May 6 2008 Bob Relyea <rrelyea@redhat.com> - 1.4.101-1
* Wed May 6 2008 Bob Relyea <rrelyea@redhat.com> - 1.4.101-1
- Pick up 1.4.101
* Tue Feb 19 2008 Fedora Release Engineering <rel-eng@fedoraproject.org> - 1.4.4-3
@ -522,7 +322,7 @@ fi
- Silence libpcsc-lite even when the daemon isn't running.
- fix typo in init file which prevents the config file from being read.
* Thu Nov 22 2007 Bob Relyea <rrelyea@redhat.com> - 1.4.4-1
* Tue Nov 22 2007 Bob Relyea <rrelyea@redhat.com> - 1.4.4-1
- Pick up 1.4.4
* Tue Feb 06 2007 Bob Relyea <rrelyea@redhat.com> - 1.3.3-1
@ -539,7 +339,7 @@ fi
- follow packaging guidelines for setting up init service
(bug 200778)
* Mon Jul 24 2006 Bob Relyea <rrelyea@redhat.com> - 1.3.1-5
* Sun Jul 24 2006 Bob Relyea <rrelyea@redhat.com> - 1.3.1-5
- start pcscd when pcsc-lite is installed
* Sun Jul 16 2006 Florian La Roche <laroche@redhat.com> - 1.3.1-4
@ -577,7 +377,7 @@ fi
* Thu May 19 2005 Ville Skyttä <ville.skytta at iki.fi> - 1.2.0-12
- Rebuild.
* Thu Apr 7 2005 Michael Schwendt <mschwendt[AT]users.sf.net> - 1.2.0-11
* Fri Apr 7 2005 Michael Schwendt <mschwendt[AT]users.sf.net> - 1.2.0-11
- rebuilt
* Tue Aug 17 2004 Ville Skyttä <ville.skytta at iki.fi> - 0:1.2.0-10

View File

@ -0,0 +1,28 @@
diff -ur pcsc-lite-1.8.10.orig/src/hotplug_libudev.c pcsc-lite-1.8.10/src/hotplug_libudev.c
--- pcsc-lite-1.8.10.orig/src/hotplug_libudev.c 2013-10-06 12:25:18.000000000 +0200
+++ pcsc-lite-1.8.10/src/hotplug_libudev.c 2014-06-03 09:54:44.289011617 +0200
@@ -541,6 +541,12 @@
fd_set fds;
udev_monitor = udev_monitor_new_from_netlink(udev, "udev");
+ if (udev_monitor == NULL)
+ {
+ Log1(PCSC_LOG_ERROR, "udev_monitor_new_from_netlink() error\n");
+ return;
+ }
+
/* filter only the interfaces */
r = udev_monitor_filter_add_match_subsystem_devtype(udev_monitor, "usb",
@@ -560,6 +566,11 @@
/* udev monitor file descriptor */
fd = udev_monitor_get_fd(udev_monitor);
+ if (fd < 0)
+ {
+ Log2(PCSC_LOG_ERROR, "udev_monitor_get_fd() error: %d\n", fd);
+ return;
+ }
while (!AraKiriHotPlug)
{

View File

@ -1,2 +1 @@
SHA512 (pcsc-lite-1.9.9.tar.bz2) = 748ec3d82ff48af1a8dc5a581863e5d94adc47ab8f3158ceb838c2b521ece3a746b737c7b4bb2ba8b545be85ff18b9639443864e50b2e065cf2fbfdf79ef9700
SHA512 (pcsc-lite-1.9.9.tar.bz2.asc) = b2f81fb9ec4dfdf73fce16b139206a5d606038d728ec6a5cdc5d3fb13b908add597baa490df9132155714b295222fef62ae2e0b50de212461af9ac8008297400
7268cc5ef8fc01b785c7cea87adb1ade pcsc-lite-1.8.10.tar.bz2