svn commit: r338600 - in head: contrib/libarchive contrib/libarchive/cpio/test contrib/libarchive/libarchive usr.bin/bsdcat usr.bin/cpio usr.bin/tar
Martin Matuska
mm at FreeBSD.org
Tue Sep 11 20:51:37 UTC 2018
Author: mm
Date: Tue Sep 11 20:51:34 2018
New Revision: 338600
URL: https://svnweb.freebsd.org/changeset/base/338600
Log:
MFV r338519:
Update libarchive to 3.3.3
As all important changes have already been merged from libarchive git
this is just version number bump, documentation update and some
polishing for cpio tests. Other source code changes are not relevant to
FreeBSD.
Approved by: re (gjb)
MFC after: 1 week
Modified:
head/contrib/libarchive/NEWS
head/contrib/libarchive/README.md
head/contrib/libarchive/cpio/test/test_basic.c
head/contrib/libarchive/cpio/test/test_format_newc.c
head/contrib/libarchive/libarchive/archive.h
head/contrib/libarchive/libarchive/archive_cryptor.c
head/contrib/libarchive/libarchive/archive_entry.h
head/contrib/libarchive/libarchive/archive_pack_dev.c
head/usr.bin/bsdcat/Makefile
head/usr.bin/cpio/Makefile
head/usr.bin/tar/Makefile
Directory Properties:
head/contrib/libarchive/ (props changed)
Modified: head/contrib/libarchive/NEWS
==============================================================================
--- head/contrib/libarchive/NEWS Tue Sep 11 20:32:57 2018 (r338599)
+++ head/contrib/libarchive/NEWS Tue Sep 11 20:51:34 2018 (r338600)
@@ -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: head/contrib/libarchive/README.md
==============================================================================
--- head/contrib/libarchive/README.md Tue Sep 11 20:32:57 2018 (r338599)
+++ head/contrib/libarchive/README.md Tue Sep 11 20:51:34 2018 (r338600)
@@ -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: head/contrib/libarchive/cpio/test/test_basic.c
==============================================================================
--- head/contrib/libarchive/cpio/test/test_basic.c Tue Sep 11 20:32:57 2018 (r338599)
+++ head/contrib/libarchive/cpio/test/test_basic.c Tue Sep 11 20:51:34 2018 (r338600)
@@ -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: head/contrib/libarchive/cpio/test/test_format_newc.c
==============================================================================
--- head/contrib/libarchive/cpio/test/test_format_newc.c Tue Sep 11 20:32:57 2018 (r338599)
+++ head/contrib/libarchive/cpio/test/test_format_newc.c Tue Sep 11 20:51:34 2018 (r338600)
@@ -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: head/contrib/libarchive/libarchive/archive.h
==============================================================================
--- head/contrib/libarchive/libarchive/archive.h Tue Sep 11 20:32:57 2018 (r338599)
+++ head/contrib/libarchive/libarchive/archive.h Tue Sep 11 20:51:34 2018 (r338600)
@@ -36,7 +36,7 @@
* assert that ARCHIVE_VERSION_NUMBER >= 2012108.
*/
/* Note: Compiler will complain if this does not match archive_entry.h! */
-#define ARCHIVE_VERSION_NUMBER 3003002
+#define ARCHIVE_VERSION_NUMBER 3003003
#include <sys/stat.h>
#include <stddef.h> /* for wchar_t */
@@ -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.2"
+#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: head/contrib/libarchive/libarchive/archive_cryptor.c
==============================================================================
--- head/contrib/libarchive/libarchive/archive_cryptor.c Tue Sep 11 20:32:57 2018 (r338599)
+++ head/contrib/libarchive/libarchive/archive_cryptor.c Tue Sep 11 20:51:34 2018 (r338600)
@@ -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: head/contrib/libarchive/libarchive/archive_entry.h
==============================================================================
--- head/contrib/libarchive/libarchive/archive_entry.h Tue Sep 11 20:32:57 2018 (r338599)
+++ head/contrib/libarchive/libarchive/archive_entry.h Tue Sep 11 20:51:34 2018 (r338600)
@@ -30,7 +30,7 @@
#define ARCHIVE_ENTRY_H_INCLUDED
/* Note: Compiler will complain if this does not match archive.h! */
-#define ARCHIVE_VERSION_NUMBER 3003002
+#define ARCHIVE_VERSION_NUMBER 3003003
/*
* Note: archive_entry.h is for use outside of libarchive; the
Modified: head/contrib/libarchive/libarchive/archive_pack_dev.c
==============================================================================
--- head/contrib/libarchive/libarchive/archive_pack_dev.c Tue Sep 11 20:32:57 2018 (r338599)
+++ head/contrib/libarchive/libarchive/archive_pack_dev.c Tue Sep 11 20:51:34 2018 (r338600)
@@ -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
Modified: head/usr.bin/bsdcat/Makefile
==============================================================================
--- head/usr.bin/bsdcat/Makefile Tue Sep 11 20:32:57 2018 (r338599)
+++ head/usr.bin/bsdcat/Makefile Tue Sep 11 20:51:34 2018 (r338600)
@@ -6,7 +6,7 @@ _LIBARCHIVEDIR= ${SRCTOP}/contrib/libarchive
_LIBARCHIVECONFDIR= ${SRCTOP}/lib/libarchive
PROG= bsdcat
-BSDCAT_VERSION_STRING= 3.3.2
+BSDCAT_VERSION_STRING= 3.3.3
.PATH: ${_LIBARCHIVEDIR}/cat
SRCS= bsdcat.c cmdline.c
Modified: head/usr.bin/cpio/Makefile
==============================================================================
--- head/usr.bin/cpio/Makefile Tue Sep 11 20:32:57 2018 (r338599)
+++ head/usr.bin/cpio/Makefile Tue Sep 11 20:51:34 2018 (r338600)
@@ -6,7 +6,7 @@ _LIBARCHIVEDIR= ${SRCTOP}/contrib/libarchive
_LIBARCHIVECONFDIR= ${SRCTOP}/lib/libarchive
PROG= bsdcpio
-BSDCPIO_VERSION_STRING= 3.3.2
+BSDCPIO_VERSION_STRING= 3.3.3
.PATH: ${_LIBARCHIVEDIR}/cpio
SRCS= cpio.c cmdline.c
Modified: head/usr.bin/tar/Makefile
==============================================================================
--- head/usr.bin/tar/Makefile Tue Sep 11 20:32:57 2018 (r338599)
+++ head/usr.bin/tar/Makefile Tue Sep 11 20:51:34 2018 (r338600)
@@ -4,7 +4,7 @@
_LIBARCHIVEDIR= ${SRCTOP}/contrib/libarchive
PROG= bsdtar
-BSDTAR_VERSION_STRING= 3.3.2
+BSDTAR_VERSION_STRING= 3.3.3
.PATH: ${_LIBARCHIVEDIR}/tar
SRCS= bsdtar.c \
More information about the svn-src-all
mailing list