diff --git a/270.patch b/270.patch new file mode 100644 index 0000000..15e043b --- /dev/null +++ b/270.patch @@ -0,0 +1,45 @@ +From bd9ef8e5c004911b529d55b521d18d4d66c4e9b7 Mon Sep 17 00:00:00 2001 +From: Peter Bieringer +Date: Tue, 29 Oct 2024 21:42:32 +0100 +Subject: [PATCH 1/2] fixes https://github.com/zmanda/amanda/issues/262 + +--- + perl/Amanda/Taper/Scribe.pm | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/perl/Amanda/Taper/Scribe.pm b/perl/Amanda/Taper/Scribe.pm +index 8b21c77c0b..ecfd2a140a 100644 +--- a/perl/Amanda/Taper/Scribe.pm ++++ b/perl/Amanda/Taper/Scribe.pm +@@ -1116,7 +1116,7 @@ sub _xmsg_no_space { + if ($chg->{'global_space'}) { + $chg->inventory(inventory_cb => $steps->{'got_inventory'}); + } else { +- return $finished_cb(); ++ return $finished_cb->(); + } + }; + + +From e083df9afaad61fc8772765d132a93ec8bc7ae5e Mon Sep 17 00:00:00 2001 +From: Peter Bieringer +Date: Tue, 29 Oct 2024 21:43:18 +0100 +Subject: [PATCH 2/2] fix for https://github.com/zmanda/amanda/issues/262 + +--- + perl/Amanda/Tapelist.swg | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/perl/Amanda/Tapelist.swg b/perl/Amanda/Tapelist.swg +index 9266961a4e..ba84c68ca0 100644 +--- a/perl/Amanda/Tapelist.swg ++++ b/perl/Amanda/Tapelist.swg +@@ -36,7 +36,7 @@ use Amanda::Debug qw(:logging); + use Amanda::Config qw( config_dir_relative ); + use File::Copy; + use Fcntl qw(:flock); # import LOCK_* constants +-use Amanda::Message qw( :severity ); ++use Amanda::Message; + + ## package functions + diff --git a/273.patch b/273.patch new file mode 100644 index 0000000..34a0a80 --- /dev/null +++ b/273.patch @@ -0,0 +1,36 @@ +From 403656a684d8c934866721ca0e1674997deb4eeb Mon Sep 17 00:00:00 2001 +From: Orion Poplawski +Date: Mon, 11 Nov 2024 21:19:54 -0700 +Subject: [PATCH] Drop non-existant -s option from amflush man page + +--- + man/xml-source/amflush.8.xml | 9 --------- + 1 file changed, 9 deletions(-) + +diff --git a/man/xml-source/amflush.8.xml b/man/xml-source/amflush.8.xml +index e3b1360afd..f09f4a46b6 100644 +--- a/man/xml-source/amflush.8.xml ++++ b/man/xml-source/amflush.8.xml +@@ -32,7 +32,6 @@ + -b + -f + --exact-match +- -s + -D datestamp + &configoverride.synopsis; + config +@@ -90,14 +89,6 @@ This is useful if + amflush + is run as part of another script that, for example, advances the tape + after the flush is completed. +- +- +- +- +- +-Write log to stdout/stderr instead of the amflush log file. Requires the +- +-option. + + + diff --git a/amanda-c99.patch b/amanda-c99.patch new file mode 100644 index 0000000..6db3c84 --- /dev/null +++ b/amanda-c99.patch @@ -0,0 +1,30 @@ +Fix C type safety issue in CVE-2023-30547 change + +The types char ** and const char ** are distinct according to the +C language. Future compilers will treat pointer type mismatches +as errors. + +Submitted upstream: + +diff --git a/client-src/runtar.c b/client-src/runtar.c +index 454e9b9a9b96449b..4d2451dc84840fa9 100644 +--- a/client-src/runtar.c ++++ b/client-src/runtar.c +@@ -54,7 +54,7 @@ main( + { + #ifdef GNUTAR + int i; +- char **j; ++ const char **j; + char *e; + char *dbf; + char *cmdline; +@@ -255,7 +255,7 @@ check_whitelist( + gchar* option) + { + bool result = TRUE; +- char** i; ++ const char** i; + + for(i=whitelisted_args; *i; i++) { + if (g_str_has_prefix(option, *i)) { diff --git a/amanda.spec b/amanda.spec index fce8145..73f8e9c 100644 --- a/amanda.spec +++ b/amanda.spec @@ -36,11 +36,15 @@ Patch3: amanda-3.2.0-config-dir.patch Patch4: amanda-3.4.5-no-xinetd.patch # Support tirpc Patch5: patch-tirpc - # Specify the location or the xfs housekeeping directory # https://bugzilla.redhat.com/show_bug.cgi?id=1671117 Patch6: patch-xfsrestore-housekeeping Patch7: amanda-configure-c99.patch +Patch8: amanda-c99.patch +# Drop nonexistent -s option from aflush man page (#1943909) +Patch9: https://github.com/zmanda/amanda/pull/273.patch +# Perl 5.40 support (rhbz#2322518) +Patch10: https://github.com/zmanda/amanda/pull/270.patch License: BSD-3-Clause AND GPL-3.0-or-later AND GPL-2.0-or-later AND GPL-2.0-only URL: http://www.amanda.org @@ -124,10 +128,16 @@ server also needs to have the amanda-client package installed. %prep %autosetup -p1 -n %{name}-tag-community-%{version} +# Create a sysusers.d config file +cat >amanda.sysusers.conf </dev/null 2>&1 || : -/usr/bin/gpasswd -a %amanda_user tape >/dev/null 2>&1 || : %post %{?ldconfig} @@ -290,6 +303,7 @@ make check %attr(600,%amanda_user,%amanda_group) %config(noreplace) %{_localstatedir}/lib/amanda/.amandahosts %attr(02770,%amanda_user,%amanda_group) %dir /var/log/amanda %attr(02770,%amanda_user,%amanda_group) %dir /var/log/amanda/amandad +%{_sysusersdir}/amanda.conf %files libs %{_libdir}/libamdevice*.so