Rebase to version 1.34
This commit is contained in:
parent
1313011a28
commit
6676fcde24
4
sources
4
sources
@ -1,2 +1,2 @@
|
|||||||
SHA512 (tar-1.33.tar.xz) = d7c31147fafcd815bb54e3862c078dccc3f192a9fa149c2275bd89a21fcd54a4bdaa8343cacf4f76cadc2f57fd4ed955682c1b6f23d438add5a13cc35bd25260
|
SHA512 (tar-1.34.tar.xz) = 5e77c4a7b49983ad7d15238c2bce28be7a8aa437b4b1815fc00abd13096da308b6bba196cc6e3ed79d85e62823d520ae0d8fcda2d93873842cf84dc3369fc902
|
||||||
SHA512 (tar-1.33.tar.xz.sig) = a8801b2a7bb135a12d7944dff6958c4ff5671e379682593eed93569220d41fbe58eb095b80c4b04d97e4b5244aabab0cc7a0b65251ab115925ef3391a292c146
|
SHA512 (tar-1.34.tar.xz.sig) = 55297f41549deee511f5b14c6b5dc7bb3d9282dad52bcc85f9dddfad24b677f989ba86387ad9b133c3698feedbd6b6cd7e9f005e8e4c89f72c80543eeceb78f7
|
||||||
|
@ -1,9 +1,7 @@
|
|||||||
From: Pavel Raiskup <praiskup@redhat.com>
|
From: Pavel Raiskup <praiskup@redhat.com>
|
||||||
Date: Tue, 19 Jan 2021 16:45:23 +0100
|
Date: Tue, 16 Feb 2021 08:10:22 +0100
|
||||||
Subject: [PATCH] xattrs: fix capabilities root test
|
Subject: [PATCH] Related discussion in the Fedora pull-request:
|
||||||
|
https://src.fedoraproject.org/rpms/tar/pull-request/8
|
||||||
Related discussion in the Fedora pull-request:
|
|
||||||
https://src.fedoraproject.org/rpms/tar/pull-request/8
|
|
||||||
|
|
||||||
Upstream report:
|
Upstream report:
|
||||||
https://www.mail-archive.com/bug-tar@gnu.org/msg05943.html
|
https://www.mail-archive.com/bug-tar@gnu.org/msg05943.html
|
||||||
@ -11,29 +9,26 @@ https://www.mail-archive.com/bug-tar@gnu.org/msg05943.html
|
|||||||
* tests/capabs_raw01.at: Newer systems (currently e.g. Fedora 34)
|
* tests/capabs_raw01.at: Newer systems (currently e.g. Fedora 34)
|
||||||
print getcap output in format CAP=VAL, not CAP+VAL.
|
print getcap output in format CAP=VAL, not CAP+VAL.
|
||||||
---
|
---
|
||||||
tests/capabs_raw01.at | 7 +++++--
|
tests/capabs_raw01.at | 4 ++--
|
||||||
1 file changed, 5 insertions(+), 2 deletions(-)
|
1 file changed, 2 insertions(+), 2 deletions(-)
|
||||||
|
|
||||||
diff --git a/tests/capabs_raw01.at b/tests/capabs_raw01.at
|
diff --git a/tests/capabs_raw01.at b/tests/capabs_raw01.at
|
||||||
index f9b97736..988251cf 100644
|
index a1d9411..d3da923 100644
|
||||||
--- a/tests/capabs_raw01.at
|
--- a/tests/capabs_raw01.at
|
||||||
+++ b/tests/capabs_raw01.at
|
+++ b/tests/capabs_raw01.at
|
||||||
@@ -44,10 +44,13 @@ rm -rf dir
|
@@ -45,10 +45,10 @@ rm -rf dir
|
||||||
# restore _all_ xattrs (not just the user.* domain)
|
|
||||||
tar --xattrs --xattrs-include='*' -xf archive.tar
|
tar --xattrs --xattrs-include='*' -xf archive.tar
|
||||||
|
|
||||||
-getcap dir/file
|
# Newer systems print = instead of + here
|
||||||
+# Newer systems switched to different format:
|
-getcap dir/file | sed 's/+/=/'
|
||||||
+# - dir/file = cap_chown+ei
|
|
||||||
+# + dir/file cap_chown=ei
|
|
||||||
+getcap dir/file | sed -e 's/+/=/' -e 's|dir/file = |dir/file |'
|
+getcap dir/file | sed -e 's/+/=/' -e 's|dir/file = |dir/file |'
|
||||||
],
|
],
|
||||||
[0],
|
[0],
|
||||||
-[dir/file = cap_chown+ei
|
-[dir/file = cap_chown=ei
|
||||||
+[dir/file cap_chown=ei
|
+[dir/file cap_chown=ei
|
||||||
])
|
])
|
||||||
|
|
||||||
AT_CLEANUP
|
AT_CLEANUP
|
||||||
--
|
--
|
||||||
2.29.2
|
2.26.0
|
||||||
|
|
||||||
|
@ -1,122 +0,0 @@
|
|||||||
From: Sergey Poznyakoff <gray@gnu.org>
|
|
||||||
Subject: [PATCH] Bug reported in https://savannah.gnu.org/bugs/?59897
|
|
||||||
|
|
||||||
* src/list.c (read_header): Don't return directly from the loop.
|
|
||||||
Instead set the status and break. Return the status. Free
|
|
||||||
next_long_name and next_long_link before returning.
|
|
||||||
---
|
|
||||||
src/list.c | 38 +++++++++++++++++++++++++++-----------
|
|
||||||
1 file changed, 27 insertions(+), 11 deletions(-)
|
|
||||||
|
|
||||||
diff --git a/src/list.c b/src/list.c
|
|
||||||
index 95b53f8..6ad2ef2 100644
|
|
||||||
--- a/src/list.c
|
|
||||||
+++ b/src/list.c
|
|
||||||
@@ -419,26 +419,27 @@ read_header (union block **return_block, struct tar_stat_info *info,
|
|
||||||
enum read_header_mode mode)
|
|
||||||
{
|
|
||||||
union block *header;
|
|
||||||
- union block *header_copy;
|
|
||||||
char *bp;
|
|
||||||
union block *data_block;
|
|
||||||
size_t size, written;
|
|
||||||
- union block *next_long_name = 0;
|
|
||||||
- union block *next_long_link = 0;
|
|
||||||
+ union block *next_long_name = NULL;
|
|
||||||
+ union block *next_long_link = NULL;
|
|
||||||
size_t next_long_name_blocks = 0;
|
|
||||||
size_t next_long_link_blocks = 0;
|
|
||||||
+ enum read_header status = HEADER_SUCCESS;
|
|
||||||
|
|
||||||
while (1)
|
|
||||||
{
|
|
||||||
- enum read_header status;
|
|
||||||
-
|
|
||||||
header = find_next_block ();
|
|
||||||
*return_block = header;
|
|
||||||
if (!header)
|
|
||||||
- return HEADER_END_OF_FILE;
|
|
||||||
+ {
|
|
||||||
+ status = HEADER_END_OF_FILE;
|
|
||||||
+ break;
|
|
||||||
+ }
|
|
||||||
|
|
||||||
if ((status = tar_checksum (header, false)) != HEADER_SUCCESS)
|
|
||||||
- return status;
|
|
||||||
+ break;
|
|
||||||
|
|
||||||
/* Good block. Decode file size and return. */
|
|
||||||
|
|
||||||
@@ -448,7 +449,10 @@ read_header (union block **return_block, struct tar_stat_info *info,
|
|
||||||
{
|
|
||||||
info->stat.st_size = OFF_FROM_HEADER (header->header.size);
|
|
||||||
if (info->stat.st_size < 0)
|
|
||||||
- return HEADER_FAILURE;
|
|
||||||
+ {
|
|
||||||
+ status = HEADER_FAILURE;
|
|
||||||
+ break;
|
|
||||||
+ }
|
|
||||||
}
|
|
||||||
|
|
||||||
if (header->header.typeflag == GNUTYPE_LONGNAME
|
|
||||||
@@ -458,10 +462,14 @@ read_header (union block **return_block, struct tar_stat_info *info,
|
|
||||||
|| header->header.typeflag == SOLARIS_XHDTYPE)
|
|
||||||
{
|
|
||||||
if (mode == read_header_x_raw)
|
|
||||||
- return HEADER_SUCCESS_EXTENDED;
|
|
||||||
+ {
|
|
||||||
+ status = HEADER_SUCCESS_EXTENDED;
|
|
||||||
+ break;
|
|
||||||
+ }
|
|
||||||
else if (header->header.typeflag == GNUTYPE_LONGNAME
|
|
||||||
|| header->header.typeflag == GNUTYPE_LONGLINK)
|
|
||||||
{
|
|
||||||
+ union block *header_copy;
|
|
||||||
size_t name_size = info->stat.st_size;
|
|
||||||
size_t n = name_size % BLOCKSIZE;
|
|
||||||
size = name_size + BLOCKSIZE;
|
|
||||||
@@ -528,7 +536,10 @@ read_header (union block **return_block, struct tar_stat_info *info,
|
|
||||||
xheader_decode_global (&xhdr);
|
|
||||||
xheader_destroy (&xhdr);
|
|
||||||
if (mode == read_header_x_global)
|
|
||||||
- return HEADER_SUCCESS_EXTENDED;
|
|
||||||
+ {
|
|
||||||
+ status = HEADER_SUCCESS_EXTENDED;
|
|
||||||
+ break;
|
|
||||||
+ }
|
|
||||||
}
|
|
||||||
|
|
||||||
/* Loop! */
|
|
||||||
@@ -547,6 +558,7 @@ read_header (union block **return_block, struct tar_stat_info *info,
|
|
||||||
name = next_long_name->buffer + BLOCKSIZE;
|
|
||||||
recent_long_name = next_long_name;
|
|
||||||
recent_long_name_blocks = next_long_name_blocks;
|
|
||||||
+ next_long_name = NULL;
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
@@ -578,6 +590,7 @@ read_header (union block **return_block, struct tar_stat_info *info,
|
|
||||||
name = next_long_link->buffer + BLOCKSIZE;
|
|
||||||
recent_long_link = next_long_link;
|
|
||||||
recent_long_link_blocks = next_long_link_blocks;
|
|
||||||
+ next_long_link = NULL;
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
@@ -589,9 +602,12 @@ read_header (union block **return_block, struct tar_stat_info *info,
|
|
||||||
}
|
|
||||||
assign_string (&info->link_name, name);
|
|
||||||
|
|
||||||
- return HEADER_SUCCESS;
|
|
||||||
+ break;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
+ free (next_long_name);
|
|
||||||
+ free (next_long_link);
|
|
||||||
+ return status;
|
|
||||||
}
|
|
||||||
|
|
||||||
#define ISOCTAL(c) ((c)>='0'&&(c)<='7')
|
|
||||||
--
|
|
||||||
2.26.0
|
|
||||||
|
|
8
tar.spec
8
tar.spec
@ -4,8 +4,8 @@
|
|||||||
Summary: GNU file archiving program
|
Summary: GNU file archiving program
|
||||||
Name: tar
|
Name: tar
|
||||||
Epoch: 2
|
Epoch: 2
|
||||||
Version: 1.33
|
Version: 1.34
|
||||||
Release: 3%{?dist}
|
Release: 1%{?dist}
|
||||||
License: GPLv3+
|
License: GPLv3+
|
||||||
URL: https://www.gnu.org/software/tar/
|
URL: https://www.gnu.org/software/tar/
|
||||||
|
|
||||||
@ -19,7 +19,6 @@ Patch3: tar-1.29-wildcards.patch
|
|||||||
Patch4: tar-1.28-atime-rofs.patch
|
Patch4: tar-1.28-atime-rofs.patch
|
||||||
Patch9: tar-1.28-document-exclude-mistakes.patch
|
Patch9: tar-1.28-document-exclude-mistakes.patch
|
||||||
Patch10: tar-1.33-fix-capabilities-test.patch
|
Patch10: tar-1.33-fix-capabilities-test.patch
|
||||||
Patch11: tar-1.33-fix-read-header-mem-leak.patch
|
|
||||||
|
|
||||||
BuildRequires: make
|
BuildRequires: make
|
||||||
BuildRequires: gcc
|
BuildRequires: gcc
|
||||||
@ -114,6 +113,9 @@ make check || (
|
|||||||
|
|
||||||
|
|
||||||
%changelog
|
%changelog
|
||||||
|
* Sat Feb 13 2021 Ondrej Dubaj <odubaj@redhat.com> - 1.34-1
|
||||||
|
- Rebase to version 1.34
|
||||||
|
|
||||||
* Wed Jan 27 2021 Fedora Release Engineering <releng@fedoraproject.org> - 2:1.33-3
|
* Wed Jan 27 2021 Fedora Release Engineering <releng@fedoraproject.org> - 2:1.33-3
|
||||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild
|
- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user