Git-Url: 
http://git.frugalware.org/gitweb/gitweb.cgi?p=gcc6.git;a=commitdiff;h=da17ce237bfcbf809510cac853c663a56378f259

commit da17ce237bfcbf809510cac853c663a56378f259
Author: crazy <cr...@frugalware.org>
Date:   Fri Sep 16 14:21:29 2016 +0200

libarchive-3.2.1-1-x86_64
* Version bump
* hell may break

diff --git a/source/base/libarchive/CVE-2013-0211_read_buffer_overflow.patch 
b/source/base/libarchive/CVE-2013-0211_read_buffer_overflow.patch
deleted file mode 100644
index 39c7268..0000000
--- a/source/base/libarchive/CVE-2013-0211_read_buffer_overflow.patch
+++ /dev/null
@@ -1,33 +0,0 @@
-From 22531545514043e04633e1c015c7540b9de9dbe4 Mon Sep 17 00:00:00 2001
-From: Tim Kientzle <kient...@acm.org>
-Date: Fri, 22 Mar 2013 23:48:41 -0700
-Subject: [PATCH] Limit write requests to at most INT_MAX. This prevents a
- certain common programming error (passing -1 to write) from leading to other
- problems deeper in the library.
-
----
- libarchive/archive_write.c | 5 +++++
- 1 file changed, 5 insertions(+)
-
-diff --git a/libarchive/archive_write.c b/libarchive/archive_write.c
-index eede5e0..be85621 100644
---- a/libarchive/archive_write.c
-+++ b/libarchive/archive_write.c
-@@ -673,8 +673,13 @@ static ssize_t
- _archive_write_data(struct archive *_a, const void *buff, size_t s)
- {
-       struct archive_write *a = (struct archive_write *)_a;
-+      const size_t max_write = INT_MAX;
-+
-       archive_check_magic(&a->archive, ARCHIVE_WRITE_MAGIC,
-           ARCHIVE_STATE_DATA, "archive_write_data");
-+      /* In particular, this catches attempts to pass negative values. */
-+      if (s > max_write)
-+              s = max_write;
-       archive_clear_error(&a->archive);
-       return ((a->format_write_data)(a, buff, s));
- }
---
-1.8.1
-
-
diff --git a/source/base/libarchive/FrugalBuild 
b/source/base/libarchive/FrugalBuild
index ac92078..fdcb4ec 100644
--- a/source/base/libarchive/FrugalBuild
+++ b/source/base/libarchive/FrugalBuild
@@ -4,22 +4,17 @@
# Please always test pacman-g2 before pushing an update of this package!

pkgname=libarchive
-pkgver=3.1.2
-pkgrel=9
+pkgver=3.2.1
+pkgrel=1
pkgdesc="Library to create and read several different archive formats"
url="http://www.libarchive.org";
groups=('base' 'chroot-core')
archs=('i686' 'x86_64')
depends=('expat>=2.1.0-4' 'xz>=5.2.2-3' 'bzip2>=1.0.6-6' 'zlib>=1.2.8-8' \
-       'openssl>=1.0.2-8' 'nettle>=3.1.1-5')
-source=($url/downloads/$pkgname-$pkgver.tar.gz 
CVE-2013-0211_read_buffer_overflow.patch \
-       testsuite.patch acl.patch pacman-g2.patch)
+       'openssl>=1.0.2-8' 'nettle>=3.1.1-5' 'lzo')
+source=($url/downloads/$pkgname-$pkgver.tar.gz)
up2date="Flasttar $url/downloads/"
-sha1sums=('6a991777ecb0f890be931cec4aec856d1a195489' \
-          '44a1c860fde159b72cd0819ae91269e2f6d747bf' \
-          '0e4c576b52b314996ecf739938b14bd16f9b1ad6' \
-          '4390f75b27390e7f967e10defce9a36ee2e50ffa' \
-          '74f57ca28195942a8ea600914e7b40fa37d64281')
+sha1sums=('d8c2e3c4028970b0827066b5a5fe5e9cd02c6f47')
# Need to prevent mistakes like unclean chroot build and others and be sure 
that DONT link to ACL*
Fconfopts="--disable-xattr --disable-acl --without-xml2"
options=('static' 'libtool') ## pacman
diff --git a/source/base/libarchive/acl.patch b/source/base/libarchive/acl.patch
deleted file mode 100644
index 591bb49..0000000
--- a/source/base/libarchive/acl.patch
+++ /dev/null
@@ -1,220 +0,0 @@
-diff -ruN libarchive-3.1.2/libarchive/archive_read_disk_entry_from_file.c 
libarchive-3.1.2.fixed/libarchive/archive_read_disk_entry_from_file.c
---- libarchive-3.1.2/libarchive/archive_read_disk_entry_from_file.c    
2013-02-08 01:52:07.000000000 +0100
-+++ libarchive-3.1.2.fixed/libarchive/archive_read_disk_entry_from_file.c      
2013-08-08 10:47:41.000000000 +0200
-@@ -399,7 +399,7 @@
- #endif
-
-
--#if defined(HAVE_POSIX_ACL) && defined(ACL_TYPE_NFS4)
-+#ifdef HAVE_POSIX_ACL
- static int translate_acl(struct archive_read_disk *a,
-     struct archive_entry *entry, acl_t acl, int archive_entry_acl_type);
-
-@@ -419,6 +419,7 @@
-
-       archive_entry_acl_clear(entry);
-
-+#ifdef ACL_TYPE_NFS4
-       /* Try NFS4 ACL first. */
-       if (*fd >= 0)
-               acl = acl_get_fd(*fd);
-@@ -447,6 +448,7 @@
-               acl_free(acl);
-               return (ARCHIVE_OK);
-       }
-+#endif
-
-       /* Retrieve access ACL from file. */
-       if (*fd >= 0)
-@@ -492,6 +494,7 @@
-         {ARCHIVE_ENTRY_ACL_EXECUTE, ACL_EXECUTE},
-         {ARCHIVE_ENTRY_ACL_WRITE, ACL_WRITE},
-         {ARCHIVE_ENTRY_ACL_READ, ACL_READ},
-+#ifdef ACL_TYPE_NFS4
-         {ARCHIVE_ENTRY_ACL_READ_DATA, ACL_READ_DATA},
-         {ARCHIVE_ENTRY_ACL_LIST_DIRECTORY, ACL_LIST_DIRECTORY},
-         {ARCHIVE_ENTRY_ACL_WRITE_DATA, ACL_WRITE_DATA},
-@@ -508,8 +511,10 @@
-         {ARCHIVE_ENTRY_ACL_WRITE_ACL, ACL_WRITE_ACL},
-         {ARCHIVE_ENTRY_ACL_WRITE_OWNER, ACL_WRITE_OWNER},
-         {ARCHIVE_ENTRY_ACL_SYNCHRONIZE, ACL_SYNCHRONIZE}
-+#endif
- };
-
-+#ifdef ACL_TYPE_NFS4
- static struct {
-         int archive_inherit;
-         int platform_inherit;
-@@ -519,21 +524,25 @@
-       {ARCHIVE_ENTRY_ACL_ENTRY_NO_PROPAGATE_INHERIT, 
ACL_ENTRY_NO_PROPAGATE_INHERIT},
-       {ARCHIVE_ENTRY_ACL_ENTRY_INHERIT_ONLY, ACL_ENTRY_INHERIT_ONLY}
- };
--
-+#endif
- static int
- translate_acl(struct archive_read_disk *a,
-     struct archive_entry *entry, acl_t acl, int default_entry_acl_type)
- {
-       acl_tag_t        acl_tag;
-+#ifdef ACL_TYPE_NFS4
-       acl_entry_type_t acl_type;
-       acl_flagset_t    acl_flagset;
-+      int brand, r;
-+#endif
-       acl_entry_t      acl_entry;
-       acl_permset_t    acl_permset;
--      int              brand, i, r, entry_acl_type;
-+      int              i, entry_acl_type;
-       int              s, ae_id, ae_tag, ae_perm;
-       const char      *ae_name;
-
-
-+#ifdef ACL_TYPE_NFS4
-       // FreeBSD "brands" ACLs as POSIX.1e or NFSv4
-       // Make sure the "brand" on this ACL is consistent
-       // with the default_entry_acl_type bits provided.
-@@ -560,6 +569,7 @@
-               return ARCHIVE_FAILED;
-               break;
-       }
-+#endif
-
-
-       s = acl_get_entry(acl, ACL_FIRST_ENTRY, &acl_entry);
-@@ -592,9 +602,11 @@
-               case ACL_OTHER:
-                       ae_tag = ARCHIVE_ENTRY_ACL_OTHER;
-                       break;
-+#ifdef ACL_TYPE_NFS4
-               case ACL_EVERYONE:
-                       ae_tag = ARCHIVE_ENTRY_ACL_EVERYONE;
-                       break;
-+#endif
-               default:
-                       /* Skip types that libarchive can't support. */
-                       s = acl_get_entry(acl, ACL_NEXT_ENTRY, &acl_entry);
-@@ -605,6 +617,7 @@
-               // XXX acl_get_entry_type_np on FreeBSD returns EINVAL for
-               // non-NFSv4 ACLs
-               entry_acl_type = default_entry_acl_type;
-+#ifdef ACL_TYPE_NFS4
-               r = acl_get_entry_type_np(acl_entry, &acl_type);
-               if (r == 0) {
-                       switch (acl_type) {
-@@ -634,9 +647,10 @@
-                               ae_perm |= acl_inherit_map[i].archive_inherit;
-
-                 }
-+#endif
-
-               acl_get_permset(acl_entry, &acl_permset);
--                for (i = 0; i < (int)(sizeof(acl_perm_map) / 
sizeof(acl_perm_map[0])); ++i) {
-+              for (i = 0; i < (int)(sizeof(acl_perm_map) / 
sizeof(acl_perm_map[0])); ++i) {
-                       /*
-                        * acl_get_perm() is spelled differently on different
-                        * platforms; see above.
-diff -ruN libarchive-3.1.2/libarchive/archive_write_disk_acl.c 
libarchive-3.1.2.fixed/libarchive/archive_write_disk_acl.c
---- libarchive-3.1.2/libarchive/archive_write_disk_acl.c       2013-01-14 
02:43:45.000000000 +0100
-+++ libarchive-3.1.2.fixed/libarchive/archive_write_disk_acl.c 2013-08-08 
10:31:35.000000000 +0200
-@@ -43,7 +43,7 @@
- #include "archive_acl_private.h"
- #include "archive_write_disk_private.h"
-
--#if !defined(HAVE_POSIX_ACL) || !defined(ACL_TYPE_NFS4)
-+#ifndef HAVE_POSIX_ACL
- /* Default empty function body to satisfy mainline code. */
- int
- archive_write_disk_set_acls(struct archive *a, int fd, const char *name,
-@@ -79,10 +79,12 @@
-               ret = set_acl(a, fd, name, abstract_acl, ACL_TYPE_DEFAULT,
-                   ARCHIVE_ENTRY_ACL_TYPE_DEFAULT, "default");
-               return (ret);
-+#ifdef ACL_TYPE_NFS4
-       } else if (archive_acl_count(abstract_acl, ARCHIVE_ENTRY_ACL_TYPE_NFS4) 
> 0) {
-               ret = set_acl(a, fd, name, abstract_acl, ACL_TYPE_NFS4,
-                   ARCHIVE_ENTRY_ACL_TYPE_NFS4, "nfs4");
-               return (ret);
-+#endif
-       } else
-               return ARCHIVE_OK;
- }
-@@ -94,6 +96,7 @@
-       {ARCHIVE_ENTRY_ACL_EXECUTE, ACL_EXECUTE},
-       {ARCHIVE_ENTRY_ACL_WRITE, ACL_WRITE},
-       {ARCHIVE_ENTRY_ACL_READ, ACL_READ},
-+#ifdef ACL_TYPE_NFS4
-       {ARCHIVE_ENTRY_ACL_READ_DATA, ACL_READ_DATA},
-       {ARCHIVE_ENTRY_ACL_LIST_DIRECTORY, ACL_LIST_DIRECTORY},
-       {ARCHIVE_ENTRY_ACL_WRITE_DATA, ACL_WRITE_DATA},
-@@ -110,8 +113,10 @@
-       {ARCHIVE_ENTRY_ACL_WRITE_ACL, ACL_WRITE_ACL},
-       {ARCHIVE_ENTRY_ACL_WRITE_OWNER, ACL_WRITE_OWNER},
-       {ARCHIVE_ENTRY_ACL_SYNCHRONIZE, ACL_SYNCHRONIZE}
-+#endif
- };
-
-+#ifdef ACL_TYPE_NFS4
- static struct {
-       int archive_inherit;
-       int platform_inherit;
-@@ -121,6 +126,7 @@
-       {ARCHIVE_ENTRY_ACL_ENTRY_NO_PROPAGATE_INHERIT, 
ACL_ENTRY_NO_PROPAGATE_INHERIT},
-       {ARCHIVE_ENTRY_ACL_ENTRY_INHERIT_ONLY, ACL_ENTRY_INHERIT_ONLY}
- };
-+#endif
-
- static int
- set_acl(struct archive *a, int fd, const char *name,
-@@ -130,7 +136,9 @@
-       acl_t            acl;
-       acl_entry_t      acl_entry;
-       acl_permset_t    acl_permset;
-+#ifdef ACL_TYPE_NFS4
-       acl_flagset_t    acl_flagset;
-+#endif
-       int              ret;
-       int              ae_type, ae_permset, ae_tag, ae_id;
-       uid_t            ae_uid;
-@@ -171,14 +179,17 @@
-               case ARCHIVE_ENTRY_ACL_OTHER:
-                       acl_set_tag_type(acl_entry, ACL_OTHER);
-                       break;
-+#ifdef ACL_TYPE_NFS4
-               case ARCHIVE_ENTRY_ACL_EVERYONE:
-                       acl_set_tag_type(acl_entry, ACL_EVERYONE);
-                       break;
-+#endif
-               default:
-                       /* XXX */
-                       break;
-               }
-
-+#ifdef ACL_TYPE_NFS4
-               switch (ae_type) {
-               case ARCHIVE_ENTRY_ACL_TYPE_ALLOW:
-                       acl_set_entry_type_np(acl_entry, ACL_ENTRY_TYPE_ALLOW);
-@@ -200,6 +211,7 @@
-                       // XXX error handling here.
-                       break;
-               }
-+#endif
-
-               acl_get_permset(acl_entry, &acl_permset);
-               acl_clear_perms(acl_permset);
-@@ -210,6 +222,7 @@
-                                            acl_perm_map[i].platform_perm);
-               }
-
-+#ifdef ACL_TYPE_NFS4
-               acl_get_flagset_np(acl_entry, &acl_flagset);
-               acl_clear_flags_np(acl_flagset);
-               for (i = 0; i < (int)(sizeof(acl_inherit_map) / 
sizeof(acl_inherit_map[0])); ++i) {
-@@ -217,6 +230,7 @@
-                               acl_add_flag_np(acl_flagset,
-                                               
acl_inherit_map[i].platform_inherit);
-               }
-+#endif
-       }
-
-       /* Try restoring the ACL through 'fd' if we can. */
-
diff --git a/source/base/libarchive/pacman-g2.patch 
b/source/base/libarchive/pacman-g2.patch
deleted file mode 100644
index 2ecf730..0000000
--- a/source/base/libarchive/pacman-g2.patch
+++ /dev/null
@@ -1,11 +0,0 @@
---- libarchive-3.1.2/libarchive/archive.h      2013-02-09 18:23:03.000000000 
+0100
-+++ libarchive-3.1.2-fw/libarchive/archive.h   2015-04-10 13:03:58.000000000 
+0200
-@@ -31,6 +31,7 @@
- #include <sys/stat.h>
- #include <stddef.h>  /* for wchar_t */
- #include <stdio.h> /* For FILE * */
-+#include <time.h>
-
- /*
-  * Note: archive.h is for use outside of libarchive; the configuration
-
diff --git a/source/base/libarchive/testsuite.patch 
b/source/base/libarchive/testsuite.patch
deleted file mode 100644
index 28a658e..0000000
--- a/source/base/libarchive/testsuite.patch
+++ /dev/null
@@ -1,151 +0,0 @@
-diff --git a/cpio/test/test_extract_cpio_lzo.c 
b/cpio/test/test_extract_cpio_lzo.c
-index f351ba7..99476af 100644
---- a/cpio/test/test_extract_cpio_lzo.c
-+++ b/cpio/test/test_extract_cpio_lzo.c
-@@ -27,7 +27,7 @@ __FBSDID("$FreeBSD$");
-
- DEFINE_TEST(test_extract_cpio_lzo)
- {
--      const char *reffile = "test_extract.cpio.lrz";
-+      const char *reffile = "test_extract.cpio.lzo";
-       int f;
-
-       extract_reference_file(reffile);
-diff --git a/libarchive/test/test_write_filter_lzop.c 
b/libarchive/test/test_write_filter_lzop.c
-index 9e840bd..a32932c 100644
---- a/libarchive/test/test_write_filter_lzop.c
-+++ b/libarchive/test/test_write_filter_lzop.c
-@@ -39,7 +39,7 @@ DEFINE_TEST(test_write_filter_lzop)
-       size_t buffsize, datasize;
-       char path[16];
-       size_t used1, used2;
--      int i, r, use_prog = 0;
-+      int i, r, use_prog = 0, filecount;
-
-       assert((a = archive_write_new()) != NULL);
-       r = archive_write_add_filter_lzop(a);
-@@ -58,9 +58,10 @@ DEFINE_TEST(test_write_filter_lzop)
-
-       datasize = 10000;
-       assert(NULL != (data = (char *)calloc(1, datasize)));
-+      filecount = 10;
-
-       /*
--       * Write a 100 files and read them all back.
-+       * Write a filecount files and read them all back.
-        */
-       assert((a = archive_write_new()) != NULL);
-       assertEqualIntA(a, ARCHIVE_OK, archive_write_set_format_ustar(a));
-@@ -77,7 +78,7 @@ DEFINE_TEST(test_write_filter_lzop)
-       assert((ae = archive_entry_new()) != NULL);
-       archive_entry_set_filetype(ae, AE_IFREG);
-       archive_entry_set_size(ae, datasize);
--      for (i = 0; i < 100; i++) {
-+      for (i = 0; i < filecount; i++) {
-               sprintf(path, "file%03d", i);
-               archive_entry_copy_pathname(ae, path);
-               assertEqualIntA(a, ARCHIVE_OK, archive_write_header(a, ae));
-@@ -97,7 +98,7 @@ DEFINE_TEST(test_write_filter_lzop)
-       } else {
-               assertEqualIntA(a, ARCHIVE_OK,
-                   archive_read_open_memory(a, buff, used1));
--              for (i = 0; i < 100; i++) {
-+              for (i = 0; i < filecount; i++) {
-                       sprintf(path, "file%03d", i);
-                       if (!assertEqualInt(ARCHIVE_OK,
-                               archive_read_next_header(a, &ae)))
-@@ -133,7 +134,7 @@ DEFINE_TEST(test_write_filter_lzop)
-           archive_write_set_options(a, "lzop:compression-level=9"));
-       assertEqualIntA(a, ARCHIVE_OK,
-           archive_write_open_memory(a, buff, buffsize, &used2));
--      for (i = 0; i < 100; i++) {
-+      for (i = 0; i < filecount; i++) {
-               sprintf(path, "file%03d", i);
-               assert((ae = archive_entry_new()) != NULL);
-               archive_entry_copy_pathname(ae, path);
-@@ -161,7 +162,7 @@ DEFINE_TEST(test_write_filter_lzop)
-                   archive_read_support_filter_all(a));
-               assertEqualIntA(a, ARCHIVE_OK,
-                   archive_read_open_memory(a, buff, used2));
--              for (i = 0; i < 100; i++) {
-+              for (i = 0; i < filecount; i++) {
-                       sprintf(path, "file%03d", i);
-                       if (!assertEqualInt(ARCHIVE_OK,
-                               archive_read_next_header(a, &ae)))
-@@ -186,7 +187,7 @@ DEFINE_TEST(test_write_filter_lzop)
-           archive_write_set_filter_option(a, NULL, "compression-level", "1"));
-       assertEqualIntA(a, ARCHIVE_OK,
-           archive_write_open_memory(a, buff, buffsize, &used2));
--      for (i = 0; i < 100; i++) {
-+      for (i = 0; i < filecount; i++) {
-               sprintf(path, "file%03d", i);
-               assert((ae = archive_entry_new()) != NULL);
-               archive_entry_copy_pathname(ae, path);
-@@ -216,7 +217,7 @@ DEFINE_TEST(test_write_filter_lzop)
-       } else {
-               assertEqualIntA(a, ARCHIVE_OK,
-                   archive_read_open_memory(a, buff, used2));
--              for (i = 0; i < 100; i++) {
-+              for (i = 0; i < filecount; i++) {
-                       sprintf(path, "file%03d", i);
-                       if (!assertEqualInt(ARCHIVE_OK,
-                               archive_read_next_header(a, &ae)))
-diff --git a/tar/test/test_option_b.c b/tar/test/test_option_b.c
-index be2ae65..7164d4c 100644
---- a/tar/test/test_option_b.c
-+++ b/tar/test/test_option_b.c
-@@ -25,8 +25,14 @@
- #include "test.h"
- __FBSDID("$FreeBSD$");
-
-+static char *ustar_opt = " --format=ustar";
-+
- DEFINE_TEST(test_option_b)
- {
-+      char *testprog_ustar = malloc(strlen(testprog) + strlen(ustar_opt) + 2);
-+      strcpy(testprog_ustar, testprog);
-+      strcat(testprog_ustar, ustar_opt);
-+
-       assertMakeFile("file1", 0644, "file1");
-       if (systemf("cat file1 > test_cat.out 2> test_cat.err") != 0) {
-               skipping("Platform doesn't have cat");
-@@ -36,7 +42,7 @@ DEFINE_TEST(test_option_b)
-       /*
-        * Bsdtar does not pad if the output is going directly to a disk file.
-        */
--      assertEqualInt(0, systemf("%s -cf archive1.tar file1 >test1.out 
2>test1.err", testprog));
-+      assertEqualInt(0, systemf("%s -cf archive1.tar file1 >test1.out 
2>test1.err", testprog_ustar));
-       failure("bsdtar does not pad archives written directly to regular 
files");
-       assertFileSize("archive1.tar", 2048);
-       assertEmptyFile("test1.out");
-@@ -46,24 +52,24 @@ DEFINE_TEST(test_option_b)
-        * Bsdtar does pad to the block size if the output is going to a socket.
-        */
-       /* Default is -b 20 */
--      assertEqualInt(0, systemf("%s -cf - file1 2>test2.err | cat 
>archive2.tar ", testprog));
-+      assertEqualInt(0, systemf("%s -cf - file1 2>test2.err | cat 
>archive2.tar ", testprog_ustar));
-       failure("bsdtar does pad archives written to pipes");
-       assertFileSize("archive2.tar", 10240);
-       assertEmptyFile("test2.err");
-
--      assertEqualInt(0, systemf("%s -cf - -b 20 file1 2>test3.err | cat 
>archive3.tar ", testprog));
-+      assertEqualInt(0, systemf("%s -cf - -b 20 file1 2>test3.err | cat 
>archive3.tar ", testprog_ustar));
-       assertFileSize("archive3.tar", 10240);
-       assertEmptyFile("test3.err");
-
--      assertEqualInt(0, systemf("%s -cf - -b 10 file1 2>test4.err | cat 
>archive4.tar ", testprog));
-+      assertEqualInt(0, systemf("%s -cf - -b 10 file1 2>test4.err | cat 
>archive4.tar ", testprog_ustar));
-       assertFileSize("archive4.tar", 5120);
-       assertEmptyFile("test4.err");
-
--      assertEqualInt(0, systemf("%s -cf - -b 1 file1 2>test5.err | cat 
>archive5.tar ", testprog));
-+      assertEqualInt(0, systemf("%s -cf - -b 1 file1 2>test5.err | cat 
>archive5.tar ", testprog_ustar));
-       assertFileSize("archive5.tar", 2048);
-       assertEmptyFile("test5.err");
-
--      assertEqualInt(0, systemf("%s -cf - -b 8192 file1 2>test6.err | cat 
>archive6.tar ", testprog));
-+      assertEqualInt(0, systemf("%s -cf - -b 8192 file1 2>test6.err | cat 
>archive6.tar ", testprog_ustar));
-       assertFileSize("archive6.tar", 4194304);
-       assertEmptyFile("test6.err");
-
-
_______________________________________________
Frugalware-git mailing list
Frugalware-git@frugalware.org
http://frugalware.org/mailman/listinfo/frugalware-git

Reply via email to