New upstream release 1.46.3
Signed-off-by: Lukas Czerner <lczerner@redhat.com>
This commit is contained in:
parent
04e217d583
commit
546273a384
1
.gitignore
vendored
1
.gitignore
vendored
@ -46,3 +46,4 @@ e2fsprogs-1.41.12.tar.gz
|
||||
/e2fsprogs-1.45.6.tar.xz
|
||||
/e2fsprogs-1.46.1.tar.xz
|
||||
/e2fsprogs-1.46.2.tar.xz
|
||||
/e2fsprogs-1.46.3.tar.xz
|
||||
|
@ -0,0 +1,63 @@
|
||||
From 225e5d093b519f9dbe9fcaacd995426f0e5194f6 Mon Sep 17 00:00:00 2001
|
||||
From: Theodore Ts'o <tytso@mit.edu>
|
||||
Date: Wed, 28 Jul 2021 13:51:13 -0400
|
||||
Subject: [PATCH] e2fsck: fix f_baddotdir failure on big-endian systems
|
||||
|
||||
Commit 63f44aafb1f2 ("e2fsck: fix ".." more gracefully if possible")
|
||||
changed the check_dot() function to try to avoid resetting the '..'
|
||||
entry when the '.' entry is too large.. But if we do that, then on
|
||||
big-endian systems, we need to try byte swapping the rest of the
|
||||
directory entries, or else the f_baddotdir test will fail on
|
||||
big-endian systems.
|
||||
|
||||
Also add a check to avoid UBSAN warning when there is not enough space
|
||||
at the end of the directory block for a directory entry, and so we can
|
||||
potentially overflow some pointer arithmetic when trying to byte swap
|
||||
the remainder of the (negative) space in the directory block.
|
||||
|
||||
Fixes: 63f44aafb1f2 ("e2fsck: fix ".." more gracefully if possible")
|
||||
Signed-off-by: Theodore Ts'o <tytso@mit.edu>
|
||||
---
|
||||
e2fsck/pass2.c | 18 +++++++++++++-----
|
||||
1 file changed, 13 insertions(+), 5 deletions(-)
|
||||
|
||||
diff --git a/e2fsck/pass2.c b/e2fsck/pass2.c
|
||||
index f00cb40e..bd974c55 100644
|
||||
--- a/e2fsck/pass2.c
|
||||
+++ b/e2fsck/pass2.c
|
||||
@@ -458,6 +458,12 @@ static int check_dot(e2fsck_t ctx,
|
||||
ext2fs_dirent_set_name_len(nextdir, 0);
|
||||
ext2fs_dirent_set_file_type(nextdir,
|
||||
ftype);
|
||||
+#ifdef WORDS_BIGENDIAN
|
||||
+ } else {
|
||||
+ (void) ext2fs_dirent_swab_in2(ctx->fs,
|
||||
+ (char *) nextdir,
|
||||
+ ctx->fs->blocksize - 12, 0);
|
||||
+#endif
|
||||
}
|
||||
status = 1;
|
||||
}
|
||||
@@ -1370,12 +1376,14 @@ skip_checksum:
|
||||
hash_in_dirent);
|
||||
#ifdef WORDS_BIGENDIAN
|
||||
if (need_reswab) {
|
||||
+ unsigned int len;
|
||||
+
|
||||
(void) ext2fs_get_rec_len(fs,
|
||||
- dirent, &rec_len);
|
||||
- ext2fs_dirent_swab_in2(fs,
|
||||
- ((char *)dirent) + offset + rec_len,
|
||||
- max_block_size - offset - rec_len,
|
||||
- 0);
|
||||
+ dirent, &len);
|
||||
+ len += offset;
|
||||
+ if (max_block_size > len)
|
||||
+ ext2fs_dirent_swab_in2(fs,
|
||||
+ ((char *)dirent) + len, max_block_size - len, 0);
|
||||
}
|
||||
#endif
|
||||
dir_modified++;
|
||||
--
|
||||
2.31.1
|
||||
|
@ -1,7 +1,7 @@
|
||||
Summary: Utilities for managing ext2, ext3, and ext4 file systems
|
||||
Name: e2fsprogs
|
||||
Version: 1.46.2
|
||||
Release: 3%{?dist}
|
||||
Version: 1.46.3
|
||||
Release: 1%{?dist}
|
||||
|
||||
# License tags based on COPYING file distinctions for various components
|
||||
License: GPLv2
|
||||
@ -29,6 +29,7 @@ BuildRequires: systemd
|
||||
BuildRequires: make
|
||||
|
||||
Patch0: 0001-remove-local-PATH.patch
|
||||
Patch1: 0001-e2fsck-fix-f_baddotdir-failure-on-big-endian-systems.patch
|
||||
|
||||
%description
|
||||
The e2fsprogs package contains a number of utilities for creating,
|
||||
@ -158,6 +159,7 @@ managed device with some free space available in respective volume group.
|
||||
%setup -q
|
||||
|
||||
%patch0 -p1
|
||||
%patch1 -p1
|
||||
# Remove flawed tests
|
||||
rm -rf tests/m_rootdir_acl
|
||||
|
||||
@ -327,6 +329,9 @@ make fullcheck
|
||||
%{_udevdir}/96-e2scrub.rules
|
||||
|
||||
%changelog
|
||||
* Wed Jul 28 2021 Lukas Czerner <lczerner@redhat.com> - 1.46.3-1
|
||||
- New upstream release
|
||||
|
||||
* Wed Jul 21 2021 Fedora Release Engineering <releng@fedoraproject.org> - 1.46.2-3
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild
|
||||
|
||||
|
2
sources
2
sources
@ -1 +1 @@
|
||||
SHA512 (e2fsprogs-1.46.2.tar.xz) = 5297a4d7bf944806d8ee77227eac596b5e5efed2c665561d40094c40b9f321616c60975a2716f1499a9f72243df6e3b6e2267b98ec1fdc1dfd646d7be887fc4d
|
||||
SHA512 (e2fsprogs-1.46.3.tar.xz) = 27da6e38d3463e7a283dacfb88a3210dd6d8c63f4d990db879f63bdf503aaa5c447ef0ccc566b71526c12a8ab0a7a6529014b1010be300ad56a6ad5ce9066196
|
||||
|
Loading…
Reference in New Issue
Block a user