Commit Graph

61 Commits

Author SHA1 Message Date
Martin Matuska
cae1856f62 Update vendor/libarchive to git a04b5adede4022dd593af76cb2fc2e96cb34df91
Vendor changes (FreeBSD-related):
- add missing file from previous merge
- encapsulate platform ACL code in an #ifdef
2017-03-28 10:34:44 +00:00
Martin Matuska
782ceec6db Update vendor/libarchive to git 13b0ed2ba504389c363cd302041fe10afa1837ad
Vendor changes (FreeBSD-related):
- constify variables in several places
- unify platform ACL code in a single source file
- fix unused variable if compiling on FreeBSD without NFSv4 ACL support
2017-03-28 09:58:54 +00:00
Martin Matuska
854870e4b3 Update vendor/libarchive to git e92cb619661b5b52da63867305442e22892a503d
Vendor changes (FreeBSD-related):
- store extended attributes with extattr_set_link() if no fd is provided
- add extended attribute tests to libarchive and bsdtar
- support the UF_HIDDEN file flag
2017-03-23 23:44:31 +00:00
Martin Matuska
22d7a1bf74 Update vendor/libarchive to git 3e37a9e051bb7674115ca1e262551a070a92283a
Vendor changes:
  Fix type in archive_read_open(3)
  Always use extern keyword for shared constants in archive_acl_maps.h
2017-03-20 11:55:03 +00:00
Martin Matuska
4a7f683434 Update vendor/libarchive to git 5881c9021a85668bd945593f5ba43a0d22c53d71
Vendor changes (FreeBSD-related):
  Break ACL read/write code into platform-specific source files

Vendor bugfixes (FreeBSD-related):
  PR 867 (bsdcpio): show numeric uid/gid when names are not found
  PR 870 (seekable zip): accept files with valid ZIP64 EOCD headers
  PR 880 (pax): Fix handling of "size" pax header keyword
  PR 887 (crypto): Discard 3072 bytes instead of 1024 of first keystream
  OSS-Fuzz issue 806 (mtree): rework mtree_atol10 integer parser
  Unbreak static dependency on libbz2
2017-03-20 11:12:31 +00:00
Martin Matuska
086ca70a28 Update vendor/libarchive to git f4b9b3fe89b4acfef5e3a2283d3bc542315ddb57
Fixes for test_options_fflags tar test
2017-03-02 22:46:03 +00:00
Martin Matuska
46ab065716 Update vendor/libarchive to git a15c7f7b496ba4cefbcaf6f8ac637db4f3009a58
Documentation, style, test suite changes and typo fixes.
New bsdtar tests for --acls and --fflags options.
2017-03-02 21:13:25 +00:00
Martin Matuska
4b729aff5b Update vendor/libarchive to git d6b1bb9f7ea7bc153b7356e8e345c9e48005821a
Release 3.3.1

Notable vendor changes:
  PR #501: improvements in ACL path handling
  PR #724: fix hang when reading malformed cpio files
  PR #864: fix out of bounds read with malformed GNU tar archives
  Test suite improvements

New options to bsdtar that enable or disable reading and/or writing of:
  Access Control Lists (--acls, --no-acls)
  Extended file flags (--fflags, --no-fflags)
  Extended attributes (--xattrs, --no-xattrs)
2017-03-02 21:02:17 +00:00
Martin Matuska
b2ee1181b4 Update vendor/libarchive to git 0edabbad1f44641c64fe9d0cbaed27ed93ab38c2
Vendor changes:
Make SCHILY.acl.ace header more compact (NFSv4 ACLs)

Vendor bugfixes:
zip reader integer parsing fix (OSS-Fuzz 556)
spelling fixes (issue #863)
2017-02-15 20:00:36 +00:00
Martin Matuska
638a0d360a Update vendor/libarchive to git b3bd0b81a1a06909f766dea8be4072ef81de62b8
Vendor bugfixes:
cpio reader sanity fix (OSS-Fuzz 504)
WARC reader sanity fixes (OSS-Fuzz 511, 526, 532, 552)
mtree reader time parsing fix (OSS-Fuzz 538)
XAR reader memleak fix (OSS-Fuzz 551)
2017-02-10 23:12:38 +00:00
Martin Matuska
91360634ec Update vendor/libarchive to git d77b577b2d5aa259fca06313c4940e1e61ab1e0e
Vendor changes (relevant to FreeBSD):
- bugfixes, improvemens and optimizations in ACL code
- NFSv4 ACLs can now be extracted from Solaris tar archives

Security fixes:
- cab reader: endless loop when parsing MSZIP signature (OSS-Fuzz 335)
- LHA reader: heap-buffer-overflow in lha_read_file_header_1() (CVE-2017-5601)
- LZ4 reader: null-pointer dereference in lz4_filter_read_legacy_stream()
  (OSS-Fuzz 453)
- mtree reader: heap-buffer-overflow in detect_form() (OSS-Fuzz 421, 443)
- WARC reader: heap-buffer-overflow in xstrpisotime() (OSS-Fuzz 382, 458)

Memory leak fixes:
- ACL support: free memory allocated by acl_get_qualifier()
- disk writer: missing free in create_filesystem_object()
- file reader: fd leak (Coverity 1016755)
- gnutar writer: fix free in archive_write_gnutar_header() (Coverity 1016752)
- iso 9660 reader: missing free in parse_file_info() (part. Coverity 1016754)
- program reader: missing free in __archive_read_program()
- program writer: missing free in __archive_write_program_free()
- xar reader: missing free in xar_cleanup()
- xar reader: missing frees in expat_xmlattr_setup() (Coverity 1229979-1229981)
- xar writer: missing free in file_free()
- zip reader: missing free in zip_read_locazip_read_local_file_header()
2017-02-02 00:20:18 +00:00
Martin Matuska
2a59734ec2 Update vendor/libarchive to git 22f2d190639e6bd496a3b82f70c01fba0d38b40a
Vendor changes:
#691: Support for SCHILY.xattr extended attributes
#854: Spelling fixes

Multiple fixes in ACL code:
  - prefer acl_set_fd_np() to acl_set_fd()
  - if acl_set_fd_np() fails, do no fallback to acl_set_file()
  - do not warn if trying to write ACLs to a filesystem without ACL support
  - fix id handling in archive_acl_(from_to)_text*() for NFSv4 ACLs
2017-01-10 21:18:32 +00:00
Martin Matuska
36dffdb4e5 Update vendor/libarchive to git ab94a813b0f64cbc1bcb952bf55424a2d9c7f1d9
Vendor bugfixes:
Use __LA_DEPRECATED macro with functions deprecated in 379867e (r310796)
2016-12-30 23:00:00 +00:00
Martin Matuska
79b08f16f5 Update vendor/libarchive to git 2a2488a81599f9cd065a8254b16a6fd48d81c3b4
Vendor bugfixes:
PR #843: Fix memory leak of struct archive_entry in cpio/cpio.c
PR #851: Spelling fixes
Fix two protoypes in manual page archive_read_disk.3
2016-12-30 01:34:06 +00:00
Martin Matuska
6802f55462 Update vendor/libarchive to git e8a9de5eaf3b79fc3d990d056343bb52c51c5ba4
Fix style typo in tar.5
2016-12-30 01:31:03 +00:00
Martin Matuska
dc8e86c53b Update vendor/libarchive to git to 379867ecb330b3a952fb7bfa7bffb7bbd5547205
Vendor changes:
PR #771: Add NFSv4 ACL support to pax and restricted pax
2016-12-30 01:27:27 +00:00
Martin Matuska
cda329a1ca Update vendor/libarchive to git to 42a3408ac7df1e69bea9ea12b72e14f59f7400c0
Vendor bugfixes:

PR 844: Coverity bug fixes in tests
PR 846: Spelling fixes
PR 850: Fix issues with reading certain jar files
PR 826: OpenSSL 1.1 support
PR 830, 831, 833: Spelling fixes
OSS-Fuzz 227, 230, 239: Fix possible memory leak in archive_read_free()
OSS-Fuzz 237: Fix heap buffer overflow when reading invalid ar archives
OSS-Fuzz 286: Bugfix in archive_strncat_l()
2016-12-27 00:51:53 +00:00
Martin Matuska
fb179c62da Add vendor/libarchive/dist files missing in r310115 2016-12-17 02:01:05 +00:00
Martin Matuska
8e86d3576b Update vendor/libarchive to git to 30528ed7a9f479f1c363ee8cfa1c5eb4c7d9be10
Vendor bugfixes:

PR 826: OpenSSL 1.1 support
PR 830, 831, 833: Spelling fixes
OSS-Fuzz 227, 230, 239: Fix possible memory leak in archive_read_free()
OSS-Fuzz 237: Fix heap buffer overflow when reading invalid ar archives
2016-12-15 15:35:53 +00:00
Enji Cooper
f428c3b114 Merge PR to address libarchive/test coverity issues
Obtained from:	libarchive (f9e3de49fb294901374e0c8c6c2ceaeea7b6d6c0)
2016-12-12 02:12:51 +00:00
Enji Cooper
48de454141 Merge PR to address tar/test coverity issues
Obtained from:	libarchive (fd0ea220635939ffe4b9ffb5cacaaa526a25b5ae)
2016-12-12 02:11:30 +00:00
Enji Cooper
373c71780b Free p (the memory allocated via slurpfile) when done with the contents
Reported by:	Coverity
CID:	1331631, 1331632, 1331633, 1331646

Obtained from: libarchive (ebe29c0ec3b1aaa424df9cf884721c6018c676f4)
2016-12-12 02:09:31 +00:00
Martin Matuska
36f3c6516a Update vendor/libarchive to git ddb3954bfdb9a0a98d50fb1c50cbecb603d9adf0
Vendor bugfixes:

libarchive #831:
  Spelling fixes
libarchive #832:
  Relax sanity checks of number fields in tar header even more
OSS-Fuzz #16:
  Fix possible hang in uudecode_filter_read()
OSS-Fuzz #220:
  Reject an 'ar' filename table larger than 1GB or a filename larger
  than 1MB.
2016-12-06 00:35:20 +00:00
Martin Matuska
640b179f4e Update vendor/libarchive to git 53d73345410d69e68171f05facaf4523e38e72bb
Vendor bugfixes:
Fix for heap-buffer-overflow in archive_le16dec()
Fix for heap-buffer-overflow in uudecode_bidder_bid()
Reworked fix for compatibility with archives created by Perl Archive::Tar
2016-12-02 09:26:51 +00:00
Martin Matuska
181b8217c9 Update vendor/libarchive to git 2d2b3e928605f795515b03f060fd638c265b0778
Small improvements, style fixes, bugfixes.

Important vendor bugfixes:
Restore compatibility with Perl Archive::Tar that was broken with #825
2016-12-01 15:39:33 +00:00
Martin Matuska
35837ea989 Update vendor/libarchive to git 256e52f073765a4ddad1e86fd4d0eda2a18147bf
Important vendor bugfixes (relevant to FreeBSD):
#821: tar -P cannot extract hardlinks through symlinks
#825: Add sanity check of tar "uid, "gid" and "mtime" fields
2016-11-29 21:53:16 +00:00
Martin Matuska
930550a55e Update vendor/libarchive to git 629358182b04d7de2316bbd29708c58ddf797fd2
Libarchive 3.2.2
2016-10-24 13:51:45 +00:00
Martin Matuska
62583e4b79 Update vendor/libarchive to git e3bdbbf3475c3abf264e563c753a20972095665e
Important vendor bugfixes (relevant to FreeBSD):
#801: FreeBSD Coverity report: resource leak in libarchive/tar/test/main.c
2016-10-13 11:34:23 +00:00
Martin Matuska
adb01b286d Update vendor/libarchive to git 024be27d1b299c030e8841bed3002ee07ba9eedc
Important vendor bugfixes (relevant to FreeBSD):
#747: Out of bounds read in mtree parser
#761: heap-based buffer overflow in read_Header (7-zip)
#784: Invalid file on bsdtar command line results in internal errors (1)

PR:		213092 (1)
Obtained from:	https://github.com/libarchive/libarchive
2016-10-04 11:44:21 +00:00
Martin Matuska
282f8bd696 Update vendor/libarchive to git c31379acc9009f5a3bafcfa33d7672a24b3f51f3
Vendor issues fixed (FreeBSD):
PR #778: ACL error handling
Issue #745: Symlink check prefix optimization is too aggressive
Issue #746: Hard links with data can evade sandboxing restrictions

This update fixes the vulnerability #3 and vulnerability #4 as reported in
the "non-cryptanalytic attacks against FreeBSD update components".
https://gist.github.com/anonymous/e48209b03f1dd9625a992717e7b89c4f

Vulnerability #2 has already been fixed in r304866
2016-09-14 20:32:34 +00:00
Martin Matuska
f4caca1f04 Update vendor/libarchive to git b4099917d6893ed77af24caff1156e044ebd4fa5
Vendor issues fixed:
PR #777: Multiple bugfixes for setup_acls()

This fixes a bug that caused ACLs not to be read properly for files and
directories inside subdirectories and as a result not being stored in tar
archives.
2016-09-05 15:20:55 +00:00
Martin Matuska
5c8a8484e3 Update vendor/libarchive to git 299c6bf136b9bc328b498505f24f87e732b73ff6
Vendor issues fixed:
Issue #731: Reject tar entries >= INT64_MAX
Issue #744 (part of Issue #743): Enforce sandbox with very long pathnames
Issue #748: Zip decompression failure with highly-compressed data
Issue #767: Buffer overflow printing a filename
Issue #770: Be more careful about extra_length
2016-08-26 22:02:37 +00:00
Martin Matuska
5b0ba62993 Update vendor/libarchive to git 6a0d970f70102fe50ee9f1e51a2e4c048985e616
Vendor issues fixed:

Issue #744: Very long pathnames evade symlink checks
Issue #748: libarchive can compress, but cannot decompress zip some files
PR #750: ustar: fix out of bounds read on empty string ("") filename
PR #755: fix use of acl_get_flagset_np() on FreeBSD
2016-08-13 21:20:06 +00:00
Martin Matuska
50fc3a26ef Update vendor/libarchive to git 084ef320b8fc62e3fd3acb762fe6175d48d7829c
Vendor issues fixed:
#686: Correctly grow buffer in archive_string_append_from_wcs_in_codepage()
FreeBSD PR #204157: Fix test on filesystems without birthtime support

PR:	204157
2016-06-29 07:00:15 +00:00
Martin Matuska
a34769f8e4 Update vendor/libarchive to git f502a81fcd7c331204bf53cc40cbf966ebb28a42 2016-06-21 15:18:22 +00:00
Martin Matuska
3786dd4a5c Add two missing test files in r302037 2016-06-21 00:00:05 +00:00
Martin Matuska
a53ba8b978 Update vendor/libarchive to git 139d0576b51a253732a5ab1f66805dffbf8b00af
tag v3.2.1

Fixed vendor issues:
Issue 521: Properly check reading from lzss decompression buffer
Issue 717: Fix integer overflow when computing location of volume
           descriptor
Issue 718: Security fix TALOS-CAN-152
Issue 719: Security fix TALOS-CAN-154

Security:	TALOS-CAN-152, TALOS-CAN-154
2016-06-20 23:55:33 +00:00
Martin Matuska
dc919cebaf Update vendor/libarchive to git d85976e7ff4a062e1de6e04dab7bb78e3344768f
Fixed vendor issues:
Issue 553: Fix broken decryption for ZIP files
Issue 657: Allow up to 8k for the test root directory name
Issue 682: Correctly write gnutar filenames of exactly 512 bytes
Issue 708: tar should fail if a named input file is missing
PR 715: Fix libarchive/archive_read_support_format_mtree.c:1388:11:
        error: array subscript is above array bounds
2016-06-18 08:25:31 +00:00
Martin Matuska
8eb6639196 Update vendor/libarchvie to git commit 860ec63
Integrates my pull request #709
2016-05-16 04:47:32 +00:00
Martin Matuska
cf8cc1c884 Update vendor/libarchive/dist to git commit f48d99b
Integrates my pull requests #701, #702 and #703
2016-05-12 16:03:55 +00:00
Martin Matuska
4e579f6c94 Update vendor/libarchive/dist to git commit 61c56e5 (post 3.2.0) 2016-05-11 10:19:44 +00:00
Martin Matuska
8c8f03ca5b Keep full libarchive distribution in vendor branch (prep for 3.2.0 update) 2016-05-11 10:10:11 +00:00
Martin Matuska
43341e7cf4 Trim libarchive/dist using FREEBSD-Xlist 2016-05-10 21:12:32 +00:00
Xin LI
c5f9310ca9 Apply upstream commit 6e06b1c8 (partial, by kientzle):
Fix a potential crash issue discovered by Alexander Cherepanov:
It seems bsdtar automatically handles stacked compression. This is a
nice feature but it could be problematic when it's completely
unlimited.  Most clearly it's illustrated with quines:

$ curl -sRO http://www.maximumcompression.com/selfgz.gz
$ (ulimit -v 10000000 && bsdtar -tvf selfgz.gz)
bsdtar: Error opening archive: Can't allocate data for gzip decompression

Without ulimit, bsdtar will eat all available memory. This could also
be a problem for other applications using libarchive.
2016-02-23 07:04:54 +00:00
Bryan Drewery
25d3ca0980 Apply upstream changeset bf4f6ec64e:
Fix issue 356: properly skip a sparse file entry in a tar file.
2015-07-28 17:48:34 +00:00
Bryan Drewery
34f1f5d95e Apply upstream changeset fa9e61:
Fix --one-file-system to include the directory encountered rather than
excluding it.
2015-07-28 17:20:35 +00:00
Xin LI
5361c268d4 Apply upstream changeset 24f5de6:
Set a proper error message if we hit end-of-file when
trying to read a cpio header.

Suggested by Issue #395, although the actual problem there
seems to have been the same as Issue #394.
2015-05-14 21:39:03 +00:00
Xin LI
95b982db7d Apply upstream changeset e6c9668:
Add a check to archive_read_filter_consume to reject any
attempts to move the file pointer by a negative amount.

Note:  Either this or commit 3865cf2 provides a fix for
Issue 394.
2015-05-14 21:34:20 +00:00
Xin LI
c792c52ca1 Apply upstream changeset 3865cf2:
Issue 394: Segfault when reading malformed old-style cpio archives
Root cause here was an implicit cast that resulted in
reading very large file sizes as negative numbers.
2015-05-14 21:33:33 +00:00
Martin Matuska
48ff71b692 Delete files accidentially left over in r248590 (libarchive 3.1.2) 2013-03-21 21:51:46 +00:00