Update vendor/libarchive/dist to git 5fe69dd018745a88eecf1f7db40daf12d26f7ed0
libarchive 3.3.3
This commit is contained in:
parent
01ab5f2b03
commit
7ab7abddce
Notes:
svn2git
2020-12-20 02:59:44 +00:00
svn path=/vendor/libarchive/dist/; revision=338519 svn path=/vendor/libarchive/3.3.3/; revision=338520; tag=vendor/libarchive/3.3.3
@ -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/stat.h" HAVE_SYS_STAT_H)
|
||||||
LA_CHECK_INCLUDE_FILE("sys/statfs.h" HAVE_SYS_STATFS_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/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/time.h" HAVE_SYS_TIME_H)
|
||||||
LA_CHECK_INCLUDE_FILE("sys/utime.h" HAVE_SYS_UTIME_H)
|
LA_CHECK_INCLUDE_FILE("sys/utime.h" HAVE_SYS_UTIME_H)
|
||||||
LA_CHECK_INCLUDE_FILE("sys/utsname.h" HAVE_SYS_UTSNAME_H)
|
LA_CHECK_INCLUDE_FILE("sys/utsname.h" HAVE_SYS_UTSNAME_H)
|
||||||
|
10
NEWS
10
NEWS
@ -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
|
Jul 09, 2017: libarchive 3.3.2 released
|
||||||
|
|
||||||
Mar 16, 2017: NFSv4 ACL support for Linux (librichacl)
|
Mar 16, 2017: NFSv4 ACL support for Linux (librichacl)
|
||||||
|
@ -99,6 +99,7 @@ The library also detects and handles any of the following before evaluating the
|
|||||||
* lzma, lzip, and xz compression
|
* lzma, lzip, and xz compression
|
||||||
* lz4 compression
|
* lz4 compression
|
||||||
* lzop compression
|
* lzop compression
|
||||||
|
* zstandard compression
|
||||||
|
|
||||||
The library can create archives in any of the following formats:
|
The library can create archives in any of the following formats:
|
||||||
* POSIX ustar
|
* POSIX ustar
|
||||||
@ -125,6 +126,7 @@ When creating archives, the result can be filtered with any of the following:
|
|||||||
* lzma, lzip, and xz compression
|
* lzma, lzip, and xz compression
|
||||||
* lz4 compression
|
* lz4 compression
|
||||||
* lzop compression
|
* lzop compression
|
||||||
|
* zstandard compression
|
||||||
|
|
||||||
## Notes about the Library Design
|
## Notes about the Library Design
|
||||||
|
|
||||||
@ -159,7 +161,7 @@ questions we are asked about libarchive:
|
|||||||
|
|
||||||
* On read, compression and format are always detected automatically.
|
* 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
|
easy for software using libarchive to transparently handle
|
||||||
any of libarchive's archiving formats.
|
any of libarchive's archiving formats.
|
||||||
|
|
||||||
|
@ -1068,6 +1068,10 @@ typedef uint64_t uintmax_t;
|
|||||||
/* Define to 1 if you have the <sys/stat.h> header file. */
|
/* Define to 1 if you have the <sys/stat.h> header file. */
|
||||||
#cmakedefine HAVE_SYS_STAT_H 1
|
#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. */
|
/* Define to 1 if you have the <sys/time.h> header file. */
|
||||||
#cmakedefine HAVE_SYS_TIME_H 1
|
#cmakedefine HAVE_SYS_TIME_H 1
|
||||||
|
|
||||||
|
@ -1 +1 @@
|
|||||||
3003003dev
|
3003003
|
||||||
|
@ -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 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.
|
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])
|
m4_define([LIBARCHIVE_VERSION_N],[3003003])
|
||||||
|
|
||||||
dnl bsdtar and bsdcpio versioning tracks libarchive
|
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/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/ioctl.h sys/mkdev.h sys/mount.h])
|
||||||
AC_CHECK_HEADERS([sys/param.h sys/poll.h sys/richacl.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([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([time.h unistd.h utime.h wchar.h wctype.h])
|
||||||
AC_CHECK_HEADERS([windows.h])
|
AC_CHECK_HEADERS([windows.h])
|
||||||
|
@ -144,49 +144,79 @@ DEFINE_TEST(test_basic)
|
|||||||
/* File with 10 bytes content. */
|
/* File with 10 bytes content. */
|
||||||
assertMakeFile("file", 0644, "1234567890");
|
assertMakeFile("file", 0644, "1234567890");
|
||||||
fprintf(filelist, "file\n");
|
fprintf(filelist, "file\n");
|
||||||
if (is_LargeInode("file"))
|
if (is_LargeInode("file")) {
|
||||||
strncat(result,
|
strncat(result,
|
||||||
"bsdcpio: file: large inode number truncated: "
|
"bsdcpio: file: large inode number truncated: ",
|
||||||
"Numerical result out of range\n",
|
|
||||||
sizeof(result) - strlen(result) -1);
|
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. */
|
/* hardlink to above file. */
|
||||||
assertMakeHardlink("linkfile", "file");
|
assertMakeHardlink("linkfile", "file");
|
||||||
fprintf(filelist, "linkfile\n");
|
fprintf(filelist, "linkfile\n");
|
||||||
if (is_LargeInode("linkfile"))
|
if (is_LargeInode("linkfile")) {
|
||||||
strncat(result,
|
strncat(result,
|
||||||
"bsdcpio: linkfile: large inode number truncated: "
|
"bsdcpio: linkfile: large inode number truncated: ",
|
||||||
"Numerical result out of range\n",
|
|
||||||
sizeof(result) - strlen(result) -1);
|
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. */
|
/* Symlink to above file. */
|
||||||
if (canSymlink()) {
|
if (canSymlink()) {
|
||||||
assertMakeSymlink("symlink", "file");
|
assertMakeSymlink("symlink", "file");
|
||||||
fprintf(filelist, "symlink\n");
|
fprintf(filelist, "symlink\n");
|
||||||
if (is_LargeInode("symlink"))
|
if (is_LargeInode("symlink")) {
|
||||||
strncat(result,
|
strncat(result,
|
||||||
"bsdcpio: symlink: large inode number truncated: "
|
"bsdcpio: symlink: large inode number truncated: ",
|
||||||
"Numerical result out of range\n",
|
|
||||||
sizeof(result) - strlen(result) -1);
|
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. */
|
/* Another file with different permissions. */
|
||||||
assertMakeFile("file2", 0777, "1234567890");
|
assertMakeFile("file2", 0777, "1234567890");
|
||||||
fprintf(filelist, "file2\n");
|
fprintf(filelist, "file2\n");
|
||||||
if (is_LargeInode("file2"))
|
if (is_LargeInode("file2")) {
|
||||||
strncat(result,
|
strncat(result,
|
||||||
"bsdcpio: file2: large inode number truncated: "
|
"bsdcpio: file2: large inode number truncated: ",
|
||||||
"Numerical result out of range\n",
|
|
||||||
sizeof(result) - strlen(result) -1);
|
sizeof(result) - strlen(result) -1);
|
||||||
|
strncat(result,
|
||||||
|
strerror(ERANGE),
|
||||||
|
sizeof(result) - strlen(result) -1);
|
||||||
|
strncat(result,
|
||||||
|
"\n",
|
||||||
|
sizeof(result) - strlen(result) -1);
|
||||||
|
}
|
||||||
|
|
||||||
/* Directory. */
|
/* Directory. */
|
||||||
assertMakeDir("dir", 0775);
|
assertMakeDir("dir", 0775);
|
||||||
fprintf(filelist, "dir\n");
|
fprintf(filelist, "dir\n");
|
||||||
if (is_LargeInode("dir"))
|
if (is_LargeInode("dir")) {
|
||||||
strncat(result,
|
strncat(result,
|
||||||
"bsdcpio: dir: large inode number truncated: "
|
"bsdcpio: dir: large inode number truncated: ",
|
||||||
"Numerical result out of range\n",
|
|
||||||
sizeof(result) - strlen(result) -1);
|
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);
|
strncat(result, "2 blocks\n", sizeof(result) - strlen(result) -1);
|
||||||
|
|
||||||
/* All done. */
|
/* All done. */
|
||||||
|
@ -124,26 +124,42 @@ DEFINE_TEST(test_format_newc)
|
|||||||
|
|
||||||
/* Setup result message. */
|
/* Setup result message. */
|
||||||
memset(result, 0, sizeof(result));
|
memset(result, 0, sizeof(result));
|
||||||
if (is_LargeInode("file1"))
|
if (is_LargeInode("file1")) {
|
||||||
strncat(result,
|
strncat(result,
|
||||||
"bsdcpio: file1: large inode number truncated: "
|
"bsdcpio: file1: large inode number truncated: ",
|
||||||
"Numerical result out of range\n",
|
|
||||||
sizeof(result) - strlen(result) -1);
|
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,
|
strncat(result,
|
||||||
"bsdcpio: symlink: large inode number truncated: "
|
"bsdcpio: symlink: large inode number truncated: ",
|
||||||
"Numerical result out of range\n",
|
|
||||||
sizeof(result) - strlen(result) -1);
|
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,
|
strncat(result,
|
||||||
"bsdcpio: dir: large inode number truncated: "
|
"bsdcpio: dir: large inode number truncated: ",
|
||||||
"Numerical result out of range\n",
|
|
||||||
sizeof(result) - strlen(result) -1);
|
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,
|
strncat(result,
|
||||||
"bsdcpio: hardlink: large inode number truncated: "
|
"bsdcpio: hardlink: large inode number truncated: ",
|
||||||
"Numerical result out of range\n",
|
|
||||||
sizeof(result) - strlen(result) -1);
|
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: */
|
/* Record some facts about what we just created: */
|
||||||
now = time(NULL); /* They were all created w/in last two seconds. */
|
now = time(NULL); /* They were all created w/in last two seconds. */
|
||||||
|
@ -155,7 +155,7 @@ __LA_DECL int archive_version_number(void);
|
|||||||
/*
|
/*
|
||||||
* Textual name/version of the library, useful for version displays.
|
* 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
|
#define ARCHIVE_VERSION_STRING "libarchive " ARCHIVE_VERSION_ONLY_STRING
|
||||||
__LA_DECL const char * archive_version_string(void);
|
__LA_DECL const char * archive_version_string(void);
|
||||||
|
|
||||||
|
@ -153,7 +153,7 @@ aes_ctr_encrypt_counter(archive_crypto_ctx *ctx)
|
|||||||
CCCryptorStatus r;
|
CCCryptorStatus r;
|
||||||
|
|
||||||
r = CCCryptorReset(ref, NULL);
|
r = CCCryptorReset(ref, NULL);
|
||||||
if (r != kCCSuccess)
|
if (r != kCCSuccess && r != kCCUnimplemented)
|
||||||
return -1;
|
return -1;
|
||||||
r = CCCryptorUpdate(ref, ctx->nonce, AES_BLOCK_SIZE, ctx->encr_buf,
|
r = CCCryptorUpdate(ref, ctx->nonce, AES_BLOCK_SIZE, ctx->encr_buf,
|
||||||
AES_BLOCK_SIZE, NULL);
|
AES_BLOCK_SIZE, NULL);
|
||||||
|
@ -57,6 +57,9 @@ __RCSID("$NetBSD$");
|
|||||||
#ifdef HAVE_SYS_STAT_H
|
#ifdef HAVE_SYS_STAT_H
|
||||||
#include <sys/stat.h>
|
#include <sys/stat.h>
|
||||||
#endif
|
#endif
|
||||||
|
#ifdef HAVE_SYS_SYSMACROS_H
|
||||||
|
#include <sys/sysmacros.h>
|
||||||
|
#endif
|
||||||
#ifdef HAVE_UNISTD_H
|
#ifdef HAVE_UNISTD_H
|
||||||
#include <unistd.h>
|
#include <unistd.h>
|
||||||
#endif
|
#endif
|
||||||
|
Loading…
Reference in New Issue
Block a user