svn commit: r338519 - in vendor/libarchive/dist: . build build/cmake cpio/test libarchive

Martin Matuska mm at FreeBSD.org
Fri Sep 7 00:11:46 UTC 2018


Author: mm
Date: Fri Sep  7 00:11:43 2018
New Revision: 338519
URL: https://svnweb.freebsd.org/changeset/base/338519

Log:
  Update vendor/libarchive/dist to git 5fe69dd018745a88eecf1f7db40daf12d26f7ed0
  
  libarchive 3.3.3

Modified:
  vendor/libarchive/dist/CMakeLists.txt
  vendor/libarchive/dist/NEWS
  vendor/libarchive/dist/README.md
  vendor/libarchive/dist/build/cmake/config.h.in
  vendor/libarchive/dist/build/version
  vendor/libarchive/dist/configure.ac
  vendor/libarchive/dist/cpio/test/test_basic.c
  vendor/libarchive/dist/cpio/test/test_format_newc.c
  vendor/libarchive/dist/libarchive/archive.h
  vendor/libarchive/dist/libarchive/archive_cryptor.c
  vendor/libarchive/dist/libarchive/archive_pack_dev.c

Modified: vendor/libarchive/dist/CMakeLists.txt
==============================================================================
--- vendor/libarchive/dist/CMakeLists.txt	Fri Sep  7 00:00:31 2018	(r338518)
+++ vendor/libarchive/dist/CMakeLists.txt	Fri Sep  7 00:11:43 2018	(r338519)
@@ -639,6 +639,7 @@ LA_CHECK_INCLUDE_FILE("sys/select.h" HAVE_SYS_SELECT_H
 LA_CHECK_INCLUDE_FILE("sys/stat.h" HAVE_SYS_STAT_H)
 LA_CHECK_INCLUDE_FILE("sys/statfs.h" HAVE_SYS_STATFS_H)
 LA_CHECK_INCLUDE_FILE("sys/statvfs.h" HAVE_SYS_STATVFS_H)
+LA_CHECK_INCLUDE_FILE("sys/sysmacros.h" HAVE_SYS_SYSMACROS_H)
 LA_CHECK_INCLUDE_FILE("sys/time.h" HAVE_SYS_TIME_H)
 LA_CHECK_INCLUDE_FILE("sys/utime.h" HAVE_SYS_UTIME_H)
 LA_CHECK_INCLUDE_FILE("sys/utsname.h" HAVE_SYS_UTSNAME_H)

Modified: vendor/libarchive/dist/NEWS
==============================================================================
--- vendor/libarchive/dist/NEWS	Fri Sep  7 00:00:31 2018	(r338518)
+++ vendor/libarchive/dist/NEWS	Fri Sep  7 00:11:43 2018	(r338519)
@@ -1,3 +1,13 @@
+Sep 03, 2018: libarchive 3.3.3 released
+
+Jul 19, 2018: Avoid super-linear slowdown on malformed mtree files
+
+Jan 27, 2018: Many fixes for building with Visual Studio
+
+Oct 19, 2017: NO_OVERWRITE doesn't change existing directory attributes
+
+Aug 12, 2017: New support for Zstandard read and write filters
+
 Jul 09, 2017: libarchive 3.3.2 released
 
 Mar 16, 2017: NFSv4 ACL support for Linux (librichacl)

Modified: vendor/libarchive/dist/README.md
==============================================================================
--- vendor/libarchive/dist/README.md	Fri Sep  7 00:00:31 2018	(r338518)
+++ vendor/libarchive/dist/README.md	Fri Sep  7 00:11:43 2018	(r338519)
@@ -99,6 +99,7 @@ The library also detects and handles any of the follow
   * lzma, lzip, and xz compression
   * lz4 compression
   * lzop compression
+  * zstandard compression
 
 The library can create archives in any of the following formats:
   * POSIX ustar
@@ -125,6 +126,7 @@ When creating archives, the result can be filtered wit
   * lzma, lzip, and xz compression
   * lz4 compression
   * lzop compression
+  * zstandard compression
 
 ## Notes about the Library Design
 
@@ -159,7 +161,7 @@ questions we are asked about libarchive:
 
 * On read, compression and format are always detected automatically.
 
-* The same API is used for all formats; in particular, it's very
+* The same API is used for all formats; it should be very
   easy for software using libarchive to transparently handle
   any of libarchive's archiving formats.
 

Modified: vendor/libarchive/dist/build/cmake/config.h.in
==============================================================================
--- vendor/libarchive/dist/build/cmake/config.h.in	Fri Sep  7 00:00:31 2018	(r338518)
+++ vendor/libarchive/dist/build/cmake/config.h.in	Fri Sep  7 00:11:43 2018	(r338519)
@@ -1068,6 +1068,10 @@ typedef uint64_t uintmax_t;
 /* Define to 1 if you have the <sys/stat.h> header file. */
 #cmakedefine HAVE_SYS_STAT_H 1
 
+
+/* Define to 1 if you have the <sys/sysmacros.h> header file. */
+#cmakedefine HAVE_SYS_SYSMACROS_H 1
+
 /* Define to 1 if you have the <sys/time.h> header file. */
 #cmakedefine HAVE_SYS_TIME_H 1
 

Modified: vendor/libarchive/dist/build/version
==============================================================================
--- vendor/libarchive/dist/build/version	Fri Sep  7 00:00:31 2018	(r338518)
+++ vendor/libarchive/dist/build/version	Fri Sep  7 00:11:43 2018	(r338519)
@@ -1 +1 @@
-3003003dev
+3003003

Modified: vendor/libarchive/dist/configure.ac
==============================================================================
--- vendor/libarchive/dist/configure.ac	Fri Sep  7 00:00:31 2018	(r338518)
+++ vendor/libarchive/dist/configure.ac	Fri Sep  7 00:11:43 2018	(r338519)
@@ -4,7 +4,7 @@ dnl First, define all of the version numbers up front.
 dnl In particular, this allows the version macro to be used in AC_INIT
 
 dnl These first two version numbers are updated automatically on each release.
-m4_define([LIBARCHIVE_VERSION_S],[3.3.3dev])
+m4_define([LIBARCHIVE_VERSION_S],[3.3.3])
 m4_define([LIBARCHIVE_VERSION_N],[3003003])
 
 dnl bsdtar and bsdcpio versioning tracks libarchive
@@ -290,7 +290,7 @@ AC_CHECK_HEADERS([stdarg.h stdint.h stdlib.h string.h]
 AC_CHECK_HEADERS([sys/acl.h sys/cdefs.h sys/ea.h sys/extattr.h])
 AC_CHECK_HEADERS([sys/ioctl.h sys/mkdev.h sys/mount.h])
 AC_CHECK_HEADERS([sys/param.h sys/poll.h sys/richacl.h])
-AC_CHECK_HEADERS([sys/select.h sys/statfs.h sys/statvfs.h])
+AC_CHECK_HEADERS([sys/select.h sys/statfs.h sys/statvfs.h sys/sysmacros.h])
 AC_CHECK_HEADERS([sys/time.h sys/utime.h sys/utsname.h sys/vfs.h sys/xattr.h])
 AC_CHECK_HEADERS([time.h unistd.h utime.h wchar.h wctype.h])
 AC_CHECK_HEADERS([windows.h])

Modified: vendor/libarchive/dist/cpio/test/test_basic.c
==============================================================================
--- vendor/libarchive/dist/cpio/test/test_basic.c	Fri Sep  7 00:00:31 2018	(r338518)
+++ vendor/libarchive/dist/cpio/test/test_basic.c	Fri Sep  7 00:11:43 2018	(r338519)
@@ -144,49 +144,79 @@ DEFINE_TEST(test_basic)
 	/* File with 10 bytes content. */
 	assertMakeFile("file", 0644, "1234567890");
 	fprintf(filelist, "file\n");
-	if (is_LargeInode("file"))
+	if (is_LargeInode("file")) {
 		strncat(result,
-		    "bsdcpio: file: large inode number truncated: "
-		    "Numerical result out of range\n",
+		    "bsdcpio: file: large inode number truncated: ",
 		    sizeof(result) - strlen(result) -1);
+		strncat(result,
+		    strerror(ERANGE),
+		    sizeof(result) - strlen(result) -1);
+		strncat(result,
+		    "\n",
+		    sizeof(result) - strlen(result) -1);
+	}
 
 	/* hardlink to above file. */
 	assertMakeHardlink("linkfile", "file");
 	fprintf(filelist, "linkfile\n");
-	if (is_LargeInode("linkfile"))
+	if (is_LargeInode("linkfile")) {
 		strncat(result,
-		    "bsdcpio: linkfile: large inode number truncated: "
-		    "Numerical result out of range\n",
+		    "bsdcpio: linkfile: large inode number truncated: ",
 		    sizeof(result) - strlen(result) -1);
+		strncat(result,
+		    strerror(ERANGE),
+		    sizeof(result) - strlen(result) -1);
+		strncat(result,
+		    "\n",
+		    sizeof(result) - strlen(result) -1);
+	}
 
 	/* Symlink to above file. */
 	if (canSymlink()) {
 		assertMakeSymlink("symlink", "file");
 		fprintf(filelist, "symlink\n");
-		if (is_LargeInode("symlink"))
+		if (is_LargeInode("symlink")) {
 			strncat(result,
-			    "bsdcpio: symlink: large inode number truncated: "
-				"Numerical result out of range\n",
+			    "bsdcpio: symlink: large inode number truncated: ",
 			    sizeof(result) - strlen(result) -1);
+			strncat(result,
+			    strerror(ERANGE),
+			    sizeof(result) - strlen(result) -1);
+			strncat(result,
+			    "\n",
+			    sizeof(result) - strlen(result) -1);
+		}
 	}
 
 	/* Another file with different permissions. */
 	assertMakeFile("file2", 0777, "1234567890");
 	fprintf(filelist, "file2\n");
-	if (is_LargeInode("file2"))
+	if (is_LargeInode("file2")) {
 		strncat(result,
-		    "bsdcpio: file2: large inode number truncated: "
-		    "Numerical result out of range\n",
+		    "bsdcpio: file2: large inode number truncated: ",
 		    sizeof(result) - strlen(result) -1);
+		strncat(result,
+		    strerror(ERANGE),
+		    sizeof(result) - strlen(result) -1);
+		strncat(result,
+		    "\n",
+		    sizeof(result) - strlen(result) -1);
+	}
 
 	/* Directory. */
 	assertMakeDir("dir", 0775);
 	fprintf(filelist, "dir\n");
-	if (is_LargeInode("dir"))
+	if (is_LargeInode("dir")) {
 		strncat(result,
-		    "bsdcpio: dir: large inode number truncated: "
-		    "Numerical result out of range\n",
+		    "bsdcpio: dir: large inode number truncated: ",
 		    sizeof(result) - strlen(result) -1);
+		strncat(result,
+		    strerror(ERANGE),
+		    sizeof(result) - strlen(result) -1);
+		strncat(result,
+		    "\n",
+		    sizeof(result) - strlen(result) -1);
+	}
 	strncat(result, "2 blocks\n", sizeof(result) - strlen(result) -1);
 
 	/* All done. */

Modified: vendor/libarchive/dist/cpio/test/test_format_newc.c
==============================================================================
--- vendor/libarchive/dist/cpio/test/test_format_newc.c	Fri Sep  7 00:00:31 2018	(r338518)
+++ vendor/libarchive/dist/cpio/test/test_format_newc.c	Fri Sep  7 00:11:43 2018	(r338519)
@@ -124,26 +124,42 @@ DEFINE_TEST(test_format_newc)
 
 	/* Setup result message. */
 	memset(result, 0, sizeof(result));
-	if (is_LargeInode("file1"))
+	if (is_LargeInode("file1")) {
 		strncat(result,
-		    "bsdcpio: file1: large inode number truncated: "
-		    "Numerical result out of range\n",
+		    "bsdcpio: file1: large inode number truncated: ",
 		    sizeof(result) - strlen(result) -1);
-	if (canSymlink() && is_LargeInode("symlink"))
+		strncat(result, strerror(ERANGE),
+		    sizeof(result) - strlen(result) -1);
+		strncat(result, "\n",
+		    sizeof(result) - strlen(result) -1);
+	}
+	if (canSymlink() && is_LargeInode("symlink")) {
 		strncat(result,
-		    "bsdcpio: symlink: large inode number truncated: "
-			"Numerical result out of range\n",
+		    "bsdcpio: symlink: large inode number truncated: ",
 		    sizeof(result) - strlen(result) -1);
-	if (is_LargeInode("dir"))
+		strncat(result, strerror(ERANGE),
+		    sizeof(result) - strlen(result) -1);
+		strncat(result, "\n",
+		    sizeof(result) - strlen(result) -1);
+	}
+	if (is_LargeInode("dir")) {
 		strncat(result,
-		    "bsdcpio: dir: large inode number truncated: "
-		    "Numerical result out of range\n",
+		    "bsdcpio: dir: large inode number truncated: ",
 		    sizeof(result) - strlen(result) -1);
-	if (is_LargeInode("hardlink"))
+		strncat(result, strerror(ERANGE),
+		    sizeof(result) - strlen(result) -1);
+		strncat(result, "\n",
+		    sizeof(result) - strlen(result) -1);
+	}
+	if (is_LargeInode("hardlink")) {
 		strncat(result,
-		    "bsdcpio: hardlink: large inode number truncated: "
-		    "Numerical result out of range\n",
+		    "bsdcpio: hardlink: large inode number truncated: ",
 		    sizeof(result) - strlen(result) -1);
+		strncat(result, strerror(ERANGE),
+		    sizeof(result) - strlen(result) -1);
+		strncat(result, "\n",
+		    sizeof(result) - strlen(result) -1);
+	}
 
 	/* Record some facts about what we just created: */
 	now = time(NULL); /* They were all created w/in last two seconds. */

Modified: vendor/libarchive/dist/libarchive/archive.h
==============================================================================
--- vendor/libarchive/dist/libarchive/archive.h	Fri Sep  7 00:00:31 2018	(r338518)
+++ vendor/libarchive/dist/libarchive/archive.h	Fri Sep  7 00:11:43 2018	(r338519)
@@ -155,7 +155,7 @@ __LA_DECL int		archive_version_number(void);
 /*
  * Textual name/version of the library, useful for version displays.
  */
-#define	ARCHIVE_VERSION_ONLY_STRING "3.3.3dev"
+#define	ARCHIVE_VERSION_ONLY_STRING "3.3.3"
 #define	ARCHIVE_VERSION_STRING "libarchive " ARCHIVE_VERSION_ONLY_STRING
 __LA_DECL const char *	archive_version_string(void);
 

Modified: vendor/libarchive/dist/libarchive/archive_cryptor.c
==============================================================================
--- vendor/libarchive/dist/libarchive/archive_cryptor.c	Fri Sep  7 00:00:31 2018	(r338518)
+++ vendor/libarchive/dist/libarchive/archive_cryptor.c	Fri Sep  7 00:11:43 2018	(r338519)
@@ -153,7 +153,7 @@ aes_ctr_encrypt_counter(archive_crypto_ctx *ctx)
 	CCCryptorStatus r;
 
 	r = CCCryptorReset(ref, NULL);
-	if (r != kCCSuccess)
+	if (r != kCCSuccess && r != kCCUnimplemented)
 		return -1;
 	r = CCCryptorUpdate(ref, ctx->nonce, AES_BLOCK_SIZE, ctx->encr_buf,
 	    AES_BLOCK_SIZE, NULL);

Modified: vendor/libarchive/dist/libarchive/archive_pack_dev.c
==============================================================================
--- vendor/libarchive/dist/libarchive/archive_pack_dev.c	Fri Sep  7 00:00:31 2018	(r338518)
+++ vendor/libarchive/dist/libarchive/archive_pack_dev.c	Fri Sep  7 00:11:43 2018	(r338519)
@@ -57,6 +57,9 @@ __RCSID("$NetBSD$");
 #ifdef HAVE_SYS_STAT_H
 #include <sys/stat.h>
 #endif
+#ifdef HAVE_SYS_SYSMACROS_H
+#include <sys/sysmacros.h>
+#endif
 #ifdef HAVE_UNISTD_H
 #include <unistd.h>
 #endif


More information about the svn-src-all mailing list