Dominique Leuenberger 2020-12-05 19:35:44 +00:00 committed by Git OBS Bridge
commit 4a2eb8dd65
7 changed files with 39 additions and 88 deletions

View File

@ -1,65 +0,0 @@
From 56c095bef0a892dbaf18e45efbec2087d6878a54 Mon Sep 17 00:00:00 2001
From: Martin Matuska <martin@matuska.org>
Date: Fri, 22 May 2020 11:43:43 +0200
Subject: [PATCH] test_write_disk_secure: properly check if lchmod() is
supported
Fixes #1379
---
libarchive/test/test_write_disk_secure.c | 33 +++++++++++++++++++++---
1 file changed, 29 insertions(+), 4 deletions(-)
diff --git a/libarchive/test/test_write_disk_secure.c b/libarchive/test/test_write_disk_secure.c
index 7cd66c41..ff2922a3 100644
--- a/libarchive/test/test_write_disk_secure.c
+++ b/libarchive/test/test_write_disk_secure.c
@@ -40,6 +40,9 @@ DEFINE_TEST(test_write_disk_secure)
struct archive *a;
struct archive_entry *ae;
struct stat st;
+#if defined(HAVE_LCHMOD) && defined(HAVE_SYMLINK)
+ int working_lchmod;
+#endif
/* Start with a known umask. */
assertUmask(UMASK);
@@ -251,10 +254,32 @@ DEFINE_TEST(test_write_disk_secure)
assert(0 == lstat("link_to_dir", &st));
failure("link_to_dir: st.st_mode=%o", st.st_mode);
assert(S_ISLNK(st.st_mode));
-#if HAVE_LCHMOD
- /* Systems that lack lchmod() can't set symlink perms, so skip this. */
- failure("link_to_dir: st.st_mode=%o", st.st_mode);
- assert((st.st_mode & 07777) == 0755);
+#if defined(HAVE_SYMLINK) && defined(HAVE_LCHMOD) && \
+ defined(S_IRUSR) && defined(S_IWUSR) && defined(S_IXUSR)
+ /* Verify if we are able to lchmod() */
+ if (symlink("dir", "testlink_to_dir") == 0) {
+ if (lchmod("testlink_to_dir",
+ S_IRUSR | S_IWUSR | S_IXUSR) != 0) {
+ switch (errno) {
+ case ENOTSUP:
+ case ENOSYS:
+#if ENOTSUP != EOPNOTSUPP
+ case EOPNOTSUPP:
+#endif
+ working_lchmod = 0;
+ break;
+ default:
+ working_lchmod = 1;
+ }
+ } else
+ working_lchmod = 1;
+ } else
+ working_lchmod = 0;
+
+ if (working_lchmod) {
+ failure("link_to_dir: st.st_mode=%o", st.st_mode);
+ assert((st.st_mode & 07777) == 0755);
+ }
#endif
assert(0 == lstat("dir/filea", &st));
--
2.28.0

View File

@ -1,3 +0,0 @@
version https://git-lfs.github.com/spec/v1
oid sha256:ee1e749213c108cb60d53147f18c31a73d6717d7e3d2481c157e1b34c881ea39
size 6990533

View File

@ -1,16 +0,0 @@
-----BEGIN PGP SIGNATURE-----
iQIzBAABCgAdFiEEpaRbEq2S2WS4nu4t7FYMgc7CJ24FAl7EiVkACgkQ7FYMgc7C
J24yNg//TfZpakpJ0S+/aGsGG/gRk2UNBlG8MvAD6p97tqDY5Jv31IyPBXsbrGDO
gTbxnO8EqwmtzmeS1rVs8ROjSsrQ2tNjKNKULY1U8J1KtRiogJLvP7gEMuprwDiA
Q2m2SY3y9U83df02wi3Lg1pRYy90VdzvWWXXuNcEpxzUp3zS9Sl4qwrKbeIC3vLj
z8luuZBXWU1WmnWoQeVK0I/LxoZtvfKGUp5ABqBnXGIid94T3WIWpqQpNC+bzc/l
8DaYtcGM5CWSxwN2Os2EFo3mILa3ebzOr53RsOpG0gwN+McnswXt5t6eoMSWmLLe
rTiiw/ygYxt5NYpwrTTeIcb0JeJt7ESGCbCIL7odq8cE0Jw5YJAlpxery1T8m58n
D13SPbnrmotkpSGv2MpSkhmwlHY2a0RRX0GxFbNKU67hrF9wSD6HQ7n1YFBY0d5i
74DywwnPOivTx++v9MtagDxEITpq0UH7fESBR73Tm1FQOYDe2RLXRrMrLnIPSCtx
n1/zRwkC3Tu+a0og/5EXUdLUoaYBVarcsXUfv2quCArJcpF2pgWR5L/s0V6cSpsn
8KeKr6WrKk4fdUaWvcPh0UOByFsglaRSlXCoPVDq0EH6q6RwOPJX6TMeor3VTzv6
IqjqPnRbXhQdBhSVKvbrNWUzy1RHYS9mINrTLx+3qV+/TWbvO34=
=q811
-----END PGP SIGNATURE-----

3
libarchive-3.5.0.tar.xz Normal file
View File

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:245bff9d17e78986bf9716eb887e3bc731d7fd8e5d04efebb8bb1e1c39a3a354
size 4852596

View File

@ -0,0 +1,16 @@
-----BEGIN PGP SIGNATURE-----
iQIzBAABCgAdFiEEpaRbEq2S2WS4nu4t7FYMgc7CJ24FAl/GAxsACgkQ7FYMgc7C
J24PiQ//diswwm59dhpELkB0kwtza5xiZW022KodZU7iawYi91FK7Oi08xdfMYn9
cnEdrAd1BHw/hlkvSIoeoaPe1ICcTRubdHgD3O15S7Z5Pg66DdIJAZ1ldgVOIHxJ
DF0cgNbmUVDvmY1jvfeVBo7bk1KSSD38vGtyGL54jURPPSIVpKMW8TsWvp08g5Q7
ZQ3mxtwejvVg/+LcQ2WxYyUBc6lbJu2Wyy/yUBsDJr5/D8il/1IcySkowZnzuMY6
km0xfh4C2b8xlnEZ0GuHm4pnTGksClepFX8aSKK7CxrX8ILMGJbixZIBl54/zZyt
X3iImgNJuFKXKnolTbh4Yr3aHJ7Tqjdt77Y+U9pjYTa4eZXvFaSKt6K89TfVUZoC
mAUJC1mMuzxAt+e14XOkEqzCSVl2loIDnbW5iNJeJvDA25aTTfVqzYx7Hd7Qo/M2
0kfQtNQOsZ65S6o7+q9LsaAKarPsrtTm8kK2MfGQgyMlu8XHRNmdGPwqBRtW6aL+
sOJYl4ScROoJYqepXv15soBusN063WLldZHugBFe7gUEOdIdn1SElpXw2MDFViaD
c5lFoJcJcFIz4pBjYhHXMNXio521JlI/g8crQvNxXDordLKB/KZHgRWo7yEQ7ng8
YydJtcP+NmUWMOoTnylLiwggP2guMJ9iv+xx879UB595UeZJSnE=
=IBPd
-----END PGP SIGNATURE-----

View File

@ -1,3 +1,20 @@
-------------------------------------------------------------------
Tue Dec 1 10:24:21 UTC 2020 - Ismail Dönmez <idonmez@suse.com>
- Update to version 3.5.0
New features:
* mtree digest reader support (#1347)
* completed support for UTF-8 encoding conversion (#1389)
* minor API enhancements (#1258, #1405)
* support for system extended attributes (#1409)
* support for decompression of symbolic links in zipx archives (#1435)
Important bugfixes
* fixed extraction of archives with hard links pointing to itself (#1381)
* cpio fixes (#1387, #1388)
* fixed uninitialized size in rar5_read_data (#1408)
* fixed memory leaks in error case of archive_write_open() functions (#1456)
- Drop libarchive-3.4.3-fix_test_write_disk_secure.patch, fixed upstream.
------------------------------------------------------------------- -------------------------------------------------------------------
Mon Sep 7 17:17:45 UTC 2020 - Andreas Stieger <andreas.stieger@gmx.de> Mon Sep 7 17:17:45 UTC 2020 - Andreas Stieger <andreas.stieger@gmx.de>

View File

@ -31,19 +31,18 @@
%endif %endif
Name: libarchive Name: libarchive
Version: 3.4.3 Version: 3.5.0
Release: 0 Release: 0
Summary: Utility and C library to create and read several different streaming archive formats Summary: Utility and C library to create and read several different streaming archive formats
License: BSD-2-Clause License: BSD-2-Clause
Group: Productivity/Archiving/Compression Group: Productivity/Archiving/Compression
URL: http://www.libarchive.org/ URL: http://www.libarchive.org/
Source0: https://github.com/libarchive/libarchive/releases/download/v%{version}/libarchive-%{version}.tar.gz Source0: https://github.com/libarchive/libarchive/releases/download/v%{version}/libarchive-%{version}.tar.xz
Source1: https://github.com/libarchive/libarchive/releases/download/v%{version}/libarchive-%{version}.tar.gz.asc Source1: https://github.com/libarchive/libarchive/releases/download/v%{version}/libarchive-%{version}.tar.xz.asc
Source2: libarchive.keyring Source2: libarchive.keyring
Source1000: baselibs.conf Source1000: baselibs.conf
Patch1: lib-suffix.patch Patch1: lib-suffix.patch
Patch2: fix-soversion.patch Patch2: fix-soversion.patch
Patch3: libarchive-3.4.3-fix_test_write_disk_secure.patch
BuildRequires: cmake BuildRequires: cmake
BuildRequires: libacl-devel BuildRequires: libacl-devel
BuildRequires: libbz2-devel BuildRequires: libbz2-devel