diff --git a/.gitignore b/.gitignore index 9212a1b..36518a5 100644 --- a/.gitignore +++ b/.gitignore @@ -8,3 +8,5 @@ udisks-1.0.1.tar.gz /udisks-1.0.2.tar.gz /udisks-1.0.3.tar.gz /udisks-1.0.4.tar.gz +/buffer-overflow.patch +/udisks-1.0.5.tar.gz diff --git a/sbindirinstall.diff b/sbindirinstall.diff new file mode 100644 index 0000000..7c28be4 --- /dev/null +++ b/sbindirinstall.diff @@ -0,0 +1,13 @@ +diff --git udisks-1.0.5/tools/Makefile.am~ udisks-1.0.5/tools/Makefile.am +index 18325f7358..0aaec111ca 100644 +--- udisks-1.0.5/tools/Makefile.am~ ++++ udisks-1.0.5/tools/Makefile.am +@@ -54,7 +54,7 @@ udisks_LDADD = \ + $(DBUS_GLIB_LIBS) \ + $(POLKIT_DBUS_LIBS) + +-slashsbin_PROGRAMS = umount.udisks ++sbin_PROGRAMS = umount.udisks + + umount_udisks_SOURCES = umount-udisks.c + umount_udisks_LDADD = $(DBUS_GLIB_LIBS) $(POLKIT_DBUS_LIBS) diff --git a/sources b/sources index 9406fae..aec0f08 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -86c63b2b5484f2060499a052b5b6256b udisks-1.0.4.tar.gz +70d48dcfe523a74cd7c7fbbc2847fcdd udisks-1.0.5.tar.gz diff --git a/udisks-1.0.4-neuter-stdout-and-stderr.patch b/udisks-1.0.4-neuter-stdout-and-stderr.patch deleted file mode 100644 index 95cceb9..0000000 --- a/udisks-1.0.4-neuter-stdout-and-stderr.patch +++ /dev/null @@ -1,74 +0,0 @@ -From 072654b3ea2591e05cfbe80c06a00858e63f1f1a Mon Sep 17 00:00:00 2001 -From: David Zeuthen -Date: Tue, 18 Oct 2011 12:19:22 -0400 -Subject: [PATCH] udisks-daemon: Add --no-debug option and use this for D-Bus - activation - -Signed-off-by: David Zeuthen ---- - data/org.freedesktop.UDisks.service.in | 2 +- - src/main.c | 28 ++++++++++++++++++++++++---- - 2 files changed, 25 insertions(+), 5 deletions(-) - -diff --git a/data/org.freedesktop.UDisks.service.in b/data/org.freedesktop.UDisks.service.in -index b3606a6..bc3542a 100644 ---- a/data/org.freedesktop.UDisks.service.in -+++ b/data/org.freedesktop.UDisks.service.in -@@ -1,5 +1,5 @@ - [D-BUS Service] - Name=org.freedesktop.UDisks --Exec=@libexecdir@/udisks-daemon -+Exec=@libexecdir@/udisks-daemon --no-debug - User=root - -diff --git a/src/main.c b/src/main.c -index 318db27..6e220b1 100644 ---- a/src/main.c -+++ b/src/main.c -@@ -141,12 +141,13 @@ main (int argc, - static char *helper_dir = NULL; - char *path; - int ret; -- static gboolean replace; -+ static gboolean replace = FALSE; -+ static gboolean no_debug = FALSE; - static GOptionEntry entries[] = - { -- { "replace", 0, 0, G_OPTION_ARG_NONE, &replace, "Replace existing daemon", NULL }, -- { "helper-dir", 0, G_OPTION_FLAG_FILENAME, G_OPTION_ARG_STRING, -- &helper_dir, "Directory for helper tools", NULL }, -+ { "no-debug", 'n', 0, G_OPTION_ARG_NONE, &no_debug, "Don't print debug information", NULL }, -+ { "replace", 'r', 0, G_OPTION_ARG_NONE, &replace, "Replace existing daemon", NULL }, -+ { "helper-dir", 0, 0, G_OPTION_ARG_FILENAME, &helper_dir, "Directory for helper tools", NULL }, - { NULL } }; - - PROFILE ("main(): start"); -@@ -181,6 +182,25 @@ main (int argc, - g_option_context_parse (context, &argc, &argv, NULL); - g_option_context_free (context); - -+ /* If --no-debug is requested don't clutter stdout/stderr etc. -+ */ -+ if (no_debug) -+ { -+ gint dev_null_fd; -+ dev_null_fd = open ("/dev/null", O_RDWR); -+ if (dev_null_fd >= 0) -+ { -+ dup2 (dev_null_fd, STDIN_FILENO); -+ dup2 (dev_null_fd, STDOUT_FILENO); -+ dup2 (dev_null_fd, STDERR_FILENO); -+ close (dev_null_fd); -+ } -+ else -+ { -+ g_warning ("Error opening /dev/null: %m"); -+ } -+ } -+ - /* run with a controlled path */ - if (helper_dir != NULL) - path = g_strdup_printf ("%s:" PACKAGE_LIBEXEC_DIR ":/sbin:/bin:/usr/sbin:/usr/bin", helper_dir); --- -1.7.6.4 - diff --git a/udisks-1.0.5-fix-build-with-glibc-2.20.patch b/udisks-1.0.5-fix-build-with-glibc-2.20.patch new file mode 100644 index 0000000..85ef520 --- /dev/null +++ b/udisks-1.0.5-fix-build-with-glibc-2.20.patch @@ -0,0 +1,25 @@ +From 0aa652a7b257f98f9e8e7dc7b0ddc9bc62377d09 Mon Sep 17 00:00:00 2001 +From: Alexandre Rostovtsev +Date: Fri, 29 May 2015 21:09:39 -0400 +Subject: [PATCH] Bug 90778 - fix build with newer glibc versions + +https://bugs.freedesktop.org/show_bug.cgi?id=90778 +--- + src/helpers/job-drive-detach.c | 1 + + 1 file changed, 1 insertion(+) + +diff --git a/src/helpers/job-drive-detach.c b/src/helpers/job-drive-detach.c +index eeafcab..d122a1f 100644 +--- a/src/helpers/job-drive-detach.c ++++ b/src/helpers/job-drive-detach.c +@@ -18,6 +18,7 @@ + * + */ + ++#include + #include + #include + #include +-- +2.4.2 + diff --git a/udisks-1.0.5-fix-makedev-failure.patch b/udisks-1.0.5-fix-makedev-failure.patch new file mode 100644 index 0000000..3b23f74 --- /dev/null +++ b/udisks-1.0.5-fix-makedev-failure.patch @@ -0,0 +1,77 @@ +From b0fe2367874fa0e84f4b91497c374ad7898df731 Mon Sep 17 00:00:00 2001 +From: David King +Date: Sat, 27 Apr 2019 08:27:12 +0100 +Subject: [PATCH] Fix build with newer glibc versions + +makedev() requires that sys/sysmacros.h is included. +--- + src/daemon.c | 1 + + src/device.c | 1 + + src/mount-monitor.c | 1 + + tools/udisks.c | 1 + + tools/umount-udisks.c | 1 + + 5 files changed, 5 insertions(+) + +diff --git a/src/daemon.c b/src/daemon.c +index fafcf9a..ada2964 100644 +--- a/src/daemon.c ++++ b/src/daemon.c +@@ -43,6 +43,7 @@ + #include + #include + #include ++#include + #include + #include + #include +diff --git a/src/device.c b/src/device.c +index 2ae7f38..20920df 100644 +--- a/src/device.c ++++ b/src/device.c +@@ -33,6 +33,7 @@ + #include + #include + #include ++#include + #include + #include + #include +diff --git a/src/mount-monitor.c b/src/mount-monitor.c +index 573a69c..0cfa167 100644 +--- a/src/mount-monitor.c ++++ b/src/mount-monitor.c +@@ -29,6 +29,7 @@ + #include + #include + #include ++#include + #include + + #include +diff --git a/tools/udisks.c b/tools/udisks.c +index 97e80d7..599d469 100644 +--- a/tools/udisks.c ++++ b/tools/udisks.c +@@ -30,6 +30,7 @@ + #include + #include + #include ++#include + #include + #include + #include +diff --git a/tools/umount-udisks.c b/tools/umount-udisks.c +index 2813fe0..d915660 100644 +--- a/tools/umount-udisks.c ++++ b/tools/umount-udisks.c +@@ -30,6 +30,7 @@ + #include + #include + #include ++#include + #include + #include + #include +-- +2.21.0 + diff --git a/udisks-1.0.5-fix-service-file.patch b/udisks-1.0.5-fix-service-file.patch new file mode 100644 index 0000000..9b3a999 --- /dev/null +++ b/udisks-1.0.5-fix-service-file.patch @@ -0,0 +1,29 @@ +From 7d61ad048856ee239870b917d6933e3ad63f0789 Mon Sep 17 00:00:00 2001 +From: David King +Date: Thu, 2 Jul 2015 13:49:22 +0100 +Subject: [PATCH] Fix systemd service file + +udisks-daemon is installed to $(libexecdir), not $(prefix)/lib/udisks. + +https://bugzilla.redhat.com/show_bug.cgi?id=1238664 +https://bugs.freedesktop.org/show_bug.cgi?id=91191 +--- + data/Makefile.am | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/data/Makefile.am b/data/Makefile.am +index 411ea0f..08af5f4 100644 +--- a/data/Makefile.am ++++ b/data/Makefile.am +@@ -31,7 +31,7 @@ systemdservicedir = $(systemdsystemunitdir) + systemdservice_DATA = $(systemdservice_in_files:.service.in=.service) + + $(systemdservice_DATA): $(systemdservice_in_files) Makefile +- @sed -e "s|\@libexecdir\@|$(prefix)/lib/udisks|" $< > $@ ++ @sed -e "s|\@libexecdir\@|$(libexecdir)|" $< > $@ + endif + + udevrulesdir = $(slashlibdir)/udev/rules.d +-- +2.4.5 + diff --git a/udisks.spec b/udisks.spec index 4886efc..6eeeddb 100644 --- a/udisks.spec +++ b/udisks.spec @@ -1,40 +1,53 @@ -%define glib2_version 2.6.0 -%define dbus_version 1.2 -%define dbus_glib_version 0.82 -%define polkit_version 0.92 -%define parted_version 1.8.8 -%define udev_version 145 -%define mdadm_version 2.6.7 -%define device_mapper_version 1.02 -%define libatasmart_version 0.12 -%define sg3_utils_version 1.27 -%define smp_utils_version 0.94 -%define systemd_version 185 +%global dbus_version 1.2 +%global dbus_glib_version 0.82 +%global glib2_version 2.15.0 +%global gudev_version 147 +%global polkit_version 0.97 +%global parted_version 1.8.8 +%global udev_version 143 +%global mdadm_version 2.6.7 +%global device_mapper_version 1.02 +%global libatasmart_version 0.14 +%global sg3_utils_version 1.27 +%global smp_utils_version 0.94 +%global systemd_version 185 Summary: Storage Management Service Name: udisks -Version: 1.0.4 -Release: 11%{?dist} -License: GPLv2+ -Group: System Environment/Libraries +Version: 1.0.5 +Release: 34%{?dist} +# Automatically converted from old format: GPLv2+ - review is highly recommended. +License: GPL-2.0-or-later URL: http://www.freedesktop.org/wiki/Software/udisks Source0: http://hal.freedesktop.org/releases/%{name}-%{version}.tar.gz -BuildRequires: glib2-devel >= %{glib2_version} -BuildRequires: dbus-devel >= %{dbus_version} -BuildRequires: dbus-glib-devel >= %{dbus_glib_version} -BuildRequires: polkit-devel >= %{polkit_version} +# https://bugs.freedesktop.org/show_bug.cgi?id=90778 +Patch0: udisks-1.0.5-fix-build-with-glibc-2.20.patch +Patch1: fix_bash_completion.patch +# https://bugzilla.redhat.com/show_bug.cgi?id=1238664 +Patch2: udisks-1.0.5-fix-service-file.patch +Patch3: udisks-1.0.5-fix-makedev-failure.patch +Patch4: sbindirinstall.diff +BuildRequires: make +BuildRequires: pkgconfig(gio-unix-2.0) >= %{glib2_version} +BuildRequires: pkgconfig(dbus-1) >= %{dbus_version} +BuildRequires: pkgconfig(dbus-glib-1) >= %{dbus_glib_version} +BuildRequires: pkgconfig(polkit-gobject-1) >= %{polkit_version} BuildRequires: parted-devel >= %{parted_version} -BuildRequires: device-mapper-devel >= %{device_mapper_version} +BuildRequires: pkgconfig(devmapper) >= %{device_mapper_version} +BuildRequires: pkgconfig(libudev) >= %{udev_version} BuildRequires: intltool -BuildRequires: libatasmart-devel >= %{libatasmart_version} -BuildRequires: libgudev1-devel >= %{udev_version} +BuildRequires: pkgconfig(libatasmart) >= %{libatasmart_version} +BuildRequires: pkgconfig(gudev-1.0) >= %{gudev_version} %if 0%{?fedora} > 17 || 0%{?rhel} > 6 -BuildRequires: systemd-devel >= %{systemd_version} +BuildRequires: pkgconfig(systemd) >= %{systemd_version} %else -BuildRequires: libudev-devel >= %{udev_version} +BuildRequires: pkgconfig(libudev) >= %{udev_version} %endif BuildRequires: sg3_utils-devel >= %{sg3_utils_version} BuildRequires: gtk-doc +# Needed for patch 3. +BuildRequires: autoconf automake libtool +BuildRequires: systemd # needed to pull in the system bus daemon Requires: dbus >= %{dbus_version} # needed to pull in the udev daemon @@ -60,6 +73,9 @@ Requires: eject %ifnarch ppc ppc64 Requires: ntfsprogs %endif +Requires(post): systemd +Requires(preun): systemd +Requires(postun): systemd # for /proc/self/mountinfo, only available in 2.6.26 or higher Conflicts: kernel < 2.6.26 @@ -70,16 +86,12 @@ Conflicts: kernel < 2.6.26 Obsoletes: DeviceKit-disks <= 009 Provides: DeviceKit-disks = 010 -Patch0: udisks-1.0.4-neuter-stdout-and-stderr.patch -Patch1: fix_bash_completion.patch - %description udisks provides a daemon, D-Bus API and command line tools for managing disks and storage devices. %package devel Summary: D-Bus interface definitions for udisks -Group: Development/Libraries Requires: %{name} = %{version}-%{release} # See comment above @@ -92,18 +104,24 @@ D-Bus interface definitions and documentation for udisks. %prep %setup -q -%patch0 -p1 -%patch1 -p1 +%patch -P0 -p1 +%patch -P1 -p1 +%patch -P2 -p1 +%patch -P3 -p1 +%patch -P4 -p1 # https://bugzilla.redhat.com/show_bug.cgi?id=673544#c15 rm -f src/*-glue.h tools/*-glue.h +autoreconf --force --install + + %build %configure --enable-gtk-doc -make +%make_build %install -make install DESTDIR=$RPM_BUILD_ROOT +make install DESTDIR=$RPM_BUILD_ROOT INSTALL="install -p" rm -f $RPM_BUILD_ROOT%{_libdir}/*.la rm -f $RPM_BUILD_ROOT%{_libdir}/*.a @@ -121,13 +139,20 @@ mv $RPM_BUILD_ROOT%{_sysconfdir}/profile.d/udisks-bash-completion.sh \ %find_lang %{name} +%post +%systemd_post udisks.service + +%preun +%systemd_preun udisks.service + +%postun +%systemd_postun_with_restart udisks.service + %files -f %{name}.lang -%defattr(-,root,root,-) - -%doc README AUTHORS NEWS COPYING HACKING doc/TODO - +%doc README AUTHORS NEWS HACKING doc/TODO +%license COPYING %{_sysconfdir}/avahi/services/udisks.service -%{_sysconfdir}/bash_completion.d/ +%{_sysconfdir}/bash_completion.d/udisks-bash-completion.sh %{_sysconfdir}/dbus-1/system.d/*.conf /lib/udev/rules.d/*.rules @@ -135,30 +160,153 @@ mv $RPM_BUILD_ROOT%{_sysconfdir}/profile.d/udisks-bash-completion.sh \ /lib/udev/udisks-dm-export /lib/udev/udisks-probe-ata-smart /lib/udev/udisks-probe-sas-expander -/sbin/umount.udisks +%{_sbindir}/umount.udisks -%{_bindir}/* +%{_bindir}/devkit-disks +%{_bindir}/udisks +%{_bindir}/udisks-tcp-bridge %{_libexecdir}/* - -%{_mandir}/man1/* -%{_mandir}/man7/* -%{_mandir}/man8/* - +%{_mandir}/man1/*.1* +%{_mandir}/man7/%{name}.7* +%{_mandir}/man8/%{name}-daemon.8* %{_datadir}/polkit-1/actions/*.policy %{_datadir}/dbus-1/system-services/*.service +%{_unitdir}/udisks.service %attr(0700,root,root) %dir %{_localstatedir}/lib/udisks %files devel -%defattr(-,root,root,-) - %{_datadir}/dbus-1/interfaces/*.xml %{_datadir}/pkgconfig/udisks.pc %{_datadir}/gtk-doc -# Note: please don't forget the %{?dist} in the changelog. Thanks %changelog +* Thu Aug 20 2026 Dan Horák - 1.0.5-34 +- rebuilt for sg3_utils 1.49 + +* Fri Jul 17 2026 Fedora Release Engineering - 1.0.5-33 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_45_Mass_Rebuild + +* Mon Jun 08 2026 Zbigniew Jędrzejewski-Szmek - 1.0.5-32 +- Move umount.udisks to /usr/bin + +* Sat Jan 17 2026 Fedora Release Engineering - 1.0.5-31 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_44_Mass_Rebuild + +* Fri Jul 25 2025 Fedora Release Engineering - 1.0.5-30 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_43_Mass_Rebuild + +* Sun Jan 19 2025 Fedora Release Engineering - 1.0.5-29 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild + +* Fri Jul 26 2024 Miroslav Suchý - 1.0.5-28 +- convert license to SPDX + +* Sat Jul 20 2024 Fedora Release Engineering - 1.0.5-27 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_41_Mass_Rebuild + +* Fri Feb 09 2024 Dan Horák - 1.0.5-26 +- rebuilt for sg3_utils 1.48 + +* Sat Jan 27 2024 Fedora Release Engineering - 1.0.5-25 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild + +* Sat Jul 22 2023 Fedora Release Engineering - 1.0.5-24 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild + +* Sat Jan 21 2023 Fedora Release Engineering - 1.0.5-23 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild + +* Sat Jul 23 2022 Fedora Release Engineering - 1.0.5-22 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild + +* Sat Jan 22 2022 Fedora Release Engineering - 1.0.5-21 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild + +* Fri Jul 23 2021 Fedora Release Engineering - 1.0.5-20 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild + +* Wed Apr 07 2021 Tomas Bzatek - 1.0.5-19 +- rebuilt for sg3_utils 1.46 + +* Tue Mar 02 2021 Zbigniew Jędrzejewski-Szmek - 1.0.5-18 +- Rebuilt for updated systemd-rpm-macros + See https://pagure.io/fesco/issue/2583. + +* Wed Jan 27 2021 Fedora Release Engineering - 1.0.5-17 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild + +* Wed Jul 29 2020 Fedora Release Engineering - 1.0.5-16 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild + +* Mon Apr 20 2020 Dan Horák - 1.0.5-15 +- rebuilt for sg3_utils 1.45 (#1809392) + +* Fri Jan 31 2020 Fedora Release Engineering - 1.0.5-14 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild + +* Sat Jul 27 2019 Fedora Release Engineering - 1.0.5-13 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild + +* Sat Apr 27 2019 David King - 1.0.5-12 +- Fix build failure (#1676172) + +* Sun Feb 03 2019 Fedora Release Engineering - 1.0.5-11 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild + +* Sat Jul 14 2018 Fedora Release Engineering - 1.0.5-10 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild + +* Fri Feb 09 2018 Fedora Release Engineering - 1.0.5-9 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild + +* Thu Aug 03 2017 Fedora Release Engineering - 1.0.5-8 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Binutils_Mass_Rebuild + +* Thu Jul 27 2017 Fedora Release Engineering - 1.0.5-7 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild + +* Sat Feb 11 2017 Fedora Release Engineering - 1.0.5-6 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild + +* Tue Sep 13 2016 David King - 1.0.5-5 +- Do not own bash completion directory (#1303443) + +* Fri Feb 05 2016 Fedora Release Engineering - 1.0.5-4 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild + +* Tue Jan 26 2016 David King - 1.0.5-3 +- Remove needless use of defattr + +* Thu Jul 02 2015 David King - 1.0.5-2 +- Fix systemd service file (#1238664) +- Use systemd scriptlet snippets + +* Thu Jun 04 2015 David King - 1.0.5-1 +- Update to 1.0.5 (#1075003) +- Use license macro for COPYING +- Use pkgconfig for BuildRequires +- Use SMP flags when building +- Preserve timestamps during install +- Update man page globs in files section + +* Sat Feb 21 2015 Till Maas - 1.0.4-16 +- Rebuilt for Fedora 23 Change + https://fedoraproject.org/wiki/Changes/Harden_all_packages_with_position-independent_code + +* Mon Aug 18 2014 Fedora Release Engineering - 1.0.4-15 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_22_Mass_Rebuild + +* Sun Jun 08 2014 Fedora Release Engineering - 1.0.4-14 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild + +* Fri Mar 14 2014 Huzaifa Sidhpurwala - 1.0.4-13 +- fix CVE-2014-0004 + +* Sun Aug 04 2013 Fedora Release Engineering - 1.0.4-12 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_20_Mass_Rebuild + * Tue Feb 26 2013 Ville Skyttä - 1.0.4-11 - Move bash completion to %%{_sysconfdir}/bash_completion.d (#584569).