Sync from SUSE:SLFO:Main e2fsprogs revision 3351a0db3819c55f200d6ba0be50eccd

This commit is contained in:
Adrian Schröter 2024-05-03 12:15:30 +02:00
commit cabc085049
17 changed files with 7418 additions and 0 deletions

23
.gitattributes vendored Normal file
View File

@ -0,0 +1,23 @@
## Default LFS
*.7z filter=lfs diff=lfs merge=lfs -text
*.bsp filter=lfs diff=lfs merge=lfs -text
*.bz2 filter=lfs diff=lfs merge=lfs -text
*.gem filter=lfs diff=lfs merge=lfs -text
*.gz filter=lfs diff=lfs merge=lfs -text
*.jar filter=lfs diff=lfs merge=lfs -text
*.lz filter=lfs diff=lfs merge=lfs -text
*.lzma filter=lfs diff=lfs merge=lfs -text
*.obscpio filter=lfs diff=lfs merge=lfs -text
*.oxt filter=lfs diff=lfs merge=lfs -text
*.pdf filter=lfs diff=lfs merge=lfs -text
*.png filter=lfs diff=lfs merge=lfs -text
*.rpm filter=lfs diff=lfs merge=lfs -text
*.tbz filter=lfs diff=lfs merge=lfs -text
*.tbz2 filter=lfs diff=lfs merge=lfs -text
*.tgz filter=lfs diff=lfs merge=lfs -text
*.ttf filter=lfs diff=lfs merge=lfs -text
*.txz filter=lfs diff=lfs merge=lfs -text
*.whl filter=lfs diff=lfs merge=lfs -text
*.xz filter=lfs diff=lfs merge=lfs -text
*.zip filter=lfs diff=lfs merge=lfs -text
*.zst filter=lfs diff=lfs merge=lfs -text

11
README.SUSE Normal file
View File

@ -0,0 +1,11 @@
e2fsprogs-devel
---------------
Since the e2fsprogs libraries has been split out into own packages,
each having its own devel package
libext2fs-devel
libblkid-devel
libuuid-devel
libcom_err-devel
the e2fsprogs-devel package is deprecated and is provided for temporary
backwards compatibility only.

4
_multibuild Normal file
View File

@ -0,0 +1,4 @@
<multibuild>
<package>fuse2fs</package>
</multibuild>

11
baselibs.conf Normal file
View File

@ -0,0 +1,11 @@
libext2fs2
libcom_err2
obsoletes "libcom_err-<targettype> <= <version>"
e2fsprogs
e2fsprogs-devel
libext2fs-devel
requires -libext2fs-<targettype>
requires "libext2fs2-<targettype> = <version>"
libcom_err-devel
requires -libcom_err-<targettype>
requires "libcom_err2-<targettype> = <version>"

View File

@ -0,0 +1,55 @@
From: Theodore Ts'o <tytso@mit.edu>
Date: Tue, 30 May 2023 13:50:52 -0400
Subject: e2fsck: Suppress "orphan file is clean" message in preen mode
Git-repo: git://git.kernel.org/pub/scm/fs/ext2/e2fsprogs.git
Git-commit: 24a11cc371a46ca9e68aed8f2cf4aabd22ea81eb
Patch-mainline: Queued in subsystem maintainer repo
References: bsc#1218747
The e2fsck report, "Feature orphan_present is set but orphan file is
clean" is intended to request permission before removing the r/o
compat feature, orphan_present. However, it is normal if the orphan
file is empty, and removing the r/o compat feature is a good thing so
that the file system can be mounted on older kernels.
When a file system with an orphan_file feature is mounted, the
orphan_present feature is set, and it is cleared when the file system
is cleanly unmounted. IF the sytstem crashes when there are no inodes
in the orphan file, e2fsck should just silently clear the flag in
preen mode.
Signed-off-by: Theodore Ts'o <tytso@mit.edu>
Acked-by: Luís Henriques <lhenriques@suse.de>
---
e2fsck/problem.c | 2 +-
e2fsck/super.c | 3 ++-
2 files changed, 3 insertions(+), 2 deletions(-)
diff --git a/e2fsck/problem.c b/e2fsck/problem.c
index 6ad6fb849022..013ace24965b 100644
--- a/e2fsck/problem.c
+++ b/e2fsck/problem.c
@@ -2327,7 +2327,7 @@ static struct e2fsck_problem problem_table[] = {
/* orphan_present set but orphan file is empty */
{ PR_6_ORPHAN_PRESENT_CLEAN_FILE,
N_("Feature orphan_present is set but orphan file is clean.\n"),
- PROMPT_CLEAR, PR_PREEN_OK },
+ PROMPT_CLEAR, PR_PREEN_OK | PR_NO_OK | PR_PREEN_NOMSG },
/* orphan_present set but orphan_file is not */
{ PR_6_ORPHAN_PRESENT_NO_FILE,
diff --git a/e2fsck/super.c b/e2fsck/super.c
index 9495e029e087..be40dd8fb64d 100644
--- a/e2fsck/super.c
+++ b/e2fsck/super.c
@@ -1388,7 +1388,8 @@ void check_super_block(e2fsck_t ctx)
* away.
*/
#define FEATURE_RO_COMPAT_IGNORE (EXT2_FEATURE_RO_COMPAT_LARGE_FILE| \
- EXT4_FEATURE_RO_COMPAT_DIR_NLINK)
+ EXT4_FEATURE_RO_COMPAT_DIR_NLINK| \
+ EXT4_FEATURE_RO_COMPAT_ORPHAN_PRESENT)
#define FEATURE_INCOMPAT_IGNORE (EXT3_FEATURE_INCOMPAT_EXTENTS| \
EXT3_FEATURE_INCOMPAT_RECOVER)

View File

@ -0,0 +1,12 @@
Index: lib/ext2fs/ext2fs.h
===================================================================
--- lib/ext2fs/ext2fs.h.orig
+++ lib/ext2fs/ext2fs.h
@@ -74,6 +74,7 @@ extern "C" {
#include <string.h>
#include <time.h>
#include <errno.h>
+#include <unistd.h>
#if EXT2_FLAT_INCLUDES
#include "e2_types.h"

View File

@ -0,0 +1,18 @@
Index: lib/ext2fs/mmp.c
===================================================================
--- lib/ext2fs/mmp.c.orig
+++ lib/ext2fs/mmp.c
@@ -30,6 +30,13 @@
#include "ext2fs/ext2_fs.h"
#include "ext2fs/ext2fs.h"
+#if _BSD_SOURCE || _XOPEN_SOURCE >= 500
+#include <netdb.h>
+#endif
+
+#include <string.h>
+#include <stdio.h>
+
#ifndef O_DIRECT
#define O_DIRECT 0
#endif

BIN
e2fsprogs-1.47.0.tar.sign Normal file

Binary file not shown.

BIN
e2fsprogs-1.47.0.tar.xz (Stored with Git LFS) Normal file

Binary file not shown.

2264
e2fsprogs.changes Normal file

File diff suppressed because it is too large Load Diff

4450
e2fsprogs.keyring Normal file

File diff suppressed because it is too large Load Diff

471
e2fsprogs.spec Normal file
View File

@ -0,0 +1,471 @@
#
# spec file for package e2fsprogs
#
# Copyright (c) 2023 SUSE LLC
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
# upon. The license for this file, and modifications and additions to the
# file, is the same license as for the pristine package itself (unless the
# license for the pristine package is not an Open Source License, in which
# case the license is the MIT License). An "Open Source License" is a
# license that conforms to the Open Source Definition (Version 1.9)
# published by the Open Source Initiative.
# Please submit bugfixes or comments via https://bugs.opensuse.org/
#
%define flavor @BUILD_FLAVOR@%nil
%if "%{flavor}" == ""
Name: e2fsprogs
Summary: Utilities for the Second Extended File System
License: GPL-2.0-only
%if 0%{?suse_version} >= 1010
# Hint for ZYPP
Supplements: filesystem(ext2) filesystem(ext3) filesystem(ext4)
%endif
%else
Name: fuse2fs
Summary: FUSE file system client for ext2/ext3/ext4 file systems
License: MIT
BuildRequires: fuse-devel
%endif
Version: 1.47.0
Release: 0
Group: System/Filesystems
URL: http://e2fsprogs.sourceforge.net
Source: http://www.kernel.org/pub/linux/kernel/people/tytso/e2fsprogs/v%{version}/e2fsprogs-%{version}.tar.xz
Source2: README.SUSE
Source3: baselibs.conf
Source4: http://www.kernel.org/pub/linux/kernel/people/tytso/e2fsprogs/v%{version}/e2fsprogs-%{version}.tar.sign
Source5: https://thunk.org/tytso/tytso-key.asc#/e2fsprogs.keyring
#
# e2fsprogs patches
#
# libcom_err patches
Patch3: libcom_err-compile_et_permissions.patch
Patch4: e2fsprogs-1.42-implicit_fortify_decl.patch
Patch5: e2fsprogs-1.42-ext2fsh_implicit.patch
Patch6: harden_e2scrub@.service.patch
Patch7: harden_e2scrub_all.service.patch
Patch8: harden_e2scrub_fail@.service.patch
Patch9: harden_e2scrub_reap.service.patch
Patch10: e2fsck-Suppress-orphan-file-is-clean-message-in-preen.patch
BuildRequires: libblkid-devel
BuildRequires: libuuid-devel
BuildRequires: pkg-config
BuildRequires: xz
%if "%{flavor}" == ""
%if 0%{?suse_version} >= 1210
%bcond_without systemd
%else
%bcond_with systemd
%endif
%if 0%{?suse_version} > 1220
BuildRequires: makeinfo
%endif
# Define info macros if missing (for Fedora builds)
%if ! 0%{?suse_version}
%define install_info_prereq info
%define install_info sbin/install-info
%define install_info_delete sbin/install-info --delete
Requires(post): %install_info_prereq
Requires(preun):%install_info_prereq
%endif
# bug437293
%ifarch ppc64
Obsoletes: e2fsprogs-64bit
%endif
#
# For regenerate_initrd_post macro
%if 0%{?suse_version} < 1550
BuildRequires: suse-module-tools
%else
BuildRequires: rpm-config-SUSE
%endif
Requires(post): /usr/bin/mkdir /usr/bin/touch
Requires: libcom_err2 >= %{version}
Requires: libext2fs2 >= %{version}
Suggests: e2fsprogs-scrub
# Do not suppress make commands
BuildRoot: %{_tmppath}/%{name}-%{version}-build
%description
Utilities needed to create and maintain ext2 and ext3 file systems
under Linux. Included in this package are: chattr, lsattr, mke2fs,
mklost+found, tune2fs, e2fsck, resize2fs, and badblocks.
%else
%description
fuse2fs is a FUSE file system client that supports reading and
writing from devices or image files containing ext2, ext3, and
ext4 file systems.
%endif
%package devel
Summary: Dummy development package
# bug437293
License: LGPL-2.0-only
Group: Development/Libraries/C and C++
%ifarch ppc64
Obsoletes: e2fsprogs-devel-64bit
%endif
#
Requires: libblkid-devel
Requires: libext2fs-devel = %version
Requires: libuuid-devel
%description devel
Dummy development package for backwards compatibility.
%package -n e2fsprogs-scrub
Summary: Ext2fs scrubbing scripts and service files
License: GPL-2.0-only
Group: System/Filesystems
%if %{with systemd}
BuildRequires: systemd-rpm-macros
%{?systemd_requires}
%endif
Requires: e2fsprogs
Requires: lvm2
Requires: postfix
Requires: util-linux
%description -n e2fsprogs-scrub
Scripts and systemd service files for background scrubbing of LVM volumes
with ext2, ext3, and ext4 filesystems.
%package -n libext2fs2
Summary: Ext2fs library
License: LGPL-2.0-only
Group: System/Filesystems
%description -n libext2fs2
The basic Ext2fs shared library.
%package -n libext2fs-devel
Summary: Development files for libext2fs
License: LGPL-2.0-only
Group: Development/Libraries/C and C++
Requires: libcom_err-devel
Requires: libext2fs2 = %version
%description -n libext2fs-devel
Development files for libext2fs.
%package -n libext2fs-devel-static
Summary: Development files for libext2fs
License: LGPL-2.0-only
Group: Development/Libraries/C and C++
Requires: libext2fs-devel = %{version}
Provides: libext2fs-devel:%{_libdir}/libe2p.a
Provides: libext2fs-devel:%{_libdir}/libext2fs.a
%description -n libext2fs-devel-static
Development files for libext2fs. Static libraries.
%package -n libcom_err2
Summary: E2fsprogs error reporting library
# bug437293
License: MIT
Group: System/Filesystems
%ifarch ppc64
Obsoletes: libcom_err-64bit
Obsoletes: libcom_err2-64bit
%endif
#
Provides: libcom_err = %{version}
Obsoletes: libcom_err <= 1.40
%description -n libcom_err2
com_err is an error message display library.
%package -n libcom_err-devel
Summary: Development files for libcom_err
# bug437293
License: MIT
Group: Development/Libraries/C and C++
%ifarch ppc64
Obsoletes: libcom_err-devel-64bit
%endif
#
Requires: glibc-devel
Requires: libcom_err2 = %version
%description -n libcom_err-devel
Development files for the com_err error message display library.
%package -n libcom_err-devel-static
Summary: Development files for libcom_err, static libraries
License: MIT
Group: Development/Libraries/C and C++
Requires: libcom_err-devel = %{version}
Provides: libcom_err-devel:%{_libdir}/libcom_err.a
Provides: libcom_err-devel:%{_libdir}/libss.a
# bug437293
%ifarch ppc64
Obsoletes: libcom_err-devel-64bit
%endif
#
%description -n libcom_err-devel-static
Development files for the com_err error message display library. Static libraries.
%prep
%setup -q -n e2fsprogs-%{version}
# libcom_err patches
%patch3 -p1
%patch4
%patch5
cp %{SOURCE2} .
%patch6 -p1
%patch7 -p1
%patch8 -p1
%patch9 -p1
%patch10 -p1
%build
%global _lto_cflags %{_lto_cflags} -ffat-lto-objects
%configure \
--with-root-prefix='' \
--enable-elf-shlibs \
--disable-libblkid \
--disable-libuuid \
--disable-uuidd \
--disable-fsck \
--without-crond-dir \
--with-systemd-unit-dir=%{?_unitdir} \
CFLAGS="$RPM_OPT_FLAGS"
make %{?_smp_mflags} V=1
#Guarantee that tranlations match the source messages
make -C po update-po
%install
%if "%{flavor}" == ""
make install install-libs DESTDIR=$RPM_BUILD_ROOT ELF_INSTALL_DIR=/%{_libdir}
%{find_lang} e2fsprogs
rm $RPM_BUILD_ROOT%{_libdir}/e2initrd_helper
%if 0%{?suse_version} < 1550
mkdir %{buildroot}/sbin
ln -s %{_sbindir}/badblocks %{buildroot}/sbin/badblocks
ln -s %{_sbindir}/debugfs %{buildroot}/sbin/debugfs
ln -s %{_sbindir}/dumpe2fs %{buildroot}/sbin/dumpe2fs
ln -s %{_sbindir}/e2undo %{buildroot}/sbin/e2undo
ln -s %{_sbindir}/e2fsck %{buildroot}/sbin/e2fsck
ln -s %{_sbindir}/e2label %{buildroot}/sbin/e2label
ln -s %{_sbindir}/e2mmpstatus %{buildroot}/sbin/e2mmpstatus
ln -s %{_sbindir}/fsck.ext2 %{buildroot}/sbin/fsck.ext2
ln -s %{_sbindir}/fsck.ext3 %{buildroot}/sbin/fsck.ext3
ln -s %{_sbindir}/fsck.ext4 %{buildroot}/sbin/fsck.ext4
ln -s %{_sbindir}/mke2fs %{buildroot}/sbin/mke2fs
ln -s %{_sbindir}/mkfs.ext2 %{buildroot}/sbin/mkfs.ext2
ln -s %{_sbindir}/mkfs.ext3 %{buildroot}/sbin/mkfs.ext3
ln -s %{_sbindir}/mkfs.ext4 %{buildroot}/sbin/mkfs.ext4
ln -s %{_sbindir}/resize2fs %{buildroot}/sbin/resize2fs
ln -s %{_sbindir}/tune2fs %{buildroot}/sbin/tune2fs
ln -s %{_sbindir}/e2image %{buildroot}/sbin/e2image
ln -s %{_sbindir}/logsave %{buildroot}/sbin/logsave
mkdir %{buildroot}/%{_lib}
pushd %{buildroot}/%{_libdir}
LIBNAMES=$(ls *.so.*)
popd
for libName in $LIBNAMES;
do ln -s %{_libdir}/$libName %{buildroot}/%{_lib};
done
%endif
%if %{with systemd}
%pre -n e2fsprogs-scrub
%service_add_pre e2scrub@.service e2scrub_all.service e2scrub_all.timer e2scrub_fail@.service e2scrub_reap.service
%endif
%post
/sbin/ldconfig
%if 0%{?suse_version} <= 1530
%install_info --info-dir=%{_infodir} %{_infodir}/libext2fs.info.gz
%endif
%{regenerate_initrd_post}
%if %{with systemd}
%post -n e2fsprogs-scrub
%service_add_post e2scrub@.service e2scrub_all.service e2scrub_all.timer e2scrub_fail@.service e2scrub_reap.service
%endif
%if %{with systemd}
%if 0%{?suse_version} <= 1530
%preun
%install_info_delete --info-dir=%{_infodir} %{_infodir}/libext2fs.info.gz
%endif
%preun -n e2fsprogs-scrub
%service_del_preun e2scrub@.service e2scrub_all.service e2scrub_all.timer e2scrub_fail@.service e2scrub_reap.service
%endif
%postun
/sbin/ldconfig
%{regenerate_initrd_post}
%if %{with systemd}
%postun -n e2fsprogs-scrub
%service_del_postun e2scrub@.service e2scrub_all.service e2scrub_all.timer e2scrub_fail@.service e2scrub_reap.service
%endif
%posttrans
%{regenerate_initrd_posttrans}
%post -n libext2fs2 -p /sbin/ldconfig
%postun -n libext2fs2 -p /sbin/ldconfig
%post -n libcom_err2 -p /sbin/ldconfig
%postun -n libcom_err2 -p /sbin/ldconfig
%files -f e2fsprogs.lang
%defattr(-, root, root)
%doc doc/RelNotes/v%{version}.txt README
%if 0%{?sle_version} > 120200
%license NOTICE
%endif
%config /etc/mke2fs.conf
%if 0%{?suse_version} < 1550
/sbin/badblocks
/sbin/debugfs
/sbin/dumpe2fs
/sbin/e2undo
/sbin/e2fsck
/sbin/e2label
/sbin/e2mmpstatus
/sbin/fsck.ext2
/sbin/fsck.ext3
/sbin/fsck.ext4
/sbin/mke2fs
/sbin/mkfs.ext2
/sbin/mkfs.ext3
/sbin/mkfs.ext4
/sbin/resize2fs
/sbin/tune2fs
/sbin/e2image
/sbin/logsave
%endif
%{_sbindir}/badblocks
%{_sbindir}/debugfs
%{_sbindir}/dumpe2fs
%{_sbindir}/e2undo
%{_sbindir}/e2fsck
%{_sbindir}/e2label
%{_sbindir}/e2mmpstatus
%{_sbindir}/fsck.ext2
%{_sbindir}/fsck.ext3
%{_sbindir}/fsck.ext4
%{_sbindir}/mke2fs
%{_sbindir}/mkfs.ext2
%{_sbindir}/mkfs.ext3
%{_sbindir}/mkfs.ext4
%{_sbindir}/resize2fs
%{_sbindir}/tune2fs
%{_sbindir}/e2image
%{_sbindir}/logsave
%{_bindir}/chattr
%{_bindir}/lsattr
%{_sbindir}/mklost+found
%{_sbindir}/filefrag
%{_sbindir}/e2freefrag
%{_sbindir}/e4defrag
%{_sbindir}/e4crypt
%{_infodir}/libext2fs.info.gz
%{_mandir}/man1/chattr.1.gz
%{_mandir}/man1/lsattr.1.gz
%{_mandir}/man5/ext?.5.gz
%{_mandir}/man5/e2fsck.conf.5.gz
%{_mandir}/man5/mke2fs.conf.5.gz
%{_mandir}/man8/*.8.gz
%files devel
%defattr(-,root,root)
%doc README.SUSE
%files -n e2fsprogs-scrub
%defattr(-,root,root)
%config /etc/e2scrub.conf
%{_sbindir}/e2scrub
%{_sbindir}/e2scrub_all
%if %{with systemd}
%{_libdir}/e2fsprogs/
%{_libdir}/e2fsprogs/e2scrub_fail
%{_unitdir}/e2scrub@.service
%{_unitdir}/e2scrub_all.service
%{_unitdir}/e2scrub_all.timer
%{_unitdir}/e2scrub_fail@.service
%{_unitdir}/e2scrub_reap.service
%endif
%files -n libext2fs2
%defattr(-, root, root)
%if 0%{?suse_version} < 1550
/%{_lib}/libext2fs.so.*
/%{_lib}/libe2p.so.*
%endif
%{_libdir}/libext2fs.so.*
%{_libdir}/libe2p.so.*
%files -n libext2fs-devel
%defattr(-, root, root)
%{_libdir}/libext2fs.so
%{_libdir}/libe2p.so
/usr/include/ext2fs
/usr/include/e2p
%_libdir/pkgconfig/e2p.pc
%_libdir/pkgconfig/ext2fs.pc
%files -n libcom_err2
%defattr(-, root, root)
%if 0%{?suse_version} < 1550
/%{_lib}/libcom_err.so.*
/%{_lib}/libss.so.*
%endif
%{_libdir}/libcom_err.so.*
%{_libdir}/libss.so.*
%files -n libcom_err-devel
%defattr(-, root, root)
%_bindir/compile_et
%_bindir/mk_cmds
%{_libdir}/libcom_err.so
%{_libdir}/libss.so
%_libdir/pkgconfig/com_err.pc
%_libdir/pkgconfig/ss.pc
%_includedir/com_err.h
%_includedir/et
%_includedir/ss
%_datadir/et
%_datadir/ss
%{_mandir}/man1/compile_et.1.gz
%{_mandir}/man1/mk_cmds.1.gz
%{_mandir}/man3/com_err.3.gz
%files -n libcom_err-devel-static
%defattr(-, root, root)
%{_libdir}/libcom_err.a
%{_libdir}/libss.a
%files -n libext2fs-devel-static
%defattr(-, root, root)
%{_libdir}/libext2fs.a
%{_libdir}/libe2p.a
%else
%make_install
(cd %{buildroot}; find -L -type f | grep -v fuse2fs | xargs rm)
%files
%_bindir/fuse2fs
%{_mandir}/man1/fuse2fs.1.gz
%endif
%changelog

View File

@ -0,0 +1,19 @@
Index: e2fsprogs-1.46.4/scrub/e2scrub@.service.in
===================================================================
--- e2fsprogs-1.46.4.orig/scrub/e2scrub@.service.in
+++ e2fsprogs-1.46.4/scrub/e2scrub@.service.in
@@ -10,6 +10,14 @@ PrivateNetwork=true
ProtectSystem=true
ProtectHome=read-only
PrivateTmp=yes
+# added automatically, for details please see
+# https://en.opensuse.org/openSUSE:Security_Features#Systemd_hardening_effort
+ProtectHostname=true
+ProtectKernelTunables=true
+ProtectKernelLogs=true
+ProtectControlGroups=true
+RestrictRealtime=true
+# end of automatic additions
AmbientCapabilities=CAP_SYS_ADMIN CAP_SYS_RAWIO
NoNewPrivileges=yes
User=root

View File

@ -0,0 +1,22 @@
Index: e2fsprogs-1.47.0/scrub/e2scrub_all.service.in
===================================================================
--- e2fsprogs-1.47.0.orig/scrub/e2scrub_all.service.in
+++ e2fsprogs-1.47.0/scrub/e2scrub_all.service.in
@@ -6,6 +6,17 @@ ConditionCapability=CAP_SYS_RAWIO
Documentation=man:e2scrub_all(8)
[Service]
+# added automatically, for details please see
+# https://en.opensuse.org/openSUSE:Security_Features#Systemd_hardening_effort
+ProtectSystem=full
+ProtectHome=true
+ProtectHostname=true
+ProtectKernelTunables=true
+ProtectKernelModules=true
+ProtectKernelLogs=true
+ProtectControlGroups=true
+RestrictRealtime=true
+# end of automatic additions
Type=oneshot
Environment=SERVICE_MODE=1
ExecStart=@root_sbindir@/e2scrub_all

View File

@ -0,0 +1,22 @@
Index: e2fsprogs-1.47.0/scrub/e2scrub_fail@.service.in
===================================================================
--- e2fsprogs-1.47.0.orig/scrub/e2scrub_fail@.service.in
+++ e2fsprogs-1.47.0/scrub/e2scrub_fail@.service.in
@@ -3,6 +3,17 @@ Description=Online ext4 Metadata Check F
Documentation=man:e2scrub(8)
[Service]
+# added automatically, for details please see
+# https://en.opensuse.org/openSUSE:Security_Features#Systemd_hardening_effort
+ProtectSystem=full
+ProtectHome=true
+ProtectHostname=true
+ProtectKernelTunables=true
+ProtectKernelModules=true
+ProtectKernelLogs=true
+ProtectControlGroups=true
+RestrictRealtime=true
+# end of automatic additions
Type=oneshot
ExecStart=@pkglibdir@/e2scrub_fail "%I"
User=mail

View File

@ -0,0 +1,20 @@
Index: e2fsprogs-1.47.0/scrub/e2scrub_reap.service.in
===================================================================
--- e2fsprogs-1.47.0.orig/scrub/e2scrub_reap.service.in
+++ e2fsprogs-1.47.0/scrub/e2scrub_reap.service.in
@@ -11,6 +11,15 @@ PrivateNetwork=true
ProtectSystem=true
ProtectHome=read-only
PrivateTmp=yes
+# added automatically, for details please see
+# https://en.opensuse.org/openSUSE:Security_Features#Systemd_hardening_effort
+ProtectHostname=true
+ProtectKernelTunables=true
+ProtectKernelModules=true
+ProtectKernelLogs=true
+ProtectControlGroups=true
+RestrictRealtime=true
+# end of automatic additions
AmbientCapabilities=CAP_SYS_ADMIN CAP_SYS_RAWIO
NoNewPrivileges=yes
User=root

View File

@ -0,0 +1,13 @@
Index: e2fsprogs-1.47.0/lib/et/compile_et.sh.in
===================================================================
--- e2fsprogs-1.47.0.orig/lib/et/compile_et.sh.in
+++ e2fsprogs-1.47.0/lib/et/compile_et.sh.in
@@ -49,7 +49,7 @@ if test -f ${BASE}.h && cmp -s ${BASE}.h
rm -f ${BASE}.h.$$
else
mv -f ${BASE}.h.$$ ${BASE}.h
- chmod a-w ${BASE}.h
+# chmod a-w ${BASE}.h
fi
$AWK -f "${DIR}/et_c.awk" "outfile=${BASE}.c.$$" "outfn=${BASE}.c" "$ROOT.et"
if test -f ${BASE}.c && cmp -s ${BASE}.c.$$ ${BASE}.c ; then