[Midnightbsd-cvs] src [11136] trunk/contrib/libarchive: fix merge issues

laffer1 at midnightbsd.org laffer1 at midnightbsd.org
Tue Jun 19 17:38:00 EDT 2018


Revision: 11136
          http://svnweb.midnightbsd.org/src/?rev=11136
Author:   laffer1
Date:     2018-06-19 17:37:44 -0400 (Tue, 19 Jun 2018)
Log Message:
-----------
fix merge issues

Modified Paths:
--------------
    trunk/contrib/libarchive/cat/bsdcat.1
    trunk/contrib/libarchive/cat/bsdcat.c
    trunk/contrib/libarchive/cat/bsdcat_platform.h
    trunk/contrib/libarchive/cat/cmdline.c
    trunk/contrib/libarchive/cat/test/test.h
    trunk/contrib/libarchive/cpio/bsdcpio.1
    trunk/contrib/libarchive/cpio/cmdline.c
    trunk/contrib/libarchive/cpio/cpio.c
    trunk/contrib/libarchive/cpio/cpio.h
    trunk/contrib/libarchive/cpio/cpio_platform.h
    trunk/contrib/libarchive/cpio/test/test.h
    trunk/contrib/libarchive/cpio/test/test_0.c
    trunk/contrib/libarchive/cpio/test/test_basic.c
    trunk/contrib/libarchive/cpio/test/test_cmdline.c
    trunk/contrib/libarchive/cpio/test/test_extract_cpio_lz4.c
    trunk/contrib/libarchive/cpio/test/test_format_newc.c
    trunk/contrib/libarchive/cpio/test/test_gcpio_compat.c
    trunk/contrib/libarchive/cpio/test/test_gcpio_compat_ref.bin.uu
    trunk/contrib/libarchive/cpio/test/test_gcpio_compat_ref.crc.uu
    trunk/contrib/libarchive/cpio/test/test_gcpio_compat_ref.newc.uu
    trunk/contrib/libarchive/cpio/test/test_gcpio_compat_ref.ustar.uu
    trunk/contrib/libarchive/cpio/test/test_missing_file.c
    trunk/contrib/libarchive/cpio/test/test_option_B_upper.c
    trunk/contrib/libarchive/cpio/test/test_option_C_upper.c
    trunk/contrib/libarchive/cpio/test/test_option_J_upper.c
    trunk/contrib/libarchive/cpio/test/test_option_L_upper.c
    trunk/contrib/libarchive/cpio/test/test_option_Z_upper.c
    trunk/contrib/libarchive/cpio/test/test_option_a.c
    trunk/contrib/libarchive/cpio/test/test_option_c.c
    trunk/contrib/libarchive/cpio/test/test_option_d.c
    trunk/contrib/libarchive/cpio/test/test_option_f.c
    trunk/contrib/libarchive/cpio/test/test_option_f.cpio.uu
    trunk/contrib/libarchive/cpio/test/test_option_help.c
    trunk/contrib/libarchive/cpio/test/test_option_l.c
    trunk/contrib/libarchive/cpio/test/test_option_lz4.c
    trunk/contrib/libarchive/cpio/test/test_option_lzma.c
    trunk/contrib/libarchive/cpio/test/test_option_m.c
    trunk/contrib/libarchive/cpio/test/test_option_m.cpio.uu
    trunk/contrib/libarchive/cpio/test/test_option_passphrase.c
    trunk/contrib/libarchive/cpio/test/test_option_t.c
    trunk/contrib/libarchive/cpio/test/test_option_t.cpio.uu
    trunk/contrib/libarchive/cpio/test/test_option_t.stdout.uu
    trunk/contrib/libarchive/cpio/test/test_option_tv.stdout.uu
    trunk/contrib/libarchive/cpio/test/test_option_u.c
    trunk/contrib/libarchive/cpio/test/test_option_y.c
    trunk/contrib/libarchive/cpio/test/test_option_z.c
    trunk/contrib/libarchive/cpio/test/test_owner_parse.c
    trunk/contrib/libarchive/cpio/test/test_passthrough_dotdot.c
    trunk/contrib/libarchive/cpio/test/test_passthrough_reverse.c
    trunk/contrib/libarchive/libarchive/archive.h
    trunk/contrib/libarchive/libarchive/archive_acl.c
    trunk/contrib/libarchive/libarchive/archive_check_magic.c
    trunk/contrib/libarchive/libarchive/archive_cmdline.c
    trunk/contrib/libarchive/libarchive/archive_crc32.h
    trunk/contrib/libarchive/libarchive/archive_cryptor_private.h
    trunk/contrib/libarchive/libarchive/archive_disk_acl_freebsd.c
    trunk/contrib/libarchive/libarchive/archive_endian.h
    trunk/contrib/libarchive/libarchive/archive_entry.3
    trunk/contrib/libarchive/libarchive/archive_entry.c
    trunk/contrib/libarchive/libarchive/archive_entry.h
    trunk/contrib/libarchive/libarchive/archive_entry_copy_stat.c
    trunk/contrib/libarchive/libarchive/archive_entry_link_resolver.c
    trunk/contrib/libarchive/libarchive/archive_entry_private.h
    trunk/contrib/libarchive/libarchive/archive_entry_stat.c
    trunk/contrib/libarchive/libarchive/archive_entry_strmode.c
    trunk/contrib/libarchive/libarchive/archive_entry_xattr.c
    trunk/contrib/libarchive/libarchive/archive_getdate.h
    trunk/contrib/libarchive/libarchive/archive_match.c
    trunk/contrib/libarchive/libarchive/archive_platform.h
    trunk/contrib/libarchive/libarchive/archive_platform_acl.h
    trunk/contrib/libarchive/libarchive/archive_platform_xattr.h
    trunk/contrib/libarchive/libarchive/archive_ppmd7.c
    trunk/contrib/libarchive/libarchive/archive_ppmd7_private.h
    trunk/contrib/libarchive/libarchive/archive_ppmd_private.h
    trunk/contrib/libarchive/libarchive/archive_private.h
    trunk/contrib/libarchive/libarchive/archive_random.c
    trunk/contrib/libarchive/libarchive/archive_read.3
    trunk/contrib/libarchive/libarchive/archive_read.c
    trunk/contrib/libarchive/libarchive/archive_read_add_passphrase.3
    trunk/contrib/libarchive/libarchive/archive_read_add_passphrase.c
    trunk/contrib/libarchive/libarchive/archive_read_append_filter.c
    trunk/contrib/libarchive/libarchive/archive_read_data_into_fd.c
    trunk/contrib/libarchive/libarchive/archive_read_disk.3
    trunk/contrib/libarchive/libarchive/archive_read_disk_entry_from_file.c
    trunk/contrib/libarchive/libarchive/archive_read_disk_posix.c
    trunk/contrib/libarchive/libarchive/archive_read_disk_private.h
    trunk/contrib/libarchive/libarchive/archive_read_disk_set_standard_lookup.c
    trunk/contrib/libarchive/libarchive/archive_read_extract.c
    trunk/contrib/libarchive/libarchive/archive_read_extract2.c
    trunk/contrib/libarchive/libarchive/archive_read_filter.3
    trunk/contrib/libarchive/libarchive/archive_read_open_fd.c
    trunk/contrib/libarchive/libarchive/archive_read_open_file.c
    trunk/contrib/libarchive/libarchive/archive_read_open_filename.c
    trunk/contrib/libarchive/libarchive/archive_read_open_memory.c
    trunk/contrib/libarchive/libarchive/archive_read_private.h
    trunk/contrib/libarchive/libarchive/archive_read_support_filter_all.c
    trunk/contrib/libarchive/libarchive/archive_read_support_filter_lz4.c
    trunk/contrib/libarchive/libarchive/archive_read_support_format_7zip.c
    trunk/contrib/libarchive/libarchive/archive_read_support_format_all.c
    trunk/contrib/libarchive/libarchive/archive_read_support_format_ar.c
    trunk/contrib/libarchive/libarchive/archive_read_support_format_cpio.c
    trunk/contrib/libarchive/libarchive/archive_read_support_format_empty.c
    trunk/contrib/libarchive/libarchive/archive_read_support_format_iso9660.c
    trunk/contrib/libarchive/libarchive/archive_read_support_format_lha.c
    trunk/contrib/libarchive/libarchive/archive_read_support_format_mtree.c
    trunk/contrib/libarchive/libarchive/archive_read_support_format_rar.c
    trunk/contrib/libarchive/libarchive/archive_read_support_format_raw.c
    trunk/contrib/libarchive/libarchive/archive_read_support_format_tar.c
    trunk/contrib/libarchive/libarchive/archive_read_support_format_warc.c
    trunk/contrib/libarchive/libarchive/archive_read_support_format_xar.c
    trunk/contrib/libarchive/libarchive/archive_read_support_format_zip.c
    trunk/contrib/libarchive/libarchive/archive_string.c
    trunk/contrib/libarchive/libarchive/archive_string.h
    trunk/contrib/libarchive/libarchive/archive_string_sprintf.c
    trunk/contrib/libarchive/libarchive/archive_util.3
    trunk/contrib/libarchive/libarchive/archive_util.c
    trunk/contrib/libarchive/libarchive/archive_version_details.c
    trunk/contrib/libarchive/libarchive/archive_virtual.c
    trunk/contrib/libarchive/libarchive/archive_write.3
    trunk/contrib/libarchive/libarchive/archive_write.c
    trunk/contrib/libarchive/libarchive/archive_write_add_filter.c
    trunk/contrib/libarchive/libarchive/archive_write_add_filter_by_name.c
    trunk/contrib/libarchive/libarchive/archive_write_add_filter_lz4.c
    trunk/contrib/libarchive/libarchive/archive_write_disk.3
    trunk/contrib/libarchive/libarchive/archive_write_disk_posix.c
    trunk/contrib/libarchive/libarchive/archive_write_disk_private.h
    trunk/contrib/libarchive/libarchive/archive_write_disk_set_standard_lookup.c
    trunk/contrib/libarchive/libarchive/archive_write_filter.3
    trunk/contrib/libarchive/libarchive/archive_write_open_fd.c
    trunk/contrib/libarchive/libarchive/archive_write_open_file.c
    trunk/contrib/libarchive/libarchive/archive_write_open_filename.c
    trunk/contrib/libarchive/libarchive/archive_write_open_memory.c
    trunk/contrib/libarchive/libarchive/archive_write_private.h
    trunk/contrib/libarchive/libarchive/archive_write_set_format.c
    trunk/contrib/libarchive/libarchive/archive_write_set_format_7zip.c
    trunk/contrib/libarchive/libarchive/archive_write_set_format_ar.c
    trunk/contrib/libarchive/libarchive/archive_write_set_format_by_name.c
    trunk/contrib/libarchive/libarchive/archive_write_set_format_cpio.c
    trunk/contrib/libarchive/libarchive/archive_write_set_format_cpio_newc.c
    trunk/contrib/libarchive/libarchive/archive_write_set_format_filter_by_ext.c
    trunk/contrib/libarchive/libarchive/archive_write_set_format_mtree.c
    trunk/contrib/libarchive/libarchive/archive_write_set_format_pax.c
    trunk/contrib/libarchive/libarchive/archive_write_set_format_shar.c
    trunk/contrib/libarchive/libarchive/archive_write_set_format_ustar.c
    trunk/contrib/libarchive/libarchive/archive_write_set_format_warc.c
    trunk/contrib/libarchive/libarchive/archive_write_set_format_zip.c
    trunk/contrib/libarchive/libarchive/archive_write_set_passphrase.3
    trunk/contrib/libarchive/libarchive/archive_write_set_passphrase.c
    trunk/contrib/libarchive/libarchive/cpio.5
    trunk/contrib/libarchive/libarchive/filter_fork.h
    trunk/contrib/libarchive/libarchive/libarchive-formats.5
    trunk/contrib/libarchive/libarchive/libarchive.3
    trunk/contrib/libarchive/libarchive/libarchive_internals.3
    trunk/contrib/libarchive/libarchive/tar.5
    trunk/contrib/libarchive/libarchive/test/README
    trunk/contrib/libarchive/libarchive/test/main.c
    trunk/contrib/libarchive/libarchive/test/read_open_memory.c
    trunk/contrib/libarchive/libarchive/test/test.h
    trunk/contrib/libarchive/libarchive/test/test_acl_pax.c
    trunk/contrib/libarchive/libarchive/test/test_acl_platform_nfs4.c
    trunk/contrib/libarchive/libarchive/test/test_acl_text.c
    trunk/contrib/libarchive/libarchive/test/test_archive_api_feature.c
    trunk/contrib/libarchive/libarchive/test/test_archive_read_add_passphrase.c
    trunk/contrib/libarchive/libarchive/test/test_archive_write_add_filter_by_name.c
    trunk/contrib/libarchive/libarchive/test/test_archive_write_set_format_filter_by_ext.c
    trunk/contrib/libarchive/libarchive/test/test_archive_write_set_passphrase.c
    trunk/contrib/libarchive/libarchive/test/test_bad_fd.c
    trunk/contrib/libarchive/libarchive/test/test_compat_bzip2.c
    trunk/contrib/libarchive/libarchive/test/test_compat_bzip2_1.tbz.uu
    trunk/contrib/libarchive/libarchive/test/test_compat_bzip2_2.tbz.uu
    trunk/contrib/libarchive/libarchive/test/test_compat_cpio.c
    trunk/contrib/libarchive/libarchive/test/test_compat_cpio_1.cpio.uu
    trunk/contrib/libarchive/libarchive/test/test_compat_gtar.c
    trunk/contrib/libarchive/libarchive/test/test_compat_gtar_1.tar.uu
    trunk/contrib/libarchive/libarchive/test/test_compat_gzip.c
    trunk/contrib/libarchive/libarchive/test/test_compat_gzip_1.tgz.uu
    trunk/contrib/libarchive/libarchive/test/test_compat_gzip_2.tgz.uu
    trunk/contrib/libarchive/libarchive/test/test_compat_lz4.c
    trunk/contrib/libarchive/libarchive/test/test_compat_lzma.c
    trunk/contrib/libarchive/libarchive/test/test_compat_lzma_1.tlz.uu
    trunk/contrib/libarchive/libarchive/test/test_compat_lzma_2.tlz.uu
    trunk/contrib/libarchive/libarchive/test/test_compat_lzma_3.tlz.uu
    trunk/contrib/libarchive/libarchive/test/test_compat_solaris_tar_acl.c
    trunk/contrib/libarchive/libarchive/test/test_compat_star_acl.c
    trunk/contrib/libarchive/libarchive/test/test_compat_tar_hardlink.c
    trunk/contrib/libarchive/libarchive/test/test_compat_tar_hardlink_1.tar.uu
    trunk/contrib/libarchive/libarchive/test/test_compat_uudecode_large.c
    trunk/contrib/libarchive/libarchive/test/test_compat_xz.c
    trunk/contrib/libarchive/libarchive/test/test_compat_xz_1.txz.uu
    trunk/contrib/libarchive/libarchive/test/test_compat_zip.c
    trunk/contrib/libarchive/libarchive/test/test_compat_zip_1.zip.uu
    trunk/contrib/libarchive/libarchive/test/test_empty_write.c
    trunk/contrib/libarchive/libarchive/test/test_entry.c
    trunk/contrib/libarchive/libarchive/test/test_entry_strmode.c
    trunk/contrib/libarchive/libarchive/test/test_extattr_freebsd.c
    trunk/contrib/libarchive/libarchive/test/test_fuzz.c
    trunk/contrib/libarchive/libarchive/test/test_fuzz_1.iso.Z.uu
    trunk/contrib/libarchive/libarchive/test/test_link_resolver.c
    trunk/contrib/libarchive/libarchive/test/test_open_failure.c
    trunk/contrib/libarchive/libarchive/test/test_open_fd.c
    trunk/contrib/libarchive/libarchive/test/test_open_file.c
    trunk/contrib/libarchive/libarchive/test/test_open_filename.c
    trunk/contrib/libarchive/libarchive/test/test_pax_filename_encoding.c
    trunk/contrib/libarchive/libarchive/test/test_pax_filename_encoding.tar.uu
    trunk/contrib/libarchive/libarchive/test/test_read_data_large.c
    trunk/contrib/libarchive/libarchive/test/test_read_disk.c
    trunk/contrib/libarchive/libarchive/test/test_read_disk_entry_from_file.c
    trunk/contrib/libarchive/libarchive/test/test_read_extract.c
    trunk/contrib/libarchive/libarchive/test/test_read_file_nonexistent.c
    trunk/contrib/libarchive/libarchive/test/test_read_format_7zip_malformed.c
    trunk/contrib/libarchive/libarchive/test/test_read_format_ar.ar.uu
    trunk/contrib/libarchive/libarchive/test/test_read_format_ar.c
    trunk/contrib/libarchive/libarchive/test/test_read_format_cpio_bin.c
    trunk/contrib/libarchive/libarchive/test/test_read_format_cpio_bin_Z.c
    trunk/contrib/libarchive/libarchive/test/test_read_format_cpio_bin_be.c
    trunk/contrib/libarchive/libarchive/test/test_read_format_cpio_bin_be.cpio.uu
    trunk/contrib/libarchive/libarchive/test/test_read_format_cpio_bin_bz2.c
    trunk/contrib/libarchive/libarchive/test/test_read_format_cpio_bin_gz.c
    trunk/contrib/libarchive/libarchive/test/test_read_format_cpio_bin_le.c
    trunk/contrib/libarchive/libarchive/test/test_read_format_cpio_bin_lzma.c
    trunk/contrib/libarchive/libarchive/test/test_read_format_cpio_bin_xz.c
    trunk/contrib/libarchive/libarchive/test/test_read_format_cpio_odc.c
    trunk/contrib/libarchive/libarchive/test/test_read_format_cpio_svr4_gzip.c
    trunk/contrib/libarchive/libarchive/test/test_read_format_cpio_svr4c_Z.c
    trunk/contrib/libarchive/libarchive/test/test_read_format_empty.c
    trunk/contrib/libarchive/libarchive/test/test_read_format_gtar_gz.c
    trunk/contrib/libarchive/libarchive/test/test_read_format_gtar_lzma.c
    trunk/contrib/libarchive/libarchive/test/test_read_format_gtar_sparse.c
    trunk/contrib/libarchive/libarchive/test/test_read_format_gtar_sparse_1_13.tar.uu
    trunk/contrib/libarchive/libarchive/test/test_read_format_gtar_sparse_1_17.tar.uu
    trunk/contrib/libarchive/libarchive/test/test_read_format_gtar_sparse_1_17_posix00.tar.uu
    trunk/contrib/libarchive/libarchive/test/test_read_format_gtar_sparse_1_17_posix01.tar.uu
    trunk/contrib/libarchive/libarchive/test/test_read_format_gtar_sparse_1_17_posix10.tar.uu
    trunk/contrib/libarchive/libarchive/test/test_read_format_gtar_sparse_1_17_posix10_modified.tar.uu
    trunk/contrib/libarchive/libarchive/test/test_read_format_iso.iso.Z.uu
    trunk/contrib/libarchive/libarchive/test/test_read_format_iso_Z.c
    trunk/contrib/libarchive/libarchive/test/test_read_format_iso_joliet.iso.Z.uu
    trunk/contrib/libarchive/libarchive/test/test_read_format_iso_joliet_long.iso.Z.uu
    trunk/contrib/libarchive/libarchive/test/test_read_format_iso_joliet_rockridge.iso.Z.uu
    trunk/contrib/libarchive/libarchive/test/test_read_format_iso_multi_extent.c
    trunk/contrib/libarchive/libarchive/test/test_read_format_iso_multi_extent.iso.Z.uu
    trunk/contrib/libarchive/libarchive/test/test_read_format_iso_rockridge.iso.Z.uu
    trunk/contrib/libarchive/libarchive/test/test_read_format_iso_rockridge_ce.iso.Z.uu
    trunk/contrib/libarchive/libarchive/test/test_read_format_iso_rockridge_new.iso.Z.uu
    trunk/contrib/libarchive/libarchive/test/test_read_format_iso_rockridge_rr_moved.iso.Z.uu
    trunk/contrib/libarchive/libarchive/test/test_read_format_iso_zisofs.iso.Z.uu
    trunk/contrib/libarchive/libarchive/test/test_read_format_isojoliet_bz2.c
    trunk/contrib/libarchive/libarchive/test/test_read_format_isojoliet_long.c
    trunk/contrib/libarchive/libarchive/test/test_read_format_isojoliet_rr.c
    trunk/contrib/libarchive/libarchive/test/test_read_format_isorr_bz2.c
    trunk/contrib/libarchive/libarchive/test/test_read_format_isorr_ce.c
    trunk/contrib/libarchive/libarchive/test/test_read_format_isorr_new_bz2.c
    trunk/contrib/libarchive/libarchive/test/test_read_format_isorr_rr_moved.c
    trunk/contrib/libarchive/libarchive/test/test_read_format_isozisofs_bz2.c
    trunk/contrib/libarchive/libarchive/test/test_read_format_mtree.c
    trunk/contrib/libarchive/libarchive/test/test_read_format_mtree.mtree.uu
    trunk/contrib/libarchive/libarchive/test/test_read_format_mtree_crash747.c
    trunk/contrib/libarchive/libarchive/test/test_read_format_pax_bz2.c
    trunk/contrib/libarchive/libarchive/test/test_read_format_rar_encryption_data.c
    trunk/contrib/libarchive/libarchive/test/test_read_format_rar_encryption_header.c
    trunk/contrib/libarchive/libarchive/test/test_read_format_rar_encryption_partially.c
    trunk/contrib/libarchive/libarchive/test/test_read_format_rar_invalid1.c
    trunk/contrib/libarchive/libarchive/test/test_read_format_raw.c
    trunk/contrib/libarchive/libarchive/test/test_read_format_raw.data.Z.uu
    trunk/contrib/libarchive/libarchive/test/test_read_format_raw.data.uu
    trunk/contrib/libarchive/libarchive/test/test_read_format_tar.c
    trunk/contrib/libarchive/libarchive/test/test_read_format_tar_empty_filename.c
    trunk/contrib/libarchive/libarchive/test/test_read_format_tar_empty_filename.tar.uu
    trunk/contrib/libarchive/libarchive/test/test_read_format_tar_empty_pax.c
    trunk/contrib/libarchive/libarchive/test/test_read_format_tbz.c
    trunk/contrib/libarchive/libarchive/test/test_read_format_tgz.c
    trunk/contrib/libarchive/libarchive/test/test_read_format_tlz.c
    trunk/contrib/libarchive/libarchive/test/test_read_format_txz.c
    trunk/contrib/libarchive/libarchive/test/test_read_format_tz.c
    trunk/contrib/libarchive/libarchive/test/test_read_format_warc.c
    trunk/contrib/libarchive/libarchive/test/test_read_format_xar.c
    trunk/contrib/libarchive/libarchive/test/test_read_format_zip.c
    trunk/contrib/libarchive/libarchive/test/test_read_format_zip.zip.uu
    trunk/contrib/libarchive/libarchive/test/test_read_format_zip_encryption_data.c
    trunk/contrib/libarchive/libarchive/test/test_read_format_zip_encryption_header.c
    trunk/contrib/libarchive/libarchive/test/test_read_format_zip_encryption_partially.c
    trunk/contrib/libarchive/libarchive/test/test_read_format_zip_high_compression.c
    trunk/contrib/libarchive/libarchive/test/test_read_format_zip_jar.c
    trunk/contrib/libarchive/libarchive/test/test_read_format_zip_malformed.c
    trunk/contrib/libarchive/libarchive/test/test_read_format_zip_nested.c
    trunk/contrib/libarchive/libarchive/test/test_read_format_zip_nofiletype.c
    trunk/contrib/libarchive/libarchive/test/test_read_format_zip_padded.c
    trunk/contrib/libarchive/libarchive/test/test_read_format_zip_traditional_encryption_data.c
    trunk/contrib/libarchive/libarchive/test/test_read_format_zip_winzip_aes.c
    trunk/contrib/libarchive/libarchive/test/test_read_format_zip_winzip_aes_large.c
    trunk/contrib/libarchive/libarchive/test/test_read_format_zip_with_invalid_traditional_eocd.c
    trunk/contrib/libarchive/libarchive/test/test_read_format_zip_zip64.c
    trunk/contrib/libarchive/libarchive/test/test_read_large.c
    trunk/contrib/libarchive/libarchive/test/test_read_pax_truncated.c
    trunk/contrib/libarchive/libarchive/test/test_read_position.c
    trunk/contrib/libarchive/libarchive/test/test_read_truncated.c
    trunk/contrib/libarchive/libarchive/test/test_tar_filenames.c
    trunk/contrib/libarchive/libarchive/test/test_tar_large.c
    trunk/contrib/libarchive/libarchive/test/test_ustar_filenames.c
    trunk/contrib/libarchive/libarchive/test/test_write_disk.c
    trunk/contrib/libarchive/libarchive/test/test_write_disk_failures.c
    trunk/contrib/libarchive/libarchive/test/test_write_disk_hardlink.c
    trunk/contrib/libarchive/libarchive/test/test_write_disk_perms.c
    trunk/contrib/libarchive/libarchive/test/test_write_disk_secure.c
    trunk/contrib/libarchive/libarchive/test/test_write_disk_secure744.c
    trunk/contrib/libarchive/libarchive/test/test_write_disk_secure745.c
    trunk/contrib/libarchive/libarchive/test/test_write_disk_secure746.c
    trunk/contrib/libarchive/libarchive/test/test_write_disk_sparse.c
    trunk/contrib/libarchive/libarchive/test/test_write_disk_symlink.c
    trunk/contrib/libarchive/libarchive/test/test_write_disk_times.c
    trunk/contrib/libarchive/libarchive/test/test_write_filter_lz4.c
    trunk/contrib/libarchive/libarchive/test/test_write_format_ar.c
    trunk/contrib/libarchive/libarchive/test/test_write_format_cpio.c
    trunk/contrib/libarchive/libarchive/test/test_write_format_cpio_empty.c
    trunk/contrib/libarchive/libarchive/test/test_write_format_cpio_newc.c
    trunk/contrib/libarchive/libarchive/test/test_write_format_cpio_odc.c
    trunk/contrib/libarchive/libarchive/test/test_write_format_gnutar_filenames.c
    trunk/contrib/libarchive/libarchive/test/test_write_format_mtree.c
    trunk/contrib/libarchive/libarchive/test/test_write_format_pax.c
    trunk/contrib/libarchive/libarchive/test/test_write_format_shar_empty.c
    trunk/contrib/libarchive/libarchive/test/test_write_format_tar.c
    trunk/contrib/libarchive/libarchive/test/test_write_format_tar_empty.c
    trunk/contrib/libarchive/libarchive/test/test_write_format_tar_ustar.c
    trunk/contrib/libarchive/libarchive/test/test_write_format_warc.c
    trunk/contrib/libarchive/libarchive/test/test_write_format_warc_empty.c
    trunk/contrib/libarchive/libarchive/test/test_write_format_zip.c
    trunk/contrib/libarchive/libarchive/test/test_write_format_zip_compression_store.c
    trunk/contrib/libarchive/libarchive/test/test_write_format_zip_empty.c
    trunk/contrib/libarchive/libarchive/test/test_write_format_zip_empty_zip64.c
    trunk/contrib/libarchive/libarchive/test/test_write_format_zip_file.c
    trunk/contrib/libarchive/libarchive/test/test_write_format_zip_file_zip64.c
    trunk/contrib/libarchive/libarchive/test/test_write_format_zip_large.c
    trunk/contrib/libarchive/libarchive/test/test_write_format_zip_zip64.c
    trunk/contrib/libarchive/libarchive/test/test_write_open_memory.c
    trunk/contrib/libarchive/libarchive/test/test_write_read_format_zip.c
    trunk/contrib/libarchive/libarchive/test/test_xattr_platform.c
    trunk/contrib/libarchive/libarchive_fe/err.c
    trunk/contrib/libarchive/libarchive_fe/err.h
    trunk/contrib/libarchive/libarchive_fe/lafe_platform.h
    trunk/contrib/libarchive/libarchive_fe/line_reader.c
    trunk/contrib/libarchive/libarchive_fe/line_reader.h
    trunk/contrib/libarchive/libarchive_fe/passphrase.c
    trunk/contrib/libarchive/tar/bsdtar.1
    trunk/contrib/libarchive/tar/bsdtar.c
    trunk/contrib/libarchive/tar/bsdtar.h
    trunk/contrib/libarchive/tar/bsdtar_platform.h
    trunk/contrib/libarchive/tar/cmdline.c
    trunk/contrib/libarchive/tar/creation_set.c
    trunk/contrib/libarchive/tar/read.c
    trunk/contrib/libarchive/tar/subst.c
    trunk/contrib/libarchive/tar/test/test.h
    trunk/contrib/libarchive/tar/test/test_0.c
    trunk/contrib/libarchive/tar/test/test_basic.c
    trunk/contrib/libarchive/tar/test/test_copy.c
    trunk/contrib/libarchive/tar/test/test_empty_mtree.c
    trunk/contrib/libarchive/tar/test/test_extract_tar_lz4.c
    trunk/contrib/libarchive/tar/test/test_help.c
    trunk/contrib/libarchive/tar/test/test_leading_slash.c
    trunk/contrib/libarchive/tar/test/test_missing_file.c
    trunk/contrib/libarchive/tar/test/test_option_T_upper.c
    trunk/contrib/libarchive/tar/test/test_option_acls.c
    trunk/contrib/libarchive/tar/test/test_option_fflags.c
    trunk/contrib/libarchive/tar/test/test_option_lz4.c
    trunk/contrib/libarchive/tar/test/test_option_passphrase.c
    trunk/contrib/libarchive/tar/test/test_option_q.c
    trunk/contrib/libarchive/tar/test/test_option_r.c
    trunk/contrib/libarchive/tar/test/test_option_s.c
    trunk/contrib/libarchive/tar/test/test_option_xattrs.c
    trunk/contrib/libarchive/tar/test/test_patterns.c
    trunk/contrib/libarchive/tar/test/test_stdio.c
    trunk/contrib/libarchive/tar/test/test_strip_components.c
    trunk/contrib/libarchive/tar/test/test_symlink_dir.c
    trunk/contrib/libarchive/tar/util.c
    trunk/contrib/libarchive/tar/write.c
    trunk/contrib/libarchive/test_utils/test_common.h
    trunk/contrib/libarchive/test_utils/test_main.c

Added Paths:
-----------
    trunk/contrib/libarchive/cat/test/test_empty.zst.uu
    trunk/contrib/libarchive/cat/test/test_empty_zstd.c
    trunk/contrib/libarchive/cat/test/test_expand.zst.uu
    trunk/contrib/libarchive/cat/test/test_expand_zstd.c
    trunk/contrib/libarchive/cat/test/test_stdin.c
    trunk/contrib/libarchive/cpio/test/test_extract.cpio.zst.uu
    trunk/contrib/libarchive/cpio/test/test_extract_cpio_zstd.c
    trunk/contrib/libarchive/cpio/test/test_option_zstd.c
    trunk/contrib/libarchive/libarchive/archive_read_support_filter_zstd.c
    trunk/contrib/libarchive/libarchive/archive_write_add_filter_zstd.c
    trunk/contrib/libarchive/libarchive/test/test_compat_zip_8.zip.uu
    trunk/contrib/libarchive/libarchive/test/test_compat_zstd.c
    trunk/contrib/libarchive/libarchive/test/test_compat_zstd_1.tar.zst.uu
    trunk/contrib/libarchive/libarchive/test/test_write_filter_zstd.c
    trunk/contrib/libarchive/tar/test/test_extract.tar.zst.uu
    trunk/contrib/libarchive/tar/test/test_extract_tar_zstd.c
    trunk/contrib/libarchive/tar/test/test_option_zstd.c

Modified: trunk/contrib/libarchive/cat/bsdcat.1
===================================================================
--- trunk/contrib/libarchive/cat/bsdcat.1	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/cat/bsdcat.1	2018-06-19 21:37:44 UTC (rev 11136)
@@ -22,7 +22,7 @@
 .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
 .\" SUCH DAMAGE.
 .\"
-.\" $FreeBSD: stable/11/contrib/libarchive/cat/bsdcat.1 299425 2016-05-11 10:19:44Z mm $
+.\" $FreeBSD: stable/10/contrib/libarchive/cat/bsdcat.1 299425 2016-05-11 10:19:44Z mm $
 .\"
 .Dd March 1, 2014
 .Dt BSDCAT 1

Modified: trunk/contrib/libarchive/cat/bsdcat.c
===================================================================
--- trunk/contrib/libarchive/cat/bsdcat.c	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/cat/bsdcat.c	2018-06-19 21:37:44 UTC (rev 11136)
@@ -24,7 +24,7 @@
  */
 
 #include "bsdcat_platform.h"
-__FBSDID("$FreeBSD: stable/11/contrib/libarchive/cat/bsdcat.c 299529 2016-05-12 10:16:16Z mm $");
+__FBSDID("$FreeBSD: stable/10/contrib/libarchive/cat/bsdcat.c 328828 2018-02-03 02:17:25Z mm $");
 
 #include <stdio.h>
 #ifdef HAVE_STDLIB_H
@@ -70,6 +70,12 @@
 void
 bsdcat_next(void)
 {
+	if (a != NULL) {
+		if (archive_read_close(a) != ARCHIVE_OK)
+			bsdcat_print_error();
+		archive_read_free(a);
+	}
+
 	a = archive_read_new();
 	archive_read_support_filter_all(a);
 	archive_read_support_format_empty(a);
@@ -100,8 +106,10 @@
 		;
 	else if (archive_read_data_into_fd(a, 1) != ARCHIVE_OK)
 		bsdcat_print_error();
-	if (archive_read_free(a) != ARCHIVE_OK)
+	if (archive_read_close(a) != ARCHIVE_OK)
 		bsdcat_print_error();
+	archive_read_free(a);
+	a = NULL;
 }
 
 int
@@ -135,15 +143,14 @@
 	if (*bsdcat->argv == NULL) {
 		bsdcat_current_path = "<stdin>";
 		bsdcat_read_to_stdout(NULL);
-	} else
+	} else {
 		while (*bsdcat->argv) {
 			bsdcat_current_path = *bsdcat->argv++;
 			bsdcat_read_to_stdout(bsdcat_current_path);
 			bsdcat_next();
 		}
+		archive_read_free(a); /* Help valgrind & friends */
+	}
 
-	if (a != NULL)
-		archive_read_free(a);
-
 	exit(exit_status);
 }

Modified: trunk/contrib/libarchive/cat/bsdcat_platform.h
===================================================================
--- trunk/contrib/libarchive/cat/bsdcat_platform.h	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/cat/bsdcat_platform.h	2018-06-19 21:37:44 UTC (rev 11136)
@@ -22,7 +22,7 @@
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  *
- * $FreeBSD: stable/11/contrib/libarchive/cat/bsdcat_platform.h 299425 2016-05-11 10:19:44Z mm $
+ * $FreeBSD: stable/10/contrib/libarchive/cat/bsdcat_platform.h 299425 2016-05-11 10:19:44Z mm $
  */
 
 /*

Modified: trunk/contrib/libarchive/cat/cmdline.c
===================================================================
--- trunk/contrib/libarchive/cat/cmdline.c	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/cat/cmdline.c	2018-06-19 21:37:44 UTC (rev 11136)
@@ -28,7 +28,7 @@
  */
 
 #include "bsdcat_platform.h"
-__FBSDID("$FreeBSD: stable/11/contrib/libarchive/cat/cmdline.c 299425 2016-05-11 10:19:44Z mm $");
+__FBSDID("$FreeBSD: stable/10/contrib/libarchive/cat/cmdline.c 299425 2016-05-11 10:19:44Z mm $");
 
 #ifdef HAVE_ERRNO_H
 #include <errno.h>

Modified: trunk/contrib/libarchive/cat/test/test.h
===================================================================
--- trunk/contrib/libarchive/cat/test/test.h	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/cat/test/test.h	2018-06-19 21:37:44 UTC (rev 11136)
@@ -22,7 +22,7 @@
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  *
- * $FreeBSD$
+ * $FreeBSD: stable/10/contrib/libarchive/cat/test/test.h 315433 2017-03-16 23:08:18Z mm $
  */
 
 /* Every test program should #include "test.h" as the first thing. */

Added: trunk/contrib/libarchive/cat/test/test_empty.zst.uu
===================================================================
--- trunk/contrib/libarchive/cat/test/test_empty.zst.uu	                        (rev 0)
+++ trunk/contrib/libarchive/cat/test/test_empty.zst.uu	2018-06-19 21:37:44 UTC (rev 11136)
@@ -0,0 +1,4 @@
+begin 644 test_empty.zst
+-*+4O_010`0``F>G840``
+`
+end

Added: trunk/contrib/libarchive/cat/test/test_empty_zstd.c
===================================================================
--- trunk/contrib/libarchive/cat/test/test_empty_zstd.c	                        (rev 0)
+++ trunk/contrib/libarchive/cat/test/test_empty_zstd.c	2018-06-19 21:37:44 UTC (rev 11136)
@@ -0,0 +1,41 @@
+/*-
+ * Copyright (c) 2017 Sean Purcell
+ * All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ * 1. Redistributions of source code must retain the above copyright
+ *    notice, this list of conditions and the following disclaimer.
+ * 2. Redistributions in binary form must reproduce the above copyright
+ *    notice, this list of conditions and the following disclaimer in the
+ *    documentation and/or other materials provided with the distribution.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE AUTHOR(S) ``AS IS'' AND ANY EXPRESS OR
+ * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
+ * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
+ * IN NO EVENT SHALL THE AUTHOR(S) BE LIABLE FOR ANY DIRECT, INDIRECT,
+ * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
+ * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+ * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+ * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
+ * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
+#include "test.h"
+
+DEFINE_TEST(test_empty_zstd)
+{
+	const char *reffile = "test_empty.zst";
+	int f;
+
+	extract_reference_file(reffile);
+	f = systemf("%s %s >test.out 2>test.err", testprog, reffile);
+	if (f == 0 || canZstd()) {
+		assertEqualInt(0, f);
+		assertEmptyFile("test.out");
+		assertEmptyFile("test.err");
+	} else {
+		skipping("It seems zstd is not supported on this platform");
+	}
+}


Property changes on: trunk/contrib/libarchive/cat/test/test_empty_zstd.c
___________________________________________________________________
Added: svn:eol-style
## -0,0 +1 ##
+native
\ No newline at end of property
Added: svn:keywords
## -0,0 +1 ##
+MidnightBSD=%H
\ No newline at end of property
Added: svn:mime-type
## -0,0 +1 ##
+text/plain
\ No newline at end of property
Added: trunk/contrib/libarchive/cat/test/test_expand.zst.uu
===================================================================
--- trunk/contrib/libarchive/cat/test/test_expand.zst.uu	                        (rev 0)
+++ trunk/contrib/libarchive/cat/test/test_expand.zst.uu	2018-06-19 21:37:44 UTC (rev 11136)
@@ -0,0 +1,4 @@
+begin 644 test_expand.zst
+J*+4O_010Z0``8V]N=&5N=',@;V8@=&5S=%]E>'!A;F0N>G-T+ at J;23#F
+`
+end

Added: trunk/contrib/libarchive/cat/test/test_expand_zstd.c
===================================================================
--- trunk/contrib/libarchive/cat/test/test_expand_zstd.c	                        (rev 0)
+++ trunk/contrib/libarchive/cat/test/test_expand_zstd.c	2018-06-19 21:37:44 UTC (rev 11136)
@@ -0,0 +1,41 @@
+/*-
+ * Copyright (c) 2017 Sean Purcell
+ * All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ * 1. Redistributions of source code must retain the above copyright
+ *    notice, this list of conditions and the following disclaimer.
+ * 2. Redistributions in binary form must reproduce the above copyright
+ *    notice, this list of conditions and the following disclaimer in the
+ *    documentation and/or other materials provided with the distribution.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE AUTHOR(S) ``AS IS'' AND ANY EXPRESS OR
+ * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
+ * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
+ * IN NO EVENT SHALL THE AUTHOR(S) BE LIABLE FOR ANY DIRECT, INDIRECT,
+ * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
+ * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+ * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+ * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
+ * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
+#include "test.h"
+
+DEFINE_TEST(test_expand_zstd)
+{
+	const char *reffile = "test_expand.zst";
+	int f;
+
+	extract_reference_file(reffile);
+	f = systemf("%s %s >test.out 2>test.err", testprog, reffile);
+	if (f == 0 || canZstd()) {
+		assertEqualInt(0, f);
+		assertTextFileContents("contents of test_expand.zst.\n", "test.out");
+		assertEmptyFile("test.err");
+	} else {
+		skipping("It seems zstd is not supported on this platform");
+	}
+}


Property changes on: trunk/contrib/libarchive/cat/test/test_expand_zstd.c
___________________________________________________________________
Added: svn:eol-style
## -0,0 +1 ##
+native
\ No newline at end of property
Added: svn:keywords
## -0,0 +1 ##
+MidnightBSD=%H
\ No newline at end of property
Added: svn:mime-type
## -0,0 +1 ##
+text/plain
\ No newline at end of property
Added: trunk/contrib/libarchive/cat/test/test_stdin.c
===================================================================
--- trunk/contrib/libarchive/cat/test/test_stdin.c	                        (rev 0)
+++ trunk/contrib/libarchive/cat/test/test_stdin.c	2018-06-19 21:37:44 UTC (rev 11136)
@@ -0,0 +1,42 @@
+/*-
+ * Copyright (c) 2017 Sean Purcell
+ * All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ * 1. Redistributions of source code must retain the above copyright
+ *    notice, this list of conditions and the following disclaimer.
+ * 2. Redistributions in binary form must reproduce the above copyright
+ *    notice, this list of conditions and the following disclaimer in the
+ *    documentation and/or other materials provided with the distribution.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE AUTHOR(S) ``AS IS'' AND ANY EXPRESS OR
+ * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
+ * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
+ * IN NO EVENT SHALL THE AUTHOR(S) BE LIABLE FOR ANY DIRECT, INDIRECT,
+ * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
+ * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+ * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+ * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
+ * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
+#include "test.h"
+
+#if !defined(_WIN32) || defined(__CYGWIN__)
+#define DEV_NULL "/dev/null"
+#else
+#define DEV_NULL "NUL"
+#endif
+
+DEFINE_TEST(test_stdin)
+{
+	int f;
+
+	f = systemf("%s <%s >test.out 2>test.err", testprog, DEV_NULL);
+	assertEqualInt(0, f);
+	assertEmptyFile("test.out");
+	assertEmptyFile("test.err");
+}
+


Property changes on: trunk/contrib/libarchive/cat/test/test_stdin.c
___________________________________________________________________
Added: svn:eol-style
## -0,0 +1 ##
+native
\ No newline at end of property
Added: svn:keywords
## -0,0 +1 ##
+MidnightBSD=%H
\ No newline at end of property
Added: svn:mime-type
## -0,0 +1 ##
+text/plain
\ No newline at end of property
Modified: trunk/contrib/libarchive/cpio/bsdcpio.1
===================================================================
--- trunk/contrib/libarchive/cpio/bsdcpio.1	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/cpio/bsdcpio.1	2018-06-19 21:37:44 UTC (rev 11136)
@@ -22,7 +22,7 @@
 .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
 .\" SUCH DAMAGE.
 .\"
-.\" $FreeBSD: stable/11/contrib/libarchive/cpio/bsdcpio.1 299896 2016-05-16 05:01:44Z mm $
+.\" $FreeBSD: stable/10/contrib/libarchive/cpio/bsdcpio.1 324418 2017-10-08 20:55:45Z mm $
 .\"
 .Dd September 16, 2014
 .Dt CPIO 1
@@ -187,6 +187,11 @@
 Compress the archive with lz4-compatible compression before writing it.
 In input mode, this option is ignored; lz4 compression is recognized
 automatically on input.
+.It Fl Fl zstd
+(o mode only)
+Compress the archive with zstd-compatible compression before writing it.
+In input mode, this option is ignored; zstd compression is recognized
+automatically on input.
 .It Fl Fl lzma
 (o mode only)
 Compress the file with lzma-compatible compression before writing it.

Modified: trunk/contrib/libarchive/cpio/cmdline.c
===================================================================
--- trunk/contrib/libarchive/cpio/cmdline.c	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/cpio/cmdline.c	2018-06-19 21:37:44 UTC (rev 11136)
@@ -26,7 +26,7 @@
 
 
 #include "cpio_platform.h"
-__FBSDID("$FreeBSD: stable/11/contrib/libarchive/cpio/cmdline.c 305188 2016-09-01 07:53:59Z mm $");
+__FBSDID("$FreeBSD: stable/10/contrib/libarchive/cpio/cmdline.c 324418 2017-10-08 20:55:45Z mm $");
 
 #ifdef HAVE_ERRNO_H
 #include <errno.h>
@@ -92,6 +92,7 @@
 	{ "verbose",			0, 'v' },
 	{ "version",			0, OPTION_VERSION },
 	{ "xz",				0, 'J' },
+	{ "zstd",			0, OPTION_ZSTD },
 	{ NULL, 0, 0 }
 };
 

Modified: trunk/contrib/libarchive/cpio/cpio.c
===================================================================
--- trunk/contrib/libarchive/cpio/cpio.c	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/cpio/cpio.c	2018-06-19 21:37:44 UTC (rev 11136)
@@ -26,7 +26,7 @@
 
 
 #include "cpio_platform.h"
-__FBSDID("$FreeBSD: stable/11/contrib/libarchive/cpio/cpio.c 302075 2016-06-22 07:49:59Z mm $");
+__FBSDID("$FreeBSD: stable/10/contrib/libarchive/cpio/cpio.c 324418 2017-10-08 20:55:45Z mm $");
 
 #include <sys/types.h>
 #include <archive.h>
@@ -269,6 +269,7 @@
 		case OPTION_LZ4:
 		case OPTION_LZMA: /* GNU tar, others */
 		case OPTION_LZOP: /* GNU tar, others */
+		case OPTION_ZSTD:
 			cpio->compress = opt;
 			break;
 		case 'm': /* POSIX 1997 */
@@ -546,6 +547,9 @@
 	case OPTION_LZOP:
 		r = archive_write_add_filter_lzop(cpio->archive);
 		break;
+	case OPTION_ZSTD:
+		r = archive_write_add_filter_zstd(cpio->archive);
+		break;
 	case 'j': case 'y':
 		r = archive_write_add_filter_bzip2(cpio->archive);
 		break;

Modified: trunk/contrib/libarchive/cpio/cpio.h
===================================================================
--- trunk/contrib/libarchive/cpio/cpio.h	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/cpio/cpio.h	2018-06-19 21:37:44 UTC (rev 11136)
@@ -22,7 +22,7 @@
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  *
- * $FreeBSD: stable/11/contrib/libarchive/cpio/cpio.h 299529 2016-05-12 10:16:16Z mm $
+ * $FreeBSD: stable/10/contrib/libarchive/cpio/cpio.h 324418 2017-10-08 20:55:45Z mm $
  */
 
 #ifndef CPIO_H_INCLUDED
@@ -111,7 +111,8 @@
 	OPTION_PRESERVE_OWNER,
 	OPTION_QUIET,
 	OPTION_UUENCODE,
-	OPTION_VERSION
+	OPTION_VERSION,
+	OPTION_ZSTD,
 };
 
 int	cpio_getopt(struct cpio *cpio);

Modified: trunk/contrib/libarchive/cpio/cpio_platform.h
===================================================================
--- trunk/contrib/libarchive/cpio/cpio_platform.h	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/cpio/cpio_platform.h	2018-06-19 21:37:44 UTC (rev 11136)
@@ -22,7 +22,7 @@
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  *
- * $FreeBSD: stable/11/contrib/libarchive/cpio/cpio_platform.h 299529 2016-05-12 10:16:16Z mm $
+ * $FreeBSD: stable/10/contrib/libarchive/cpio/cpio_platform.h 302001 2016-06-17 22:40:10Z mm $
  */
 
 /*

Modified: trunk/contrib/libarchive/cpio/test/test.h
===================================================================
--- trunk/contrib/libarchive/cpio/test/test.h	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/cpio/test/test.h	2018-06-19 21:37:44 UTC (rev 11136)
@@ -22,7 +22,7 @@
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  *
- * $FreeBSD$
+ * $FreeBSD: stable/10/contrib/libarchive/cpio/test/test.h 315433 2017-03-16 23:08:18Z mm $
  */
 
 /* Every test program should #include "test.h" as the first thing. */

Modified: trunk/contrib/libarchive/cpio/test/test_0.c
===================================================================
--- trunk/contrib/libarchive/cpio/test/test_0.c	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/cpio/test/test_0.c	2018-06-19 21:37:44 UTC (rev 11136)
@@ -23,7 +23,7 @@
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 #include "test.h"
-__FBSDID("$FreeBSD: stable/11/contrib/libarchive/cpio/test/test_0.c 232153 2012-02-25 10:58:02Z mm $");
+__FBSDID("$FreeBSD: stable/10/contrib/libarchive/cpio/test/test_0.c 232153 2012-02-25 10:58:02Z mm $");
 
 /*
  * This first test does basic sanity checks on the environment.  For

Modified: trunk/contrib/libarchive/cpio/test/test_basic.c
===================================================================
--- trunk/contrib/libarchive/cpio/test/test_basic.c	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/cpio/test/test_basic.c	2018-06-19 21:37:44 UTC (rev 11136)
@@ -23,7 +23,7 @@
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 #include "test.h"
-__FBSDID("$FreeBSD: stable/11/contrib/libarchive/cpio/test/test_basic.c 299529 2016-05-12 10:16:16Z mm $");
+__FBSDID("$FreeBSD: stable/10/contrib/libarchive/cpio/test/test_basic.c 302001 2016-06-17 22:40:10Z mm $");
 
 static void
 verify_files(const char *msg)

Modified: trunk/contrib/libarchive/cpio/test/test_cmdline.c
===================================================================
--- trunk/contrib/libarchive/cpio/test/test_cmdline.c	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/cpio/test/test_cmdline.c	2018-06-19 21:37:44 UTC (rev 11136)
@@ -23,7 +23,7 @@
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 #include "test.h"
-__FBSDID("$FreeBSD: stable/11/contrib/libarchive/cpio/test/test_cmdline.c 228763 2011-12-21 11:13:29Z mm $");
+__FBSDID("$FreeBSD: stable/10/contrib/libarchive/cpio/test/test_cmdline.c 228763 2011-12-21 11:13:29Z mm $");
 
 /*
  * Test the command-line parsing.

Added: trunk/contrib/libarchive/cpio/test/test_extract.cpio.zst.uu
===================================================================
--- trunk/contrib/libarchive/cpio/test/test_extract.cpio.zst.uu	                        (rev 0)
+++ trunk/contrib/libarchive/cpio/test/test_extract.cpio.zst.uu	2018-06-19 21:37:44 UTC (rev 11136)
@@ -0,0 +1,6 @@
+begin 644 test_extract.cpio.zst
+M*+4O_01090,`, at 41%X")&@#'G6T\K16_MR)#=DK)5:.1,2J0HY2"!(1!`!7R
+M$(UB`2"*D41;J2UF&)<0!Y7X'TU<%W.\W^R]GO-WW^OO^QX0`%P<]30-!#U`
+?!KD!`#XP,_`U4`HT3+RF:#!7Y\V at R)5"7P"^;WEUK@``
+`
+end

Modified: trunk/contrib/libarchive/cpio/test/test_extract_cpio_lz4.c
===================================================================
--- trunk/contrib/libarchive/cpio/test/test_extract_cpio_lz4.c	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/cpio/test/test_extract_cpio_lz4.c	2018-06-19 21:37:44 UTC (rev 11136)
@@ -23,7 +23,7 @@
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 #include "test.h"
-__FBSDID("$FreeBSD: stable/11/contrib/libarchive/cpio/test/test_extract_cpio_lz4.c 299529 2016-05-12 10:16:16Z mm $");
+__FBSDID("$FreeBSD: stable/10/contrib/libarchive/cpio/test/test_extract_cpio_lz4.c 302001 2016-06-17 22:40:10Z mm $");
 
 DEFINE_TEST(test_extract_cpio_lz4)
 {

Added: trunk/contrib/libarchive/cpio/test/test_extract_cpio_zstd.c
===================================================================
--- trunk/contrib/libarchive/cpio/test/test_extract_cpio_zstd.c	                        (rev 0)
+++ trunk/contrib/libarchive/cpio/test/test_extract_cpio_zstd.c	2018-06-19 21:37:44 UTC (rev 11136)
@@ -0,0 +1,48 @@
+/*-
+ * Copyright (c) 2017 Sean Purcell
+ * All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ * 1. Redistributions of source code must retain the above copyright
+ *    notice, this list of conditions and the following disclaimer.
+ * 2. Redistributions in binary form must reproduce the above copyright
+ *    notice, this list of conditions and the following disclaimer in the
+ *    documentation and/or other materials provided with the distribution.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE AUTHOR(S) ``AS IS'' AND ANY EXPRESS OR
+ * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
+ * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
+ * IN NO EVENT SHALL THE AUTHOR(S) BE LIABLE FOR ANY DIRECT, INDIRECT,
+ * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
+ * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+ * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+ * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
+ * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
+#include "test.h"
+__FBSDID("$FreeBSD: stable/10/contrib/libarchive/cpio/test/test_extract_cpio_zstd.c 324418 2017-10-08 20:55:45Z mm $");
+
+DEFINE_TEST(test_extract_cpio_zstd)
+{
+	const char *reffile = "test_extract.cpio.zst";
+	int f;
+
+	extract_reference_file(reffile);
+	f = systemf("%s -it < %s >test.out 2>test.err", testprog, reffile);
+	if (f == 0 || canZstd()) {
+		assertEqualInt(0, systemf("%s -i < %s >test.out 2>test.err",
+		    testprog, reffile));
+
+		assertFileExists("file1");
+		assertTextFileContents("contents of file1.\n", "file1");
+		assertFileExists("file2");
+		assertTextFileContents("contents of file2.\n", "file2");
+		assertEmptyFile("test.out");
+		assertTextFileContents("1 block\n", "test.err");
+	} else {
+		skipping("It seems zstd is not supported on this platform");
+	}
+}


Property changes on: trunk/contrib/libarchive/cpio/test/test_extract_cpio_zstd.c
___________________________________________________________________
Added: svn:eol-style
## -0,0 +1 ##
+native
\ No newline at end of property
Added: svn:keywords
## -0,0 +1 ##
+MidnightBSD=%H
\ No newline at end of property
Added: svn:mime-type
## -0,0 +1 ##
+text/plain
\ No newline at end of property
Modified: trunk/contrib/libarchive/cpio/test/test_format_newc.c
===================================================================
--- trunk/contrib/libarchive/cpio/test/test_format_newc.c	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/cpio/test/test_format_newc.c	2018-06-19 21:37:44 UTC (rev 11136)
@@ -23,7 +23,7 @@
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 #include "test.h"
-__FBSDID("$FreeBSD: stable/11/contrib/libarchive/cpio/test/test_format_newc.c 248616 2013-03-22 13:36:03Z mm $");
+__FBSDID("$FreeBSD: stable/10/contrib/libarchive/cpio/test/test_format_newc.c 248616 2013-03-22 13:36:03Z mm $");
 
 /* Number of bytes needed to pad 'n' to multiple of 'block', assuming
  * that 'block' is a power of two. This trick can be more easily

Modified: trunk/contrib/libarchive/cpio/test/test_gcpio_compat.c
===================================================================
--- trunk/contrib/libarchive/cpio/test/test_gcpio_compat.c	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/cpio/test/test_gcpio_compat.c	2018-06-19 21:37:44 UTC (rev 11136)
@@ -23,7 +23,7 @@
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 #include "test.h"
-__FBSDID("$FreeBSD: stable/11/contrib/libarchive/cpio/test/test_gcpio_compat.c 228763 2011-12-21 11:13:29Z mm $");
+__FBSDID("$FreeBSD: stable/10/contrib/libarchive/cpio/test/test_gcpio_compat.c 228763 2011-12-21 11:13:29Z mm $");
 
 static void
 unpack_test(const char *from, const char *options, const char *se)

Modified: trunk/contrib/libarchive/cpio/test/test_gcpio_compat_ref.bin.uu
===================================================================
--- trunk/contrib/libarchive/cpio/test/test_gcpio_compat_ref.bin.uu	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/cpio/test/test_gcpio_compat_ref.bin.uu	2018-06-19 21:37:44 UTC (rev 11136)
@@ -1,4 +1,4 @@
-$FreeBSD: stable/11/contrib/libarchive/cpio/test/test_gcpio_compat_ref.bin.uu 228763 2011-12-21 11:13:29Z mm $
+$FreeBSD: stable/10/contrib/libarchive/cpio/test/test_gcpio_compat_ref.bin.uu 228763 2011-12-21 11:13:29Z mm $
 begin 644 test_gcpio_compat_ref.bin
 MQW%9`*IWI('H`^@#`@````U'=YD%````"@!F:6QE```Q,C,T-38W.#D*QW%9
 M`*IWI('H`^@#`@````U'=YD)````"@!L:6YK9FEL90``,3(S-#4V-S at Y"L=Q

Modified: trunk/contrib/libarchive/cpio/test/test_gcpio_compat_ref.crc.uu
===================================================================
--- trunk/contrib/libarchive/cpio/test/test_gcpio_compat_ref.crc.uu	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/cpio/test/test_gcpio_compat_ref.crc.uu	2018-06-19 21:37:44 UTC (rev 11136)
@@ -1,4 +1,4 @@
-$FreeBSD: stable/11/contrib/libarchive/cpio/test/test_gcpio_compat_ref.crc.uu 228763 2011-12-21 11:13:29Z mm $
+$FreeBSD: stable/10/contrib/libarchive/cpio/test/test_gcpio_compat_ref.crc.uu 228763 2011-12-21 11:13:29Z mm $
 begin 644 test_gcpio_compat_ref.crc
 M,#<P-S`R,#`S,S<W86$P,#`P.#%A-#`P,#`P,V4X,#`P,#`S93 at P,#`P,#`P
 M,C0W,&0Y.3<W,#`P,#`P,#`P,#`P,#`P,#`P,#`P,#4Y,#`P,#`P,#`P,#`P

Modified: trunk/contrib/libarchive/cpio/test/test_gcpio_compat_ref.newc.uu
===================================================================
--- trunk/contrib/libarchive/cpio/test/test_gcpio_compat_ref.newc.uu	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/cpio/test/test_gcpio_compat_ref.newc.uu	2018-06-19 21:37:44 UTC (rev 11136)
@@ -1,4 +1,4 @@
-$FreeBSD: stable/11/contrib/libarchive/cpio/test/test_gcpio_compat_ref.newc.uu 228763 2011-12-21 11:13:29Z mm $
+$FreeBSD: stable/10/contrib/libarchive/cpio/test/test_gcpio_compat_ref.newc.uu 228763 2011-12-21 11:13:29Z mm $
 begin 644 test_gcpio_compat_ref.newc
 M,#<P-S`Q,#`S,S<W86$P,#`P.#%A-#`P,#`P,V4X,#`P,#`S93 at P,#`P,#`P
 M,C0W,&0Y.3<W,#`P,#`P,#`P,#`P,#`P,#`P,#`P,#4Y,#`P,#`P,#`P,#`P

Modified: trunk/contrib/libarchive/cpio/test/test_gcpio_compat_ref.ustar.uu
===================================================================
--- trunk/contrib/libarchive/cpio/test/test_gcpio_compat_ref.ustar.uu	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/cpio/test/test_gcpio_compat_ref.ustar.uu	2018-06-19 21:37:44 UTC (rev 11136)
@@ -1,4 +1,4 @@
-$FreeBSD: stable/11/contrib/libarchive/cpio/test/test_gcpio_compat_ref.ustar.uu 228763 2011-12-21 11:13:29Z mm $
+$FreeBSD: stable/10/contrib/libarchive/cpio/test/test_gcpio_compat_ref.ustar.uu 228763 2011-12-21 11:13:29Z mm $
 begin 644 test_gcpio_compat_ref.ustar
 M9FEL90``````````````````````````````````````````````````````
 M````````````````````````````````````````````````````````````

Modified: trunk/contrib/libarchive/cpio/test/test_missing_file.c
===================================================================
--- trunk/contrib/libarchive/cpio/test/test_missing_file.c	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/cpio/test/test_missing_file.c	2018-06-19 21:37:44 UTC (rev 11136)
@@ -23,7 +23,7 @@
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 #include "test.h"
-__FBSDID("$FreeBSD: stable/11/contrib/libarchive/cpio/test/test_missing_file.c 302075 2016-06-22 07:49:59Z mm $");
+__FBSDID("$FreeBSD: stable/10/contrib/libarchive/cpio/test/test_missing_file.c 302295 2016-06-30 12:44:15Z mm $");
 
 DEFINE_TEST(test_missing_file)
 {

Modified: trunk/contrib/libarchive/cpio/test/test_option_B_upper.c
===================================================================
--- trunk/contrib/libarchive/cpio/test/test_option_B_upper.c	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/cpio/test/test_option_B_upper.c	2018-06-19 21:37:44 UTC (rev 11136)
@@ -23,7 +23,7 @@
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 #include "test.h"
-__FBSDID("$FreeBSD: stable/11/contrib/libarchive/cpio/test/test_option_B_upper.c 228763 2011-12-21 11:13:29Z mm $");
+__FBSDID("$FreeBSD: stable/10/contrib/libarchive/cpio/test/test_option_B_upper.c 228763 2011-12-21 11:13:29Z mm $");
 
 
 DEFINE_TEST(test_option_B_upper)

Modified: trunk/contrib/libarchive/cpio/test/test_option_C_upper.c
===================================================================
--- trunk/contrib/libarchive/cpio/test/test_option_C_upper.c	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/cpio/test/test_option_C_upper.c	2018-06-19 21:37:44 UTC (rev 11136)
@@ -23,7 +23,7 @@
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 #include "test.h"
-__FBSDID("$FreeBSD: stable/11/contrib/libarchive/cpio/test/test_option_C_upper.c 228763 2011-12-21 11:13:29Z mm $");
+__FBSDID("$FreeBSD: stable/10/contrib/libarchive/cpio/test/test_option_C_upper.c 228763 2011-12-21 11:13:29Z mm $");
 
 
 DEFINE_TEST(test_option_C_upper)

Modified: trunk/contrib/libarchive/cpio/test/test_option_J_upper.c
===================================================================
--- trunk/contrib/libarchive/cpio/test/test_option_J_upper.c	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/cpio/test/test_option_J_upper.c	2018-06-19 21:37:44 UTC (rev 11136)
@@ -23,7 +23,7 @@
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 #include "test.h"
-__FBSDID("$FreeBSD: stable/11/contrib/libarchive/cpio/test/test_option_J_upper.c 228763 2011-12-21 11:13:29Z mm $");
+__FBSDID("$FreeBSD: stable/10/contrib/libarchive/cpio/test/test_option_J_upper.c 310570 2016-12-26 06:25:39Z ngie $");
 
 DEFINE_TEST(test_option_J_upper)
 {

Modified: trunk/contrib/libarchive/cpio/test/test_option_L_upper.c
===================================================================
--- trunk/contrib/libarchive/cpio/test/test_option_L_upper.c	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/cpio/test/test_option_L_upper.c	2018-06-19 21:37:44 UTC (rev 11136)
@@ -23,7 +23,7 @@
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 #include "test.h"
-__FBSDID("$FreeBSD: stable/11/contrib/libarchive/cpio/test/test_option_L_upper.c 228763 2011-12-21 11:13:29Z mm $");
+__FBSDID("$FreeBSD: stable/10/contrib/libarchive/cpio/test/test_option_L_upper.c 228763 2011-12-21 11:13:29Z mm $");
 
 /* This is a little pointless, as Windows doesn't support symlinks
  * (except for the seriously crippled CreateSymbolicLink API) so these

Modified: trunk/contrib/libarchive/cpio/test/test_option_Z_upper.c
===================================================================
--- trunk/contrib/libarchive/cpio/test/test_option_Z_upper.c	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/cpio/test/test_option_Z_upper.c	2018-06-19 21:37:44 UTC (rev 11136)
@@ -23,7 +23,7 @@
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 #include "test.h"
-__FBSDID("$FreeBSD: stable/11/contrib/libarchive/cpio/test/test_option_Z_upper.c 228763 2011-12-21 11:13:29Z mm $");
+__FBSDID("$FreeBSD: stable/10/contrib/libarchive/cpio/test/test_option_Z_upper.c 318483 2017-05-18 19:50:15Z mm $");
 
 DEFINE_TEST(test_option_Z_upper)
 {

Modified: trunk/contrib/libarchive/cpio/test/test_option_a.c
===================================================================
--- trunk/contrib/libarchive/cpio/test/test_option_a.c	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/cpio/test/test_option_a.c	2018-06-19 21:37:44 UTC (rev 11136)
@@ -28,7 +28,7 @@
 #elif defined(HAVE_SYS_UTIME_H)
 #include <sys/utime.h>
 #endif
-__FBSDID("$FreeBSD: stable/11/contrib/libarchive/cpio/test/test_option_a.c 228763 2011-12-21 11:13:29Z mm $");
+__FBSDID("$FreeBSD: stable/10/contrib/libarchive/cpio/test/test_option_a.c 318483 2017-05-18 19:50:15Z mm $");
 
 static struct {
 	const char *name;

Modified: trunk/contrib/libarchive/cpio/test/test_option_c.c
===================================================================
--- trunk/contrib/libarchive/cpio/test/test_option_c.c	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/cpio/test/test_option_c.c	2018-06-19 21:37:44 UTC (rev 11136)
@@ -23,7 +23,7 @@
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 #include "test.h"
-__FBSDID("$FreeBSD: stable/11/contrib/libarchive/cpio/test/test_option_c.c 299529 2016-05-12 10:16:16Z mm $");
+__FBSDID("$FreeBSD: stable/10/contrib/libarchive/cpio/test/test_option_c.c 302001 2016-06-17 22:40:10Z mm $");
 
 static int
 is_octal(const char *p, size_t l)

Modified: trunk/contrib/libarchive/cpio/test/test_option_d.c
===================================================================
--- trunk/contrib/libarchive/cpio/test/test_option_d.c	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/cpio/test/test_option_d.c	2018-06-19 21:37:44 UTC (rev 11136)
@@ -23,7 +23,7 @@
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 #include "test.h"
-__FBSDID("$FreeBSD: stable/11/contrib/libarchive/cpio/test/test_option_d.c 228763 2011-12-21 11:13:29Z mm $");
+__FBSDID("$FreeBSD: stable/10/contrib/libarchive/cpio/test/test_option_d.c 228763 2011-12-21 11:13:29Z mm $");
 
 
 DEFINE_TEST(test_option_d)

Modified: trunk/contrib/libarchive/cpio/test/test_option_f.c
===================================================================
--- trunk/contrib/libarchive/cpio/test/test_option_f.c	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/cpio/test/test_option_f.c	2018-06-19 21:37:44 UTC (rev 11136)
@@ -23,7 +23,7 @@
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 #include "test.h"
-__FBSDID("$FreeBSD: stable/11/contrib/libarchive/cpio/test/test_option_f.c 228763 2011-12-21 11:13:29Z mm $");
+__FBSDID("$FreeBSD: stable/10/contrib/libarchive/cpio/test/test_option_f.c 228763 2011-12-21 11:13:29Z mm $");
 
 /*
  * Unpack the archive in a new dir.

Modified: trunk/contrib/libarchive/cpio/test/test_option_f.cpio.uu
===================================================================
--- trunk/contrib/libarchive/cpio/test/test_option_f.cpio.uu	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/cpio/test/test_option_f.cpio.uu	2018-06-19 21:37:44 UTC (rev 11136)
@@ -1,4 +1,4 @@
-$FreeBSD: stable/11/contrib/libarchive/cpio/test/test_option_f.cpio.uu 228763 2011-12-21 11:13:29Z mm $
+$FreeBSD: stable/10/contrib/libarchive/cpio/test/test_option_f.cpio.uu 228763 2011-12-21 11:13:29Z mm $
 begin 644 test_option_f.cpio
 M,#<P-S`W,#`P,3,Q-C(Q-38Q,3`P-C0T,#`Q-S4P,#`Q-S4P,#`P,#`Q,#`P
 M,#`P,3`W,S4Q,3(U,C8P,#`P,#4P,#`P,#`P,#`P,&$Q,C,`,#<P-S`W,#`P

Modified: trunk/contrib/libarchive/cpio/test/test_option_help.c
===================================================================
--- trunk/contrib/libarchive/cpio/test/test_option_help.c	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/cpio/test/test_option_help.c	2018-06-19 21:37:44 UTC (rev 11136)
@@ -23,7 +23,7 @@
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 #include "test.h"
-__FBSDID("$FreeBSD: stable/11/contrib/libarchive/cpio/test/test_option_help.c 228763 2011-12-21 11:13:29Z mm $");
+__FBSDID("$FreeBSD: stable/10/contrib/libarchive/cpio/test/test_option_help.c 228763 2011-12-21 11:13:29Z mm $");
 
 /*
  * Test that "--help", "-h", and "-W help" options all work and

Modified: trunk/contrib/libarchive/cpio/test/test_option_l.c
===================================================================
--- trunk/contrib/libarchive/cpio/test/test_option_l.c	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/cpio/test/test_option_l.c	2018-06-19 21:37:44 UTC (rev 11136)
@@ -23,7 +23,7 @@
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 #include "test.h"
-__FBSDID("$FreeBSD: stable/11/contrib/libarchive/cpio/test/test_option_l.c 228763 2011-12-21 11:13:29Z mm $");
+__FBSDID("$FreeBSD: stable/10/contrib/libarchive/cpio/test/test_option_l.c 228763 2011-12-21 11:13:29Z mm $");
 
 DEFINE_TEST(test_option_l)
 {

Modified: trunk/contrib/libarchive/cpio/test/test_option_lz4.c
===================================================================
--- trunk/contrib/libarchive/cpio/test/test_option_lz4.c	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/cpio/test/test_option_lz4.c	2018-06-19 21:37:44 UTC (rev 11136)
@@ -23,7 +23,7 @@
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 #include "test.h"
-__FBSDID("$FreeBSD: stable/11/contrib/libarchive/cpio/test/test_option_lz4.c 299529 2016-05-12 10:16:16Z mm $");
+__FBSDID("$FreeBSD: stable/10/contrib/libarchive/cpio/test/test_option_lz4.c 318483 2017-05-18 19:50:15Z mm $");
 
 DEFINE_TEST(test_option_lz4)
 {

Modified: trunk/contrib/libarchive/cpio/test/test_option_lzma.c
===================================================================
--- trunk/contrib/libarchive/cpio/test/test_option_lzma.c	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/cpio/test/test_option_lzma.c	2018-06-19 21:37:44 UTC (rev 11136)
@@ -23,7 +23,7 @@
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 #include "test.h"
-__FBSDID("$FreeBSD: stable/11/contrib/libarchive/cpio/test/test_option_lzma.c 228763 2011-12-21 11:13:29Z mm $");
+__FBSDID("$FreeBSD: stable/10/contrib/libarchive/cpio/test/test_option_lzma.c 318483 2017-05-18 19:50:15Z mm $");
 
 DEFINE_TEST(test_option_lzma)
 {

Modified: trunk/contrib/libarchive/cpio/test/test_option_m.c
===================================================================
--- trunk/contrib/libarchive/cpio/test/test_option_m.c	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/cpio/test/test_option_m.c	2018-06-19 21:37:44 UTC (rev 11136)
@@ -23,7 +23,7 @@
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 #include "test.h"
-__FBSDID("$FreeBSD: stable/11/contrib/libarchive/cpio/test/test_option_m.c 228763 2011-12-21 11:13:29Z mm $");
+__FBSDID("$FreeBSD: stable/10/contrib/libarchive/cpio/test/test_option_m.c 228763 2011-12-21 11:13:29Z mm $");
 
 
 DEFINE_TEST(test_option_m)

Modified: trunk/contrib/libarchive/cpio/test/test_option_m.cpio.uu
===================================================================
--- trunk/contrib/libarchive/cpio/test/test_option_m.cpio.uu	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/cpio/test/test_option_m.cpio.uu	2018-06-19 21:37:44 UTC (rev 11136)
@@ -1,4 +1,4 @@
-$FreeBSD: stable/11/contrib/libarchive/cpio/test/test_option_m.cpio.uu 228763 2011-12-21 11:13:29Z mm $
+$FreeBSD: stable/10/contrib/libarchive/cpio/test/test_option_m.cpio.uu 228763 2011-12-21 11:13:29Z mm $
 begin 644 test_option_m.cpio
 M,#<P-S`W,#`P,3,Q-#4P,#8T,3`P-C0T,#`Q-S4P,#`Q-S4P,#`P,#`Q,#`P
 M,#`P,#`P,#`P,#`P,#$P,#`P,#4P,#`P,#`P,#`P,&9I;&4`,#<P-S`W,#`P

Modified: trunk/contrib/libarchive/cpio/test/test_option_passphrase.c
===================================================================
--- trunk/contrib/libarchive/cpio/test/test_option_passphrase.c	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/cpio/test/test_option_passphrase.c	2018-06-19 21:37:44 UTC (rev 11136)
@@ -23,7 +23,7 @@
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 #include "test.h"
-__FBSDID("$FreeBSD: stable/11/contrib/libarchive/cpio/test/test_option_passphrase.c 299529 2016-05-12 10:16:16Z mm $");
+__FBSDID("$FreeBSD: stable/10/contrib/libarchive/cpio/test/test_option_passphrase.c 302001 2016-06-17 22:40:10Z mm $");
 
 DEFINE_TEST(test_option_passphrase)
 {

Modified: trunk/contrib/libarchive/cpio/test/test_option_t.c
===================================================================
--- trunk/contrib/libarchive/cpio/test/test_option_t.c	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/cpio/test/test_option_t.c	2018-06-19 21:37:44 UTC (rev 11136)
@@ -23,7 +23,7 @@
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 #include "test.h"
-__FBSDID("$FreeBSD: stable/11/contrib/libarchive/cpio/test/test_option_t.c 232153 2012-02-25 10:58:02Z mm $");
+__FBSDID("$FreeBSD: stable/10/contrib/libarchive/cpio/test/test_option_t.c 232153 2012-02-25 10:58:02Z mm $");
 
 #ifdef HAVE_LOCALE_H
 #include <locale.h>

Modified: trunk/contrib/libarchive/cpio/test/test_option_t.cpio.uu
===================================================================
--- trunk/contrib/libarchive/cpio/test/test_option_t.cpio.uu	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/cpio/test/test_option_t.cpio.uu	2018-06-19 21:37:44 UTC (rev 11136)
@@ -1,4 +1,4 @@
-$FreeBSD: stable/11/contrib/libarchive/cpio/test/test_option_t.cpio.uu 228763 2011-12-21 11:13:29Z mm $
+$FreeBSD: stable/10/contrib/libarchive/cpio/test/test_option_t.cpio.uu 228763 2011-12-21 11:13:29Z mm $
 begin 644 test_option_t.cpio
 M,#<P-S`W,#`P,3,Q-#4P,#8T,3`P-C0T,#`Q-S4P,#`Q-S4P,#`P,#`Q,#`P
 M,#`P,#`P,#`P,#`P,#$P,#`P,#4P,#`P,#`P,#`P,&9I;&4`,#<P-S`W,#`P

Modified: trunk/contrib/libarchive/cpio/test/test_option_t.stdout.uu
===================================================================
--- trunk/contrib/libarchive/cpio/test/test_option_t.stdout.uu	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/cpio/test/test_option_t.stdout.uu	2018-06-19 21:37:44 UTC (rev 11136)
@@ -1,4 +1,4 @@
-$FreeBSD: stable/11/contrib/libarchive/cpio/test/test_option_t.stdout.uu 228763 2011-12-21 11:13:29Z mm $
+$FreeBSD: stable/10/contrib/libarchive/cpio/test/test_option_t.stdout.uu 228763 2011-12-21 11:13:29Z mm $
 begin 644 test_option_t.stdout
 %9FEL90H`
 `

Modified: trunk/contrib/libarchive/cpio/test/test_option_tv.stdout.uu
===================================================================
--- trunk/contrib/libarchive/cpio/test/test_option_tv.stdout.uu	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/cpio/test/test_option_tv.stdout.uu	2018-06-19 21:37:44 UTC (rev 11136)
@@ -1,4 +1,4 @@
-$FreeBSD: stable/11/contrib/libarchive/cpio/test/test_option_tv.stdout.uu 228763 2011-12-21 11:13:29Z mm $
+$FreeBSD: stable/10/contrib/libarchive/cpio/test/test_option_tv.stdout.uu 228763 2011-12-21 11:13:29Z mm $
 begin 644 test_option_tv.stdout
 M+7)W+7(M+7(M+2`@(#$@=&EM("`@("`@=&EM("`@("`@("`@("`@(#`@1&5C
 /(#,Q("`Q.38Y(&9I;&4*

Modified: trunk/contrib/libarchive/cpio/test/test_option_u.c
===================================================================
--- trunk/contrib/libarchive/cpio/test/test_option_u.c	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/cpio/test/test_option_u.c	2018-06-19 21:37:44 UTC (rev 11136)
@@ -28,7 +28,7 @@
 #elif defined(HAVE_SYS_UTIME_H)
 #include <sys/utime.h>
 #endif
-__FBSDID("$FreeBSD: stable/11/contrib/libarchive/cpio/test/test_option_u.c 232153 2012-02-25 10:58:02Z mm $");
+__FBSDID("$FreeBSD: stable/10/contrib/libarchive/cpio/test/test_option_u.c 310570 2016-12-26 06:25:39Z ngie $");
 
 DEFINE_TEST(test_option_u)
 {

Modified: trunk/contrib/libarchive/cpio/test/test_option_y.c
===================================================================
--- trunk/contrib/libarchive/cpio/test/test_option_y.c	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/cpio/test/test_option_y.c	2018-06-19 21:37:44 UTC (rev 11136)
@@ -23,7 +23,7 @@
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 #include "test.h"
-__FBSDID("$FreeBSD: stable/11/contrib/libarchive/cpio/test/test_option_y.c 248616 2013-03-22 13:36:03Z mm $");
+__FBSDID("$FreeBSD: stable/10/contrib/libarchive/cpio/test/test_option_y.c 318483 2017-05-18 19:50:15Z mm $");
 
 DEFINE_TEST(test_option_y)
 {

Modified: trunk/contrib/libarchive/cpio/test/test_option_z.c
===================================================================
--- trunk/contrib/libarchive/cpio/test/test_option_z.c	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/cpio/test/test_option_z.c	2018-06-19 21:37:44 UTC (rev 11136)
@@ -23,7 +23,7 @@
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 #include "test.h"
-__FBSDID("$FreeBSD: stable/11/contrib/libarchive/cpio/test/test_option_z.c 248616 2013-03-22 13:36:03Z mm $");
+__FBSDID("$FreeBSD: stable/10/contrib/libarchive/cpio/test/test_option_z.c 318483 2017-05-18 19:50:15Z mm $");
 
 DEFINE_TEST(test_option_z)
 {

Added: trunk/contrib/libarchive/cpio/test/test_option_zstd.c
===================================================================
--- trunk/contrib/libarchive/cpio/test/test_option_zstd.c	                        (rev 0)
+++ trunk/contrib/libarchive/cpio/test/test_option_zstd.c	2018-06-19 21:37:44 UTC (rev 11136)
@@ -0,0 +1,85 @@
+/*-
+ * Copyright (c) 2017 Sean Purcell
+ * All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ * 1. Redistributions of source code must retain the above copyright
+ *    notice, this list of conditions and the following disclaimer.
+ * 2. Redistributions in binary form must reproduce the above copyright
+ *    notice, this list of conditions and the following disclaimer in the
+ *    documentation and/or other materials provided with the distribution.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE AUTHOR(S) ``AS IS'' AND ANY EXPRESS OR
+ * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
+ * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
+ * IN NO EVENT SHALL THE AUTHOR(S) BE LIABLE FOR ANY DIRECT, INDIRECT,
+ * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
+ * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+ * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+ * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
+ * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
+#include "test.h"
+__FBSDID("$FreeBSD: stable/10/contrib/libarchive/cpio/test/test_option_zstd.c 324418 2017-10-08 20:55:45Z mm $");
+
+DEFINE_TEST(test_option_zstd)
+{
+	char *p;
+	int r;
+	size_t s;
+
+	/* Create a file. */
+	assertMakeFile("f", 0644, "a");
+
+	/* Archive it with zstd compression. */
+	r = systemf("echo f | %s -o --zstd >archive.out 2>archive.err",
+	    testprog);
+	p = slurpfile(&s, "archive.err");
+	p[s] = '\0';
+	if (r != 0) {
+		if (strstr(p, "Unsupported compression") != NULL) {
+			skipping("This version of bsdcpio was compiled "
+			    "without zstd support");
+			goto done;
+		}
+		/* POSIX permits different handling of the spawnp
+		 * system call used to launch the subsidiary
+		 * program: */
+		/* Some systems fail immediately to spawn the new process. */
+		if (strstr(p, "Can't launch") != NULL && !canZstd()) {
+			skipping("This version of bsdcpio uses an external zstd program "
+			    "but no such program is available on this system.");
+			goto done;
+		}
+		/* Some systems successfully spawn the new process,
+		 * but fail to exec a program within that process.
+		 * This results in failure at the first attempt to
+		 * write. */
+		if (strstr(p, "Can't write") != NULL && !canZstd()) {
+			skipping("This version of bsdcpio uses an external zstd program "
+			    "but no such program is available on this system.");
+			goto done;
+		}
+		/* On some systems the error won't be detected until closing
+		   time, by a 127 exit error returned by waitpid. */
+		if (strstr(p, "Error closing") != NULL && !canZstd()) {
+			skipping("This version of bsdcpio uses an external zstd program "
+			    "but no such program is available on this system.");
+			return;
+		}
+		failure("--zstd option is broken: %s", p);
+		assertEqualInt(r, 0);
+		goto done;
+	}
+	free(p);
+	/* Check that the archive file has an zstd signature. */
+	p = slurpfile(&s, "archive.out");
+	assert(s > 2);
+	assertEqualMem(p, "\x28\xb5\x2f\xfd", 4);
+
+done:
+	free(p);
+}


Property changes on: trunk/contrib/libarchive/cpio/test/test_option_zstd.c
___________________________________________________________________
Added: svn:eol-style
## -0,0 +1 ##
+native
\ No newline at end of property
Added: svn:keywords
## -0,0 +1 ##
+MidnightBSD=%H
\ No newline at end of property
Added: svn:mime-type
## -0,0 +1 ##
+text/plain
\ No newline at end of property
Modified: trunk/contrib/libarchive/cpio/test/test_owner_parse.c
===================================================================
--- trunk/contrib/libarchive/cpio/test/test_owner_parse.c	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/cpio/test/test_owner_parse.c	2018-06-19 21:37:44 UTC (rev 11136)
@@ -23,7 +23,7 @@
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 #include "test.h"
-__FBSDID("$FreeBSD: stable/11/contrib/libarchive/cpio/test/test_owner_parse.c 232153 2012-02-25 10:58:02Z mm $");
+__FBSDID("$FreeBSD: stable/10/contrib/libarchive/cpio/test/test_owner_parse.c 311042 2017-01-02 01:43:11Z mm $");
 
 #include "../cpio.h"
 #include "err.h"

Modified: trunk/contrib/libarchive/cpio/test/test_passthrough_dotdot.c
===================================================================
--- trunk/contrib/libarchive/cpio/test/test_passthrough_dotdot.c	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/cpio/test/test_passthrough_dotdot.c	2018-06-19 21:37:44 UTC (rev 11136)
@@ -23,7 +23,7 @@
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 #include "test.h"
-__FBSDID("$FreeBSD: stable/11/contrib/libarchive/cpio/test/test_passthrough_dotdot.c 228763 2011-12-21 11:13:29Z mm $");
+__FBSDID("$FreeBSD: stable/10/contrib/libarchive/cpio/test/test_passthrough_dotdot.c 228763 2011-12-21 11:13:29Z mm $");
 
 /*
  * Verify that "cpio -p .." works.

Modified: trunk/contrib/libarchive/cpio/test/test_passthrough_reverse.c
===================================================================
--- trunk/contrib/libarchive/cpio/test/test_passthrough_reverse.c	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/cpio/test/test_passthrough_reverse.c	2018-06-19 21:37:44 UTC (rev 11136)
@@ -23,7 +23,7 @@
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 #include "test.h"
-__FBSDID("$FreeBSD: stable/11/contrib/libarchive/cpio/test/test_passthrough_reverse.c 228763 2011-12-21 11:13:29Z mm $");
+__FBSDID("$FreeBSD: stable/10/contrib/libarchive/cpio/test/test_passthrough_reverse.c 228763 2011-12-21 11:13:29Z mm $");
 
 /*
  * As reported by Bernd Walter:  Some people are in the habit of

Modified: trunk/contrib/libarchive/libarchive/archive.h
===================================================================
--- trunk/contrib/libarchive/libarchive/archive.h	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/libarchive/archive.h	2018-06-19 21:37:44 UTC (rev 11136)
@@ -22,7 +22,7 @@
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  *
- * $FreeBSD: stable/11/contrib/libarchive/libarchive/archive.h 302075 2016-06-22 07:49:59Z mm $
+ * $FreeBSD: stable/10/contrib/libarchive/libarchive/archive.h 324418 2017-10-08 20:55:45Z mm $
  */
 
 #ifndef ARCHIVE_H_INCLUDED
@@ -177,6 +177,7 @@
 __LA_DECL const char *  archive_liblzma_version(void);
 __LA_DECL const char *  archive_bzlib_version(void);
 __LA_DECL const char *  archive_liblz4_version(void);
+__LA_DECL const char *  archive_libzstd_version(void);
 
 /* Declare our basic types. */
 struct archive;
@@ -276,6 +277,7 @@
 #define	ARCHIVE_FILTER_LZOP	11
 #define	ARCHIVE_FILTER_GRZIP	12
 #define	ARCHIVE_FILTER_LZ4	13
+#define	ARCHIVE_FILTER_ZSTD	14
 
 #if ARCHIVE_VERSION_NUMBER < 4000000
 #define	ARCHIVE_COMPRESSION_NONE	ARCHIVE_FILTER_NONE
@@ -433,6 +435,7 @@
 __LA_DECL int archive_read_support_filter_rpm(struct archive *);
 __LA_DECL int archive_read_support_filter_uu(struct archive *);
 __LA_DECL int archive_read_support_filter_xz(struct archive *);
+__LA_DECL int archive_read_support_filter_zstd(struct archive *);
 
 __LA_DECL int archive_read_support_format_7zip(struct archive *);
 __LA_DECL int archive_read_support_format_all(struct archive *);
@@ -778,6 +781,7 @@
 		     const char *cmd);
 __LA_DECL int archive_write_add_filter_uuencode(struct archive *);
 __LA_DECL int archive_write_add_filter_xz(struct archive *);
+__LA_DECL int archive_write_add_filter_zstd(struct archive *);
 
 
 /* A convenience function to set the format based on the code or name. */

Modified: trunk/contrib/libarchive/libarchive/archive_acl.c
===================================================================
--- trunk/contrib/libarchive/libarchive/archive_acl.c	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/libarchive/archive_acl.c	2018-06-19 21:37:44 UTC (rev 11136)
@@ -1159,6 +1159,7 @@
 	switch (want_type) {
 	case ARCHIVE_ENTRY_ACL_TYPE_POSIX1E:
 		want_type = ARCHIVE_ENTRY_ACL_TYPE_ACCESS;
+		__LA_FALLTHROUGH;
 	case ARCHIVE_ENTRY_ACL_TYPE_ACCESS:
 	case ARCHIVE_ENTRY_ACL_TYPE_DEFAULT:
 		numfields = 5;
@@ -1626,6 +1627,7 @@
 	switch (want_type) {
 	case ARCHIVE_ENTRY_ACL_TYPE_POSIX1E:
 		want_type = ARCHIVE_ENTRY_ACL_TYPE_ACCESS;
+		__LA_FALLTHROUGH;
 	case ARCHIVE_ENTRY_ACL_TYPE_ACCESS:
 	case ARCHIVE_ENTRY_ACL_TYPE_DEFAULT:
 		numfields = 5;

Modified: trunk/contrib/libarchive/libarchive/archive_check_magic.c
===================================================================
--- trunk/contrib/libarchive/libarchive/archive_check_magic.c	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/libarchive/archive_check_magic.c	2018-06-19 21:37:44 UTC (rev 11136)
@@ -24,7 +24,7 @@
  */
 
 #include "archive_platform.h"
-__FBSDID("$FreeBSD: stable/11/contrib/libarchive/libarchive/archive_check_magic.c 238856 2012-07-28 06:38:44Z mm $");
+__FBSDID("$FreeBSD: stable/10/contrib/libarchive/libarchive/archive_check_magic.c 315433 2017-03-16 23:08:18Z mm $");
 
 #ifdef HAVE_SYS_TYPES_H
 #include <sys/types.h>

Modified: trunk/contrib/libarchive/libarchive/archive_cmdline.c
===================================================================
--- trunk/contrib/libarchive/libarchive/archive_cmdline.c	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/libarchive/archive_cmdline.c	2018-06-19 21:37:44 UTC (rev 11136)
@@ -100,10 +100,10 @@
 
 /*
  * Set up command line arguments.
- * Returns ARChIVE_OK if everything okey.
- * Returns ARChIVE_FAILED if there is a lack of the `"' terminator or an
+ * Returns ARCHIVE_OK if everything okey.
+ * Returns ARCHIVE_FAILED if there is a lack of the `"' terminator or an
  * empty command line.
- * Returns ARChIVE_FATAL if no memory.
+ * Returns ARCHIVE_FATAL if no memory.
  */
 int
 __archive_cmdline_parse(struct archive_cmdline *data, const char *cmd)

Modified: trunk/contrib/libarchive/libarchive/archive_crc32.h
===================================================================
--- trunk/contrib/libarchive/libarchive/archive_crc32.h	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/libarchive/archive_crc32.h	2018-06-19 21:37:44 UTC (rev 11136)
@@ -22,7 +22,7 @@
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  *
- * $FreeBSD: stable/11/contrib/libarchive/libarchive/archive_crc32.h 232153 2012-02-25 10:58:02Z mm $
+ * $FreeBSD: stable/10/contrib/libarchive/libarchive/archive_crc32.h 232153 2012-02-25 10:58:02Z mm $
  */
 
 #ifndef __LIBARCHIVE_BUILD

Modified: trunk/contrib/libarchive/libarchive/archive_cryptor_private.h
===================================================================
--- trunk/contrib/libarchive/libarchive/archive_cryptor_private.h	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/libarchive/archive_cryptor_private.h	2018-06-19 21:37:44 UTC (rev 11136)
@@ -64,7 +64,7 @@
 } archive_crypto_ctx;
 
 #elif defined(_WIN32) && !defined(__CYGWIN__) && defined(HAVE_BCRYPT_H)
-#include <Bcrypt.h>
+#include <bcrypt.h>
 
 /* Common in other bcrypt implementations, but missing from VS2008. */
 #ifndef BCRYPT_SUCCESS

Modified: trunk/contrib/libarchive/libarchive/archive_disk_acl_freebsd.c
===================================================================
--- trunk/contrib/libarchive/libarchive/archive_disk_acl_freebsd.c	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/libarchive/archive_disk_acl_freebsd.c	2018-06-19 21:37:44 UTC (rev 11136)
@@ -93,7 +93,9 @@
 	{ARCHIVE_ENTRY_ACL_ENTRY_INHERIT_ONLY, ACL_ENTRY_INHERIT_ONLY},
 	{ARCHIVE_ENTRY_ACL_ENTRY_SUCCESSFUL_ACCESS, ACL_ENTRY_SUCCESSFUL_ACCESS},
 	{ARCHIVE_ENTRY_ACL_ENTRY_FAILED_ACCESS, ACL_ENTRY_FAILED_ACCESS},
+#ifdef ACL_ENTRY_INHERITED
 	{ARCHIVE_ENTRY_ACL_ENTRY_INHERITED, ACL_ENTRY_INHERITED}
+#endif
 };
 
 static const int acl_nfs4_flag_map_size =

Modified: trunk/contrib/libarchive/libarchive/archive_endian.h
===================================================================
--- trunk/contrib/libarchive/libarchive/archive_endian.h	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/libarchive/archive_endian.h	2018-06-19 21:37:44 UTC (rev 11136)
@@ -23,7 +23,7 @@
  * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
  * SUCH DAMAGE.
  *
- * $FreeBSD: stable/11/contrib/libarchive/libarchive/archive_endian.h 299529 2016-05-12 10:16:16Z mm $
+ * $FreeBSD: stable/10/contrib/libarchive/libarchive/archive_endian.h 302001 2016-06-17 22:40:10Z mm $
  *
  * Borrowed from FreeBSD's <sys/endian.h>
  */

Modified: trunk/contrib/libarchive/libarchive/archive_entry.3
===================================================================
--- trunk/contrib/libarchive/libarchive/archive_entry.3	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/libarchive/archive_entry.3	2018-06-19 21:37:44 UTC (rev 11136)
@@ -23,7 +23,7 @@
 .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
 .\" SUCH DAMAGE.
 .\"
-.\" $FreeBSD: stable/11/contrib/libarchive/libarchive/archive_entry.3 299529 2016-05-12 10:16:16Z mm $
+.\" $FreeBSD: stable/10/contrib/libarchive/libarchive/archive_entry.3 316338 2017-03-31 20:17:30Z mm $
 .\"
 .Dd February 2, 2012
 .Dt ARCHIVE_ENTRY 3

Modified: trunk/contrib/libarchive/libarchive/archive_entry.c
===================================================================
--- trunk/contrib/libarchive/libarchive/archive_entry.c	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/libarchive/archive_entry.c	2018-06-19 21:37:44 UTC (rev 11136)
@@ -25,7 +25,7 @@
  */
 
 #include "archive_platform.h"
-__FBSDID("$FreeBSD: stable/11/contrib/libarchive/libarchive/archive_entry.c 299529 2016-05-12 10:16:16Z mm $");
+__FBSDID("$FreeBSD: stable/10/contrib/libarchive/libarchive/archive_entry.c 316338 2017-03-31 20:17:30Z mm $");
 
 #ifdef HAVE_SYS_STAT_H
 #include <sys/stat.h>

Modified: trunk/contrib/libarchive/libarchive/archive_entry.h
===================================================================
--- trunk/contrib/libarchive/libarchive/archive_entry.h	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/libarchive/archive_entry.h	2018-06-19 21:37:44 UTC (rev 11136)
@@ -23,7 +23,7 @@
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  *
- * $FreeBSD: stable/11/contrib/libarchive/libarchive/archive_entry.h 302075 2016-06-22 07:49:59Z mm $
+ * $FreeBSD: stable/10/contrib/libarchive/libarchive/archive_entry.h 321304 2017-07-20 20:16:18Z mm $
  */
 
 #ifndef ARCHIVE_ENTRY_H_INCLUDED

Modified: trunk/contrib/libarchive/libarchive/archive_entry_copy_stat.c
===================================================================
--- trunk/contrib/libarchive/libarchive/archive_entry_copy_stat.c	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/libarchive/archive_entry_copy_stat.c	2018-06-19 21:37:44 UTC (rev 11136)
@@ -24,7 +24,7 @@
  */
 
 #include "archive_platform.h"
-__FBSDID("$FreeBSD: stable/11/contrib/libarchive/libarchive/archive_entry_copy_stat.c 299529 2016-05-12 10:16:16Z mm $");
+__FBSDID("$FreeBSD: stable/10/contrib/libarchive/libarchive/archive_entry_copy_stat.c 302001 2016-06-17 22:40:10Z mm $");
 
 #ifdef HAVE_SYS_STAT_H
 #include <sys/stat.h>

Modified: trunk/contrib/libarchive/libarchive/archive_entry_link_resolver.c
===================================================================
--- trunk/contrib/libarchive/libarchive/archive_entry_link_resolver.c	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/libarchive/archive_entry_link_resolver.c	2018-06-19 21:37:44 UTC (rev 11136)
@@ -24,7 +24,7 @@
  */
 
 #include "archive_platform.h"
-__FBSDID("$FreeBSD: stable/11/contrib/libarchive/libarchive/archive_entry_link_resolver.c 248616 2013-03-22 13:36:03Z mm $");
+__FBSDID("$FreeBSD: stable/10/contrib/libarchive/libarchive/archive_entry_link_resolver.c 248616 2013-03-22 13:36:03Z mm $");
 
 #ifdef HAVE_SYS_STAT_H
 #include <sys/stat.h>

Modified: trunk/contrib/libarchive/libarchive/archive_entry_private.h
===================================================================
--- trunk/contrib/libarchive/libarchive/archive_entry_private.h	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/libarchive/archive_entry_private.h	2018-06-19 21:37:44 UTC (rev 11136)
@@ -22,7 +22,7 @@
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  *
- * $FreeBSD: stable/11/contrib/libarchive/libarchive/archive_entry_private.h 299529 2016-05-12 10:16:16Z mm $
+ * $FreeBSD: stable/10/contrib/libarchive/libarchive/archive_entry_private.h 302001 2016-06-17 22:40:10Z mm $
  */
 
 #ifndef __LIBARCHIVE_BUILD

Modified: trunk/contrib/libarchive/libarchive/archive_entry_stat.c
===================================================================
--- trunk/contrib/libarchive/libarchive/archive_entry_stat.c	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/libarchive/archive_entry_stat.c	2018-06-19 21:37:44 UTC (rev 11136)
@@ -24,7 +24,7 @@
  */
 
 #include "archive_platform.h"
-__FBSDID("$FreeBSD: stable/11/contrib/libarchive/libarchive/archive_entry_stat.c 238856 2012-07-28 06:38:44Z mm $");
+__FBSDID("$FreeBSD: stable/10/contrib/libarchive/libarchive/archive_entry_stat.c 238856 2012-07-28 06:38:44Z mm $");
 
 #ifdef HAVE_SYS_STAT_H
 #include <sys/stat.h>

Modified: trunk/contrib/libarchive/libarchive/archive_entry_strmode.c
===================================================================
--- trunk/contrib/libarchive/libarchive/archive_entry_strmode.c	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/libarchive/archive_entry_strmode.c	2018-06-19 21:37:44 UTC (rev 11136)
@@ -24,7 +24,7 @@
  */
 
 #include "archive_platform.h"
-__FBSDID("$FreeBSD: stable/11/contrib/libarchive/libarchive/archive_entry_strmode.c 228763 2011-12-21 11:13:29Z mm $");
+__FBSDID("$FreeBSD: stable/10/contrib/libarchive/libarchive/archive_entry_strmode.c 313571 2017-02-11 00:56:18Z mm $");
 
 #ifdef HAVE_SYS_STAT_H
 #include <sys/stat.h>

Modified: trunk/contrib/libarchive/libarchive/archive_entry_xattr.c
===================================================================
--- trunk/contrib/libarchive/libarchive/archive_entry_xattr.c	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/libarchive/archive_entry_xattr.c	2018-06-19 21:37:44 UTC (rev 11136)
@@ -24,7 +24,7 @@
  */
 
 #include "archive_platform.h"
-__FBSDID("$FreeBSD: stable/11/contrib/libarchive/libarchive/archive_entry_xattr.c 302075 2016-06-22 07:49:59Z mm $");
+__FBSDID("$FreeBSD: stable/10/contrib/libarchive/libarchive/archive_entry_xattr.c 302295 2016-06-30 12:44:15Z mm $");
 
 #ifdef HAVE_SYS_STAT_H
 #include <sys/stat.h>

Modified: trunk/contrib/libarchive/libarchive/archive_getdate.h
===================================================================
--- trunk/contrib/libarchive/libarchive/archive_getdate.h	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/libarchive/archive_getdate.h	2018-06-19 21:37:44 UTC (rev 11136)
@@ -22,7 +22,7 @@
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  *
- * $FreeBSD: stable/11/contrib/libarchive/libarchive/archive_getdate.h 299529 2016-05-12 10:16:16Z mm $
+ * $FreeBSD: stable/10/contrib/libarchive/libarchive/archive_getdate.h 302001 2016-06-17 22:40:10Z mm $
  */
 
 #ifndef __LIBARCHIVE_BUILD

Modified: trunk/contrib/libarchive/libarchive/archive_match.c
===================================================================
--- trunk/contrib/libarchive/libarchive/archive_match.c	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/libarchive/archive_match.c	2018-06-19 21:37:44 UTC (rev 11136)
@@ -1582,7 +1582,7 @@
  */
 
 int
-archive_match_include_uid(struct archive *_a, int64_t uid)
+archive_match_include_uid(struct archive *_a, la_int64_t uid)
 {
 	struct archive_match *a;
 
@@ -1593,7 +1593,7 @@
 }
 
 int
-archive_match_include_gid(struct archive *_a, int64_t gid)
+archive_match_include_gid(struct archive *_a, la_int64_t gid)
 {
 	struct archive_match *a;
 

Modified: trunk/contrib/libarchive/libarchive/archive_platform.h
===================================================================
--- trunk/contrib/libarchive/libarchive/archive_platform.h	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/libarchive/archive_platform.h	2018-06-19 21:37:44 UTC (rev 11136)
@@ -22,7 +22,7 @@
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  *
- * $FreeBSD: stable/11/contrib/libarchive/libarchive/archive_platform.h 306321 2016-09-25 22:02:27Z mm $
+ * $FreeBSD: stable/10/contrib/libarchive/libarchive/archive_platform.h 328828 2018-02-03 02:17:25Z mm $
  */
 
 /* !!ONLY FOR USE INTERNALLY TO LIBARCHIVE!! */
@@ -52,6 +52,17 @@
 #error Oops: No config.h and no pre-built configuration in archive_platform.h.
 #endif
 
+/* On macOS check for some symbols based on the deployment target version.  */
+#if defined(__APPLE__)
+# undef HAVE_FUTIMENS
+# undef HAVE_UTIMENSAT
+# include <AvailabilityMacros.h>
+# if MAC_OS_X_VERSION_MIN_REQUIRED >= 101300
+#  define HAVE_FUTIMENS 1
+#  define HAVE_UTIMENSAT 1
+# endif
+#endif
+
 /* It should be possible to get rid of this by extending the feature-test
  * macros to cover Windows API functions, probably along with non-trivial
  * refactoring of code to find structures that sit more cleanly on top of
@@ -180,4 +191,10 @@
 #define	ARCHIVE_ERRNO_MISC (-1)
 #endif
 
+#if defined(__GNUC__) && (__GNUC__ >= 7)
+#define	__LA_FALLTHROUGH	__attribute__((fallthrough))
+#else
+#define	__LA_FALLTHROUGH
+#endif
+
 #endif /* !ARCHIVE_PLATFORM_H_INCLUDED */

Modified: trunk/contrib/libarchive/libarchive/archive_platform_acl.h
===================================================================
--- trunk/contrib/libarchive/libarchive/archive_platform_acl.h	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/libarchive/archive_platform_acl.h	2018-06-19 21:37:44 UTC (rev 11136)
@@ -22,7 +22,7 @@
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  *
- * $FreeBSD$
+ * $FreeBSD: stable/10/contrib/libarchive/libarchive/archive_platform_acl.h 316338 2017-03-31 20:17:30Z mm $
  */
 
 /* !!ONLY FOR USE INTERNALLY TO LIBARCHIVE!! */

Modified: trunk/contrib/libarchive/libarchive/archive_platform_xattr.h
===================================================================
--- trunk/contrib/libarchive/libarchive/archive_platform_xattr.h	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/libarchive/archive_platform_xattr.h	2018-06-19 21:37:44 UTC (rev 11136)
@@ -22,7 +22,7 @@
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  *
- * $FreeBSD$
+ * $FreeBSD: stable/10/contrib/libarchive/libarchive/archive_platform_xattr.h 316338 2017-03-31 20:17:30Z mm $
  */
 
 /* !!ONLY FOR USE INTERNALLY TO LIBARCHIVE!! */

Modified: trunk/contrib/libarchive/libarchive/archive_ppmd7.c
===================================================================
--- trunk/contrib/libarchive/libarchive/archive_ppmd7.c	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/libarchive/archive_ppmd7.c	2018-06-19 21:37:44 UTC (rev 11136)
@@ -115,14 +115,14 @@
   memset(p->HB2Flag + 0x40, 8, 0x100 - 0x40);
 }
 
-static void Ppmd7_Free(CPpmd7 *p, ISzAlloc *alloc)
+static void Ppmd7_Free(CPpmd7 *p)
 {
-  alloc->Free(alloc, p->Base);
+  free(p->Base);
   p->Size = 0;
   p->Base = 0;
 }
 
-static Bool Ppmd7_Alloc(CPpmd7 *p, UInt32 size, ISzAlloc *alloc)
+static Bool Ppmd7_Alloc(CPpmd7 *p, UInt32 size)
 {
   if (p->Base == 0 || p->Size != size)
   {
@@ -131,7 +131,7 @@
     if (size < UNIT_SIZE) {
       return False;
     }
-    Ppmd7_Free(p, alloc);
+    Ppmd7_Free(p);
     p->AlignOffset =
       #ifdef PPMD_32BIT
         (4 - size) & 3;
@@ -138,7 +138,7 @@
       #else
         4 - (size & 3);
       #endif
-    if ((p->Base = (Byte *)alloc->Alloc(alloc, p->AlignOffset + size
+    if ((p->Base = (Byte *)malloc(p->AlignOffset + size
         #ifndef PPMD_32BIT
         + UNIT_SIZE
         #endif

Modified: trunk/contrib/libarchive/libarchive/archive_ppmd7_private.h
===================================================================
--- trunk/contrib/libarchive/libarchive/archive_ppmd7_private.h	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/libarchive/archive_ppmd7_private.h	2018-06-19 21:37:44 UTC (rev 11136)
@@ -95,8 +95,8 @@
 {
   /* Base Functions */
   void (*Ppmd7_Construct)(CPpmd7 *p);
-  Bool (*Ppmd7_Alloc)(CPpmd7 *p, UInt32 size, ISzAlloc *alloc);
-  void (*Ppmd7_Free)(CPpmd7 *p, ISzAlloc *alloc);
+  Bool (*Ppmd7_Alloc)(CPpmd7 *p, UInt32 size);
+  void (*Ppmd7_Free)(CPpmd7 *p);
   void (*Ppmd7_Init)(CPpmd7 *p, unsigned maxOrder);
   #define Ppmd7_WasAllocated(p) ((p)->Base != NULL)
 

Modified: trunk/contrib/libarchive/libarchive/archive_ppmd_private.h
===================================================================
--- trunk/contrib/libarchive/libarchive/archive_ppmd_private.h	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/libarchive/archive_ppmd_private.h	2018-06-19 21:37:44 UTC (rev 11136)
@@ -69,13 +69,6 @@
   void (*Write)(void *p, Byte b);
 } IByteOut;
 
-
-typedef struct
-{
-  void *(*Alloc)(void *p, size_t size);
-  void (*Free)(void *p, void *address); /* address can be 0 */
-} ISzAlloc;
-
 /*** End defined in Types.h ***/
 /*** Begin defined in CpuArch.h ***/
 

Modified: trunk/contrib/libarchive/libarchive/archive_private.h
===================================================================
--- trunk/contrib/libarchive/libarchive/archive_private.h	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/libarchive/archive_private.h	2018-06-19 21:37:44 UTC (rev 11136)
@@ -22,7 +22,7 @@
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  *
- * $FreeBSD: stable/11/contrib/libarchive/libarchive/archive_private.h 299529 2016-05-12 10:16:16Z mm $
+ * $FreeBSD: stable/10/contrib/libarchive/libarchive/archive_private.h 302001 2016-06-17 22:40:10Z mm $
  */
 
 #ifndef __LIBARCHIVE_BUILD

Modified: trunk/contrib/libarchive/libarchive/archive_random.c
===================================================================
--- trunk/contrib/libarchive/libarchive/archive_random.c	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/libarchive/archive_random.c	2018-06-19 21:37:44 UTC (rev 11136)
@@ -24,7 +24,7 @@
  */
 
 #include "archive_platform.h"
-__FBSDID("$FreeBSD: stable/11/contrib/libarchive/libarchive/archive_random.c 299529 2016-05-12 10:16:16Z mm $");
+__FBSDID("$FreeBSD: stable/10/contrib/libarchive/libarchive/archive_random.c 316338 2017-03-31 20:17:30Z mm $");
 
 #ifdef HAVE_STDLIB_H
 #include <stdlib.h>

Modified: trunk/contrib/libarchive/libarchive/archive_read.3
===================================================================
--- trunk/contrib/libarchive/libarchive/archive_read.3	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/libarchive/archive_read.3	2018-06-19 21:37:44 UTC (rev 11136)
@@ -22,7 +22,7 @@
 .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
 .\" SUCH DAMAGE.
 .\"
-.\" $FreeBSD: stable/11/contrib/libarchive/libarchive/archive_read.3 299529 2016-05-12 10:16:16Z mm $
+.\" $FreeBSD: stable/10/contrib/libarchive/libarchive/archive_read.3 302001 2016-06-17 22:40:10Z mm $
 .\"
 .Dd February 2, 2012
 .Dt ARCHIVE_READ 3

Modified: trunk/contrib/libarchive/libarchive/archive_read.c
===================================================================
--- trunk/contrib/libarchive/libarchive/archive_read.c	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/libarchive/archive_read.c	2018-06-19 21:37:44 UTC (rev 11136)
@@ -32,7 +32,7 @@
  */
 
 #include "archive_platform.h"
-__FBSDID("$FreeBSD: stable/11/contrib/libarchive/libarchive/archive_read.c 299529 2016-05-12 10:16:16Z mm $");
+__FBSDID("$FreeBSD: stable/10/contrib/libarchive/libarchive/archive_read.c 328828 2018-02-03 02:17:25Z mm $");
 
 #ifdef HAVE_ERRNO_H
 #include <errno.h>
@@ -120,7 +120,8 @@
  * Record the do-not-extract-to file. This belongs in archive_read_extract.c.
  */
 void
-archive_read_extract_set_skip_file(struct archive *_a, int64_t d, int64_t i)
+archive_read_extract_set_skip_file(struct archive *_a, la_int64_t d,
+    la_int64_t i)
 {
 	struct archive_read *a = (struct archive_read *)_a;
 
@@ -747,7 +748,7 @@
  * Return the file offset (within the uncompressed data stream) where
  * the last header started.
  */
-int64_t
+la_int64_t
 archive_read_header_position(struct archive *_a)
 {
 	struct archive_read *a = (struct archive_read *)_a;
@@ -943,7 +944,7 @@
 	return (r);
 }
 
-int64_t
+la_int64_t
 archive_seek_data(struct archive *_a, int64_t offset, int whence)
 {
 	struct archive_read *a = (struct archive_read *)_a;
@@ -1626,7 +1627,8 @@
 	switch (whence) {
 	case SEEK_CUR:
 		/* Adjust the offset and use SEEK_SET instead */
-		offset += filter->position;			
+		offset += filter->position;
+		__LA_FALLTHROUGH;
 	case SEEK_SET:
 		cursor = 0;
 		while (1)

Modified: trunk/contrib/libarchive/libarchive/archive_read_add_passphrase.3
===================================================================
--- trunk/contrib/libarchive/libarchive/archive_read_add_passphrase.3	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/libarchive/archive_read_add_passphrase.3	2018-06-19 21:37:44 UTC (rev 11136)
@@ -22,7 +22,7 @@
 .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
 .\" SUCH DAMAGE.
 .\"
-.\" $FreeBSD: stable/11/contrib/libarchive/libarchive/archive_read_add_passphrase.3 299529 2016-05-12 10:16:16Z mm $
+.\" $FreeBSD: stable/10/contrib/libarchive/libarchive/archive_read_add_passphrase.3 302001 2016-06-17 22:40:10Z mm $
 .\"
 .Dd September 14, 2014
 .Dt ARCHIVE_READ_ADD_PASSPHRASE 3

Modified: trunk/contrib/libarchive/libarchive/archive_read_add_passphrase.c
===================================================================
--- trunk/contrib/libarchive/libarchive/archive_read_add_passphrase.c	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/libarchive/archive_read_add_passphrase.c	2018-06-19 21:37:44 UTC (rev 11136)
@@ -24,7 +24,7 @@
  */
 
 #include "archive_platform.h"
-__FBSDID("$FreeBSD: stable/11/contrib/libarchive/libarchive/archive_read_add_passphrase.c 305188 2016-09-01 07:53:59Z mm $");
+__FBSDID("$FreeBSD: stable/10/contrib/libarchive/libarchive/archive_read_add_passphrase.c 305192 2016-09-01 12:01:23Z mm $");
 
 #ifdef HAVE_ERRNO_H
 #include <errno.h>

Modified: trunk/contrib/libarchive/libarchive/archive_read_append_filter.c
===================================================================
--- trunk/contrib/libarchive/libarchive/archive_read_append_filter.c	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/libarchive/archive_read_append_filter.c	2018-06-19 21:37:44 UTC (rev 11136)
@@ -89,6 +89,10 @@
       strcpy(str, "lz4");
       r1 = archive_read_support_filter_lz4(_a);
       break;
+    case ARCHIVE_FILTER_ZSTD:
+      strcpy(str, "zstd");
+      r1 = archive_read_support_filter_zstd(_a);
+      break;
     case ARCHIVE_FILTER_LZIP:
       strcpy(str, "lzip");
       r1 = archive_read_support_filter_lzip(_a);

Modified: trunk/contrib/libarchive/libarchive/archive_read_data_into_fd.c
===================================================================
--- trunk/contrib/libarchive/libarchive/archive_read_data_into_fd.c	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/libarchive/archive_read_data_into_fd.c	2018-06-19 21:37:44 UTC (rev 11136)
@@ -24,7 +24,7 @@
  */
 
 #include "archive_platform.h"
-__FBSDID("$FreeBSD: stable/11/contrib/libarchive/libarchive/archive_read_data_into_fd.c 232153 2012-02-25 10:58:02Z mm $");
+__FBSDID("$FreeBSD: stable/10/contrib/libarchive/libarchive/archive_read_data_into_fd.c 232153 2012-02-25 10:58:02Z mm $");
 
 #ifdef HAVE_SYS_TYPES_H
 #include <sys/types.h>

Modified: trunk/contrib/libarchive/libarchive/archive_read_disk.3
===================================================================
--- trunk/contrib/libarchive/libarchive/archive_read_disk.3	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/libarchive/archive_read_disk.3	2018-06-19 21:37:44 UTC (rev 11136)
@@ -22,14 +22,13 @@
 .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
 .\" SUCH DAMAGE.
 .\"
-.\" $FreeBSD: stable/11/contrib/libarchive/libarchive/archive_read_disk.3 238856 2012-07-28 06:38:44Z mm $
+.\" $FreeBSD: stable/10/contrib/libarchive/libarchive/archive_read_disk.3 315433 2017-03-16 23:08:18Z mm $
 .\"
-.Dd April 3, 2017
+.Dd December 30, 2016
 .Dt ARCHIVE_READ_DISK 3
 .Os
 .Sh NAME
 .Nm archive_read_disk_new ,
-.Nm archive_read_disk_set_behavior ,
 .Nm archive_read_disk_set_symlink_logical ,
 .Nm archive_read_disk_set_symlink_physical ,
 .Nm archive_read_disk_set_symlink_hybrid ,
@@ -47,8 +46,6 @@
 .Ft struct archive *
 .Fn archive_read_disk_new "void"
 .Ft int
-.Fn archive_read_disk_set_behavior "struct archive *" "int"
-.Ft int
 .Fn archive_read_disk_set_symlink_logical "struct archive *"
 .Ft int
 .Fn archive_read_disk_set_symlink_physical "struct archive *"
@@ -92,51 +89,6 @@
 Allocates and initializes a
 .Tn struct archive
 object suitable for reading object information from disk.
-.It Fn archive_read_disk_set_behavior
-Configures various behavior options when reading entries from disk.
-The flags field consists of a bitwise OR of one or more of the
-following values:
-.Bl -tag -compact -width "indent"
-.It Cm ARCHIVE_READDISK_HONOR_NODUMP
-Skip files and directories with the nodump file attribute (file flag) set.
-By default, the nodump file atrribute is ignored.
-.It Cm ARCHIVE_READDISK_MAC_COPYFILE
-Mac OS X specific. Read metadata (ACLs and extended attributes) with
-.Xr copyfile 3 .
-By default, metadata is read using
-.Xr copyfile 3 .
-.It Cm ARCHIVE_READDISK_NO_ACL
-Do not read Access Control Lists.
-By default, ACLs are read from disk.
-.It Cm ARCHIVE_READDISK_NO_FFLAGS
-Do not read file attributes (file flags).
-By default, file attributes are read from disk.
-See
-.Xr chattr 1
-.Pq Linux
-or
-.Xr chflags 1
-.Pq FreeBSD, Mac OS X
-for more information on file attributes.
-.It Cm ARCHIVE_READDISK_NO_TRAVERSE_MOUNTS
-Do not traverse mount points.
-By defaut, moint points are traversed.
-.It Cm ARCHIVE_READDISK_NO_XATTR
-Do not read extended file attributes (xattrs).
-By default, extended file attributes are read from disk.
-See
-.Xr xattr 7
-.Pq Linux ,
-.Xr xattr 2
-.Pq Mac OS X ,
-or
-.Xr getextattr 8
-.Pq FreeBSD
-for more information on extended file attributes.
-.It Cm ARCHIVE_READDISK_RESTORE_ATIME
-Restore access time of traversed files.
-By default, access time of traversed files is not restored.
-.El
 .It Xo
 .Fn archive_read_disk_set_symlink_logical ,
 .Fn archive_read_disk_set_symlink_physical ,

Modified: trunk/contrib/libarchive/libarchive/archive_read_disk_entry_from_file.c
===================================================================
--- trunk/contrib/libarchive/libarchive/archive_read_disk_entry_from_file.c	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/libarchive/archive_read_disk_entry_from_file.c	2018-06-19 21:37:44 UTC (rev 11136)
@@ -127,7 +127,7 @@
 /*
  * Enter working directory and return working pathname of archive_entry.
  * If a pointer to an integer is provided and its value is below zero
- * open a file descriptor on this pahtname.
+ * open a file descriptor on this pathname.
  */
 const char *
 archive_read_disk_entry_setup_path(struct archive_read_disk *a,
@@ -613,21 +613,9 @@
 	}
 
 	for (p = list; (p - list) < list_size; p += strlen(p) + 1) {
-#if ARCHIVE_XATTR_LINUX
-		/* Linux: skip POSIX.1e ACL extended attributes */
-		if (strncmp(p, "system.", 7) == 0 &&
-		   (strcmp(p + 7, "posix_acl_access") == 0 ||
-		    strcmp(p + 7, "posix_acl_default") == 0))
+		if (strncmp(p, "system.", 7) == 0 ||
+				strncmp(p, "xfsroot.", 8) == 0)
 			continue;
-		if (strncmp(p, "trusted.SGI_", 12) == 0 &&
-		   (strcmp(p + 12, "ACL_DEFAULT") == 0 ||
-		    strcmp(p + 12, "ACL_FILE") == 0))
-			continue;
-
-		/* Linux: xfsroot namespace is obsolete and unsupported */
-		if (strncmp(p, "xfsroot.", 8) == 0)
-			continue;
-#endif
 		setup_xattr(a, entry, p, *fd, path);
 	}
 

Modified: trunk/contrib/libarchive/libarchive/archive_read_disk_posix.c
===================================================================
--- trunk/contrib/libarchive/libarchive/archive_read_disk_posix.c	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/libarchive/archive_read_disk_posix.c	2018-06-19 21:37:44 UTC (rev 11136)
@@ -387,7 +387,7 @@
 }
 
 const char *
-archive_read_disk_gname(struct archive *_a, int64_t gid)
+archive_read_disk_gname(struct archive *_a, la_int64_t gid)
 {
 	struct archive_read_disk *a = (struct archive_read_disk *)_a;
 	if (ARCHIVE_OK != __archive_check_magic(_a, ARCHIVE_READ_DISK_MAGIC,
@@ -399,7 +399,7 @@
 }
 
 const char *
-archive_read_disk_uname(struct archive *_a, int64_t uid)
+archive_read_disk_uname(struct archive *_a, la_int64_t uid)
 {
 	struct archive_read_disk *a = (struct archive_read_disk *)_a;
 	if (ARCHIVE_OK != __archive_check_magic(_a, ARCHIVE_READ_DISK_MAGIC,
@@ -413,7 +413,7 @@
 int
 archive_read_disk_set_gname_lookup(struct archive *_a,
     void *private_data,
-    const char * (*lookup_gname)(void *private, int64_t gid),
+    const char * (*lookup_gname)(void *private, la_int64_t gid),
     void (*cleanup_gname)(void *private))
 {
 	struct archive_read_disk *a = (struct archive_read_disk *)_a;
@@ -432,7 +432,7 @@
 int
 archive_read_disk_set_uname_lookup(struct archive *_a,
     void *private_data,
-    const char * (*lookup_uname)(void *private, int64_t uid),
+    const char * (*lookup_uname)(void *private, la_int64_t uid),
     void (*cleanup_uname)(void *private))
 {
 	struct archive_read_disk *a = (struct archive_read_disk *)_a;

Modified: trunk/contrib/libarchive/libarchive/archive_read_disk_private.h
===================================================================
--- trunk/contrib/libarchive/libarchive/archive_read_disk_private.h	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/libarchive/archive_read_disk_private.h	2018-06-19 21:37:44 UTC (rev 11136)
@@ -23,7 +23,7 @@
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  *
- * $FreeBSD: stable/11/contrib/libarchive/libarchive/archive_read_disk_private.h 299529 2016-05-12 10:16:16Z mm $
+ * $FreeBSD: stable/10/contrib/libarchive/libarchive/archive_read_disk_private.h 316338 2017-03-31 20:17:30Z mm $
  */
 
 #ifndef __LIBARCHIVE_BUILD

Modified: trunk/contrib/libarchive/libarchive/archive_read_disk_set_standard_lookup.c
===================================================================
--- trunk/contrib/libarchive/libarchive/archive_read_disk_set_standard_lookup.c	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/libarchive/archive_read_disk_set_standard_lookup.c	2018-06-19 21:37:44 UTC (rev 11136)
@@ -24,7 +24,7 @@
  */
 
 #include "archive_platform.h"
-__FBSDID("$FreeBSD: stable/11/contrib/libarchive/libarchive/archive_read_disk_set_standard_lookup.c 299529 2016-05-12 10:16:16Z mm $");
+__FBSDID("$FreeBSD: stable/10/contrib/libarchive/libarchive/archive_read_disk_set_standard_lookup.c 307798 2016-10-22 21:41:28Z mm $");
 
 #ifdef HAVE_SYS_TYPES_H
 #include <sys/types.h>

Modified: trunk/contrib/libarchive/libarchive/archive_read_extract.c
===================================================================
--- trunk/contrib/libarchive/libarchive/archive_read_extract.c	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/libarchive/archive_read_extract.c	2018-06-19 21:37:44 UTC (rev 11136)
@@ -24,7 +24,7 @@
  */
 
 #include "archive_platform.h"
-__FBSDID("$FreeBSD: stable/11/contrib/libarchive/libarchive/archive_read_extract.c 299529 2016-05-12 10:16:16Z mm $");
+__FBSDID("$FreeBSD: stable/10/contrib/libarchive/libarchive/archive_read_extract.c 302001 2016-06-17 22:40:10Z mm $");
 
 #ifdef HAVE_ERRNO_H
 #include <errno.h>

Modified: trunk/contrib/libarchive/libarchive/archive_read_extract2.c
===================================================================
--- trunk/contrib/libarchive/libarchive/archive_read_extract2.c	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/libarchive/archive_read_extract2.c	2018-06-19 21:37:44 UTC (rev 11136)
@@ -24,7 +24,7 @@
  */
 
 #include "archive_platform.h"
-__FBSDID("$FreeBSD: stable/11/contrib/libarchive/libarchive/archive_read_extract2.c 299529 2016-05-12 10:16:16Z mm $");
+__FBSDID("$FreeBSD: stable/10/contrib/libarchive/libarchive/archive_read_extract2.c 311042 2017-01-02 01:43:11Z mm $");
 
 #ifdef HAVE_SYS_TYPES_H
 #include <sys/types.h>

Modified: trunk/contrib/libarchive/libarchive/archive_read_filter.3
===================================================================
--- trunk/contrib/libarchive/libarchive/archive_read_filter.3	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/libarchive/archive_read_filter.3	2018-06-19 21:37:44 UTC (rev 11136)
@@ -38,6 +38,7 @@
 .Nm archive_read_support_filter_rpm ,
 .Nm archive_read_support_filter_uu ,
 .Nm archive_read_support_filter_xz ,
+.Nm archive_read_support_filter_zstd ,
 .Nm archive_read_support_filter_program ,
 .Nm archive_read_support_filter_program_signature
 .Nd functions for reading streaming archives
@@ -73,6 +74,8 @@
 .Ft int
 .Fn archive_read_support_filter_xz "struct archive *"
 .Ft int
+.Fn archive_read_support_filter_zstd "struct archive *"
+.Ft int
 .Fo archive_read_support_filter_program
 .Fa "struct archive *"
 .Fa "const char *cmd"
@@ -99,7 +102,8 @@
 .Fn archive_read_support_filter_none ,
 .Fn archive_read_support_filter_rpm ,
 .Fn archive_read_support_filter_uu ,
-.Fn archive_read_support_filter_xz
+.Fn archive_read_support_filter_xz ,
+.Fn archive_read_support_filter_zstd ,
 .Xc
 Enables auto-detection code and decompression support for the
 specified compression.

Modified: trunk/contrib/libarchive/libarchive/archive_read_open_fd.c
===================================================================
--- trunk/contrib/libarchive/libarchive/archive_read_open_fd.c	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/libarchive/archive_read_open_fd.c	2018-06-19 21:37:44 UTC (rev 11136)
@@ -24,7 +24,7 @@
  */
 
 #include "archive_platform.h"
-__FBSDID("$FreeBSD: stable/11/contrib/libarchive/libarchive/archive_read_open_fd.c 299529 2016-05-12 10:16:16Z mm $");
+__FBSDID("$FreeBSD: stable/10/contrib/libarchive/libarchive/archive_read_open_fd.c 302001 2016-06-17 22:40:10Z mm $");
 
 #ifdef HAVE_SYS_STAT_H
 #include <sys/stat.h>

Modified: trunk/contrib/libarchive/libarchive/archive_read_open_file.c
===================================================================
--- trunk/contrib/libarchive/libarchive/archive_read_open_file.c	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/libarchive/archive_read_open_file.c	2018-06-19 21:37:44 UTC (rev 11136)
@@ -24,7 +24,7 @@
  */
 
 #include "archive_platform.h"
-__FBSDID("$FreeBSD: stable/11/contrib/libarchive/libarchive/archive_read_open_file.c 299529 2016-05-12 10:16:16Z mm $");
+__FBSDID("$FreeBSD: stable/10/contrib/libarchive/libarchive/archive_read_open_file.c 302001 2016-06-17 22:40:10Z mm $");
 
 #ifdef HAVE_SYS_STAT_H
 #include <sys/stat.h>

Modified: trunk/contrib/libarchive/libarchive/archive_read_open_filename.c
===================================================================
--- trunk/contrib/libarchive/libarchive/archive_read_open_filename.c	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/libarchive/archive_read_open_filename.c	2018-06-19 21:37:44 UTC (rev 11136)
@@ -24,7 +24,7 @@
  */
 
 #include "archive_platform.h"
-__FBSDID("$FreeBSD: stable/11/contrib/libarchive/libarchive/archive_read_open_filename.c 299529 2016-05-12 10:16:16Z mm $");
+__FBSDID("$FreeBSD: stable/10/contrib/libarchive/libarchive/archive_read_open_filename.c 313571 2017-02-11 00:56:18Z mm $");
 
 #ifdef HAVE_SYS_IOCTL_H
 #include <sys/ioctl.h>

Modified: trunk/contrib/libarchive/libarchive/archive_read_open_memory.c
===================================================================
--- trunk/contrib/libarchive/libarchive/archive_read_open_memory.c	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/libarchive/archive_read_open_memory.c	2018-06-19 21:37:44 UTC (rev 11136)
@@ -24,7 +24,7 @@
  */
 
 #include "archive_platform.h"
-__FBSDID("$FreeBSD: stable/11/contrib/libarchive/libarchive/archive_read_open_memory.c 299529 2016-05-12 10:16:16Z mm $");
+__FBSDID("$FreeBSD: stable/10/contrib/libarchive/libarchive/archive_read_open_memory.c 311042 2017-01-02 01:43:11Z mm $");
 
 #include <errno.h>
 #include <stdlib.h>

Modified: trunk/contrib/libarchive/libarchive/archive_read_private.h
===================================================================
--- trunk/contrib/libarchive/libarchive/archive_read_private.h	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/libarchive/archive_read_private.h	2018-06-19 21:37:44 UTC (rev 11136)
@@ -22,7 +22,7 @@
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  *
- * $FreeBSD: stable/11/contrib/libarchive/libarchive/archive_read_private.h 305188 2016-09-01 07:53:59Z mm $
+ * $FreeBSD: stable/10/contrib/libarchive/libarchive/archive_read_private.h 311042 2017-01-02 01:43:11Z mm $
  */
 
 #ifndef __LIBARCHIVE_BUILD

Modified: trunk/contrib/libarchive/libarchive/archive_read_support_filter_all.c
===================================================================
--- trunk/contrib/libarchive/libarchive/archive_read_support_filter_all.c	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/libarchive/archive_read_support_filter_all.c	2018-06-19 21:37:44 UTC (rev 11136)
@@ -71,6 +71,8 @@
 	archive_read_support_filter_grzip(a);
 	/* Lz4 falls back to "lz4 -d" command-line program. */
 	archive_read_support_filter_lz4(a);
+	/* Zstd falls back to "zstd -d" command-line program. */
+	archive_read_support_filter_zstd(a);
 
 	/* Note: We always return ARCHIVE_OK here, even if some of the
 	 * above return ARCHIVE_WARN.  The intent here is to enable

Modified: trunk/contrib/libarchive/libarchive/archive_read_support_filter_lz4.c
===================================================================
--- trunk/contrib/libarchive/libarchive/archive_read_support_filter_lz4.c	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/libarchive/archive_read_support_filter_lz4.c	2018-06-19 21:37:44 UTC (rev 11136)
@@ -25,7 +25,7 @@
 
 #include "archive_platform.h"
 
-__FBSDID("$FreeBSD: stable/11/contrib/libarchive/libarchive/archive_read_support_filter_lz4.c 305188 2016-09-01 07:53:59Z mm $");
+__FBSDID("$FreeBSD: stable/10/contrib/libarchive/libarchive/archive_read_support_filter_lz4.c 318483 2017-05-18 19:50:15Z mm $");
 
 #ifdef HAVE_ERRNO_H
 #include <errno.h>

Added: trunk/contrib/libarchive/libarchive/archive_read_support_filter_zstd.c
===================================================================
--- trunk/contrib/libarchive/libarchive/archive_read_support_filter_zstd.c	                        (rev 0)
+++ trunk/contrib/libarchive/libarchive/archive_read_support_filter_zstd.c	2018-06-19 21:37:44 UTC (rev 11136)
@@ -0,0 +1,292 @@
+/*-
+ * Copyright (c) 2009-2011 Sean Purcell
+ * All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ * 1. Redistributions of source code must retain the above copyright
+ *    notice, this list of conditions and the following disclaimer.
+ * 2. Redistributions in binary form must reproduce the above copyright
+ *    notice, this list of conditions and the following disclaimer in the
+ *    documentation and/or other materials provided with the distribution.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE AUTHOR(S) ``AS IS'' AND ANY EXPRESS OR
+ * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
+ * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
+ * IN NO EVENT SHALL THE AUTHOR(S) BE LIABLE FOR ANY DIRECT, INDIRECT,
+ * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
+ * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+ * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+ * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
+ * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
+
+#include "archive_platform.h"
+
+__FBSDID("$FreeBSD: stable/10/contrib/libarchive/libarchive/archive_read_support_filter_zstd.c 324418 2017-10-08 20:55:45Z mm $");
+
+#ifdef HAVE_ERRNO_H
+#include <errno.h>
+#endif
+
+#ifdef HAVE_ERRNO_H
+#include <errno.h>
+#endif
+#include <stdio.h>
+#ifdef HAVE_STDLIB_H
+#include <stdlib.h>
+#endif
+#ifdef HAVE_STRING_H
+#include <string.h>
+#endif
+#ifdef HAVE_UNISTD_H
+#include <unistd.h>
+#endif
+#if HAVE_ZSTD_H
+#include <zstd.h>
+#endif
+
+#include "archive.h"
+#include "archive_endian.h"
+#include "archive_private.h"
+#include "archive_read_private.h"
+
+#if HAVE_ZSTD_H && HAVE_LIBZSTD
+
+struct private_data {
+	ZSTD_DStream	*dstream;
+	unsigned char	*out_block;
+	size_t		 out_block_size;
+	int64_t		 total_out;
+	char		 in_frame; /* True = in the middle of a zstd frame. */
+	char		 eof; /* True = found end of compressed data. */
+};
+
+/* Zstd Filter. */
+static ssize_t	zstd_filter_read(struct archive_read_filter *, const void**);
+static int	zstd_filter_close(struct archive_read_filter *);
+#endif
+
+/*
+ * Note that we can detect zstd compressed files even if we can't decompress
+ * them.  (In fact, we like detecting them because we can give better error
+ * messages.)  So the bid framework here gets compiled even if no zstd library
+ * is available.
+ */
+static int	zstd_bidder_bid(struct archive_read_filter_bidder *,
+		    struct archive_read_filter *);
+static int	zstd_bidder_init(struct archive_read_filter *);
+
+int
+archive_read_support_filter_zstd(struct archive *_a)
+{
+	struct archive_read *a = (struct archive_read *)_a;
+	struct archive_read_filter_bidder *bidder;
+
+	archive_check_magic(_a, ARCHIVE_READ_MAGIC,
+	    ARCHIVE_STATE_NEW, "archive_read_support_filter_zstd");
+
+	if (__archive_read_get_bidder(a, &bidder) != ARCHIVE_OK)
+		return (ARCHIVE_FATAL);
+
+	bidder->data = NULL;
+	bidder->name = "zstd";
+	bidder->bid = zstd_bidder_bid;
+	bidder->init = zstd_bidder_init;
+	bidder->options = NULL;
+	bidder->free = NULL;
+#if HAVE_ZSTD_H && HAVE_LIBZSTD
+	return (ARCHIVE_OK);
+#else
+	archive_set_error(_a, ARCHIVE_ERRNO_MISC,
+	    "Using external zstd program for zstd decompression");
+	return (ARCHIVE_WARN);
+#endif
+}
+
+/*
+ * Test whether we can handle this data.
+ */
+static int
+zstd_bidder_bid(struct archive_read_filter_bidder *self,
+    struct archive_read_filter *filter)
+{
+	const unsigned char *buffer;
+	ssize_t avail;
+	unsigned prefix;
+
+	/* Zstd frame magic values */
+	const unsigned zstd_magic = 0xFD2FB528U;
+
+	(void) self; /* UNUSED */
+
+	buffer = __archive_read_filter_ahead(filter, 4, &avail);
+	if (buffer == NULL)
+		return (0);
+
+	prefix = archive_le32dec(buffer);
+	if (prefix == zstd_magic)
+		return (32);
+
+	return (0);
+}
+
+#if !(HAVE_ZSTD_H && HAVE_LIBZSTD)
+
+/*
+ * If we don't have the library on this system, we can't do the
+ * decompression directly.  We can, however, try to run "zstd -d"
+ * in case that's available.
+ */
+static int
+zstd_bidder_init(struct archive_read_filter *self)
+{
+	int r;
+
+	r = __archive_read_program(self, "zstd -d -qq");
+	/* Note: We set the format here even if __archive_read_program()
+	 * above fails.  We do, after all, know what the format is
+	 * even if we weren't able to read it. */
+	self->code = ARCHIVE_FILTER_ZSTD;
+	self->name = "zstd";
+	return (r);
+}
+
+#else
+
+/*
+ * Initialize the filter object
+ */
+static int
+zstd_bidder_init(struct archive_read_filter *self)
+{
+	struct private_data *state;
+	const size_t out_block_size = ZSTD_DStreamOutSize();
+	void *out_block;
+	ZSTD_DStream *dstream;
+
+	self->code = ARCHIVE_FILTER_ZSTD;
+	self->name = "zstd";
+
+	state = (struct private_data *)calloc(sizeof(*state), 1);
+	out_block = (unsigned char *)malloc(out_block_size);
+	dstream = ZSTD_createDStream();
+
+	if (state == NULL || out_block == NULL || dstream == NULL) {
+		free(out_block);
+		free(state);
+		ZSTD_freeDStream(dstream); /* supports free on NULL */
+		archive_set_error(&self->archive->archive, ENOMEM,
+		    "Can't allocate data for zstd decompression");
+		return (ARCHIVE_FATAL);
+	}
+
+	self->data = state;
+
+	state->out_block_size = out_block_size;
+	state->out_block = out_block;
+	state->dstream = dstream;
+	self->read = zstd_filter_read;
+	self->skip = NULL; /* not supported */
+	self->close = zstd_filter_close;
+
+	state->eof = 0;
+	state->in_frame = 0;
+
+	return (ARCHIVE_OK);
+}
+
+static ssize_t
+zstd_filter_read(struct archive_read_filter *self, const void **p)
+{
+	struct private_data *state;
+	size_t decompressed;
+	ssize_t avail_in;
+	ZSTD_outBuffer out;
+	ZSTD_inBuffer in;
+
+	state = (struct private_data *)self->data;
+
+	out = (ZSTD_outBuffer) { state->out_block, state->out_block_size, 0 };
+
+	/* Try to fill the output buffer. */
+	while (out.pos < out.size && !state->eof) {
+		if (!state->in_frame) {
+			const size_t ret = ZSTD_initDStream(state->dstream);
+			if (ZSTD_isError(ret)) {
+				archive_set_error(&self->archive->archive,
+				    ARCHIVE_ERRNO_MISC,
+				    "Error initializing zstd decompressor: %s",
+				    ZSTD_getErrorName(ret));
+				return (ARCHIVE_FATAL);
+			}
+		}
+		in.src = __archive_read_filter_ahead(self->upstream, 1,
+		    &avail_in);
+		if (avail_in < 0) {
+			return avail_in;
+		}
+		if (in.src == NULL && avail_in == 0) {
+			if (!state->in_frame) {
+				/* end of stream */
+				state->eof = 1;
+				break;
+			} else {
+				archive_set_error(&self->archive->archive,
+				    ARCHIVE_ERRNO_MISC,
+				    "Truncated zstd input");
+				return (ARCHIVE_FATAL);
+			}
+		}
+		in.size = avail_in;
+		in.pos = 0;
+
+		{
+			const size_t ret =
+			    ZSTD_decompressStream(state->dstream, &out, &in);
+
+			if (ZSTD_isError(ret)) {
+				archive_set_error(&self->archive->archive,
+				    ARCHIVE_ERRNO_MISC,
+				    "Zstd decompression failed: %s",
+				    ZSTD_getErrorName(ret));
+				return (ARCHIVE_FATAL);
+			}
+
+			/* Decompressor made some progress */
+			__archive_read_filter_consume(self->upstream, in.pos);
+
+			/* ret guaranteed to be > 0 if frame isn't done yet */
+			state->in_frame = (ret != 0);
+		}
+	}
+
+	decompressed = out.pos;
+	state->total_out += decompressed;
+	if (decompressed == 0)
+		*p = NULL;
+	else
+		*p = state->out_block;
+	return (decompressed);
+}
+
+/*
+ * Clean up the decompressor.
+ */
+static int
+zstd_filter_close(struct archive_read_filter *self)
+{
+	struct private_data *state;
+
+	state = (struct private_data *)self->data;
+
+	ZSTD_freeDStream(state->dstream);
+	free(state->out_block);
+	free(state);
+
+	return (ARCHIVE_OK);
+}
+
+#endif /* HAVE_ZLIB_H && HAVE_LIBZSTD */


Property changes on: trunk/contrib/libarchive/libarchive/archive_read_support_filter_zstd.c
___________________________________________________________________
Added: svn:eol-style
## -0,0 +1 ##
+native
\ No newline at end of property
Added: svn:keywords
## -0,0 +1 ##
+MidnightBSD=%H
\ No newline at end of property
Added: svn:mime-type
## -0,0 +1 ##
+text/plain
\ No newline at end of property
Modified: trunk/contrib/libarchive/libarchive/archive_read_support_format_7zip.c
===================================================================
--- trunk/contrib/libarchive/libarchive/archive_read_support_format_7zip.c	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/libarchive/archive_read_support_format_7zip.c	2018-06-19 21:37:44 UTC (rev 11136)
@@ -975,18 +975,6 @@
 	return (id);
 }
 
-static void *
-ppmd_alloc(void *p, size_t size)
-{
-	(void)p;
-	return malloc(size);
-}
-static void
-ppmd_free(void *p, void *address)
-{
-	(void)p;
-	free(address);
-}
 static Byte
 ppmd_read(void *p)
 {
@@ -1006,8 +994,6 @@
 	return (b);
 }
 
-static ISzAlloc g_szalloc = { ppmd_alloc, ppmd_free };
-
 static int
 init_decompression(struct archive_read *a, struct _7zip *zip,
     const struct _7z_coder *coder1, const struct _7z_coder *coder2)
@@ -1237,7 +1223,7 @@
 
 		if (zip->ppmd7_valid) {
 			__archive_ppmd7_functions.Ppmd7_Free(
-			    &zip->ppmd7_context, &g_szalloc);
+			    &zip->ppmd7_context);
 			zip->ppmd7_valid = 0;
 		}
 
@@ -1256,7 +1242,7 @@
 		}
 		__archive_ppmd7_functions.Ppmd7_Construct(&zip->ppmd7_context);
 		r = __archive_ppmd7_functions.Ppmd7_Alloc(
-			&zip->ppmd7_context, msize, &g_szalloc);
+			&zip->ppmd7_context, msize);
 		if (r == 0) {
 			archive_set_error(&a->archive, ENOMEM,
 			    "Coludn't allocate memory for PPMd");
@@ -1636,7 +1622,7 @@
 #endif
 	if (zip->ppmd7_valid) {
 		__archive_ppmd7_functions.Ppmd7_Free(
-			&zip->ppmd7_context, &g_szalloc);
+			&zip->ppmd7_context);
 		zip->ppmd7_valid = 0;
 	}
 	return (r);
@@ -2569,6 +2555,7 @@
 		case kDummy:
 			if (ll == 0)
 				break;
+			__LA_FALLTHROUGH;
 		default:
 			if (header_bytes(a, ll) == NULL)
 				return (-1);

Modified: trunk/contrib/libarchive/libarchive/archive_read_support_format_all.c
===================================================================
--- trunk/contrib/libarchive/libarchive/archive_read_support_format_all.c	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/libarchive/archive_read_support_format_all.c	2018-06-19 21:37:44 UTC (rev 11136)
@@ -24,7 +24,7 @@
  */
 
 #include "archive_platform.h"
-__FBSDID("$FreeBSD: stable/11/contrib/libarchive/libarchive/archive_read_support_format_all.c 299529 2016-05-12 10:16:16Z mm $");
+__FBSDID("$FreeBSD: stable/10/contrib/libarchive/libarchive/archive_read_support_format_all.c 302001 2016-06-17 22:40:10Z mm $");
 
 #include "archive.h"
 #include "archive_private.h"

Modified: trunk/contrib/libarchive/libarchive/archive_read_support_format_ar.c
===================================================================
--- trunk/contrib/libarchive/libarchive/archive_read_support_format_ar.c	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/libarchive/archive_read_support_format_ar.c	2018-06-19 21:37:44 UTC (rev 11136)
@@ -26,7 +26,7 @@
  */
 
 #include "archive_platform.h"
-__FBSDID("$FreeBSD: stable/11/contrib/libarchive/libarchive/archive_read_support_format_ar.c 299529 2016-05-12 10:16:16Z mm $");
+__FBSDID("$FreeBSD: stable/10/contrib/libarchive/libarchive/archive_read_support_format_ar.c 311042 2017-01-02 01:43:11Z mm $");
 
 #ifdef HAVE_SYS_STAT_H
 #include <sys/stat.h>

Modified: trunk/contrib/libarchive/libarchive/archive_read_support_format_cpio.c
===================================================================
--- trunk/contrib/libarchive/libarchive/archive_read_support_format_cpio.c	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/libarchive/archive_read_support_format_cpio.c	2018-06-19 21:37:44 UTC (rev 11136)
@@ -25,7 +25,7 @@
  */
 
 #include "archive_platform.h"
-__FBSDID("$FreeBSD: stable/11/contrib/libarchive/libarchive/archive_read_support_format_cpio.c 299896 2016-05-16 05:01:44Z mm $");
+__FBSDID("$FreeBSD: stable/10/contrib/libarchive/libarchive/archive_read_support_format_cpio.c 324418 2017-10-08 20:55:45Z mm $");
 
 #ifdef HAVE_ERRNO_H
 #include <errno.h>
@@ -633,6 +633,13 @@
 	/* Pad name to 2 more than a multiple of 4. */
 	*name_pad = (2 - *namelength) & 3;
 
+	/* Make sure that the padded name length fits into size_t. */
+	if (*name_pad > SIZE_MAX - *namelength) {
+		archive_set_error(&a->archive, ARCHIVE_ERRNO_FILE_FORMAT,
+		    "cpio archive has invalid namelength");
+		return (ARCHIVE_FATAL);
+	}
+
 	/*
 	 * Note: entry_bytes_remaining is at least 64 bits and
 	 * therefore guaranteed to be big enough for a 33-bit file

Modified: trunk/contrib/libarchive/libarchive/archive_read_support_format_empty.c
===================================================================
--- trunk/contrib/libarchive/libarchive/archive_read_support_format_empty.c	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/libarchive/archive_read_support_format_empty.c	2018-06-19 21:37:44 UTC (rev 11136)
@@ -24,7 +24,7 @@
  */
 
 #include "archive_platform.h"
-__FBSDID("$FreeBSD: stable/11/contrib/libarchive/libarchive/archive_read_support_format_empty.c 299529 2016-05-12 10:16:16Z mm $");
+__FBSDID("$FreeBSD: stable/10/contrib/libarchive/libarchive/archive_read_support_format_empty.c 302001 2016-06-17 22:40:10Z mm $");
 
 #include "archive.h"
 #include "archive_entry.h"

Modified: trunk/contrib/libarchive/libarchive/archive_read_support_format_iso9660.c
===================================================================
--- trunk/contrib/libarchive/libarchive/archive_read_support_format_iso9660.c	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/libarchive/archive_read_support_format_iso9660.c	2018-06-19 21:37:44 UTC (rev 11136)
@@ -26,7 +26,7 @@
  */
 
 #include "archive_platform.h"
-__FBSDID("$FreeBSD: stable/11/contrib/libarchive/libarchive/archive_read_support_format_iso9660.c 302075 2016-06-22 07:49:59Z mm $");
+__FBSDID("$FreeBSD: stable/10/contrib/libarchive/libarchive/archive_read_support_format_iso9660.c 318483 2017-05-18 19:50:15Z mm $");
 
 #ifdef HAVE_ERRNO_H
 #include <errno.h>

Modified: trunk/contrib/libarchive/libarchive/archive_read_support_format_lha.c
===================================================================
--- trunk/contrib/libarchive/libarchive/archive_read_support_format_lha.c	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/libarchive/archive_read_support_format_lha.c	2018-06-19 21:37:44 UTC (rev 11136)
@@ -1716,7 +1716,6 @@
 		/* This if statement expects compiler optimization will
 		 * remove the statement which will not be executed. */
 #undef bswap16
-#undef bswap16
 #if defined(_MSC_VER) && _MSC_VER >= 1400  /* Visual Studio */
 #  define bswap16(x) _byteswap_ushort(x)
 #elif defined(__GNUC__) && ((__GNUC__ == 4 && __GNUC_MINOR__ >= 8) || __GNUC__ > 4)

Modified: trunk/contrib/libarchive/libarchive/archive_read_support_format_mtree.c
===================================================================
--- trunk/contrib/libarchive/libarchive/archive_read_support_format_mtree.c	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/libarchive/archive_read_support_format_mtree.c	2018-06-19 21:37:44 UTC (rev 11136)
@@ -26,7 +26,7 @@
  */
 
 #include "archive_platform.h"
-__FBSDID("$FreeBSD: stable/11/contrib/libarchive/libarchive/archive_read_support_format_mtree.c 307138 2016-10-12 10:28:22Z mm $");
+__FBSDID("$FreeBSD: stable/10/contrib/libarchive/libarchive/archive_read_support_format_mtree.c 328828 2018-02-03 02:17:25Z mm $");
 
 #ifdef HAVE_SYS_STAT_H
 #include <sys/stat.h>
@@ -77,6 +77,8 @@
 
 #define	MTREE_HASHTABLE_SIZE 1024
 
+#define	MAX_LINE_LEN		(1024 * 1024)
+
 struct mtree_option {
 	struct mtree_option *next;
 	char *value;
@@ -334,6 +336,14 @@
 		size_t nbytes_req = (*ravail+1023) & ~1023U;
 		ssize_t tested;
 
+		/*
+		 * Place an arbitrary limit on the line length.
+		 * mtree is almost free-form input and without line length limits,
+		 * it can consume a lot of memory.
+		 */
+		if (len >= MAX_LINE_LEN)
+			return (-1);
+
 		/* Increase reading bytes if it is not enough to at least
 		 * new two lines. */
 		if (nbytes_req < (size_t)*ravail + 160)
@@ -1489,6 +1499,7 @@
 		}
 		if (strcmp(key, "cksum") == 0)
 			break;
+		__LA_FALLTHROUGH;
 	case 'd':
 		if (strcmp(key, "device") == 0) {
 			/* stat(2) st_rdev field, e.g. the major/minor IDs
@@ -1502,6 +1513,7 @@
 				archive_entry_set_rdev(entry, dev);
 			return r;
 		}
+		__LA_FALLTHROUGH;
 	case 'f':
 		if (strcmp(key, "flags") == 0) {
 			*parsed_kws |= MTREE_HAS_FFLAGS;
@@ -1508,6 +1520,7 @@
 			archive_entry_copy_fflags_text(entry, val);
 			break;
 		}
+		__LA_FALLTHROUGH;
 	case 'g':
 		if (strcmp(key, "gid") == 0) {
 			*parsed_kws |= MTREE_HAS_GID;
@@ -1519,16 +1532,19 @@
 			archive_entry_copy_gname(entry, val);
 			break;
 		}
+		__LA_FALLTHROUGH;
 	case 'i':
 		if (strcmp(key, "inode") == 0) {
 			archive_entry_set_ino(entry, mtree_atol(&val, 10));
 			break;
 		}
+		__LA_FALLTHROUGH;
 	case 'l':
 		if (strcmp(key, "link") == 0) {
 			archive_entry_copy_symlink(entry, val);
 			break;
 		}
+		__LA_FALLTHROUGH;
 	case 'm':
 		if (strcmp(key, "md5") == 0 || strcmp(key, "md5digest") == 0)
 			break;
@@ -1545,6 +1561,7 @@
 			}
 			break;
 		}
+		__LA_FALLTHROUGH;
 	case 'n':
 		if (strcmp(key, "nlink") == 0) {
 			*parsed_kws |= MTREE_HAS_NLINK;
@@ -1552,6 +1569,7 @@
 				(unsigned int)mtree_atol(&val, 10));
 			break;
 		}
+		__LA_FALLTHROUGH;
 	case 'r':
 		if (strcmp(key, "resdevice") == 0) {
 			/* stat(2) st_dev field, e.g. the device ID where the
@@ -1567,6 +1585,7 @@
 		if (strcmp(key, "rmd160") == 0 ||
 		    strcmp(key, "rmd160digest") == 0)
 			break;
+		__LA_FALLTHROUGH;
 	case 's':
 		if (strcmp(key, "sha1") == 0 || strcmp(key, "sha1digest") == 0)
 			break;
@@ -1583,6 +1602,7 @@
 			archive_entry_set_size(entry, mtree_atol(&val, 10));
 			break;
 		}
+		__LA_FALLTHROUGH;
 	case 't':
 		if (strcmp(key, "tags") == 0) {
 			/*
@@ -1625,6 +1645,7 @@
 					archive_entry_set_filetype(entry, AE_IFBLK);
 					break;
 				}
+				__LA_FALLTHROUGH;
 			case 'c':
 				if (strcmp(val, "char") == 0) {
 					archive_entry_set_filetype(entry,
@@ -1631,6 +1652,7 @@
 						AE_IFCHR);
 					break;
 				}
+				__LA_FALLTHROUGH;
 			case 'd':
 				if (strcmp(val, "dir") == 0) {
 					archive_entry_set_filetype(entry,
@@ -1637,6 +1659,7 @@
 						AE_IFDIR);
 					break;
 				}
+				__LA_FALLTHROUGH;
 			case 'f':
 				if (strcmp(val, "fifo") == 0) {
 					archive_entry_set_filetype(entry,
@@ -1648,6 +1671,7 @@
 						AE_IFREG);
 					break;
 				}
+				__LA_FALLTHROUGH;
 			case 'l':
 				if (strcmp(val, "link") == 0) {
 					archive_entry_set_filetype(entry,
@@ -1654,6 +1678,7 @@
 						AE_IFLNK);
 					break;
 				}
+				__LA_FALLTHROUGH;
 			default:
 				archive_set_error(&a->archive,
 				    ARCHIVE_ERRNO_FILE_FORMAT,
@@ -1665,6 +1690,7 @@
 			*parsed_kws |= MTREE_HAS_TYPE;
 			break;
 		}
+		__LA_FALLTHROUGH;
 	case 'u':
 		if (strcmp(key, "uid") == 0) {
 			*parsed_kws |= MTREE_HAS_UID;
@@ -1676,6 +1702,7 @@
 			archive_entry_copy_uname(entry, val);
 			break;
 		}
+		__LA_FALLTHROUGH;
 	default:
 		archive_set_error(&a->archive, ARCHIVE_ERRNO_FILE_FORMAT,
 		    "Unrecognized key %s=%s", key, val);

Modified: trunk/contrib/libarchive/libarchive/archive_read_support_format_rar.c
===================================================================
--- trunk/contrib/libarchive/libarchive/archive_read_support_format_rar.c	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/libarchive/archive_read_support_format_rar.c	2018-06-19 21:37:44 UTC (rev 11136)
@@ -604,20 +604,6 @@
   rar->lzss.position += length;
 }
 
-static void *
-ppmd_alloc(void *p, size_t size)
-{
-  (void)p;
-  return malloc(size);
-}
-static void
-ppmd_free(void *p, void *address)
-{
-  (void)p;
-  free(address);
-}
-static ISzAlloc g_szalloc = { ppmd_alloc, ppmd_free };
-
 static Byte
 ppmd_read(void *p)
 {
@@ -1038,7 +1024,7 @@
   case COMPRESS_METHOD_BEST:
     ret = read_data_compressed(a, buff, size, offset);
     if (ret != ARCHIVE_OK && ret != ARCHIVE_WARN)
-      __archive_ppmd7_functions.Ppmd7_Free(&rar->ppmd7_context, &g_szalloc);
+      __archive_ppmd7_functions.Ppmd7_Free(&rar->ppmd7_context);
     break;
 
   default:
@@ -1253,7 +1239,7 @@
   free(rar->dbo);
   free(rar->unp_buffer);
   free(rar->lzss.window);
-  __archive_ppmd7_functions.Ppmd7_Free(&rar->ppmd7_context, &g_szalloc);
+  __archive_ppmd7_functions.Ppmd7_Free(&rar->ppmd7_context);
   free(rar);
   (a->format->data) = NULL;
   return (ARCHIVE_OK);
@@ -1496,7 +1482,11 @@
         return (ARCHIVE_FATAL);
       }
       filename[filename_size++] = '\0';
-      filename[filename_size++] = '\0';
+      /*
+       * Do not increment filename_size here as the computations below
+       * add the space for the terminating NUL explicitly.
+       */
+      filename[filename_size] = '\0';
 
       /* Decoded unicode form is UTF-16BE, so we have to update a string
        * conversion object for it. */
@@ -1654,7 +1644,7 @@
   rar->unp_offset = 0;
   rar->unp_buffer_size = UNP_BUFFER_SIZE;
   memset(rar->lengthtable, 0, sizeof(rar->lengthtable));
-  __archive_ppmd7_functions.Ppmd7_Free(&rar->ppmd7_context, &g_szalloc);
+  __archive_ppmd7_functions.Ppmd7_Free(&rar->ppmd7_context);
   rar->ppmd_valid = rar->ppmd_eod = 0;
 
   /* Don't set any archive entries for non-file header types */
@@ -2118,7 +2108,7 @@
 
       /* Make sure ppmd7_contest is freed before Ppmd7_Construct
        * because reading a broken file cause this abnormal sequence. */
-      __archive_ppmd7_functions.Ppmd7_Free(&rar->ppmd7_context, &g_szalloc);
+      __archive_ppmd7_functions.Ppmd7_Free(&rar->ppmd7_context);
 
       rar->bytein.a = a;
       rar->bytein.Read = &ppmd_read;
@@ -2133,7 +2123,7 @@
       }
 
       if (!__archive_ppmd7_functions.Ppmd7_Alloc(&rar->ppmd7_context,
-        rar->dictionary_size, &g_szalloc))
+        rar->dictionary_size))
       {
         archive_set_error(&a->archive, ENOMEM,
                           "Out of memory");

Modified: trunk/contrib/libarchive/libarchive/archive_read_support_format_raw.c
===================================================================
--- trunk/contrib/libarchive/libarchive/archive_read_support_format_raw.c	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/libarchive/archive_read_support_format_raw.c	2018-06-19 21:37:44 UTC (rev 11136)
@@ -23,7 +23,7 @@
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 #include "archive_platform.h"
-__FBSDID("$FreeBSD: stable/11/contrib/libarchive/libarchive/archive_read_support_format_raw.c 299529 2016-05-12 10:16:16Z mm $");
+__FBSDID("$FreeBSD: stable/10/contrib/libarchive/libarchive/archive_read_support_format_raw.c 302001 2016-06-17 22:40:10Z mm $");
 
 #ifdef HAVE_ERRNO_H
 #include <errno.h>

Modified: trunk/contrib/libarchive/libarchive/archive_read_support_format_tar.c
===================================================================
--- trunk/contrib/libarchive/libarchive/archive_read_support_format_tar.c	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/libarchive/archive_read_support_format_tar.c	2018-06-19 21:37:44 UTC (rev 11136)
@@ -26,7 +26,7 @@
  */
 
 #include "archive_platform.h"
-__FBSDID("$FreeBSD: stable/11/contrib/libarchive/libarchive/archive_read_support_format_tar.c 306321 2016-09-25 22:02:27Z mm $");
+__FBSDID("$FreeBSD: stable/10/contrib/libarchive/libarchive/archive_read_support_format_tar.c 328828 2018-02-03 02:17:25Z mm $");
 
 #ifdef HAVE_ERRNO_H
 #include <errno.h>
@@ -251,15 +251,15 @@
 	    ARCHIVE_STATE_NEW, "archive_read_support_format_tar");
 
 	tar = (struct tar *)calloc(1, sizeof(*tar));
-#ifdef HAVE_COPYFILE_H
-	/* Set this by default on Mac OS. */
-	tar->process_mac_extensions = 1;
-#endif
 	if (tar == NULL) {
 		archive_set_error(&a->archive, ENOMEM,
 		    "Can't allocate tar data");
 		return (ARCHIVE_FATAL);
 	}
+#ifdef HAVE_COPYFILE_H
+	/* Set this by default on Mac OS. */
+	tar->process_mac_extensions = 1;
+#endif
 
 	r = __archive_read_register_format(a, tar, "tar",
 	    archive_read_format_tar_bid,
@@ -2243,7 +2243,7 @@
 	else
 		tar->sparse_list = p;
 	tar->sparse_last = p;
-	if (remaining < 0 || offset < 0) {
+	if (remaining < 0 || offset < 0 || offset > INT64_MAX - remaining) {
 		archive_set_error(&a->archive, ARCHIVE_ERRNO_MISC, "Malformed sparse map data");
 		return (ARCHIVE_FATAL);
 	}

Modified: trunk/contrib/libarchive/libarchive/archive_read_support_format_warc.c
===================================================================
--- trunk/contrib/libarchive/libarchive/archive_read_support_format_warc.c	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/libarchive/archive_read_support_format_warc.c	2018-06-19 21:37:44 UTC (rev 11136)
@@ -24,7 +24,7 @@
  */
 
 #include "archive_platform.h"
-__FBSDID("$FreeBSD: stable/11/contrib/libarchive/libarchive/archive_read_support_format_warc.c 305188 2016-09-01 07:53:59Z mm $");
+__FBSDID("$FreeBSD: stable/10/contrib/libarchive/libarchive/archive_read_support_format_warc.c 315433 2017-03-16 23:08:18Z mm $");
 
 /**
  * WARC is standardised by ISO TC46/SC4/WG12 and currently available as

Modified: trunk/contrib/libarchive/libarchive/archive_read_support_format_xar.c
===================================================================
--- trunk/contrib/libarchive/libarchive/archive_read_support_format_xar.c	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/libarchive/archive_read_support_format_xar.c	2018-06-19 21:37:44 UTC (rev 11136)
@@ -23,7 +23,7 @@
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 #include "archive_platform.h"
-__FBSDID("$FreeBSD: stable/11/contrib/libarchive/libarchive/archive_read_support_format_xar.c 299529 2016-05-12 10:16:16Z mm $");
+__FBSDID("$FreeBSD: stable/10/contrib/libarchive/libarchive/archive_read_support_format_xar.c 324418 2017-10-08 20:55:45Z mm $");
 
 #ifdef HAVE_ERRNO_H
 #include <errno.h>
@@ -1040,6 +1040,9 @@
 	uint64_t l;
 	int digit;
 
+	if (char_cnt == 0)
+		return (0);
+
 	l = 0;
 	digit = *p - '0';
 	while (digit >= 0 && digit < 10  && char_cnt-- > 0) {
@@ -1054,7 +1057,10 @@
 {
 	int64_t l;
 	int digit;
-        
+
+	if (char_cnt == 0)
+		return (0);
+
 	l = 0;
 	while (char_cnt-- > 0) {
 		if (*p >= '0' && *p <= '7')
@@ -2623,6 +2629,14 @@
 		archive_strncat(as, (const char *)buff, len);
 }
 
+static int
+is_string(const char *known, const char *data, size_t len)
+{
+	if (strlen(known) != len)
+		return -1;
+	return memcmp(data, known, len);
+}
+
 static void
 xml_data(void *userData, const char *s, int len)
 {
@@ -2674,26 +2688,26 @@
 		archive_strncpy(&(xar->file->symlink), s, len);
 		break;
 	case FILE_TYPE:
-		if (strncmp("file", s, len) == 0 ||
-		    strncmp("hardlink", s, len) == 0)
+		if (is_string("file", s, len) == 0 ||
+		    is_string("hardlink", s, len) == 0)
 			xar->file->mode =
 			    (xar->file->mode & ~AE_IFMT) | AE_IFREG;
-		if (strncmp("directory", s, len) == 0)
+		if (is_string("directory", s, len) == 0)
 			xar->file->mode =
 			    (xar->file->mode & ~AE_IFMT) | AE_IFDIR;
-		if (strncmp("symlink", s, len) == 0)
+		if (is_string("symlink", s, len) == 0)
 			xar->file->mode =
 			    (xar->file->mode & ~AE_IFMT) | AE_IFLNK;
-		if (strncmp("character special", s, len) == 0)
+		if (is_string("character special", s, len) == 0)
 			xar->file->mode =
 			    (xar->file->mode & ~AE_IFMT) | AE_IFCHR;
-		if (strncmp("block special", s, len) == 0)
+		if (is_string("block special", s, len) == 0)
 			xar->file->mode =
 			    (xar->file->mode & ~AE_IFMT) | AE_IFBLK;
-		if (strncmp("socket", s, len) == 0)
+		if (is_string("socket", s, len) == 0)
 			xar->file->mode =
 			    (xar->file->mode & ~AE_IFMT) | AE_IFSOCK;
-		if (strncmp("fifo", s, len) == 0)
+		if (is_string("fifo", s, len) == 0)
 			xar->file->mode =
 			    (xar->file->mode & ~AE_IFMT) | AE_IFIFO;
 		xar->file->has |= HAS_TYPE;

Modified: trunk/contrib/libarchive/libarchive/archive_read_support_format_zip.c
===================================================================
--- trunk/contrib/libarchive/libarchive/archive_read_support_format_zip.c	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/libarchive/archive_read_support_format_zip.c	2018-06-19 21:37:44 UTC (rev 11136)
@@ -26,7 +26,7 @@
  */
 
 #include "archive_platform.h"
-__FBSDID("$FreeBSD: stable/11/contrib/libarchive/libarchive/archive_read_support_format_zip.c 305188 2016-09-01 07:53:59Z mm $");
+__FBSDID("$FreeBSD: stable/10/contrib/libarchive/libarchive/archive_read_support_format_zip.c 328828 2018-02-03 02:17:25Z mm $");
 
 /*
  * The definitive documentation of the Zip file format is:
@@ -723,6 +723,11 @@
 		}
 		case 0x9901:
 			/* WinZip AES extra data field. */
+			if (datasize < 6) {
+				archive_set_error(&a->archive, ARCHIVE_ERRNO_FILE_FORMAT,
+				    "Incomplete AES field");
+				return ARCHIVE_FAILED;
+			}
 			if (p[offset + 2] == 'A' && p[offset + 3] == 'E') {
 				/* Vendor version. */
 				zip_entry->aes_extra.vendor =
@@ -881,6 +886,24 @@
 		zip_entry->mode |= 0664;
 	}
 
+	/* Windows archivers sometimes use backslash as the directory separator.
+	   Normalize to slash. */
+	if (zip_entry->system == 0 &&
+	    (wp = archive_entry_pathname_w(entry)) != NULL) {
+		if (wcschr(wp, L'/') == NULL && wcschr(wp, L'\\') != NULL) {
+			size_t i;
+			struct archive_wstring s;
+			archive_string_init(&s);
+			archive_wstrcpy(&s, wp);
+			for (i = 0; i < archive_strlen(&s); i++) {
+				if (s.s[i] == '\\')
+					s.s[i] = '/';
+			}
+			archive_entry_copy_pathname_w(entry, s.s);
+			archive_wstring_free(&s);
+		}
+	}
+
 	/* Make sure that entries with a trailing '/' are marked as directories
 	 * even if the External File Attributes contains bogus values.  If this
 	 * is not a directory and there is no type, assume regularfile. */
@@ -1056,6 +1079,7 @@
 		zip->end_of_entry = 1;
 
 	/* Set up a more descriptive format name. */
+        archive_string_empty(&zip->format_name);
 	archive_string_sprintf(&zip->format_name, "ZIP %d.%d (%s)",
 	    version / 10, version % 10,
 	    compression_name(zip->entry->compression));

Modified: trunk/contrib/libarchive/libarchive/archive_string.c
===================================================================
--- trunk/contrib/libarchive/libarchive/archive_string.c	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/libarchive/archive_string.c	2018-06-19 21:37:44 UTC (rev 11136)
@@ -25,7 +25,7 @@
  */
 
 #include "archive_platform.h"
-__FBSDID("$FreeBSD: stable/11/contrib/libarchive/libarchive/archive_string.c 302294 2016-06-30 08:51:50Z mm $");
+__FBSDID("$FreeBSD: stable/10/contrib/libarchive/libarchive/archive_string.c 324418 2017-10-08 20:55:45Z mm $");
 
 /*
  * Basic resizable string support, to simplify manipulating arbitrary-sized
@@ -214,7 +214,8 @@
 {
 	if (archive_wstring_ensure(as, as->length + s + 1) == NULL)
 		return (NULL);
-	wmemmove(as->s + as->length, p, s);
+	if (s)
+		wmemmove(as->s + as->length, p, s);
 	as->length += s;
 	as->s[as->length] = 0;
 	return (as);

Modified: trunk/contrib/libarchive/libarchive/archive_string.h
===================================================================
--- trunk/contrib/libarchive/libarchive/archive_string.h	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/libarchive/archive_string.h	2018-06-19 21:37:44 UTC (rev 11136)
@@ -22,7 +22,7 @@
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  *
- * $FreeBSD: stable/11/contrib/libarchive/libarchive/archive_string.h 238856 2012-07-28 06:38:44Z mm $
+ * $FreeBSD: stable/10/contrib/libarchive/libarchive/archive_string.h 313571 2017-02-11 00:56:18Z mm $
  *
  */
 

Modified: trunk/contrib/libarchive/libarchive/archive_string_sprintf.c
===================================================================
--- trunk/contrib/libarchive/libarchive/archive_string_sprintf.c	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/libarchive/archive_string_sprintf.c	2018-06-19 21:37:44 UTC (rev 11136)
@@ -24,7 +24,7 @@
  */
 
 #include "archive_platform.h"
-__FBSDID("$FreeBSD: stable/11/contrib/libarchive/libarchive/archive_string_sprintf.c 238856 2012-07-28 06:38:44Z mm $");
+__FBSDID("$FreeBSD: stable/10/contrib/libarchive/libarchive/archive_string_sprintf.c 316338 2017-03-31 20:17:30Z mm $");
 
 /*
  * The use of printf()-family functions can be troublesome

Modified: trunk/contrib/libarchive/libarchive/archive_util.3
===================================================================
--- trunk/contrib/libarchive/libarchive/archive_util.3	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/libarchive/archive_util.3	2018-06-19 21:37:44 UTC (rev 11136)
@@ -22,7 +22,7 @@
 .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
 .\" SUCH DAMAGE.
 .\"
-.\" $FreeBSD: stable/11/contrib/libarchive/libarchive/archive_util.3 238856 2012-07-28 06:38:44Z mm $
+.\" $FreeBSD: stable/10/contrib/libarchive/libarchive/archive_util.3 238856 2012-07-28 06:38:44Z mm $
 .\"
 .Dd February 2, 2012
 .Dt ARCHIVE_UTIL 3

Modified: trunk/contrib/libarchive/libarchive/archive_util.c
===================================================================
--- trunk/contrib/libarchive/libarchive/archive_util.c	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/libarchive/archive_util.c	2018-06-19 21:37:44 UTC (rev 11136)
@@ -25,7 +25,7 @@
  */
 
 #include "archive_platform.h"
-__FBSDID("$FreeBSD: stable/11/contrib/libarchive/libarchive/archive_util.c 305188 2016-09-01 07:53:59Z mm $");
+__FBSDID("$FreeBSD: stable/10/contrib/libarchive/libarchive/archive_util.c 328828 2018-02-03 02:17:25Z mm $");
 
 #ifdef HAVE_SYS_TYPES_H
 #include <sys/types.h>
@@ -140,7 +140,7 @@
 /*
  * Return a count of the number of compressed bytes processed.
  */
-int64_t
+la_int64_t
 archive_position_compressed(struct archive *a)
 {
 	return archive_filter_bytes(a, -1);
@@ -149,7 +149,7 @@
 /*
  * Return a count of the number of uncompressed bytes processed.
  */
-int64_t
+la_int64_t
 archive_position_uncompressed(struct archive *a)
 {
 	return archive_filter_bytes(a, 0);

Modified: trunk/contrib/libarchive/libarchive/archive_version_details.c
===================================================================
--- trunk/contrib/libarchive/libarchive/archive_version_details.c	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/libarchive/archive_version_details.c	2018-06-19 21:37:44 UTC (rev 11136)
@@ -25,7 +25,7 @@
  */
 
 #include "archive_platform.h"
-__FBSDID("$FreeBSD: head/lib/libarchive/archive_util.c 201098 2009-12-28 02:58:14Z kientzle $");
+__FBSDID("$FreeBSD: stable/10/contrib/libarchive/libarchive/archive_version_details.c 324418 2017-10-08 20:55:45Z mm $");
 
 #ifdef HAVE_STDLIB_H
 #include <stdlib.h>
@@ -45,6 +45,9 @@
 #ifdef HAVE_LZ4_H
 #include <lz4.h>
 #endif
+#ifdef HAVE_ZSTD_H
+#include <zstd.h>
+#endif
 
 #include "archive.h"
 #include "archive_private.h"
@@ -59,6 +62,7 @@
 	const char *liblzma = archive_liblzma_version();
 	const char *bzlib = archive_bzlib_version();
 	const char *liblz4 = archive_liblz4_version();
+	const char *libzstd = archive_libzstd_version();
 
 	if (!init) {
 		archive_string_init(&str);
@@ -84,6 +88,10 @@
 			archive_strcat(&str, " liblz4/");
 			archive_strcat(&str, liblz4);
 		}
+		if (libzstd) {
+			archive_strcat(&str, " libzstd/");
+			archive_strcat(&str, libzstd);
+		}
 	}
 	return str.s;
 }
@@ -131,3 +139,13 @@
 	return NULL;
 #endif
 }
+
+const char *
+archive_libzstd_version(void)
+{
+#if HAVE_ZSTD_H && HAVE_LIBZSTD
+	return ZSTD_VERSION_STRING;
+#else
+	return NULL;
+#endif
+}

Modified: trunk/contrib/libarchive/libarchive/archive_virtual.c
===================================================================
--- trunk/contrib/libarchive/libarchive/archive_virtual.c	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/libarchive/archive_virtual.c	2018-06-19 21:37:44 UTC (rev 11136)
@@ -24,7 +24,7 @@
  */
 
 #include "archive_platform.h"
-__FBSDID("$FreeBSD: stable/11/contrib/libarchive/libarchive/archive_virtual.c 299529 2016-05-12 10:16:16Z mm $");
+__FBSDID("$FreeBSD: stable/10/contrib/libarchive/libarchive/archive_virtual.c 328828 2018-02-03 02:17:25Z mm $");
 
 #include "archive.h"
 #include "archive_entry.h"
@@ -48,7 +48,7 @@
 	return ((a->vtable->archive_filter_name)(a, n));
 }
 
-int64_t
+la_int64_t
 archive_filter_bytes(struct archive *a, int n)
 {
 	return ((a->vtable->archive_filter_bytes)(a, n));
@@ -131,7 +131,8 @@
 }
 
 ssize_t
-archive_write_data_block(struct archive *a, const void *buff, size_t s, int64_t o)
+archive_write_data_block(struct archive *a, const void *buff, size_t s,
+    la_int64_t o)
 {
 	if (a->vtable->archive_write_data_block == NULL) {
 		archive_set_error(a, ARCHIVE_ERRNO_MISC,
@@ -156,7 +157,7 @@
 
 int
 archive_read_data_block(struct archive *a,
-    const void **buff, size_t *s, int64_t *o)
+    const void **buff, size_t *s, la_int64_t *o)
 {
 	return ((a->vtable->archive_read_data_block)(a, buff, s, o));
 }

Modified: trunk/contrib/libarchive/libarchive/archive_write.3
===================================================================
--- trunk/contrib/libarchive/libarchive/archive_write.3	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/libarchive/archive_write.3	2018-06-19 21:37:44 UTC (rev 11136)
@@ -22,7 +22,7 @@
 .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
 .\" SUCH DAMAGE.
 .\"
-.\" $FreeBSD: stable/11/contrib/libarchive/libarchive/archive_write.3 299529 2016-05-12 10:16:16Z mm $
+.\" $FreeBSD: stable/10/contrib/libarchive/libarchive/archive_write.3 324418 2017-10-08 20:55:45Z mm $
 .\"
 .Dd February 2, 2012
 .Dt ARCHIVE_WRITE 3
@@ -71,7 +71,7 @@
 .\"
 .Ss Set options
 See
-.Xr archive_read_set_options 3 .
+.Xr archive_write_set_options 3 .
 .\"
 .Ss Open archive
 See

Modified: trunk/contrib/libarchive/libarchive/archive_write.c
===================================================================
--- trunk/contrib/libarchive/libarchive/archive_write.c	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/libarchive/archive_write.c	2018-06-19 21:37:44 UTC (rev 11136)
@@ -24,7 +24,7 @@
  */
 
 #include "archive_platform.h"
-__FBSDID("$FreeBSD: stable/11/contrib/libarchive/libarchive/archive_write.c 299529 2016-05-12 10:16:16Z mm $");
+__FBSDID("$FreeBSD: stable/10/contrib/libarchive/libarchive/archive_write.c 328828 2018-02-03 02:17:25Z mm $");
 
 /*
  * This file contains the "essential" portions of the write API, that
@@ -190,7 +190,7 @@
  * an archive to itself recursively.
  */
 int
-archive_write_set_skip_file(struct archive *_a, int64_t d, int64_t i)
+archive_write_set_skip_file(struct archive *_a, la_int64_t d, la_int64_t i)
 {
 	struct archive_write *a = (struct archive_write *)_a;
 	archive_check_magic(&a->archive, ARCHIVE_WRITE_MAGIC,

Modified: trunk/contrib/libarchive/libarchive/archive_write_add_filter.c
===================================================================
--- trunk/contrib/libarchive/libarchive/archive_write_add_filter.c	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/libarchive/archive_write_add_filter.c	2018-06-19 21:37:44 UTC (rev 11136)
@@ -53,6 +53,7 @@
 	{ ARCHIVE_FILTER_LZOP,		archive_write_add_filter_lzip },
 	{ ARCHIVE_FILTER_UU,		archive_write_add_filter_uuencode },
 	{ ARCHIVE_FILTER_XZ,		archive_write_add_filter_xz },
+	{ ARCHIVE_FILTER_ZSTD,		archive_write_add_filter_zstd },
 	{ -1,			NULL }
 };
 

Modified: trunk/contrib/libarchive/libarchive/archive_write_add_filter_by_name.c
===================================================================
--- trunk/contrib/libarchive/libarchive/archive_write_add_filter_by_name.c	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/libarchive/archive_write_add_filter_by_name.c	2018-06-19 21:37:44 UTC (rev 11136)
@@ -57,6 +57,7 @@
 	{ "lzop",		archive_write_add_filter_lzop },
 	{ "uuencode",		archive_write_add_filter_uuencode },
 	{ "xz",			archive_write_add_filter_xz },
+	{ "zstd",		archive_write_add_filter_zstd },
 	{ NULL,			NULL }
 };
 

Modified: trunk/contrib/libarchive/libarchive/archive_write_add_filter_lz4.c
===================================================================
--- trunk/contrib/libarchive/libarchive/archive_write_add_filter_lz4.c	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/libarchive/archive_write_add_filter_lz4.c	2018-06-19 21:37:44 UTC (rev 11136)
@@ -25,7 +25,7 @@
 
 #include "archive_platform.h"
 
-__FBSDID("$FreeBSD: stable/11/contrib/libarchive/libarchive/archive_write_add_filter_lz4.c 299529 2016-05-12 10:16:16Z mm $");
+__FBSDID("$FreeBSD: stable/10/contrib/libarchive/libarchive/archive_write_add_filter_lz4.c 316338 2017-03-31 20:17:30Z mm $");
 
 #ifdef HAVE_ERRNO_H
 #include <errno.h>

Added: trunk/contrib/libarchive/libarchive/archive_write_add_filter_zstd.c
===================================================================
--- trunk/contrib/libarchive/libarchive/archive_write_add_filter_zstd.c	                        (rev 0)
+++ trunk/contrib/libarchive/libarchive/archive_write_add_filter_zstd.c	2018-06-19 21:37:44 UTC (rev 11136)
@@ -0,0 +1,335 @@
+/*-
+ * Copyright (c) 2017 Sean Purcell
+ * All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ * 1. Redistributions of source code must retain the above copyright
+ *    notice, this list of conditions and the following disclaimer.
+ * 2. Redistributions in binary form must reproduce the above copyright
+ *    notice, this list of conditions and the following disclaimer in the
+ *    documentation and/or other materials provided with the distribution.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE AUTHOR(S) ``AS IS'' AND ANY EXPRESS OR
+ * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
+ * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
+ * IN NO EVENT SHALL THE AUTHOR(S) BE LIABLE FOR ANY DIRECT, INDIRECT,
+ * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
+ * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+ * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+ * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
+ * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
+
+#include "archive_platform.h"
+
+__FBSDID("$FreeBSD: stable/10/contrib/libarchive/libarchive/archive_write_add_filter_zstd.c 324418 2017-10-08 20:55:45Z mm $");
+
+
+#ifdef HAVE_ERRNO_H
+#include <errno.h>
+#endif
+#ifdef HAVE_STDLIB_H
+#include <stdlib.h>
+#endif
+#ifdef HAVE_STRING_H
+#include <string.h>
+#endif
+#ifdef HAVE_ZSTD_H
+#include <zstd.h>
+#endif
+
+#include "archive.h"
+#include "archive_private.h"
+#include "archive_string.h"
+#include "archive_write_private.h"
+
+/* Don't compile this if we don't have zstd.h */
+
+struct private_data {
+	int		 compression_level;
+#if HAVE_ZSTD_H && HAVE_LIBZSTD
+	ZSTD_CStream	*cstream;
+	int64_t		 total_in;
+	ZSTD_outBuffer	 out;
+#else
+	struct archive_write_program_data *pdata;
+#endif
+};
+
+static int archive_compressor_zstd_options(struct archive_write_filter *,
+		    const char *, const char *);
+static int archive_compressor_zstd_open(struct archive_write_filter *);
+static int archive_compressor_zstd_write(struct archive_write_filter *,
+		    const void *, size_t);
+static int archive_compressor_zstd_close(struct archive_write_filter *);
+static int archive_compressor_zstd_free(struct archive_write_filter *);
+#if HAVE_ZSTD_H && HAVE_LIBZSTD
+static int drive_compressor(struct archive_write_filter *,
+		    struct private_data *, int, const void *, size_t);
+#endif
+
+
+/*
+ * Add a zstd compression filter to this write handle.
+ */
+int
+archive_write_add_filter_zstd(struct archive *_a)
+{
+	struct archive_write *a = (struct archive_write *)_a;
+	struct archive_write_filter *f = __archive_write_allocate_filter(_a);
+	struct private_data *data;
+	archive_check_magic(&a->archive, ARCHIVE_WRITE_MAGIC,
+	    ARCHIVE_STATE_NEW, "archive_write_add_filter_zstd");
+
+	data = calloc(1, sizeof(*data));
+	if (data == NULL) {
+		archive_set_error(&a->archive, ENOMEM, "Out of memory");
+		return (ARCHIVE_FATAL);
+	}
+	f->data = data;
+	f->open = &archive_compressor_zstd_open;
+	f->options = &archive_compressor_zstd_options;
+	f->close = &archive_compressor_zstd_close;
+	f->free = &archive_compressor_zstd_free;
+	f->code = ARCHIVE_FILTER_ZSTD;
+	f->name = "zstd";
+	data->compression_level = 3; /* Default level used by the zstd CLI */
+#if HAVE_ZSTD_H && HAVE_LIBZSTD
+	data->cstream = ZSTD_createCStream();
+	if (data->cstream == NULL) {
+		free(data);
+		archive_set_error(&a->archive, ENOMEM,
+		    "Failed to allocate zstd compressor object");
+		return (ARCHIVE_FATAL);
+	}
+
+	return (ARCHIVE_OK);
+#else
+	data->pdata = __archive_write_program_allocate("zstd");
+	if (data->pdata == NULL) {
+		free(data);
+		archive_set_error(&a->archive, ENOMEM, "Out of memory");
+		return (ARCHIVE_FATAL);
+	}
+	archive_set_error(&a->archive, ARCHIVE_ERRNO_MISC,
+	    "Using external zstd program");
+	return (ARCHIVE_WARN);
+#endif
+}
+
+static int
+archive_compressor_zstd_free(struct archive_write_filter *f)
+{
+	struct private_data *data = (struct private_data *)f->data;
+#if HAVE_ZSTD_H && HAVE_LIBZSTD
+	ZSTD_freeCStream(data->cstream);
+	free(data->out.dst);
+#else
+	__archive_write_program_free(data->pdata);
+#endif
+	free(data);
+	f->data = NULL;
+	return (ARCHIVE_OK);
+}
+
+/*
+ * Set write options.
+ */
+static int
+archive_compressor_zstd_options(struct archive_write_filter *f, const char *key,
+    const char *value)
+{
+	struct private_data *data = (struct private_data *)f->data;
+
+	if (strcmp(key, "compression-level") == 0) {
+		int level = atoi(value);
+#if HAVE_ZSTD_H && HAVE_LIBZSTD
+		if (level < 1 || level > ZSTD_maxCLevel()) {
+#else
+		/* If we don't have the library, hard-code the max level */
+		if (level < 1 || level > 22) {
+#endif
+			return (ARCHIVE_WARN);
+		}
+		data->compression_level = level;
+		return (ARCHIVE_OK);
+	}
+
+	/* Note: The "warn" return is just to inform the options
+	 * supervisor that we didn't handle it.  It will generate
+	 * a suitable error if no one used this option. */
+	return (ARCHIVE_WARN);
+}
+
+#if HAVE_ZSTD_H && HAVE_LIBZSTD
+/*
+ * Setup callback.
+ */
+static int
+archive_compressor_zstd_open(struct archive_write_filter *f)
+{
+	struct private_data *data = (struct private_data *)f->data;
+	int ret;
+
+	ret = __archive_write_open_filter(f->next_filter);
+	if (ret != ARCHIVE_OK)
+		return (ret);
+
+	if (data->out.dst == NULL) {
+		size_t bs = ZSTD_CStreamOutSize(), bpb;
+		if (f->archive->magic == ARCHIVE_WRITE_MAGIC) {
+			/* Buffer size should be a multiple number of
+			 * the of bytes per block for performance. */
+			bpb = archive_write_get_bytes_per_block(f->archive);
+			if (bpb > bs)
+				bs = bpb;
+			else if (bpb != 0)
+				bs -= bs % bpb;
+		}
+		data->out.size = bs;
+		data->out.pos = 0;
+		data->out.dst
+		    = (unsigned char *)malloc(data->out.size);
+		if (data->out.dst == NULL) {
+			archive_set_error(f->archive, ENOMEM,
+			    "Can't allocate data for compression buffer");
+			return (ARCHIVE_FATAL);
+		}
+	}
+
+	f->write = archive_compressor_zstd_write;
+
+	if (ZSTD_isError(ZSTD_initCStream(data->cstream,
+	    data->compression_level))) {
+		archive_set_error(f->archive, ARCHIVE_ERRNO_MISC,
+		    "Internal error initializing zstd compressor object");
+		return (ARCHIVE_FATAL);
+	}
+
+	return (ARCHIVE_OK);
+}
+
+/*
+ * Write data to the compressed stream.
+ */
+static int
+archive_compressor_zstd_write(struct archive_write_filter *f, const void *buff,
+    size_t length)
+{
+	struct private_data *data = (struct private_data *)f->data;
+	int ret;
+
+	/* Update statistics */
+	data->total_in += length;
+
+	if ((ret = drive_compressor(f, data, 0, buff, length)) != ARCHIVE_OK)
+		return (ret);
+
+	return (ARCHIVE_OK);
+}
+
+/*
+ * Finish the compression...
+ */
+static int
+archive_compressor_zstd_close(struct archive_write_filter *f)
+{
+	struct private_data *data = (struct private_data *)f->data;
+	int r1, r2;
+
+	/* Finish zstd frame */
+	r1 = drive_compressor(f, data, 1, NULL, 0);
+
+	r2 = __archive_write_close_filter(f->next_filter);
+
+	return r1 < r2 ? r1 : r2;
+}
+
+/*
+ * Utility function to push input data through compressor,
+ * writing full output blocks as necessary.
+ *
+ * Note that this handles both the regular write case (finishing ==
+ * false) and the end-of-archive case (finishing == true).
+ */
+static int
+drive_compressor(struct archive_write_filter *f,
+    struct private_data *data, int finishing, const void *src, size_t length)
+{
+	ZSTD_inBuffer in = (ZSTD_inBuffer) { src, length, 0 };
+
+	for (;;) {
+		if (data->out.pos == data->out.size) {
+			const int ret = __archive_write_filter(f->next_filter,
+			    data->out.dst, data->out.size);
+			if (ret != ARCHIVE_OK)
+				return (ARCHIVE_FATAL);
+			data->out.pos = 0;
+		}
+
+		/* If there's nothing to do, we're done. */
+		if (!finishing && in.pos == in.size)
+			return (ARCHIVE_OK);
+
+		{
+			const size_t zstdret = !finishing ?
+			    ZSTD_compressStream(data->cstream, &data->out, &in)
+			    : ZSTD_endStream(data->cstream, &data->out);
+
+			if (ZSTD_isError(zstdret)) {
+				archive_set_error(f->archive,
+				    ARCHIVE_ERRNO_MISC,
+				    "Zstd compression failed: %s",
+				    ZSTD_getErrorName(zstdret));
+				return (ARCHIVE_FATAL);
+			}
+
+			/* If we're finishing, 0 means nothing left to flush */
+			if (finishing && zstdret == 0) {
+				const int ret = __archive_write_filter(f->next_filter,
+				    data->out.dst, data->out.pos);
+				return (ret);
+			}
+		}
+	}
+}
+
+#else /* HAVE_ZSTD_H && HAVE_LIBZSTD */
+
+static int
+archive_compressor_zstd_open(struct archive_write_filter *f)
+{
+	struct private_data *data = (struct private_data *)f->data;
+	struct archive_string as;
+	int r;
+
+	archive_string_init(&as);
+	archive_string_sprintf(&as, "zstd -%d", data->compression_level);
+
+	f->write = archive_compressor_zstd_write;
+	r = __archive_write_program_open(f, data->pdata, as.s);
+	archive_string_free(&as);
+	return (r);
+}
+
+static int
+archive_compressor_zstd_write(struct archive_write_filter *f, const void *buff,
+    size_t length)
+{
+	struct private_data *data = (struct private_data *)f->data;
+
+	return __archive_write_program_write(f, data->pdata, buff, length);
+}
+
+static int
+archive_compressor_zstd_close(struct archive_write_filter *f)
+{
+	struct private_data *data = (struct private_data *)f->data;
+
+	return __archive_write_program_close(f, data->pdata);
+}
+
+#endif /* HAVE_ZSTD_H && HAVE_LIBZSTD */


Property changes on: trunk/contrib/libarchive/libarchive/archive_write_add_filter_zstd.c
___________________________________________________________________
Added: svn:eol-style
## -0,0 +1 ##
+native
\ No newline at end of property
Added: svn:keywords
## -0,0 +1 ##
+MidnightBSD=%H
\ No newline at end of property
Added: svn:mime-type
## -0,0 +1 ##
+text/plain
\ No newline at end of property
Modified: trunk/contrib/libarchive/libarchive/archive_write_disk.3
===================================================================
--- trunk/contrib/libarchive/libarchive/archive_write_disk.3	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/libarchive/archive_write_disk.3	2018-06-19 21:37:44 UTC (rev 11136)
@@ -22,9 +22,9 @@
 .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
 .\" SUCH DAMAGE.
 .\"
-.\" $FreeBSD: stable/11/contrib/libarchive/libarchive/archive_write_disk.3 299529 2016-05-12 10:16:16Z mm $
+.\" $FreeBSD: stable/10/contrib/libarchive/libarchive/archive_write_disk.3 315433 2017-03-16 23:08:18Z mm $
 .\"
-.Dd April 3, 2017
+.Dd February 28, 2017
 .Dt ARCHIVE_WRITE_DISK 3
 .Os
 .Sh NAME
@@ -96,33 +96,6 @@
 The options field consists of a bitwise OR of one or more of the
 following values:
 .Bl -tag -compact -width "indent"
-.It Cm ARCHIVE_EXTRACT_ACL
-Attempt to restore Access Control Lists.
-By default, extended ACLs are ignored.
-.It Cm ARCHIVE_EXTRACT_CLEAR_NOCHANGE_FFLAGS
-Before removing a file system object prior to replacing it, clear
-platform-specific file flags which might prevent its removal.
-.It Cm ARCHIVE_EXTRACT_FFLAGS
-Attempt to restore file attributes (file flags).
-By default, file attributes are ignored.
-See
-.Xr chattr 1
-.Pq Linux
-or
-.Xr chflags 1
-.Pq FreeBSD, Mac OS X
-for more information on file attributes.
-.It Cm ARCHIVE_EXTRACT_MAC_METADATA
-Mac OS X specific. Restore metadata using
-.Xr copyfile 3 .
-By default,
-.Xr copyfile 3
-metadata is ignored.
-.It Cm ARCHIVE_EXTRACT_NO_OVERWRITE
-Existing files on disk will not be overwritten.
-By default, existing regular files are truncated and overwritten;
-existing directories will have their permissions updated;
-other pre-existing objects are unlinked and recreated from scratch.
 .It Cm ARCHIVE_EXTRACT_OWNER
 The user and group IDs should be set on the restored file.
 By default, the user and group IDs are not restored.
@@ -138,37 +111,15 @@
 if the default user and group IDs of newly-created objects on disk
 happen to match those specified in the archive entry.
 By default, only basic permissions are restored, and umask is obeyed.
-.It Cm ARCHIVE_EXTRACT_SECURE_NOABSOLUTEPATHS
-Refuse to extract an absolute path.
-The default is to not refuse such paths.
-.It Cm ARCHIVE_EXTRACT_SECURE_NODOTDOT
-Refuse to extract a path that contains a
-.Pa ..
-element anywhere within it.
-The default is to not refuse such paths.
-Note that paths ending in
-.Pa ..
-always cause an error, regardless of this flag.
-.It Cm ARCHIVE_EXTRACT_SECURE_SYMLINKS
-Refuse to extract any object whose final location would be altered
-by a symlink on disk.
-This is intended to help guard against a variety of mischief
-caused by archives that (deliberately or otherwise) extract
-files outside of the current directory.
-The default is not to perform this check.
-If
-.It Cm ARCHIVE_EXTRACT_SPARSE
-Scan data for blocks of NUL bytes and try to recreate them with holes.
-This results in sparse files, independent of whether the archive format
-supports or uses them.
-.Cm ARCHIVE_EXTRACT_UNLINK
-is specified together with this option, the library will
-remove any intermediate symlinks it finds and return an
-error only if such symlink could not be removed.
 .It Cm ARCHIVE_EXTRACT_TIME
 The timestamps (mtime, ctime, and atime) should be restored.
 By default, they are ignored.
 Note that restoring of atime is not currently supported.
+.It Cm ARCHIVE_EXTRACT_NO_OVERWRITE
+Existing files on disk will not be overwritten.
+By default, existing regular files are truncated and overwritten;
+existing directories will have their permissions updated;
+other pre-existing objects are unlinked and recreated from scratch.
 .It Cm ARCHIVE_EXTRACT_UNLINK
 Existing files on disk will be unlinked before any attempt to
 create them.
@@ -176,18 +127,45 @@
 By default, existing files are truncated and rewritten, but
 the file is not recreated.
 In particular, the default behavior does not break existing hard links.
+.It Cm ARCHIVE_EXTRACT_ACL
+Attempt to restore ACLs.
+By default, extended ACLs are ignored.
+.It Cm ARCHIVE_EXTRACT_FFLAGS
+Attempt to restore extended file flags.
+By default, file flags are ignored.
 .It Cm ARCHIVE_EXTRACT_XATTR
-Attempt to restore extended file attributes.
+Attempt to restore POSIX.1e extended attributes.
 By default, they are ignored.
-See
-.Xr xattr 7
-.Pq Linux ,
-.Xr xattr 2
-.Pq Mac OS X ,
-or
-.Xr getextattr 8
-.Pq FreeBSD
-for more information on extended file attributes.
+.It Cm ARCHIVE_EXTRACT_SECURE_SYMLINKS
+Refuse to extract any object whose final location would be altered
+by a symlink on disk.
+This is intended to help guard against a variety of mischief
+caused by archives that (deliberately or otherwise) extract
+files outside of the current directory.
+The default is not to perform this check.
+If
+.Cm ARCHIVE_EXTRACT_UNLINK
+is specified together with this option, the library will
+remove any intermediate symlinks it finds and return an
+error only if such symlink could not be removed.
+.It Cm ARCHIVE_EXTRACT_SECURE_NODOTDOT
+Refuse to extract a path that contains a
+.Pa ..
+element anywhere within it.
+The default is to not refuse such paths.
+Note that paths ending in
+.Pa ..
+always cause an error, regardless of this flag.
+.It Cm ARCHIVE_EXTRACT_SECURE_NOABSOLUTEPATHS
+Refuse to extract an absolute path.
+The default is to not refuse such paths.
+.It Cm ARCHIVE_EXTRACT_SPARSE
+Scan data for blocks of NUL bytes and try to recreate them with holes.
+This results in sparse files, independent of whether the archive format
+supports or uses them.
+.It Cm ARCHIVE_EXTRACT_CLEAR_NOCHANGE_FFLAGS
+Before removing a file system object prior to replacing it, clear
+platform-specific file flags which might prevent its removal.
 .El
 .It Xo
 .Fn archive_write_disk_set_group_lookup ,

Modified: trunk/contrib/libarchive/libarchive/archive_write_disk_posix.c
===================================================================
--- trunk/contrib/libarchive/libarchive/archive_write_disk_posix.c	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/libarchive/archive_write_disk_posix.c	2018-06-19 21:37:44 UTC (rev 11136)
@@ -835,7 +835,7 @@
 }
 
 int
-archive_write_disk_set_skip_file(struct archive *_a, int64_t d, int64_t i)
+archive_write_disk_set_skip_file(struct archive *_a, la_int64_t d, la_int64_t i)
 {
 	struct archive_write_disk *a = (struct archive_write_disk *)_a;
 	archive_check_magic(&a->archive, ARCHIVE_WRITE_DISK_MAGIC,
@@ -1786,7 +1786,7 @@
 int
 archive_write_disk_set_group_lookup(struct archive *_a,
     void *private_data,
-    int64_t (*lookup_gid)(void *private, const char *gname, int64_t gid),
+    la_int64_t (*lookup_gid)(void *private, const char *gname, la_int64_t gid),
     void (*cleanup_gid)(void *private))
 {
 	struct archive_write_disk *a = (struct archive_write_disk *)_a;
@@ -1822,7 +1822,7 @@
 }
 
 int64_t
-archive_write_disk_gid(struct archive *_a, const char *name, int64_t id)
+archive_write_disk_gid(struct archive *_a, const char *name, la_int64_t id)
 {
        struct archive_write_disk *a = (struct archive_write_disk *)_a;
        archive_check_magic(&a->archive, ARCHIVE_WRITE_DISK_MAGIC,
@@ -1833,7 +1833,7 @@
 }
  
 int64_t
-archive_write_disk_uid(struct archive *_a, const char *name, int64_t id)
+archive_write_disk_uid(struct archive *_a, const char *name, la_int64_t id)
 {
 	struct archive_write_disk *a = (struct archive_write_disk *)_a;
 	archive_check_magic(&a->archive, ARCHIVE_WRITE_DISK_MAGIC,
@@ -1981,6 +1981,10 @@
 	if ((en == EISDIR || en == EEXIST)
 	    && (a->flags & ARCHIVE_EXTRACT_NO_OVERWRITE)) {
 		/* If we're not overwriting, we're done. */
+		if (S_ISDIR(a->mode)) {
+			/* Don't overwrite any settings on existing directories. */
+			a->todo = 0;
+		}
 		archive_entry_unset_size(a->entry);
 		return (ARCHIVE_OK);
 	}
@@ -4092,86 +4096,61 @@
 set_xattrs(struct archive_write_disk *a)
 {
 	struct archive_entry *entry = a->entry;
-	struct archive_string errlist;
+	static int warning_done = 0;
 	int ret = ARCHIVE_OK;
 	int i = archive_entry_xattr_reset(entry);
-	short fail = 0;
 
-	archive_string_init(&errlist);
-
 	while (i--) {
 		const char *name;
 		const void *value;
 		size_t size;
-		int e;
-
 		archive_entry_xattr_next(entry, &name, &value, &size);
-
-		if (name == NULL)
-			continue;
+		if (name != NULL &&
+				strncmp(name, "xfsroot.", 8) != 0 &&
+				strncmp(name, "system.", 7) != 0) {
+			int e;
+			if (a->fd >= 0) {
 #if ARCHIVE_XATTR_LINUX
-		/* Linux: quietly skip POSIX.1e ACL extended attributes */
-		if (strncmp(name, "system.", 7) == 0 &&
-		   (strcmp(name + 7, "posix_acl_access") == 0 ||
-		    strcmp(name + 7, "posix_acl_default") == 0))
-			continue;
-		if (strncmp(name, "trusted.SGI_", 12) == 0 &&
-		   (strcmp(name + 12, "ACL_DEFAULT") == 0 ||
-		    strcmp(name + 12, "ACL_FILE") == 0))
-			continue;
-
-		/* Linux: xfsroot namespace is obsolete and unsupported */
-		if (strncmp(name, "xfsroot.", 8) == 0) {
-			fail = 1;
-			archive_strcat(&errlist, name);
-			archive_strappend_char(&errlist, ' ');
-			continue;
-		}
-#endif
-
-		if (a->fd >= 0) {
-#if ARCHIVE_XATTR_LINUX
-			e = fsetxattr(a->fd, name, value, size, 0);
+				e = fsetxattr(a->fd, name, value, size, 0);
 #elif ARCHIVE_XATTR_DARWIN
-			e = fsetxattr(a->fd, name, value, size, 0, 0);
+				e = fsetxattr(a->fd, name, value, size, 0, 0);
 #elif ARCHIVE_XATTR_AIX
-			e = fsetea(a->fd, name, value, size, 0);
+				e = fsetea(a->fd, name, value, size, 0);
 #endif
-		} else {
+			} else {
 #if ARCHIVE_XATTR_LINUX
-			e = lsetxattr(archive_entry_pathname(entry),
-			    name, value, size, 0);
+				e = lsetxattr(archive_entry_pathname(entry),
+				    name, value, size, 0);
 #elif ARCHIVE_XATTR_DARWIN
-			e = setxattr(archive_entry_pathname(entry),
-			    name, value, size, 0, XATTR_NOFOLLOW);
+				e = setxattr(archive_entry_pathname(entry),
+				    name, value, size, 0, XATTR_NOFOLLOW);
 #elif ARCHIVE_XATTR_AIX
-			e = lsetea(archive_entry_pathname(entry),
-			    name, value, size, 0);
+				e = lsetea(archive_entry_pathname(entry),
+				    name, value, size, 0);
 #endif
-		}
-		if (e == -1) {
+			}
+			if (e == -1) {
+				if (errno == ENOTSUP || errno == ENOSYS) {
+					if (!warning_done) {
+						warning_done = 1;
+						archive_set_error(&a->archive,
+						    errno,
+						    "Cannot restore extended "
+						    "attributes on this file "
+						    "system");
+					}
+				} else
+					archive_set_error(&a->archive, errno,
+					    "Failed to set extended attribute");
+				ret = ARCHIVE_WARN;
+			}
+		} else {
+			archive_set_error(&a->archive,
+			    ARCHIVE_ERRNO_FILE_FORMAT,
+			    "Invalid extended attribute encountered");
 			ret = ARCHIVE_WARN;
-			archive_strcat(&errlist, name);
-			archive_strappend_char(&errlist, ' ');
-			if (errno != ENOTSUP && errno != ENOSYS)
-				fail = 1;
 		}
 	}
-
-	if (ret == ARCHIVE_WARN) {
-		if (fail && errlist.length > 0) {
-			errlist.length--;
-			errlist.s[errlist.length] = '\0';
-			archive_set_error(&a->archive, ARCHIVE_ERRNO_MISC,
-			    "Cannot restore extended attributes: %s",
-			    errlist.s);
-		} else
-			archive_set_error(&a->archive, ARCHIVE_ERRNO_MISC,
-			    "Cannot restore extended "
-			    "attributes on this file system.");
-	}
-
-	archive_string_free(&errlist);
 	return (ret);
 }
 #elif ARCHIVE_XATTR_FREEBSD
@@ -4182,13 +4161,10 @@
 set_xattrs(struct archive_write_disk *a)
 {
 	struct archive_entry *entry = a->entry;
-	struct archive_string errlist;
+	static int warning_done = 0;
 	int ret = ARCHIVE_OK;
 	int i = archive_entry_xattr_reset(entry);
-	short fail = 0;
 
-	archive_string_init(&errlist);
-
 	while (i--) {
 		const char *name;
 		const void *value;
@@ -4203,13 +4179,15 @@
 				name += 5;
 				namespace = EXTATTR_NAMESPACE_USER;
 			} else {
-				/* Other namespaces are unsupported */
-				archive_strcat(&errlist, name);
-				archive_strappend_char(&errlist, ' ');
-				fail = 1;
+				/* Warn about other extended attributes. */
+				archive_set_error(&a->archive,
+				    ARCHIVE_ERRNO_FILE_FORMAT,
+				    "Can't restore extended attribute ``%s''",
+				    name);
 				ret = ARCHIVE_WARN;
 				continue;
 			}
+			errno = 0;
 
 			if (a->fd >= 0) {
 				e = extattr_set_fd(a->fd, namespace, name,
@@ -4220,30 +4198,24 @@
 				    name, value, size);
 			}
 			if (e != (ssize_t)size) {
-				archive_strcat(&errlist, name);
-				archive_strappend_char(&errlist, ' ');
+				if (errno == ENOTSUP || errno == ENOSYS) {
+					if (!warning_done) {
+						warning_done = 1;
+						archive_set_error(&a->archive,
+						    errno,
+						    "Cannot restore extended "
+						    "attributes on this file "
+						    "system");
+					}
+				} else {
+					archive_set_error(&a->archive, errno,
+					    "Failed to set extended attribute");
+				}
+
 				ret = ARCHIVE_WARN;
-				if (errno != ENOTSUP && errno != ENOSYS)
-					fail = 1;
 			}
 		}
 	}
-
-	if (ret == ARCHIVE_WARN) {
-		if (fail && errlist.length > 0) {
-			errlist.length--;
-			errlist.s[errlist.length] = '\0';
-
-			archive_set_error(&a->archive, ARCHIVE_ERRNO_MISC,
-			    "Cannot restore extended attributes: %s",
-			    errlist.s);
-		} else
-			archive_set_error(&a->archive, ARCHIVE_ERRNO_MISC,
-			    "Cannot restore extended "
-			    "attributes on this file system.");
-	}
-
-	archive_string_free(&errlist);
 	return (ret);
 }
 #else

Modified: trunk/contrib/libarchive/libarchive/archive_write_disk_private.h
===================================================================
--- trunk/contrib/libarchive/libarchive/archive_write_disk_private.h	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/libarchive/archive_write_disk_private.h	2018-06-19 21:37:44 UTC (rev 11136)
@@ -23,7 +23,7 @@
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  *
- * $FreeBSD: stable/11/contrib/libarchive/libarchive/archive_write_disk_private.h 238909 2012-07-30 14:47:35Z mm $
+ * $FreeBSD: stable/10/contrib/libarchive/libarchive/archive_write_disk_private.h 316338 2017-03-31 20:17:30Z mm $
  */
 
 #ifndef __LIBARCHIVE_BUILD

Modified: trunk/contrib/libarchive/libarchive/archive_write_disk_set_standard_lookup.c
===================================================================
--- trunk/contrib/libarchive/libarchive/archive_write_disk_set_standard_lookup.c	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/libarchive/archive_write_disk_set_standard_lookup.c	2018-06-19 21:37:44 UTC (rev 11136)
@@ -24,7 +24,7 @@
  */
 
 #include "archive_platform.h"
-__FBSDID("$FreeBSD: stable/11/contrib/libarchive/libarchive/archive_write_disk_set_standard_lookup.c 299529 2016-05-12 10:16:16Z mm $");
+__FBSDID("$FreeBSD: stable/10/contrib/libarchive/libarchive/archive_write_disk_set_standard_lookup.c 311042 2017-01-02 01:43:11Z mm $");
 
 #ifdef HAVE_SYS_TYPES_H
 #include <sys/types.h>

Modified: trunk/contrib/libarchive/libarchive/archive_write_filter.3
===================================================================
--- trunk/contrib/libarchive/libarchive/archive_write_filter.3	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/libarchive/archive_write_filter.3	2018-06-19 21:37:44 UTC (rev 11136)
@@ -42,7 +42,8 @@
 .Nm archive_write_add_filter_none ,
 .Nm archive_write_add_filter_program ,
 .Nm archive_write_add_filter_uuencode ,
-.Nm archive_write_add_filter_xz
+.Nm archive_write_add_filter_xz ,
+.Nm archive_write_add_filter_zstd ,
 .Nd functions enabling output filters
 .Sh LIBRARY
 Streaming Archive Library (libarchive, -larchive)
@@ -76,6 +77,8 @@
 .Fn archive_write_add_filter_uuencode "struct archive *"
 .Ft int
 .Fn archive_write_add_filter_xz "struct archive *"
+.Ft int
+.Fn archive_write_add_filter_zstd "struct archive *"
 .Sh DESCRIPTION
 .Bl -tag -width indent
 .It Xo
@@ -89,6 +92,7 @@
 .Fn archive_write_add_filter_lzma ,
 .Fn archive_write_add_filter_lzop ,
 .Fn archive_write_add_filter_xz ,
+.Fn archive_write_add_filter_zstd ,
 .Xc
 The resulting archive will be compressed as specified.
 Note that the compressed output is always properly blocked.

Modified: trunk/contrib/libarchive/libarchive/archive_write_open_fd.c
===================================================================
--- trunk/contrib/libarchive/libarchive/archive_write_open_fd.c	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/libarchive/archive_write_open_fd.c	2018-06-19 21:37:44 UTC (rev 11136)
@@ -24,7 +24,7 @@
  */
 
 #include "archive_platform.h"
-__FBSDID("$FreeBSD: stable/11/contrib/libarchive/libarchive/archive_write_open_fd.c 228763 2011-12-21 11:13:29Z mm $");
+__FBSDID("$FreeBSD: stable/10/contrib/libarchive/libarchive/archive_write_open_fd.c 228763 2011-12-21 11:13:29Z mm $");
 
 #ifdef HAVE_SYS_STAT_H
 #include <sys/stat.h>

Modified: trunk/contrib/libarchive/libarchive/archive_write_open_file.c
===================================================================
--- trunk/contrib/libarchive/libarchive/archive_write_open_file.c	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/libarchive/archive_write_open_file.c	2018-06-19 21:37:44 UTC (rev 11136)
@@ -24,7 +24,7 @@
  */
 
 #include "archive_platform.h"
-__FBSDID("$FreeBSD: stable/11/contrib/libarchive/libarchive/archive_write_open_file.c 228763 2011-12-21 11:13:29Z mm $");
+__FBSDID("$FreeBSD: stable/10/contrib/libarchive/libarchive/archive_write_open_file.c 228763 2011-12-21 11:13:29Z mm $");
 
 #ifdef HAVE_SYS_STAT_H
 #include <sys/stat.h>

Modified: trunk/contrib/libarchive/libarchive/archive_write_open_filename.c
===================================================================
--- trunk/contrib/libarchive/libarchive/archive_write_open_filename.c	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/libarchive/archive_write_open_filename.c	2018-06-19 21:37:44 UTC (rev 11136)
@@ -24,7 +24,7 @@
  */
 
 #include "archive_platform.h"
-__FBSDID("$FreeBSD: stable/11/contrib/libarchive/libarchive/archive_write_open_filename.c 299529 2016-05-12 10:16:16Z mm $");
+__FBSDID("$FreeBSD: stable/10/contrib/libarchive/libarchive/archive_write_open_filename.c 302001 2016-06-17 22:40:10Z mm $");
 
 #ifdef HAVE_SYS_STAT_H
 #include <sys/stat.h>

Modified: trunk/contrib/libarchive/libarchive/archive_write_open_memory.c
===================================================================
--- trunk/contrib/libarchive/libarchive/archive_write_open_memory.c	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/libarchive/archive_write_open_memory.c	2018-06-19 21:37:44 UTC (rev 11136)
@@ -24,7 +24,7 @@
  */
 
 #include "archive_platform.h"
-__FBSDID("$FreeBSD: stable/11/contrib/libarchive/libarchive/archive_write_open_memory.c 232153 2012-02-25 10:58:02Z mm $");
+__FBSDID("$FreeBSD: stable/10/contrib/libarchive/libarchive/archive_write_open_memory.c 311042 2017-01-02 01:43:11Z mm $");
 
 #include <errno.h>
 #include <stdlib.h>

Modified: trunk/contrib/libarchive/libarchive/archive_write_private.h
===================================================================
--- trunk/contrib/libarchive/libarchive/archive_write_private.h	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/libarchive/archive_write_private.h	2018-06-19 21:37:44 UTC (rev 11136)
@@ -22,7 +22,7 @@
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  *
- * $FreeBSD: stable/11/contrib/libarchive/libarchive/archive_write_private.h 299529 2016-05-12 10:16:16Z mm $
+ * $FreeBSD: stable/10/contrib/libarchive/libarchive/archive_write_private.h 302001 2016-06-17 22:40:10Z mm $
  */
 
 #ifndef __LIBARCHIVE_BUILD

Modified: trunk/contrib/libarchive/libarchive/archive_write_set_format.c
===================================================================
--- trunk/contrib/libarchive/libarchive/archive_write_set_format.c	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/libarchive/archive_write_set_format.c	2018-06-19 21:37:44 UTC (rev 11136)
@@ -24,7 +24,7 @@
  */
 
 #include "archive_platform.h"
-__FBSDID("$FreeBSD: stable/11/contrib/libarchive/libarchive/archive_write_set_format.c 299529 2016-05-12 10:16:16Z mm $");
+__FBSDID("$FreeBSD: stable/10/contrib/libarchive/libarchive/archive_write_set_format.c 316338 2017-03-31 20:17:30Z mm $");
 
 #ifdef HAVE_SYS_TYPES_H
 #include <sys/types.h>

Modified: trunk/contrib/libarchive/libarchive/archive_write_set_format_7zip.c
===================================================================
--- trunk/contrib/libarchive/libarchive/archive_write_set_format_7zip.c	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/libarchive/archive_write_set_format_7zip.c	2018-06-19 21:37:44 UTC (rev 11136)
@@ -2095,20 +2095,7 @@
 /*
  * _7_PPMD compressor.
  */
-static void *
-ppmd_alloc(void *p, size_t size)
-{
-	(void)p;
-	return malloc(size);
-}
 static void
-ppmd_free(void *p, void *address)
-{
-	(void)p;
-	free(address);
-}
-static ISzAlloc g_szalloc = { ppmd_alloc, ppmd_free };
-static void
 ppmd_write(void *p, Byte b)
 {
 	struct archive_write *a = ((IByteOut *)p)->a;
@@ -2167,7 +2154,7 @@
 	archive_le32enc(props+1, msize);
 	__archive_ppmd7_functions.Ppmd7_Construct(&strm->ppmd7_context);
 	r = __archive_ppmd7_functions.Ppmd7_Alloc(
-		&strm->ppmd7_context, msize, &g_szalloc);
+		&strm->ppmd7_context, msize);
 	if (r == 0) {
 		free(strm->buff);
 		free(strm);
@@ -2243,7 +2230,7 @@
 	(void)a; /* UNUSED */
 
 	strm = (struct ppmd_stream *)lastrm->real_stream;
-	__archive_ppmd7_functions.Ppmd7_Free(&strm->ppmd7_context, &g_szalloc);
+	__archive_ppmd7_functions.Ppmd7_Free(&strm->ppmd7_context);
 	free(strm->buff);
 	free(strm);
 	lastrm->real_stream = NULL;

Modified: trunk/contrib/libarchive/libarchive/archive_write_set_format_ar.c
===================================================================
--- trunk/contrib/libarchive/libarchive/archive_write_set_format_ar.c	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/libarchive/archive_write_set_format_ar.c	2018-06-19 21:37:44 UTC (rev 11136)
@@ -26,7 +26,7 @@
  */
 
 #include "archive_platform.h"
-__FBSDID("$FreeBSD: stable/11/contrib/libarchive/libarchive/archive_write_set_format_ar.c 248616 2013-03-22 13:36:03Z mm $");
+__FBSDID("$FreeBSD: stable/10/contrib/libarchive/libarchive/archive_write_set_format_ar.c 322072 2017-08-04 23:34:39Z mm $");
 
 #ifdef HAVE_ERRNO_H
 #include <errno.h>
@@ -374,13 +374,14 @@
 			return (ARCHIVE_WARN);
 		}
 
-		ar->strtab = (char *)malloc(s);
+		ar->strtab = (char *)malloc(s + 1);
 		if (ar->strtab == NULL) {
 			archive_set_error(&a->archive, ENOMEM,
 			    "Can't allocate strtab buffer");
 			return (ARCHIVE_FATAL);
 		}
-		strncpy(ar->strtab, buff, s);
+		memcpy(ar->strtab, buff, s);
+		ar->strtab[s] = '\0';
 		ar->has_strtab = 1;
 	}
 

Modified: trunk/contrib/libarchive/libarchive/archive_write_set_format_by_name.c
===================================================================
--- trunk/contrib/libarchive/libarchive/archive_write_set_format_by_name.c	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/libarchive/archive_write_set_format_by_name.c	2018-06-19 21:37:44 UTC (rev 11136)
@@ -24,7 +24,7 @@
  */
 
 #include "archive_platform.h"
-__FBSDID("$FreeBSD: stable/11/contrib/libarchive/libarchive/archive_write_set_format_by_name.c 299529 2016-05-12 10:16:16Z mm $");
+__FBSDID("$FreeBSD: stable/10/contrib/libarchive/libarchive/archive_write_set_format_by_name.c 316338 2017-03-31 20:17:30Z mm $");
 
 #ifdef HAVE_SYS_TYPES_H
 #include <sys/types.h>

Modified: trunk/contrib/libarchive/libarchive/archive_write_set_format_cpio.c
===================================================================
--- trunk/contrib/libarchive/libarchive/archive_write_set_format_cpio.c	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/libarchive/archive_write_set_format_cpio.c	2018-06-19 21:37:44 UTC (rev 11136)
@@ -25,7 +25,7 @@
  */
 
 #include "archive_platform.h"
-__FBSDID("$FreeBSD: stable/11/contrib/libarchive/libarchive/archive_write_set_format_cpio.c 238856 2012-07-28 06:38:44Z mm $");
+__FBSDID("$FreeBSD: stable/10/contrib/libarchive/libarchive/archive_write_set_format_cpio.c 311042 2017-01-02 01:43:11Z mm $");
 
 #ifdef HAVE_ERRNO_H
 #include <errno.h>

Modified: trunk/contrib/libarchive/libarchive/archive_write_set_format_cpio_newc.c
===================================================================
--- trunk/contrib/libarchive/libarchive/archive_write_set_format_cpio_newc.c	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/libarchive/archive_write_set_format_cpio_newc.c	2018-06-19 21:37:44 UTC (rev 11136)
@@ -26,7 +26,7 @@
  */
 
 #include "archive_platform.h"
-__FBSDID("$FreeBSD: stable/11/contrib/libarchive/libarchive/archive_write_set_format_cpio_newc.c 238856 2012-07-28 06:38:44Z mm $");
+__FBSDID("$FreeBSD: stable/10/contrib/libarchive/libarchive/archive_write_set_format_cpio_newc.c 311042 2017-01-02 01:43:11Z mm $");
 
 #ifdef HAVE_ERRNO_H
 #include <errno.h>

Modified: trunk/contrib/libarchive/libarchive/archive_write_set_format_filter_by_ext.c
===================================================================
--- trunk/contrib/libarchive/libarchive/archive_write_set_format_filter_by_ext.c	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/libarchive/archive_write_set_format_filter_by_ext.c	2018-06-19 21:37:44 UTC (rev 11136)
@@ -25,7 +25,7 @@
  */
 
 #include "archive_platform.h"
-__FBSDID("$FreeBSD: stable/11/contrib/libarchive/libarchive/archive_write_set_format_filter_by_ext.c 299529 2016-05-12 10:16:16Z mm $");
+__FBSDID("$FreeBSD: stable/10/contrib/libarchive/libarchive/archive_write_set_format_filter_by_ext.c 316338 2017-03-31 20:17:30Z mm $");
 
 #ifdef HAVE_SYS_TYPES_H
 #include <sys/types.h>

Modified: trunk/contrib/libarchive/libarchive/archive_write_set_format_mtree.c
===================================================================
--- trunk/contrib/libarchive/libarchive/archive_write_set_format_mtree.c	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/libarchive/archive_write_set_format_mtree.c	2018-06-19 21:37:44 UTC (rev 11136)
@@ -25,7 +25,7 @@
  */
 
 #include "archive_platform.h"
-__FBSDID("$FreeBSD: stable/11/contrib/libarchive/libarchive/archive_write_set_format_mtree.c 299529 2016-05-12 10:16:16Z mm $");
+__FBSDID("$FreeBSD: stable/10/contrib/libarchive/libarchive/archive_write_set_format_mtree.c 311042 2017-01-02 01:43:11Z mm $");
 
 #ifdef HAVE_SYS_TYPES_H
 #include <sys/types.h>

Modified: trunk/contrib/libarchive/libarchive/archive_write_set_format_pax.c
===================================================================
--- trunk/contrib/libarchive/libarchive/archive_write_set_format_pax.c	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/libarchive/archive_write_set_format_pax.c	2018-06-19 21:37:44 UTC (rev 11136)
@@ -26,7 +26,7 @@
  */
 
 #include "archive_platform.h"
-__FBSDID("$FreeBSD: stable/11/contrib/libarchive/libarchive/archive_write_set_format_pax.c 299529 2016-05-12 10:16:16Z mm $");
+__FBSDID("$FreeBSD: stable/10/contrib/libarchive/libarchive/archive_write_set_format_pax.c 324418 2017-10-08 20:55:45Z mm $");
 
 #ifdef HAVE_ERRNO_H
 #include <errno.h>
@@ -1654,7 +1654,7 @@
  * GNU PAX Format 1.0 requires the special name, which pattern is:
  * <dir>/GNUSparseFile.<pid>/<original file name>
  *
- * Since reproducable archives are more important, use 0 as pid.
+ * Since reproducible archives are more important, use 0 as pid.
  *
  * This function is used for only Sparse file, a file type of which
  * is regular file.

Modified: trunk/contrib/libarchive/libarchive/archive_write_set_format_shar.c
===================================================================
--- trunk/contrib/libarchive/libarchive/archive_write_set_format_shar.c	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/libarchive/archive_write_set_format_shar.c	2018-06-19 21:37:44 UTC (rev 11136)
@@ -25,7 +25,7 @@
  */
 
 #include "archive_platform.h"
-__FBSDID("$FreeBSD: stable/11/contrib/libarchive/libarchive/archive_write_set_format_shar.c 299529 2016-05-12 10:16:16Z mm $");
+__FBSDID("$FreeBSD: stable/10/contrib/libarchive/libarchive/archive_write_set_format_shar.c 311042 2017-01-02 01:43:11Z mm $");
 
 #ifdef HAVE_ERRNO_H
 #include <errno.h>

Modified: trunk/contrib/libarchive/libarchive/archive_write_set_format_ustar.c
===================================================================
--- trunk/contrib/libarchive/libarchive/archive_write_set_format_ustar.c	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/libarchive/archive_write_set_format_ustar.c	2018-06-19 21:37:44 UTC (rev 11136)
@@ -25,7 +25,7 @@
  */
 
 #include "archive_platform.h"
-__FBSDID("$FreeBSD: stable/11/contrib/libarchive/libarchive/archive_write_set_format_ustar.c 305188 2016-09-01 07:53:59Z mm $");
+__FBSDID("$FreeBSD: stable/10/contrib/libarchive/libarchive/archive_write_set_format_ustar.c 311042 2017-01-02 01:43:11Z mm $");
 
 
 #ifdef HAVE_ERRNO_H

Modified: trunk/contrib/libarchive/libarchive/archive_write_set_format_warc.c
===================================================================
--- trunk/contrib/libarchive/libarchive/archive_write_set_format_warc.c	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/libarchive/archive_write_set_format_warc.c	2018-06-19 21:37:44 UTC (rev 11136)
@@ -26,7 +26,7 @@
  */
 
 #include "archive_platform.h"
-__FBSDID("$FreeBSD: stable/11/contrib/libarchive/libarchive/archive_write_set_format_warc.c 299529 2016-05-12 10:16:16Z mm $");
+__FBSDID("$FreeBSD: stable/10/contrib/libarchive/libarchive/archive_write_set_format_warc.c 316338 2017-03-31 20:17:30Z mm $");
 
 #ifdef HAVE_ERRNO_H
 #include <errno.h>

Modified: trunk/contrib/libarchive/libarchive/archive_write_set_format_zip.c
===================================================================
--- trunk/contrib/libarchive/libarchive/archive_write_set_format_zip.c	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/libarchive/archive_write_set_format_zip.c	2018-06-19 21:37:44 UTC (rev 11136)
@@ -30,7 +30,7 @@
  */
 
 #include "archive_platform.h"
-__FBSDID("$FreeBSD: stable/11/contrib/libarchive/libarchive/archive_write_set_format_zip.c 299529 2016-05-12 10:16:16Z mm $");
+__FBSDID("$FreeBSD: stable/10/contrib/libarchive/libarchive/archive_write_set_format_zip.c 313571 2017-02-11 00:56:18Z mm $");
 
 #ifdef HAVE_ERRNO_H
 #include <errno.h>

Modified: trunk/contrib/libarchive/libarchive/archive_write_set_passphrase.3
===================================================================
--- trunk/contrib/libarchive/libarchive/archive_write_set_passphrase.3	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/libarchive/archive_write_set_passphrase.3	2018-06-19 21:37:44 UTC (rev 11136)
@@ -22,7 +22,7 @@
 .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
 .\" SUCH DAMAGE.
 .\"
-.\" $FreeBSD: stable/11/contrib/libarchive/libarchive/archive_write_set_passphrase.3 299529 2016-05-12 10:16:16Z mm $
+.\" $FreeBSD: stable/10/contrib/libarchive/libarchive/archive_write_set_passphrase.3 302001 2016-06-17 22:40:10Z mm $
 .\"
 .Dd September 21, 2014
 .Dt ARCHIVE_WRITE_SET_PASSPHRASE 3

Modified: trunk/contrib/libarchive/libarchive/archive_write_set_passphrase.c
===================================================================
--- trunk/contrib/libarchive/libarchive/archive_write_set_passphrase.c	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/libarchive/archive_write_set_passphrase.c	2018-06-19 21:37:44 UTC (rev 11136)
@@ -24,7 +24,7 @@
  */
 
 #include "archive_platform.h"
-__FBSDID("$FreeBSD: stable/11/contrib/libarchive/libarchive/archive_write_set_passphrase.c 299529 2016-05-12 10:16:16Z mm $");
+__FBSDID("$FreeBSD: stable/10/contrib/libarchive/libarchive/archive_write_set_passphrase.c 302001 2016-06-17 22:40:10Z mm $");
 
 #ifdef HAVE_ERRNO_H
 #include <errno.h>

Modified: trunk/contrib/libarchive/libarchive/cpio.5
===================================================================
--- trunk/contrib/libarchive/libarchive/cpio.5	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/libarchive/cpio.5	2018-06-19 21:37:44 UTC (rev 11136)
@@ -22,7 +22,7 @@
 .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
 .\" SUCH DAMAGE.
 .\"
-.\" $FreeBSD: stable/11/contrib/libarchive/libarchive/cpio.5 238856 2012-07-28 06:38:44Z mm $
+.\" $FreeBSD: stable/10/contrib/libarchive/libarchive/cpio.5 238856 2012-07-28 06:38:44Z mm $
 .\"
 .Dd December 23, 2011
 .Dt CPIO 5

Modified: trunk/contrib/libarchive/libarchive/filter_fork.h
===================================================================
--- trunk/contrib/libarchive/libarchive/filter_fork.h	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/libarchive/filter_fork.h	2018-06-19 21:37:44 UTC (rev 11136)
@@ -22,7 +22,7 @@
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  *
- * $FreeBSD: stable/11/contrib/libarchive/libarchive/filter_fork.h 248616 2013-03-22 13:36:03Z mm $
+ * $FreeBSD: stable/10/contrib/libarchive/libarchive/filter_fork.h 248616 2013-03-22 13:36:03Z mm $
  */
 
 #ifndef __LIBARCHIVE_BUILD

Modified: trunk/contrib/libarchive/libarchive/libarchive-formats.5
===================================================================
--- trunk/contrib/libarchive/libarchive/libarchive-formats.5	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/libarchive/libarchive-formats.5	2018-06-19 21:37:44 UTC (rev 11136)
@@ -22,7 +22,7 @@
 .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
 .\" SUCH DAMAGE.
 .\"
-.\" $FreeBSD: stable/11/contrib/libarchive/libarchive/libarchive-formats.5 302075 2016-06-22 07:49:59Z mm $
+.\" $FreeBSD: stable/10/contrib/libarchive/libarchive/libarchive-formats.5 313571 2017-02-11 00:56:18Z mm $
 .\"
 .Dd December 27, 2016
 .Dt LIBARCHIVE-FORMATS 5

Modified: trunk/contrib/libarchive/libarchive/libarchive.3
===================================================================
--- trunk/contrib/libarchive/libarchive/libarchive.3	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/libarchive/libarchive.3	2018-06-19 21:37:44 UTC (rev 11136)
@@ -22,7 +22,7 @@
 .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
 .\" SUCH DAMAGE.
 .\"
-.\" $FreeBSD: stable/11/contrib/libarchive/libarchive/libarchive.3 299529 2016-05-12 10:16:16Z mm $
+.\" $FreeBSD: stable/10/contrib/libarchive/libarchive/libarchive.3 302001 2016-06-17 22:40:10Z mm $
 .\"
 .Dd March 18, 2012
 .Dt LIBARCHIVE 3

Modified: trunk/contrib/libarchive/libarchive/libarchive_internals.3
===================================================================
--- trunk/contrib/libarchive/libarchive/libarchive_internals.3	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/libarchive/libarchive_internals.3	2018-06-19 21:37:44 UTC (rev 11136)
@@ -22,7 +22,7 @@
 .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
 .\" SUCH DAMAGE.
 .\"
-.\" $FreeBSD: stable/11/contrib/libarchive/libarchive/libarchive_internals.3 299529 2016-05-12 10:16:16Z mm $
+.\" $FreeBSD: stable/10/contrib/libarchive/libarchive/libarchive_internals.3 302001 2016-06-17 22:40:10Z mm $
 .\"
 .Dd January 26, 2011
 .Dt LIBARCHIVE_INTERNALS 3

Modified: trunk/contrib/libarchive/libarchive/tar.5
===================================================================
--- trunk/contrib/libarchive/libarchive/tar.5	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/libarchive/tar.5	2018-06-19 21:37:44 UTC (rev 11136)
@@ -23,7 +23,7 @@
 .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
 .\" SUCH DAMAGE.
 .\"
-.\" $FreeBSD: stable/11/contrib/libarchive/libarchive/tar.5 299529 2016-05-12 10:16:16Z mm $
+.\" $FreeBSD: stable/10/contrib/libarchive/libarchive/tar.5 313571 2017-02-11 00:56:18Z mm $
 .\"
 .Dd December 27, 2016
 .Dt TAR 5

Modified: trunk/contrib/libarchive/libarchive/test/README
===================================================================
--- trunk/contrib/libarchive/libarchive/test/README	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/libarchive/test/README	2018-06-19 21:37:44 UTC (rev 11136)
@@ -1,4 +1,4 @@
-$FreeBSD: stable/11/contrib/libarchive/libarchive/test/README 299529 2016-05-12 10:16:16Z mm $
+$FreeBSD: stable/10/contrib/libarchive/libarchive/test/README 302001 2016-06-17 22:40:10Z mm $
 
 This is the test harness for libarchive.
 

Modified: trunk/contrib/libarchive/libarchive/test/main.c
===================================================================
--- trunk/contrib/libarchive/libarchive/test/main.c	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/libarchive/test/main.c	2018-06-19 21:37:44 UTC (rev 11136)
@@ -60,7 +60,7 @@
  * TODO: Move this into a separate configuration header, have all test
  * suites share one copy of this file.
  */
-__FBSDID("$FreeBSD: stable/11/contrib/libarchive/libarchive/test/main.c 307138 2016-10-12 10:28:22Z mm $");
+__FBSDID("$FreeBSD: stable/10/contrib/libarchive/libarchive/test/main.c 313571 2017-02-11 00:56:18Z mm $");
 #define KNOWNREF	"test_compat_gtar_1.tar.uu"
 #define	ENVBASE "LIBARCHIVE" /* Prefix for environment variables. */
 #undef	PROGRAM              /* Testing a library, not a program. */
@@ -128,6 +128,13 @@
 # include <crtdbg.h>
 #endif
 
+mode_t umasked(mode_t expected_mode)
+{
+	mode_t mode = umask(0);
+	umask(mode);
+	return expected_mode & ~mode;
+}
+
 /* Path to working directory for current test */
 const char *testworkdir;
 #ifdef PROGRAM
@@ -209,6 +216,12 @@
     unsigned int line, uintptr_t pReserved)
 {
 	/* nop */
+	// Silence unused-parameter compiler warnings.
+	(void)expression;
+	(void)function;
+	(void)file;
+	(void)line;
+	(void)pReserved;
 }
 #endif
 
@@ -512,7 +525,7 @@
 		return (0); /* Standard:  return 0 for end-of-string. */
 	cnt = utf8_count[ch];
 
-	/* Invalide sequence or there are not plenty bytes. */
+	/* Invalid sequence or there are not plenty bytes. */
 	if (n < (size_t)cnt)
 		return (-1);
 
@@ -551,7 +564,7 @@
 		return (-1);
 	}
 
-	/* The code point larger than 0x10FFFF is not leagal
+	/* The code point larger than 0x10FFFF is not legal
 	 * Unicode values. */
 	if (wc > 0x10FFFF)
 		return (-1);
@@ -1155,6 +1168,35 @@
 	return (0);
 }
 
+/* Verify that a text file does not contains the specified strings */
+int
+assertion_file_contains_no_invalid_strings(const char *file, int line,
+    const char *pathname, const char *strings[])
+{
+	char *buff;
+	int i;
+
+	buff = slurpfile(NULL, "%s", pathname);
+	if (buff == NULL) {
+		failure_start(file, line, "Can't read file: %s", pathname);
+		failure_finish(NULL);
+		return (0);
+	}
+
+	for (i = 0; strings[i] != NULL; ++i) {
+		if (strstr(buff, strings[i]) != NULL) {
+			failure_start(file, line, "Invalid string in %s: %s", pathname,
+			    strings[i]);
+			failure_finish(NULL);
+			free(buff);
+			return(0);
+		}
+	}
+
+	free(buff);
+	return (0);
+}
+
 /* Test that two paths point to the same file. */
 /* As a side-effect, asserts that both files exist. */
 static int
@@ -1364,6 +1406,35 @@
 	return assertion_file_time(file, line, pathname, 0, 0, 'b', 1);
 }
 
+/* Verify mode of 'pathname'. */
+int
+assertion_file_mode(const char *file, int line, const char *pathname, int expected_mode)
+{
+	int mode;
+	int r;
+
+	assertion_count(file, line);
+#if defined(_WIN32) && !defined(__CYGWIN__)
+	failure_start(file, line, "assertFileMode not yet implemented for Windows");
+	(void)mode; /* UNUSED */
+	(void)r; /* UNUSED */
+	(void)pathname; /* UNUSED */
+	(void)expected_mode; /* UNUSED */
+#else
+	{
+		struct stat st;
+		r = lstat(pathname, &st);
+		mode = (int)(st.st_mode & 0777);
+	}
+	if (r == 0 && mode == expected_mode)
+			return (1);
+	failure_start(file, line, "File %s has mode %o, expected %o",
+	    pathname, mode, expected_mode);
+#endif
+	failure_finish(NULL);
+	return (0);
+}
+
 /* Verify mtime of 'pathname'. */
 int
 assertion_file_mtime(const char *file, int line,
@@ -1403,7 +1474,7 @@
 	assertion_count(file, line);
 	r = lstat(pathname, &st);
 	if (r == 0 && (int)st.st_nlink == nlinks)
-			return (1);
+		return (1);
 	failure_start(file, line, "File %s has %d links, expected %d",
 	    pathname, st.st_nlink, nlinks);
 	failure_finish(NULL);
@@ -1440,31 +1511,6 @@
 	return (0);
 }
 
-/* Verify mode of 'pathname'. */
-int
-assertion_file_mode(const char *file, int line, const char *pathname, int expected_mode)
-{
-	int mode;
-	int r;
-
-	assertion_count(file, line);
-#if defined(_WIN32) && !defined(__CYGWIN__)
-	failure_start(file, line, "assertFileMode not yet implemented for Windows");
-#else
-	{
-		struct stat st;
-		r = lstat(pathname, &st);
-		mode = (int)(st.st_mode & 0777);
-	}
-	if (r == 0 && mode == expected_mode)
-			return (1);
-	failure_start(file, line, "File %s has mode %o, expected %o",
-	    pathname, mode, expected_mode);
-#endif
-	failure_finish(NULL);
-	return (0);
-}
-
 /* Assert that 'pathname' is a dir.  If mode >= 0, verify that too. */
 int
 assertion_is_dir(const char *file, int line, const char *pathname, int mode)
@@ -1664,6 +1710,7 @@
 	if (0 != chmod(path, mode)) {
 		failure_start(file, line, "Could not chmod %s", path);
 		failure_finish(NULL);
+		close(fd);
 		return (0);
 	}
 	if (contents != NULL) {
@@ -1678,6 +1725,7 @@
 			failure_start(file, line,
 			    "Could not write to %s", path);
 			failure_finish(NULL);
+			close(fd);
 			return (0);
 		}
 	}
@@ -2381,6 +2429,132 @@
 		extract_reference_file(*names++);
 }
 
+/* Set ACLs */
+void
+archive_test_set_acls(struct archive_entry *ae,
+    struct archive_test_acl_t *acls, int n)
+{
+	int i;
+
+	archive_entry_acl_clear(ae);
+	for (i = 0; i < n; i++) {
+		failure("type=%#010x, permset=%#010x, tag=%d, qual=%d name=%s",
+		    acls[i].type, acls[i].permset, acls[i].tag,
+		    acls[i].qual, acls[i].name);
+		assertEqualInt(ARCHIVE_OK,
+		    archive_entry_acl_add_entry(ae,
+			acls[i].type, acls[i].permset, acls[i].tag,
+			acls[i].qual, acls[i].name));
+	}
+}
+
+static int
+archive_test_acl_match(struct archive_test_acl_t *acl, int type, int permset,
+    int tag, int qual, const char *name)
+{
+	if (type != acl->type)
+		return (0);
+	if (permset != acl->permset)
+		return (0);
+	if (tag != acl->tag)
+		return (0);
+	if (tag == ARCHIVE_ENTRY_ACL_USER_OBJ)
+		return (1);
+	if (tag == ARCHIVE_ENTRY_ACL_GROUP_OBJ)
+		return (1);
+	if (tag == ARCHIVE_ENTRY_ACL_EVERYONE)
+		return (1);
+	if (tag == ARCHIVE_ENTRY_ACL_OTHER)
+		return (1);
+	if (qual != acl->qual)
+		return (0);
+	if (name == NULL) {
+		if (acl->name == NULL || acl->name[0] == '\0')
+			return (1);
+		return (0);
+	}
+	if (acl->name == NULL) {
+		if (name[0] == '\0')
+			return (1);
+		return (0);
+	}
+	return (0 == strcmp(name, acl->name));
+}
+
+/* Compare ACLs */
+void
+archive_test_compare_acls(struct archive_entry *ae,
+    struct archive_test_acl_t *acls, int cnt, int want_type, int mode)
+{
+	int *marker;
+	int i, r, n;
+	int type, permset, tag, qual;
+	int matched;
+	const char *name;
+
+	n = 0;
+	marker = malloc(sizeof(marker[0]) * cnt);
+
+	for (i = 0; i < cnt; i++) {
+		if ((acls[i].type & want_type) != 0) {
+			marker[n] = i;
+			n++;
+		}
+	}
+
+	failure("No ACL's to compare, type mask: %d", want_type);
+	assert(n > 0);
+	if (n == 0)
+		return;
+
+	while (0 == (r = archive_entry_acl_next(ae, want_type,
+			 &type, &permset, &tag, &qual, &name))) {
+		for (i = 0, matched = 0; i < n && !matched; i++) {
+			if (archive_test_acl_match(&acls[marker[i]], type,
+			    permset, tag, qual, name)) {
+				/* We found a match; remove it. */
+				marker[i] = marker[n - 1];
+				n--;
+				matched = 1;
+			}
+		}
+		if (type == ARCHIVE_ENTRY_ACL_TYPE_ACCESS
+		    && tag == ARCHIVE_ENTRY_ACL_USER_OBJ) {
+			if (!matched) printf("No match for user_obj perm\n");
+			failure("USER_OBJ permset (%02o) != user mode (%02o)",
+			    permset, 07 & (mode >> 6));
+			assert((permset << 6) == (mode & 0700));
+		} else if (type == ARCHIVE_ENTRY_ACL_TYPE_ACCESS
+		    && tag == ARCHIVE_ENTRY_ACL_GROUP_OBJ) {
+			if (!matched) printf("No match for group_obj perm\n");
+			failure("GROUP_OBJ permset %02o != group mode %02o",
+			    permset, 07 & (mode >> 3));
+			assert((permset << 3) == (mode & 0070));
+		} else if (type == ARCHIVE_ENTRY_ACL_TYPE_ACCESS
+		    && tag == ARCHIVE_ENTRY_ACL_OTHER) {
+			if (!matched) printf("No match for other perm\n");
+			failure("OTHER permset (%02o) != other mode (%02o)",
+			    permset, mode & 07);
+			assert((permset << 0) == (mode & 0007));
+		} else {
+			failure("Could not find match for ACL "
+			    "(type=%#010x,permset=%#010x,tag=%d,qual=%d,"
+			    "name=``%s'')", type, permset, tag, qual, name);
+			assert(matched == 1);
+		}
+	}
+	assertEqualInt(ARCHIVE_EOF, r);
+	if ((want_type & ARCHIVE_ENTRY_ACL_TYPE_ACCESS) != 0)
+		assert((mode_t)(mode & 0777) == (archive_entry_mode(ae)
+		    & 0777));
+	failure("Could not find match for ACL "
+	    "(type=%#010x,permset=%#010x,tag=%d,qual=%d,name=``%s'')",
+	    acls[marker[0]].type, acls[marker[0]].permset,
+	    acls[marker[0]].tag, acls[marker[0]].qual, acls[marker[0]].name);
+	assert(n == 0); /* Number of ACLs not matched should == 0 */
+	free(marker);
+}
+
 /*
  *
  * TEST management

Modified: trunk/contrib/libarchive/libarchive/test/read_open_memory.c
===================================================================
--- trunk/contrib/libarchive/libarchive/test/read_open_memory.c	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/libarchive/test/read_open_memory.c	2018-06-19 21:37:44 UTC (rev 11136)
@@ -24,7 +24,7 @@
  */
 
 #include "test.h"
-__FBSDID("$FreeBSD: stable/11/contrib/libarchive/libarchive/test/read_open_memory.c 299529 2016-05-12 10:16:16Z mm $");
+__FBSDID("$FreeBSD: stable/10/contrib/libarchive/libarchive/test/read_open_memory.c 328828 2018-02-03 02:17:25Z mm $");
 
 #include <errno.h>
 #include <stdlib.h>
@@ -91,9 +91,11 @@
 	switch (level) {
 	case 3:
 		archive_read_set_seek_callback(a, memory_read_seek);
+		__LA_FALLTHROUGH;
 	case 2:
 		archive_read_set_open_callback(a, memory_read_open);
 		archive_read_set_skip_callback(a, memory_read_skip);
+		__LA_FALLTHROUGH;
 	case 1:
 		mine = malloc(sizeof(*mine));
 		if (mine == NULL) {

Modified: trunk/contrib/libarchive/libarchive/test/test.h
===================================================================
--- trunk/contrib/libarchive/libarchive/test/test.h	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/libarchive/test/test.h	2018-06-19 21:37:44 UTC (rev 11136)
@@ -33,4 +33,10 @@
 #define	EXTRA_ERRNO(x)	archive_errno((struct archive *)(x))
 #define	EXTRA_VERSION	archive_version_details()
 
+#if defined(__GNUC__) && (__GNUC__ >= 7)
+#define	__LA_FALLTHROUGH	__attribute__((fallthrough))
+#else
+#define	__LA_FALLTHROUGH
+#endif
+
 #include "test_common.h"

Modified: trunk/contrib/libarchive/libarchive/test/test_acl_pax.c
===================================================================
--- trunk/contrib/libarchive/libarchive/test/test_acl_pax.c	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/libarchive/test/test_acl_pax.c	2018-06-19 21:37:44 UTC (rev 11136)
@@ -24,7 +24,7 @@
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 #include "test.h"
-__FBSDID("$FreeBSD$");
+__FBSDID("$FreeBSD: stable/10/contrib/libarchive/libarchive/test/test_acl_pax.c 315433 2017-03-16 23:08:18Z mm $");
 
 /*
  * Exercise the system-independent portion of the ACL support.

Modified: trunk/contrib/libarchive/libarchive/test/test_acl_platform_nfs4.c
===================================================================
--- trunk/contrib/libarchive/libarchive/test/test_acl_platform_nfs4.c	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/libarchive/test/test_acl_platform_nfs4.c	2018-06-19 21:37:44 UTC (rev 11136)
@@ -408,7 +408,9 @@
 		{ARCHIVE_ENTRY_ACL_ENTRY_INHERIT_ONLY, RICHACE_INHERIT_ONLY_ACE},
 		{ARCHIVE_ENTRY_ACL_ENTRY_INHERITED, RICHACE_INHERITED_ACE}
 #else	/* FreeBSD NFSv4 ACL inheritance flags */
+#ifdef ACL_ENTRY_INHERITED
 		{ARCHIVE_ENTRY_ACL_ENTRY_INHERITED, ACL_ENTRY_INHERITED},
+#endif
 		{ARCHIVE_ENTRY_ACL_ENTRY_FILE_INHERIT, ACL_ENTRY_FILE_INHERIT},
 		{ARCHIVE_ENTRY_ACL_ENTRY_DIRECTORY_INHERIT, ACL_ENTRY_DIRECTORY_INHERIT},
 		{ARCHIVE_ENTRY_ACL_ENTRY_NO_PROPAGATE_INHERIT, ACL_ENTRY_NO_PROPAGATE_INHERIT},

Modified: trunk/contrib/libarchive/libarchive/test/test_acl_text.c
===================================================================
--- trunk/contrib/libarchive/libarchive/test/test_acl_text.c	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/libarchive/test/test_acl_text.c	2018-06-19 21:37:44 UTC (rev 11136)
@@ -23,7 +23,7 @@
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 #include "test.h"
-__FBSDID("$FreeBSD$");
+__FBSDID("$FreeBSD: stable/10/contrib/libarchive/libarchive/test/test_acl_text.c 315433 2017-03-16 23:08:18Z mm $");
 
 /*
  * Test converting ACLs to text, both wide and non-wide

Modified: trunk/contrib/libarchive/libarchive/test/test_archive_api_feature.c
===================================================================
--- trunk/contrib/libarchive/libarchive/test/test_archive_api_feature.c	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/libarchive/test/test_archive_api_feature.c	2018-06-19 21:37:44 UTC (rev 11136)
@@ -23,7 +23,7 @@
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 #include "test.h"
-__FBSDID("$FreeBSD: stable/11/contrib/libarchive/libarchive/test/test_archive_api_feature.c 232153 2012-02-25 10:58:02Z mm $");
+__FBSDID("$FreeBSD: stable/10/contrib/libarchive/libarchive/test/test_archive_api_feature.c 315433 2017-03-16 23:08:18Z mm $");
 
 DEFINE_TEST(test_archive_api_feature)
 {

Modified: trunk/contrib/libarchive/libarchive/test/test_archive_read_add_passphrase.c
===================================================================
--- trunk/contrib/libarchive/libarchive/test/test_archive_read_add_passphrase.c	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/libarchive/test/test_archive_read_add_passphrase.c	2018-06-19 21:37:44 UTC (rev 11136)
@@ -25,7 +25,7 @@
  */
 
 #include "test.h"
-__FBSDID("$FreeBSD: stable/11/contrib/libarchive/libarchive/test/test_archive_read_add_passphrase.c 299529 2016-05-12 10:16:16Z mm $");
+__FBSDID("$FreeBSD: stable/10/contrib/libarchive/libarchive/test/test_archive_read_add_passphrase.c 313571 2017-02-11 00:56:18Z mm $");
 
 struct archive_read;
 extern void __archive_read_reset_passphrase(struct archive_read *);

Modified: trunk/contrib/libarchive/libarchive/test/test_archive_write_add_filter_by_name.c
===================================================================
--- trunk/contrib/libarchive/libarchive/test/test_archive_write_add_filter_by_name.c	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/libarchive/test/test_archive_write_add_filter_by_name.c	2018-06-19 21:37:44 UTC (rev 11136)
@@ -207,3 +207,8 @@
 {
 	test_filter_by_name("xz", ARCHIVE_FILTER_XZ, cannot);
 }
+
+DEFINE_TEST(test_archive_write_add_filter_by_name_zstd)
+{
+	test_filter_by_name("zstd", ARCHIVE_FILTER_ZSTD, canZstd);
+}

Modified: trunk/contrib/libarchive/libarchive/test/test_archive_write_set_format_filter_by_ext.c
===================================================================
--- trunk/contrib/libarchive/libarchive/test/test_archive_write_set_format_filter_by_ext.c	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/libarchive/test/test_archive_write_set_format_filter_by_ext.c	2018-06-19 21:37:44 UTC (rev 11136)
@@ -26,7 +26,7 @@
 
 
 #include "test.h"
-__FBSDID("$FreeBSD: stable/11/contrib/libarchive/libarchive/test/test_archive_write_set_format_filter_by_ext.c 299529 2016-05-12 10:16:16Z mm $");
+__FBSDID("$FreeBSD: stable/10/contrib/libarchive/libarchive/test/test_archive_write_set_format_filter_by_ext.c 302001 2016-06-17 22:40:10Z mm $");
 
 static void
 test_format_filter_by_ext(const char *output_file, 

Modified: trunk/contrib/libarchive/libarchive/test/test_archive_write_set_passphrase.c
===================================================================
--- trunk/contrib/libarchive/libarchive/test/test_archive_write_set_passphrase.c	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/libarchive/test/test_archive_write_set_passphrase.c	2018-06-19 21:37:44 UTC (rev 11136)
@@ -25,7 +25,7 @@
  */
 
 #include "test.h"
-__FBSDID("$FreeBSD: stable/11/contrib/libarchive/libarchive/test/test_archive_write_set_passphrase.c 299529 2016-05-12 10:16:16Z mm $");
+__FBSDID("$FreeBSD: stable/10/contrib/libarchive/libarchive/test/test_archive_write_set_passphrase.c 302001 2016-06-17 22:40:10Z mm $");
 
 struct archive_write;
 extern const char * __archive_write_get_passphrase(struct archive_write *);

Modified: trunk/contrib/libarchive/libarchive/test/test_bad_fd.c
===================================================================
--- trunk/contrib/libarchive/libarchive/test/test_bad_fd.c	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/libarchive/test/test_bad_fd.c	2018-06-19 21:37:44 UTC (rev 11136)
@@ -23,7 +23,7 @@
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 #include "test.h"
-__FBSDID("$FreeBSD: stable/11/contrib/libarchive/libarchive/test/test_bad_fd.c 232153 2012-02-25 10:58:02Z mm $");
+__FBSDID("$FreeBSD: stable/10/contrib/libarchive/libarchive/test/test_bad_fd.c 232153 2012-02-25 10:58:02Z mm $");
 
 /* Verify that attempting to open an invalid fd returns correct error. */
 DEFINE_TEST(test_bad_fd)

Modified: trunk/contrib/libarchive/libarchive/test/test_compat_bzip2.c
===================================================================
--- trunk/contrib/libarchive/libarchive/test/test_compat_bzip2.c	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/libarchive/test/test_compat_bzip2.c	2018-06-19 21:37:44 UTC (rev 11136)
@@ -23,7 +23,7 @@
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 #include "test.h"
-__FBSDID("$FreeBSD: stable/11/contrib/libarchive/libarchive/test/test_compat_bzip2.c 248616 2013-03-22 13:36:03Z mm $");
+__FBSDID("$FreeBSD: stable/10/contrib/libarchive/libarchive/test/test_compat_bzip2.c 248616 2013-03-22 13:36:03Z mm $");
 
 /*
  * Verify our ability to read sample files compatibly with bunzip2.

Modified: trunk/contrib/libarchive/libarchive/test/test_compat_bzip2_1.tbz.uu
===================================================================
--- trunk/contrib/libarchive/libarchive/test/test_compat_bzip2_1.tbz.uu	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/libarchive/test/test_compat_bzip2_1.tbz.uu	2018-06-19 21:37:44 UTC (rev 11136)
@@ -1,4 +1,4 @@
-$FreeBSD: stable/11/contrib/libarchive/libarchive/test/test_compat_bzip2_1.tbz.uu 228763 2011-12-21 11:13:29Z mm $
+$FreeBSD: stable/10/contrib/libarchive/libarchive/test/test_compat_bzip2_1.tbz.uu 228763 2011-12-21 11:13:29Z mm $
 
 begin 644 test_compat_bzip2_1.tbz
 M0EIH.3%!62936;12^)(``#-;D=$00`!_@``!8RT>$`0`$```""``5#5/*'J>

Modified: trunk/contrib/libarchive/libarchive/test/test_compat_bzip2_2.tbz.uu
===================================================================
--- trunk/contrib/libarchive/libarchive/test/test_compat_bzip2_2.tbz.uu	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/libarchive/test/test_compat_bzip2_2.tbz.uu	2018-06-19 21:37:44 UTC (rev 11136)
@@ -1,4 +1,4 @@
-$FreeBSD: stable/11/contrib/libarchive/libarchive/test/test_compat_bzip2_2.tbz.uu 228763 2011-12-21 11:13:29Z mm $
+$FreeBSD: stable/10/contrib/libarchive/libarchive/test/test_compat_bzip2_2.tbz.uu 228763 2011-12-21 11:13:29Z mm $
 
 begin 644 test_compat_bzip2_2.tbz
 M0EIH.3%!629361HI1P<``4#;D-$00`#_@``)9RT>$`0``!@P`/@#&$Q,F`F`

Modified: trunk/contrib/libarchive/libarchive/test/test_compat_cpio.c
===================================================================
--- trunk/contrib/libarchive/libarchive/test/test_compat_cpio.c	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/libarchive/test/test_compat_cpio.c	2018-06-19 21:37:44 UTC (rev 11136)
@@ -23,7 +23,7 @@
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 #include "test.h"
-__FBSDID("$FreeBSD: stable/11/contrib/libarchive/libarchive/test/test_compat_cpio.c 248616 2013-03-22 13:36:03Z mm $");
+__FBSDID("$FreeBSD: stable/10/contrib/libarchive/libarchive/test/test_compat_cpio.c 248616 2013-03-22 13:36:03Z mm $");
 
 /*
  * Verify our ability to read various sample files.

Modified: trunk/contrib/libarchive/libarchive/test/test_compat_cpio_1.cpio.uu
===================================================================
--- trunk/contrib/libarchive/libarchive/test/test_compat_cpio_1.cpio.uu	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/libarchive/test/test_compat_cpio_1.cpio.uu	2018-06-19 21:37:44 UTC (rev 11136)
@@ -1,4 +1,4 @@
-$FreeBSD: stable/11/contrib/libarchive/libarchive/test/test_compat_cpio_1.cpio.uu 228763 2011-12-21 11:13:29Z mm $
+$FreeBSD: stable/10/contrib/libarchive/libarchive/test/test_compat_cpio_1.cpio.uu 228763 2011-12-21 11:13:29Z mm $
 
 begin 644 test_compat_cpio_1.cpio
 M,#<P-S`Q,#`U-CEE8F4P,#`P.#%A-#`P,#`P,V4X,#`P,#`S93 at P,#`P,#`P

Modified: trunk/contrib/libarchive/libarchive/test/test_compat_gtar.c
===================================================================
--- trunk/contrib/libarchive/libarchive/test/test_compat_gtar.c	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/libarchive/test/test_compat_gtar.c	2018-06-19 21:37:44 UTC (rev 11136)
@@ -23,7 +23,7 @@
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 #include "test.h"
-__FBSDID("$FreeBSD: stable/11/contrib/libarchive/libarchive/test/test_compat_gtar.c 248616 2013-03-22 13:36:03Z mm $");
+__FBSDID("$FreeBSD: stable/10/contrib/libarchive/libarchive/test/test_compat_gtar.c 313571 2017-02-11 00:56:18Z mm $");
 
 /*
  * Verify our ability to read sample files created by GNU tar.

Modified: trunk/contrib/libarchive/libarchive/test/test_compat_gtar_1.tar.uu
===================================================================
--- trunk/contrib/libarchive/libarchive/test/test_compat_gtar_1.tar.uu	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/libarchive/test/test_compat_gtar_1.tar.uu	2018-06-19 21:37:44 UTC (rev 11136)
@@ -1,4 +1,4 @@
-$FreeBSD: stable/11/contrib/libarchive/libarchive/test/test_compat_gtar_1.tar.uu 228763 2011-12-21 11:13:29Z mm $
+$FreeBSD: stable/10/contrib/libarchive/libarchive/test/test_compat_gtar_1.tar.uu 228763 2011-12-21 11:13:29Z mm $
 begin 644 test_compat_gtar_1.tar
 M+B\N+T!,;VYG3&EN:P``````````````````````````````````````````
 M````````````````````````````````````````````````````````````

Modified: trunk/contrib/libarchive/libarchive/test/test_compat_gzip.c
===================================================================
--- trunk/contrib/libarchive/libarchive/test/test_compat_gzip.c	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/libarchive/test/test_compat_gzip.c	2018-06-19 21:37:44 UTC (rev 11136)
@@ -23,7 +23,7 @@
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 #include "test.h"
-__FBSDID("$FreeBSD: stable/11/contrib/libarchive/libarchive/test/test_compat_gzip.c 248616 2013-03-22 13:36:03Z mm $");
+__FBSDID("$FreeBSD: stable/10/contrib/libarchive/libarchive/test/test_compat_gzip.c 248616 2013-03-22 13:36:03Z mm $");
 
 /*
  * Verify our ability to read sample files compatibly with gunzip.

Modified: trunk/contrib/libarchive/libarchive/test/test_compat_gzip_1.tgz.uu
===================================================================
--- trunk/contrib/libarchive/libarchive/test/test_compat_gzip_1.tgz.uu	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/libarchive/test/test_compat_gzip_1.tgz.uu	2018-06-19 21:37:44 UTC (rev 11136)
@@ -1,4 +1,4 @@
-$FreeBSD: stable/11/contrib/libarchive/libarchive/test/test_compat_gzip_1.tgz.uu 228763 2011-12-21 11:13:29Z mm $
+$FreeBSD: stable/10/contrib/libarchive/libarchive/test/test_compat_gzip_1.tgz.uu 228763 2011-12-21 11:13:29Z mm $
 
 begin 644 test_compat_gzip_1.tgz
 M'XL(")B^(DD``W1E<W0M<W!L:70N=&%R86$`2S-DH#DP,#`P,S%1`-*&YJ:&

Modified: trunk/contrib/libarchive/libarchive/test/test_compat_gzip_2.tgz.uu
===================================================================
--- trunk/contrib/libarchive/libarchive/test/test_compat_gzip_2.tgz.uu	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/libarchive/test/test_compat_gzip_2.tgz.uu	2018-06-19 21:37:44 UTC (rev 11136)
@@ -1,4 +1,4 @@
-$FreeBSD: stable/11/contrib/libarchive/libarchive/test/test_compat_gzip_2.tgz.uu 228763 2011-12-21 11:13:29Z mm $
+$FreeBSD: stable/10/contrib/libarchive/libarchive/test/test_compat_gzip_2.tgz.uu 228763 2011-12-21 11:13:29Z mm $
 
 begin 644 test_compat_gzip_2.tgz
 M'XL(`&76(DD``^W800["(!"%8=:>@ALXPP`]CXF=Q&A<:-UX>EN)C5M,AL;P

Modified: trunk/contrib/libarchive/libarchive/test/test_compat_lz4.c
===================================================================
--- trunk/contrib/libarchive/libarchive/test/test_compat_lz4.c	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/libarchive/test/test_compat_lz4.c	2018-06-19 21:37:44 UTC (rev 11136)
@@ -24,7 +24,7 @@
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 #include "test.h"
-__FBSDID("$FreeBSD: stable/11/contrib/libarchive/libarchive/test/test_compat_lz4.c 299529 2016-05-12 10:16:16Z mm $");
+__FBSDID("$FreeBSD: stable/10/contrib/libarchive/libarchive/test/test_compat_lz4.c 302001 2016-06-17 22:40:10Z mm $");
 
 /*
  * Verify our ability to read sample files compatibly with 'lz4 -d'.

Modified: trunk/contrib/libarchive/libarchive/test/test_compat_lzma.c
===================================================================
--- trunk/contrib/libarchive/libarchive/test/test_compat_lzma.c	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/libarchive/test/test_compat_lzma.c	2018-06-19 21:37:44 UTC (rev 11136)
@@ -24,7 +24,7 @@
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 #include "test.h"
-__FBSDID("$FreeBSD: stable/11/contrib/libarchive/libarchive/test/test_compat_lzma.c 248616 2013-03-22 13:36:03Z mm $");
+__FBSDID("$FreeBSD: stable/10/contrib/libarchive/libarchive/test/test_compat_lzma.c 248616 2013-03-22 13:36:03Z mm $");
 
 /*
 Execute the following to rebuild the data for this program:

Modified: trunk/contrib/libarchive/libarchive/test/test_compat_lzma_1.tlz.uu
===================================================================
--- trunk/contrib/libarchive/libarchive/test/test_compat_lzma_1.tlz.uu	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/libarchive/test/test_compat_lzma_1.tlz.uu	2018-06-19 21:37:44 UTC (rev 11136)
@@ -1,4 +1,4 @@
-$FreeBSD: stable/11/contrib/libarchive/libarchive/test/test_compat_lzma_1.tlz.uu 228763 2011-12-21 11:13:29Z mm $
+$FreeBSD: stable/10/contrib/libarchive/libarchive/test/test_compat_lzma_1.tlz.uu 228763 2011-12-21 11:13:29Z mm $
 
 begin 644 test_compat_lzma_1.tlz
 M70``@`#__________P`S##P;IXPT!HUK`DO\DC[V2OB%Z^'=ZT59ANYMTD(/

Modified: trunk/contrib/libarchive/libarchive/test/test_compat_lzma_2.tlz.uu
===================================================================
--- trunk/contrib/libarchive/libarchive/test/test_compat_lzma_2.tlz.uu	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/libarchive/test/test_compat_lzma_2.tlz.uu	2018-06-19 21:37:44 UTC (rev 11136)
@@ -1,4 +1,4 @@
-$FreeBSD: stable/11/contrib/libarchive/libarchive/test/test_compat_lzma_2.tlz.uu 228763 2011-12-21 11:13:29Z mm $
+$FreeBSD: stable/10/contrib/libarchive/libarchive/test/test_compat_lzma_2.tlz.uu 228763 2011-12-21 11:13:29Z mm $
 
 begin 644 test_compat_lzma_2.tlz
 M7@``@`#__________P`S##P;IXPT!HUK`DO\DC[V2OB%Z^'<FN`(!=!,)@8W

Modified: trunk/contrib/libarchive/libarchive/test/test_compat_lzma_3.tlz.uu
===================================================================
--- trunk/contrib/libarchive/libarchive/test/test_compat_lzma_3.tlz.uu	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/libarchive/test/test_compat_lzma_3.tlz.uu	2018-06-19 21:37:44 UTC (rev 11136)
@@ -1,4 +1,4 @@
-$FreeBSD: stable/11/contrib/libarchive/libarchive/test/test_compat_lzma_3.tlz.uu 228763 2011-12-21 11:13:29Z mm $
+$FreeBSD: stable/10/contrib/libarchive/libarchive/test/test_compat_lzma_3.tlz.uu 228763 2011-12-21 11:13:29Z mm $
 
 begin 644 test_compat_lzma_3.tlz
 M70`0````'``````````S##P;IXPT!HUK`DO\DC[V2OB%Z^'=ZT59ANYMTD(1

Modified: trunk/contrib/libarchive/libarchive/test/test_compat_solaris_tar_acl.c
===================================================================
--- trunk/contrib/libarchive/libarchive/test/test_compat_solaris_tar_acl.c	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/libarchive/test/test_compat_solaris_tar_acl.c	2018-06-19 21:37:44 UTC (rev 11136)
@@ -24,7 +24,7 @@
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 #include "test.h"
-__FBSDID("$FreeBSD$");
+__FBSDID("$FreeBSD: stable/10/contrib/libarchive/libarchive/test/test_compat_solaris_tar_acl.c 315433 2017-03-16 23:08:18Z mm $");
 
 /*
  * Verify reading entries with POSIX.1e and NFSv4 ACLs from archives created

Modified: trunk/contrib/libarchive/libarchive/test/test_compat_star_acl.c
===================================================================
--- trunk/contrib/libarchive/libarchive/test/test_compat_star_acl.c	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/libarchive/test/test_compat_star_acl.c	2018-06-19 21:37:44 UTC (rev 11136)
@@ -24,7 +24,7 @@
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 #include "test.h"
-__FBSDID("$FreeBSD$");
+__FBSDID("$FreeBSD: stable/10/contrib/libarchive/libarchive/test/test_compat_star_acl.c 315433 2017-03-16 23:08:18Z mm $");
 
 /*
  * Verify reading entries with POSIX.1e and NFSv4 ACLs from archives created

Modified: trunk/contrib/libarchive/libarchive/test/test_compat_tar_hardlink.c
===================================================================
--- trunk/contrib/libarchive/libarchive/test/test_compat_tar_hardlink.c	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/libarchive/test/test_compat_tar_hardlink.c	2018-06-19 21:37:44 UTC (rev 11136)
@@ -23,7 +23,7 @@
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 #include "test.h"
-__FBSDID("$FreeBSD: stable/11/contrib/libarchive/libarchive/test/test_compat_tar_hardlink.c 248616 2013-03-22 13:36:03Z mm $");
+__FBSDID("$FreeBSD: stable/10/contrib/libarchive/libarchive/test/test_compat_tar_hardlink.c 248616 2013-03-22 13:36:03Z mm $");
 
 /*
  * Background:  There are two written standards for the tar file format.

Modified: trunk/contrib/libarchive/libarchive/test/test_compat_tar_hardlink_1.tar.uu
===================================================================
--- trunk/contrib/libarchive/libarchive/test/test_compat_tar_hardlink_1.tar.uu	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/libarchive/test/test_compat_tar_hardlink_1.tar.uu	2018-06-19 21:37:44 UTC (rev 11136)
@@ -1,4 +1,4 @@
-$FreeBSD: stable/11/contrib/libarchive/libarchive/test/test_compat_tar_hardlink_1.tar.uu 228763 2011-12-21 11:13:29Z mm $
+$FreeBSD: stable/10/contrib/libarchive/libarchive/test/test_compat_tar_hardlink_1.tar.uu 228763 2011-12-21 11:13:29Z mm $
 begin 644 test_compat_tar_hardlink_1.tar
 M>&UC9"TS+C,N,B]D;V-S7V0O4D5!1$UF````````````````````````````
 M````````````````````````````````````````````````````````````

Modified: trunk/contrib/libarchive/libarchive/test/test_compat_uudecode_large.c
===================================================================
--- trunk/contrib/libarchive/libarchive/test/test_compat_uudecode_large.c	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/libarchive/test/test_compat_uudecode_large.c	2018-06-19 21:37:44 UTC (rev 11136)
@@ -24,7 +24,7 @@
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 #include "test.h"
-__FBSDID("$FreeBSD: stable/11/contrib/libarchive/libarchive/test/test_compat_uudecode_large.c 299529 2016-05-12 10:16:16Z mm $");
+__FBSDID("$FreeBSD: stable/10/contrib/libarchive/libarchive/test/test_compat_uudecode_large.c 302001 2016-06-17 22:40:10Z mm $");
 
 DEFINE_TEST(test_compat_uudecode_large)
 {

Modified: trunk/contrib/libarchive/libarchive/test/test_compat_xz.c
===================================================================
--- trunk/contrib/libarchive/libarchive/test/test_compat_xz.c	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/libarchive/test/test_compat_xz.c	2018-06-19 21:37:44 UTC (rev 11136)
@@ -24,7 +24,7 @@
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 #include "test.h"
-__FBSDID("$FreeBSD: stable/11/contrib/libarchive/libarchive/test/test_compat_xz.c 248616 2013-03-22 13:36:03Z mm $");
+__FBSDID("$FreeBSD: stable/10/contrib/libarchive/libarchive/test/test_compat_xz.c 248616 2013-03-22 13:36:03Z mm $");
 
 /*
  * Verify our ability to read sample files compatibly with unxz.

Modified: trunk/contrib/libarchive/libarchive/test/test_compat_xz_1.txz.uu
===================================================================
--- trunk/contrib/libarchive/libarchive/test/test_compat_xz_1.txz.uu	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/libarchive/test/test_compat_xz_1.txz.uu	2018-06-19 21:37:44 UTC (rev 11136)
@@ -1,4 +1,4 @@
-$FreeBSD: stable/11/contrib/libarchive/libarchive/test/test_compat_xz_1.txz.uu 228763 2011-12-21 11:13:29Z mm $
+$FreeBSD: stable/10/contrib/libarchive/libarchive/test/test_compat_xz_1.txz.uu 228763 2011-12-21 11:13:29Z mm $
 begin 644 test_compat_gzip_1.txz
 M_3=Z6%H```3FUK1&`@`A`18```!T+^6CX`^?`(-=`#,,/!NGC#0&C6L"2_R2
 M/O9*^(7KX=WM^(=KA(RH"\09$$)!Q_+JUHQ*`]R;ITL_F3/I6:^Q0550A&)B

Modified: trunk/contrib/libarchive/libarchive/test/test_compat_zip.c
===================================================================
--- trunk/contrib/libarchive/libarchive/test/test_compat_zip.c	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/libarchive/test/test_compat_zip.c	2018-06-19 21:37:44 UTC (rev 11136)
@@ -23,7 +23,7 @@
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 #include "test.h"
-__FBSDID("$FreeBSD: stable/11/contrib/libarchive/libarchive/test/test_compat_zip.c 299529 2016-05-12 10:16:16Z mm $");
+__FBSDID("$FreeBSD: stable/10/contrib/libarchive/libarchive/test/test_compat_zip.c 328828 2018-02-03 02:17:25Z mm $");
 
 /* Copy this function for each test file and adjust it accordingly. */
 DEFINE_TEST(test_compat_zip_1)
@@ -422,3 +422,29 @@
 	}
 	free(p);
 }
+
+/**
+ * A file with backslash path separators instead of slashes.
+ * PowerShell's Compress-Archive cmdlet produces such archives.
+ */
+DEFINE_TEST(test_compat_zip_8)
+{
+	const char *refname = "test_compat_zip_8.zip";
+	struct archive *a;
+	struct archive_entry *ae;
+	void *p;
+	size_t s;
+
+	extract_reference_file(refname);
+	p = slurpfile(&s, refname);
+
+	assert((a = archive_read_new()) != NULL);
+	assertEqualIntA(a, ARCHIVE_OK, archive_read_support_format_zip(a));
+	assertEqualIntA(a, ARCHIVE_OK, read_open_memory_minimal(a, p, s, 7));
+
+	assertEqualIntA(a, ARCHIVE_OK, archive_read_next_header(a, &ae));
+	/* This file is in the archive as arc\test */
+	assertEqualString("arc/test", archive_entry_pathname(ae));
+	assertEqualIntA(a, ARCHIVE_OK, archive_read_free(a));
+	free(p);
+}

Modified: trunk/contrib/libarchive/libarchive/test/test_compat_zip_1.zip.uu
===================================================================
--- trunk/contrib/libarchive/libarchive/test/test_compat_zip_1.zip.uu	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/libarchive/test/test_compat_zip_1.zip.uu	2018-06-19 21:37:44 UTC (rev 11136)
@@ -1,4 +1,4 @@
-$FreeBSD: stable/11/contrib/libarchive/libarchive/test/test_compat_zip_1.zip.uu 228763 2011-12-21 11:13:29Z mm $
+$FreeBSD: stable/10/contrib/libarchive/libarchive/test/test_compat_zip_1.zip.uu 228763 2011-12-21 11:13:29Z mm $
 begin 644 test_compat_zip_1.zip
 M4$L#!!0`"``(``B$@S<````````````````4````345402U)3D8O34%.249%
 M4U0N34;S3<S+3$LM+M$-2RTJSLS/LU(PU#/@Y7+,0Q)Q+$A,SDA5`(H!)<U!

Added: trunk/contrib/libarchive/libarchive/test/test_compat_zip_8.zip.uu
===================================================================
--- trunk/contrib/libarchive/libarchive/test/test_compat_zip_8.zip.uu	                        (rev 0)
+++ trunk/contrib/libarchive/libarchive/test/test_compat_zip_8.zip.uu	2018-06-19 21:37:44 UTC (rev 11136)
@@ -0,0 +1,6 @@
+begin 666 test_compat_zip_8.zip
+M4$L#!!0````(`%A\;TOY6""D$`````X````(````87)C7'1E<W3[_Z^$(96A
+MF*&$@9>!BP$`4$L!`A0`%`````@`6'QO2_E8(*00````#@````@`````````
+H`````````````&%R8UQT97-T4$L%!@`````!``$`-@```#8`````````
+`
+end

Added: trunk/contrib/libarchive/libarchive/test/test_compat_zstd.c
===================================================================
--- trunk/contrib/libarchive/libarchive/test/test_compat_zstd.c	                        (rev 0)
+++ trunk/contrib/libarchive/libarchive/test/test_compat_zstd.c	2018-06-19 21:37:44 UTC (rev 11136)
@@ -0,0 +1,82 @@
+/*-
+ * Copyright (c) 2017 Sean Purcell
+ * All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ * 1. Redistributions of source code must retain the above copyright
+ *    notice, this list of conditions and the following disclaimer.
+ * 2. Redistributions in binary form must reproduce the above copyright
+ *    notice, this list of conditions and the following disclaimer in the
+ *    documentation and/or other materials provided with the distribution.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE AUTHOR(S) ``AS IS'' AND ANY EXPRESS OR
+ * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
+ * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
+ * IN NO EVENT SHALL THE AUTHOR(S) BE LIABLE FOR ANY DIRECT, INDIRECT,
+ * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
+ * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+ * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+ * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
+ * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
+#include "test.h"
+__FBSDID("$FreeBSD: stable/10/contrib/libarchive/libarchive/test/test_compat_zstd.c 324418 2017-10-08 20:55:45Z mm $");
+
+/*
+ * Verify our ability to read sample files compatibly with 'zstd -d'.
+ *
+ * In particular:
+ *  * zstd -d will read multiple zstd streams, concatenating the output
+ *  * zstd -d will skip over zstd skippable frames
+ */
+
+static void
+compat_zstd(const char *name)
+{
+	const char *n[7] = { "f1", "f2", "f3", "d1/f1", "d1/f2", "d1/f3", NULL };
+	struct archive_entry *ae;
+	struct archive *a;
+	int i, r;
+
+	assert((a = archive_read_new()) != NULL);
+	assertEqualIntA(a, ARCHIVE_OK, archive_read_support_filter_all(a));
+	r = archive_read_support_filter_zstd(a);
+	if (r == ARCHIVE_WARN) {
+		skipping("zstd reading not fully supported on this platform");
+		assertEqualInt(ARCHIVE_OK, archive_read_free(a));
+		return;
+	}
+	assertEqualIntA(a, ARCHIVE_OK, archive_read_support_format_all(a));
+	extract_reference_file(name);
+	assertEqualIntA(a, ARCHIVE_OK, archive_read_open_filename(a, name, 2));
+
+	/* Read entries, match up names with list above. */
+	for (i = 0; i < 6; ++i) {
+		failure("Could not read file %d (%s) from %s", i, n[i], name);
+		assertEqualIntA(a, ARCHIVE_OK,
+		    archive_read_next_header(a, &ae));
+		assertEqualString(n[i], archive_entry_pathname(ae));
+	}
+
+	/* Verify the end-of-archive. */
+	assertEqualIntA(a, ARCHIVE_EOF, archive_read_next_header(a, &ae));
+
+	/* Verify that the format detection worked. */
+	assertEqualInt(archive_filter_code(a, 0), ARCHIVE_FILTER_ZSTD);
+	assertEqualString(archive_filter_name(a, 0), "zstd");
+	assertEqualInt(archive_format(a), ARCHIVE_FORMAT_TAR_USTAR);
+
+	assertEqualInt(ARCHIVE_OK, archive_read_close(a));
+	assertEqualInt(ARCHIVE_OK, archive_read_free(a));
+}
+
+
+DEFINE_TEST(test_compat_zstd)
+{
+	/* This sample was compressed as 3 separate streams with a zstd skippable
+	* frame placed in the middle */
+	compat_zstd("test_compat_zstd_1.tar.zst");
+}


Property changes on: trunk/contrib/libarchive/libarchive/test/test_compat_zstd.c
___________________________________________________________________
Added: svn:eol-style
## -0,0 +1 ##
+native
\ No newline at end of property
Added: svn:keywords
## -0,0 +1 ##
+MidnightBSD=%H
\ No newline at end of property
Added: svn:mime-type
## -0,0 +1 ##
+text/plain
\ No newline at end of property
Added: trunk/contrib/libarchive/libarchive/test/test_compat_zstd_1.tar.zst.uu
===================================================================
--- trunk/contrib/libarchive/libarchive/test/test_compat_zstd_1.tar.zst.uu	                        (rev 0)
+++ trunk/contrib/libarchive/libarchive/test/test_compat_zstd_1.tar.zst.uu	2018-06-19 21:37:44 UTC (rev 11136)
@@ -0,0 +1,12 @@
+begin 644 test_compat_zstd_1.tar.zst
+M*+4O_010)0,`HL0.%;`Q&>>\/$2[#IQF[<1+Z3T<0CX]!77&0 at R.6+/F,0+I
+M.$1A$QE2`J!+*_6[_YT9_W_M1KC-EG*V>10.`,M`%3*@#F#\`-FT#J:1#U1"
+M`H1!&R#<!.<"@#3 at M58XY1,8`DMMD\@HM2_]!%!=`P`B!1`5H#D!0!.SELJ"
+M5#509I*T/YQ^]?H/3T1D>A5\*'"JYIJ;C&4=B2CL(L)*E-IJT/RV?.:A_]_N
+MB&[7SDG;/=4&#P";0!5D0`=8T0&R&19,)1^HA`0(@S9`N`G.!0!IP&NM<,K!
+M-#8!%A]U]K10*DT8!`````$"`P0HM2_]!%!]`P`B11`6H+$)"%]@,Z6OH`"L
+MM$R2MAN&*MSG`W?OJ7+4P*B::VXR`NM(1&$7&58"J*U'_&V^S$/_O]U1N%T[
+M)VW7J'+4!A``_4$%^T`],J`8P.0!L at D63"4?J(0$"(,V0+@)S at 4`:<!KK7!J
+)P51V`E@!9CD#
+`
+end

Modified: trunk/contrib/libarchive/libarchive/test/test_empty_write.c
===================================================================
--- trunk/contrib/libarchive/libarchive/test/test_empty_write.c	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/libarchive/test/test_empty_write.c	2018-06-19 21:37:44 UTC (rev 11136)
@@ -23,7 +23,7 @@
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 #include "test.h"
-__FBSDID("$FreeBSD: stable/11/contrib/libarchive/libarchive/test/test_empty_write.c 248616 2013-03-22 13:36:03Z mm $");
+__FBSDID("$FreeBSD: stable/10/contrib/libarchive/libarchive/test/test_empty_write.c 248616 2013-03-22 13:36:03Z mm $");
 
 DEFINE_TEST(test_empty_write)
 {

Modified: trunk/contrib/libarchive/libarchive/test/test_entry.c
===================================================================
--- trunk/contrib/libarchive/libarchive/test/test_entry.c	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/libarchive/test/test_entry.c	2018-06-19 21:37:44 UTC (rev 11136)
@@ -23,7 +23,7 @@
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 #include "test.h"
-__FBSDID("$FreeBSD: stable/11/contrib/libarchive/libarchive/test/test_entry.c 248616 2013-03-22 13:36:03Z mm $");
+__FBSDID("$FreeBSD: stable/10/contrib/libarchive/libarchive/test/test_entry.c 248616 2013-03-22 13:36:03Z mm $");
 
 #include <locale.h>
 

Modified: trunk/contrib/libarchive/libarchive/test/test_entry_strmode.c
===================================================================
--- trunk/contrib/libarchive/libarchive/test/test_entry_strmode.c	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/libarchive/test/test_entry_strmode.c	2018-06-19 21:37:44 UTC (rev 11136)
@@ -23,7 +23,7 @@
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 #include "test.h"
-__FBSDID("$FreeBSD: stable/11/contrib/libarchive/libarchive/test/test_entry_strmode.c 228763 2011-12-21 11:13:29Z mm $");
+__FBSDID("$FreeBSD: stable/10/contrib/libarchive/libarchive/test/test_entry_strmode.c 228763 2011-12-21 11:13:29Z mm $");
 
 DEFINE_TEST(test_entry_strmode)
 {

Modified: trunk/contrib/libarchive/libarchive/test/test_extattr_freebsd.c
===================================================================
--- trunk/contrib/libarchive/libarchive/test/test_extattr_freebsd.c	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/libarchive/test/test_extattr_freebsd.c	2018-06-19 21:37:44 UTC (rev 11136)
@@ -23,7 +23,7 @@
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 #include "test.h"
-__FBSDID("$FreeBSD: stable/11/contrib/libarchive/libarchive/test/test_extattr_freebsd.c 248995 2013-04-02 05:30:41Z mdf $");
+__FBSDID("$FreeBSD: stable/10/contrib/libarchive/libarchive/test/test_extattr_freebsd.c 248995 2013-04-02 05:30:41Z mdf $");
 
 #if defined(__FreeBSD__) && __FreeBSD__ > 4
 #include <sys/extattr.h>

Modified: trunk/contrib/libarchive/libarchive/test/test_fuzz.c
===================================================================
--- trunk/contrib/libarchive/libarchive/test/test_fuzz.c	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/libarchive/test/test_fuzz.c	2018-06-19 21:37:44 UTC (rev 11136)
@@ -23,7 +23,7 @@
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 #include "test.h"
-__FBSDID("$FreeBSD: stable/11/contrib/libarchive/libarchive/test/test_fuzz.c 305188 2016-09-01 07:53:59Z mm $");
+__FBSDID("$FreeBSD: stable/10/contrib/libarchive/libarchive/test/test_fuzz.c 324418 2017-10-08 20:55:45Z mm $");
 
 /*
  * This was inspired by an ISO fuzz tester written by Michal Zalewski
@@ -413,6 +413,12 @@
 		NULL
 	};
 #endif
+#if HAVE_ZSTD_H && HAVE_LIBZSTD
+	static const char *fileset10[] = {
+		"test_compat_zstd_1.tar.zst",
+		NULL
+	};
+#endif
 	static const struct files filesets[] = {
 		{0, fileset1}, /* Exercise bzip2 decompressor. */
 		{1, fileset1},
@@ -426,6 +432,9 @@
 #if HAVE_LIBLZO2 && HAVE_LZO_LZO1X_H && HAVE_LZO_LZOCONF_H
 		{0, fileset9}, /* Exercise lzo decompressor. */
 #endif
+#if HAVE_ZSTD_H && HAVE_LIBZSTD
+		{0, fileset10}, /* Excercise zstd decompressor. */
+#endif
 		{1, NULL}
 	};
 	test_fuzz(filesets);

Modified: trunk/contrib/libarchive/libarchive/test/test_fuzz_1.iso.Z.uu
===================================================================
--- trunk/contrib/libarchive/libarchive/test/test_fuzz_1.iso.Z.uu	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/libarchive/test/test_fuzz_1.iso.Z.uu	2018-06-19 21:37:44 UTC (rev 11136)
@@ -1,4 +1,4 @@
-$FreeBSD: stable/11/contrib/libarchive/libarchive/test/test_fuzz_1.iso.Z.uu 228763 2011-12-21 11:13:29Z mm $
+$FreeBSD: stable/10/contrib/libarchive/libarchive/test/test_fuzz_1.iso.Z.uu 228763 2011-12-21 11:13:29Z mm $
 
 begin 644 test_fuzz_1.iso.Z
 M'YV0``(*'$BPH,&#"!,J7,BPH<.'$"-*G$BQHL6+&#-JW,BQH\>/($.*'$FR

Modified: trunk/contrib/libarchive/libarchive/test/test_link_resolver.c
===================================================================
--- trunk/contrib/libarchive/libarchive/test/test_link_resolver.c	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/libarchive/test/test_link_resolver.c	2018-06-19 21:37:44 UTC (rev 11136)
@@ -23,7 +23,7 @@
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 #include "test.h"
-__FBSDID("$FreeBSD: stable/11/contrib/libarchive/libarchive/test/test_link_resolver.c 228763 2011-12-21 11:13:29Z mm $");
+__FBSDID("$FreeBSD: stable/10/contrib/libarchive/libarchive/test/test_link_resolver.c 228763 2011-12-21 11:13:29Z mm $");
 
 static void test_linkify_tar(void)
 {

Modified: trunk/contrib/libarchive/libarchive/test/test_open_failure.c
===================================================================
--- trunk/contrib/libarchive/libarchive/test/test_open_failure.c	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/libarchive/test/test_open_failure.c	2018-06-19 21:37:44 UTC (rev 11136)
@@ -23,7 +23,7 @@
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 #include "test.h"
-__FBSDID("$FreeBSD: stable/11/contrib/libarchive/libarchive/test/test_open_failure.c 248616 2013-03-22 13:36:03Z mm $");
+__FBSDID("$FreeBSD: stable/10/contrib/libarchive/libarchive/test/test_open_failure.c 248616 2013-03-22 13:36:03Z mm $");
 
 #define MAGIC 123456789
 struct my_data {

Modified: trunk/contrib/libarchive/libarchive/test/test_open_fd.c
===================================================================
--- trunk/contrib/libarchive/libarchive/test/test_open_fd.c	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/libarchive/test/test_open_fd.c	2018-06-19 21:37:44 UTC (rev 11136)
@@ -23,7 +23,7 @@
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 #include "test.h"
-__FBSDID("$FreeBSD: stable/11/contrib/libarchive/libarchive/test/test_open_fd.c 248616 2013-03-22 13:36:03Z mm $");
+__FBSDID("$FreeBSD: stable/10/contrib/libarchive/libarchive/test/test_open_fd.c 248616 2013-03-22 13:36:03Z mm $");
 
 #if defined(_WIN32) && !defined(__CYGWIN__)
 #define open _open

Modified: trunk/contrib/libarchive/libarchive/test/test_open_file.c
===================================================================
--- trunk/contrib/libarchive/libarchive/test/test_open_file.c	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/libarchive/test/test_open_file.c	2018-06-19 21:37:44 UTC (rev 11136)
@@ -23,7 +23,7 @@
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 #include "test.h"
-__FBSDID("$FreeBSD: stable/11/contrib/libarchive/libarchive/test/test_open_file.c 248616 2013-03-22 13:36:03Z mm $");
+__FBSDID("$FreeBSD: stable/10/contrib/libarchive/libarchive/test/test_open_file.c 248616 2013-03-22 13:36:03Z mm $");
 
 DEFINE_TEST(test_open_file)
 {

Modified: trunk/contrib/libarchive/libarchive/test/test_open_filename.c
===================================================================
--- trunk/contrib/libarchive/libarchive/test/test_open_filename.c	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/libarchive/test/test_open_filename.c	2018-06-19 21:37:44 UTC (rev 11136)
@@ -23,7 +23,7 @@
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 #include "test.h"
-__FBSDID("$FreeBSD: stable/11/contrib/libarchive/libarchive/test/test_open_filename.c 248616 2013-03-22 13:36:03Z mm $");
+__FBSDID("$FreeBSD: stable/10/contrib/libarchive/libarchive/test/test_open_filename.c 248616 2013-03-22 13:36:03Z mm $");
 
 static void
 test_open_filename_mbs(void)

Modified: trunk/contrib/libarchive/libarchive/test/test_pax_filename_encoding.c
===================================================================
--- trunk/contrib/libarchive/libarchive/test/test_pax_filename_encoding.c	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/libarchive/test/test_pax_filename_encoding.c	2018-06-19 21:37:44 UTC (rev 11136)
@@ -23,7 +23,7 @@
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 #include "test.h"
-__FBSDID("$FreeBSD: stable/11/contrib/libarchive/libarchive/test/test_pax_filename_encoding.c 299529 2016-05-12 10:16:16Z mm $");
+__FBSDID("$FreeBSD: stable/10/contrib/libarchive/libarchive/test/test_pax_filename_encoding.c 311042 2017-01-02 01:43:11Z mm $");
 
 #include <locale.h>
 

Modified: trunk/contrib/libarchive/libarchive/test/test_pax_filename_encoding.tar.uu
===================================================================
--- trunk/contrib/libarchive/libarchive/test/test_pax_filename_encoding.tar.uu	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/libarchive/test/test_pax_filename_encoding.tar.uu	2018-06-19 21:37:44 UTC (rev 11136)
@@ -1,4 +1,4 @@
-$FreeBSD: stable/11/contrib/libarchive/libarchive/test/test_pax_filename_encoding.tar.uu 228763 2011-12-21 11:13:29Z mm $
+$FreeBSD: stable/10/contrib/libarchive/libarchive/test/test_pax_filename_encoding.tar.uu 228763 2011-12-21 11:13:29Z mm $
 begin 644 test_pax_filename_encoding.tar
 M4&%X2&5A9&5R+V%B8\R,;6YO6'AY>@``````````````````````````````
 M````````````````````````````````````````````````````````````

Modified: trunk/contrib/libarchive/libarchive/test/test_read_data_large.c
===================================================================
--- trunk/contrib/libarchive/libarchive/test/test_read_data_large.c	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/libarchive/test/test_read_data_large.c	2018-06-19 21:37:44 UTC (rev 11136)
@@ -23,7 +23,7 @@
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 #include "test.h"
-__FBSDID("$FreeBSD: stable/11/contrib/libarchive/libarchive/test/test_read_data_large.c 299529 2016-05-12 10:16:16Z mm $");
+__FBSDID("$FreeBSD: stable/10/contrib/libarchive/libarchive/test/test_read_data_large.c 302001 2016-06-17 22:40:10Z mm $");
 
 /*
  * Test read/write of a 10M block of data in a single operation.

Modified: trunk/contrib/libarchive/libarchive/test/test_read_disk.c
===================================================================
--- trunk/contrib/libarchive/libarchive/test/test_read_disk.c	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/libarchive/test/test_read_disk.c	2018-06-19 21:37:44 UTC (rev 11136)
@@ -23,7 +23,7 @@
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 #include "test.h"
-__FBSDID("$FreeBSD: stable/11/contrib/libarchive/libarchive/test/test_read_disk.c 248616 2013-03-22 13:36:03Z mm $");
+__FBSDID("$FreeBSD: stable/10/contrib/libarchive/libarchive/test/test_read_disk.c 315433 2017-03-16 23:08:18Z mm $");
 
 static void
 gname_cleanup(void *d)

Modified: trunk/contrib/libarchive/libarchive/test/test_read_disk_entry_from_file.c
===================================================================
--- trunk/contrib/libarchive/libarchive/test/test_read_disk_entry_from_file.c	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/libarchive/test/test_read_disk_entry_from_file.c	2018-06-19 21:37:44 UTC (rev 11136)
@@ -23,7 +23,7 @@
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 #include "test.h"
-__FBSDID("$FreeBSD: stable/11/contrib/libarchive/libarchive/test/test_read_disk_entry_from_file.c 232153 2012-02-25 10:58:02Z mm $");
+__FBSDID("$FreeBSD: stable/10/contrib/libarchive/libarchive/test/test_read_disk_entry_from_file.c 232153 2012-02-25 10:58:02Z mm $");
 
 static const char *
 gname_lookup(void *d, int64_t g)

Modified: trunk/contrib/libarchive/libarchive/test/test_read_extract.c
===================================================================
--- trunk/contrib/libarchive/libarchive/test/test_read_extract.c	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/libarchive/test/test_read_extract.c	2018-06-19 21:37:44 UTC (rev 11136)
@@ -23,7 +23,7 @@
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 #include "test.h"
-__FBSDID("$FreeBSD: stable/11/contrib/libarchive/libarchive/test/test_read_extract.c 248616 2013-03-22 13:36:03Z mm $");
+__FBSDID("$FreeBSD: stable/10/contrib/libarchive/libarchive/test/test_read_extract.c 248616 2013-03-22 13:36:03Z mm $");
 
 #define BUFF_SIZE 1000000
 #define FILE_BUFF_SIZE 100000

Modified: trunk/contrib/libarchive/libarchive/test/test_read_file_nonexistent.c
===================================================================
--- trunk/contrib/libarchive/libarchive/test/test_read_file_nonexistent.c	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/libarchive/test/test_read_file_nonexistent.c	2018-06-19 21:37:44 UTC (rev 11136)
@@ -23,7 +23,7 @@
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 #include "test.h"
-__FBSDID("$FreeBSD: stable/11/contrib/libarchive/libarchive/test/test_read_file_nonexistent.c 232153 2012-02-25 10:58:02Z mm $");
+__FBSDID("$FreeBSD: stable/10/contrib/libarchive/libarchive/test/test_read_file_nonexistent.c 232153 2012-02-25 10:58:02Z mm $");
 
 DEFINE_TEST(test_read_file_nonexistent)
 {

Modified: trunk/contrib/libarchive/libarchive/test/test_read_format_7zip_malformed.c
===================================================================
--- trunk/contrib/libarchive/libarchive/test/test_read_format_7zip_malformed.c	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/libarchive/test/test_read_format_7zip_malformed.c	2018-06-19 21:37:44 UTC (rev 11136)
@@ -24,7 +24,7 @@
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 #include "test.h"
-__FBSDID("$FreeBSD: stable/11/contrib/libarchive/libarchive/test/test_read_format_7zip_malformed.c 299529 2016-05-12 10:16:16Z mm $");
+__FBSDID("$FreeBSD: stable/10/contrib/libarchive/libarchive/test/test_read_format_7zip_malformed.c 302001 2016-06-17 22:40:10Z mm $");
 
 static void
 test_malformed1(void)

Modified: trunk/contrib/libarchive/libarchive/test/test_read_format_ar.ar.uu
===================================================================
--- trunk/contrib/libarchive/libarchive/test/test_read_format_ar.ar.uu	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/libarchive/test/test_read_format_ar.ar.uu	2018-06-19 21:37:44 UTC (rev 11136)
@@ -1,4 +1,4 @@
-$FreeBSD: stable/11/contrib/libarchive/libarchive/test/test_read_format_ar.ar.uu 228763 2011-12-21 11:13:29Z mm $
+$FreeBSD: stable/10/contrib/libarchive/libarchive/test/test_read_format_ar.ar.uu 228763 2011-12-21 11:13:29Z mm $
 
 begin 755 test_read_format_ar.ar
 M(3QA<F-H/@HO+R`@("`@("`@("`@("`@("`@("`@("`@("`@("`@("`@("`@

Modified: trunk/contrib/libarchive/libarchive/test/test_read_format_ar.c
===================================================================
--- trunk/contrib/libarchive/libarchive/test/test_read_format_ar.c	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/libarchive/test/test_read_format_ar.c	2018-06-19 21:37:44 UTC (rev 11136)
@@ -26,7 +26,7 @@
  */
 
 #include "test.h"
-__FBSDID("$FreeBSD: stable/11/contrib/libarchive/libarchive/test/test_read_format_ar.c 299529 2016-05-12 10:16:16Z mm $");
+__FBSDID("$FreeBSD: stable/10/contrib/libarchive/libarchive/test/test_read_format_ar.c 302001 2016-06-17 22:40:10Z mm $");
 
 
 DEFINE_TEST(test_read_format_ar)

Modified: trunk/contrib/libarchive/libarchive/test/test_read_format_cpio_bin.c
===================================================================
--- trunk/contrib/libarchive/libarchive/test/test_read_format_cpio_bin.c	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/libarchive/test/test_read_format_cpio_bin.c	2018-06-19 21:37:44 UTC (rev 11136)
@@ -23,7 +23,7 @@
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 #include "test.h"
-__FBSDID("$FreeBSD: stable/11/contrib/libarchive/libarchive/test/test_read_format_cpio_bin.c 299529 2016-05-12 10:16:16Z mm $");
+__FBSDID("$FreeBSD: stable/10/contrib/libarchive/libarchive/test/test_read_format_cpio_bin.c 302001 2016-06-17 22:40:10Z mm $");
 
 static unsigned char archive[] = {
 199,'q',21,4,177,'y',237,'A',232,3,232,3,2,0,0,0,'p','C',244,'M',2,0,0,0,

Modified: trunk/contrib/libarchive/libarchive/test/test_read_format_cpio_bin_Z.c
===================================================================
--- trunk/contrib/libarchive/libarchive/test/test_read_format_cpio_bin_Z.c	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/libarchive/test/test_read_format_cpio_bin_Z.c	2018-06-19 21:37:44 UTC (rev 11136)
@@ -23,7 +23,7 @@
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 #include "test.h"
-__FBSDID("$FreeBSD: stable/11/contrib/libarchive/libarchive/test/test_read_format_cpio_bin_Z.c 299529 2016-05-12 10:16:16Z mm $");
+__FBSDID("$FreeBSD: stable/10/contrib/libarchive/libarchive/test/test_read_format_cpio_bin_Z.c 302001 2016-06-17 22:40:10Z mm $");
 
 static unsigned char archive[] = {
 31,157,144,199,226,'T',' ',16,'+','O',187,' ',232,6,'$',20,0,160,'!',156,

Modified: trunk/contrib/libarchive/libarchive/test/test_read_format_cpio_bin_be.c
===================================================================
--- trunk/contrib/libarchive/libarchive/test/test_read_format_cpio_bin_be.c	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/libarchive/test/test_read_format_cpio_bin_be.c	2018-06-19 21:37:44 UTC (rev 11136)
@@ -23,7 +23,7 @@
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 #include "test.h"
-__FBSDID("$FreeBSD: stable/11/contrib/libarchive/libarchive/test/test_read_format_cpio_bin_be.c 299529 2016-05-12 10:16:16Z mm $");
+__FBSDID("$FreeBSD: stable/10/contrib/libarchive/libarchive/test/test_read_format_cpio_bin_be.c 302001 2016-06-17 22:40:10Z mm $");
 
 DEFINE_TEST(test_read_format_cpio_bin_be)
 {

Modified: trunk/contrib/libarchive/libarchive/test/test_read_format_cpio_bin_be.cpio.uu
===================================================================
--- trunk/contrib/libarchive/libarchive/test/test_read_format_cpio_bin_be.cpio.uu	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/libarchive/test/test_read_format_cpio_bin_be.cpio.uu	2018-06-19 21:37:44 UTC (rev 11136)
@@ -1,4 +1,4 @@
-$FreeBSD: stable/11/contrib/libarchive/libarchive/test/test_read_format_cpio_bin_be.cpio.uu 228763 2011-12-21 11:13:29Z mm $
+$FreeBSD: stable/10/contrib/libarchive/libarchive/test/test_read_format_cpio_bin_be.cpio.uu 228763 2011-12-21 11:13:29Z mm $
 begin 644 test_read_format_cpio_bin_be.cpio
 M<<<`"#P\@:0#Z`````$``$GS"&\`%0````5F:6QE,3$Q,3(R,C(S,S,S-#0T
 M-```86)C9&4`<<<```````````````$`````````"P````!44D%)3$52(2$A

Modified: trunk/contrib/libarchive/libarchive/test/test_read_format_cpio_bin_bz2.c
===================================================================
--- trunk/contrib/libarchive/libarchive/test/test_read_format_cpio_bin_bz2.c	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/libarchive/test/test_read_format_cpio_bin_bz2.c	2018-06-19 21:37:44 UTC (rev 11136)
@@ -23,7 +23,7 @@
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 #include "test.h"
-__FBSDID("$FreeBSD: stable/11/contrib/libarchive/libarchive/test/test_read_format_cpio_bin_bz2.c 299529 2016-05-12 10:16:16Z mm $");
+__FBSDID("$FreeBSD: stable/10/contrib/libarchive/libarchive/test/test_read_format_cpio_bin_bz2.c 302001 2016-06-17 22:40:10Z mm $");
 
 static unsigned char archive[] = {
 'B','Z','h','9','1','A','Y','&','S','Y',134,'J',208,'4',0,0,30,246,141,253,

Modified: trunk/contrib/libarchive/libarchive/test/test_read_format_cpio_bin_gz.c
===================================================================
--- trunk/contrib/libarchive/libarchive/test/test_read_format_cpio_bin_gz.c	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/libarchive/test/test_read_format_cpio_bin_gz.c	2018-06-19 21:37:44 UTC (rev 11136)
@@ -23,7 +23,7 @@
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 #include "test.h"
-__FBSDID("$FreeBSD: stable/11/contrib/libarchive/libarchive/test/test_read_format_cpio_bin_gz.c 299529 2016-05-12 10:16:16Z mm $");
+__FBSDID("$FreeBSD: stable/10/contrib/libarchive/libarchive/test/test_read_format_cpio_bin_gz.c 302001 2016-06-17 22:40:10Z mm $");
 
 static unsigned char archive[] = {
 31,139,8,0,244,'M','p','C',0,3,';','^','(',202,178,177,242,173,227,11,230,

Modified: trunk/contrib/libarchive/libarchive/test/test_read_format_cpio_bin_le.c
===================================================================
--- trunk/contrib/libarchive/libarchive/test/test_read_format_cpio_bin_le.c	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/libarchive/test/test_read_format_cpio_bin_le.c	2018-06-19 21:37:44 UTC (rev 11136)
@@ -23,7 +23,7 @@
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 #include "test.h"
-__FBSDID("$FreeBSD: stable/11/contrib/libarchive/libarchive/test/test_read_format_cpio_bin_le.c 299529 2016-05-12 10:16:16Z mm $");
+__FBSDID("$FreeBSD: stable/10/contrib/libarchive/libarchive/test/test_read_format_cpio_bin_le.c 302001 2016-06-17 22:40:10Z mm $");
 
 DEFINE_TEST(test_read_format_cpio_bin_le)
 {

Modified: trunk/contrib/libarchive/libarchive/test/test_read_format_cpio_bin_lzma.c
===================================================================
--- trunk/contrib/libarchive/libarchive/test/test_read_format_cpio_bin_lzma.c	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/libarchive/test/test_read_format_cpio_bin_lzma.c	2018-06-19 21:37:44 UTC (rev 11136)
@@ -24,7 +24,7 @@
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 #include "test.h"
-__FBSDID("$FreeBSD: stable/11/contrib/libarchive/libarchive/test/test_read_format_cpio_bin_lzma.c 299529 2016-05-12 10:16:16Z mm $");
+__FBSDID("$FreeBSD: stable/10/contrib/libarchive/libarchive/test/test_read_format_cpio_bin_lzma.c 302001 2016-06-17 22:40:10Z mm $");
 
 static unsigned char archive[] = {
  93,  0,  0,128,  0,255,255,255,255,255,255,255,255,  0, 99,156,

Modified: trunk/contrib/libarchive/libarchive/test/test_read_format_cpio_bin_xz.c
===================================================================
--- trunk/contrib/libarchive/libarchive/test/test_read_format_cpio_bin_xz.c	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/libarchive/test/test_read_format_cpio_bin_xz.c	2018-06-19 21:37:44 UTC (rev 11136)
@@ -24,7 +24,7 @@
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 #include "test.h"
-__FBSDID("$FreeBSD: stable/11/contrib/libarchive/libarchive/test/test_read_format_cpio_bin_xz.c 299529 2016-05-12 10:16:16Z mm $");
+__FBSDID("$FreeBSD: stable/10/contrib/libarchive/libarchive/test/test_read_format_cpio_bin_xz.c 302001 2016-06-17 22:40:10Z mm $");
 
 static unsigned char archive[] = {
  0xfd, 0x37, 0x7a, 0x58, 0x5a, 0x00, 0x00, 0x04,

Modified: trunk/contrib/libarchive/libarchive/test/test_read_format_cpio_odc.c
===================================================================
--- trunk/contrib/libarchive/libarchive/test/test_read_format_cpio_odc.c	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/libarchive/test/test_read_format_cpio_odc.c	2018-06-19 21:37:44 UTC (rev 11136)
@@ -23,7 +23,7 @@
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 #include "test.h"
-__FBSDID("$FreeBSD: stable/11/contrib/libarchive/libarchive/test/test_read_format_cpio_odc.c 299529 2016-05-12 10:16:16Z mm $");
+__FBSDID("$FreeBSD: stable/10/contrib/libarchive/libarchive/test/test_read_format_cpio_odc.c 302001 2016-06-17 22:40:10Z mm $");
 
 static unsigned char archive[] = {
 '0','7','0','7','0','7','0','0','2','0','2','5','0','7','4','6','6','1','0',

Modified: trunk/contrib/libarchive/libarchive/test/test_read_format_cpio_svr4_gzip.c
===================================================================
--- trunk/contrib/libarchive/libarchive/test/test_read_format_cpio_svr4_gzip.c	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/libarchive/test/test_read_format_cpio_svr4_gzip.c	2018-06-19 21:37:44 UTC (rev 11136)
@@ -23,7 +23,7 @@
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 #include "test.h"
-__FBSDID("$FreeBSD: stable/11/contrib/libarchive/libarchive/test/test_read_format_cpio_svr4_gzip.c 299529 2016-05-12 10:16:16Z mm $");
+__FBSDID("$FreeBSD: stable/10/contrib/libarchive/libarchive/test/test_read_format_cpio_svr4_gzip.c 302001 2016-06-17 22:40:10Z mm $");
 
 static unsigned char archive[] = {
 31,139,8,0,236,'c',217,'D',0,3,'3','0','7','0','7','0','4','0','0',181,'0',

Modified: trunk/contrib/libarchive/libarchive/test/test_read_format_cpio_svr4c_Z.c
===================================================================
--- trunk/contrib/libarchive/libarchive/test/test_read_format_cpio_svr4c_Z.c	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/libarchive/test/test_read_format_cpio_svr4c_Z.c	2018-06-19 21:37:44 UTC (rev 11136)
@@ -23,7 +23,7 @@
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 #include "test.h"
-__FBSDID("$FreeBSD: stable/11/contrib/libarchive/libarchive/test/test_read_format_cpio_svr4c_Z.c 299529 2016-05-12 10:16:16Z mm $");
+__FBSDID("$FreeBSD: stable/10/contrib/libarchive/libarchive/test/test_read_format_cpio_svr4c_Z.c 302001 2016-06-17 22:40:10Z mm $");
 
 static unsigned char archive[] = {
 31,157,144,'0','n',4,132,'!',3,6,140,26,'8','n',228,16,19,195,160,'A',26,

Modified: trunk/contrib/libarchive/libarchive/test/test_read_format_empty.c
===================================================================
--- trunk/contrib/libarchive/libarchive/test/test_read_format_empty.c	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/libarchive/test/test_read_format_empty.c	2018-06-19 21:37:44 UTC (rev 11136)
@@ -23,7 +23,7 @@
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 #include "test.h"
-__FBSDID("$FreeBSD: stable/11/contrib/libarchive/libarchive/test/test_read_format_empty.c 299529 2016-05-12 10:16:16Z mm $");
+__FBSDID("$FreeBSD: stable/10/contrib/libarchive/libarchive/test/test_read_format_empty.c 302001 2016-06-17 22:40:10Z mm $");
 
 static unsigned char archive[] = { 0 };
 

Modified: trunk/contrib/libarchive/libarchive/test/test_read_format_gtar_gz.c
===================================================================
--- trunk/contrib/libarchive/libarchive/test/test_read_format_gtar_gz.c	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/libarchive/test/test_read_format_gtar_gz.c	2018-06-19 21:37:44 UTC (rev 11136)
@@ -23,7 +23,7 @@
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 #include "test.h"
-__FBSDID("$FreeBSD: stable/11/contrib/libarchive/libarchive/test/test_read_format_gtar_gz.c 299529 2016-05-12 10:16:16Z mm $");
+__FBSDID("$FreeBSD: stable/10/contrib/libarchive/libarchive/test/test_read_format_gtar_gz.c 302001 2016-06-17 22:40:10Z mm $");
 
 static unsigned char archive[] = {
 31,139,8,0,'+','e',217,'D',0,3,211,211,'g',160,'9','0',0,2,'s','S','S',16,

Modified: trunk/contrib/libarchive/libarchive/test/test_read_format_gtar_lzma.c
===================================================================
--- trunk/contrib/libarchive/libarchive/test/test_read_format_gtar_lzma.c	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/libarchive/test/test_read_format_gtar_lzma.c	2018-06-19 21:37:44 UTC (rev 11136)
@@ -23,7 +23,7 @@
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 #include "test.h"
-__FBSDID("$FreeBSD: stable/11/contrib/libarchive/libarchive/test/test_read_format_gtar_lzma.c 299529 2016-05-12 10:16:16Z mm $");
+__FBSDID("$FreeBSD: stable/10/contrib/libarchive/libarchive/test/test_read_format_gtar_lzma.c 302001 2016-06-17 22:40:10Z mm $");
 
 static unsigned char archive[] = {
 0x5d, 0x0, 0x0, 0x80, 0x0, 0x0, 0x28, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,

Modified: trunk/contrib/libarchive/libarchive/test/test_read_format_gtar_sparse.c
===================================================================
--- trunk/contrib/libarchive/libarchive/test/test_read_format_gtar_sparse.c	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/libarchive/test/test_read_format_gtar_sparse.c	2018-06-19 21:37:44 UTC (rev 11136)
@@ -23,7 +23,7 @@
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 #include "test.h"
-__FBSDID("$FreeBSD: stable/11/contrib/libarchive/libarchive/test/test_read_format_gtar_sparse.c 299529 2016-05-12 10:16:16Z mm $");
+__FBSDID("$FreeBSD: stable/10/contrib/libarchive/libarchive/test/test_read_format_gtar_sparse.c 302001 2016-06-17 22:40:10Z mm $");
 
 
 struct contents {

Modified: trunk/contrib/libarchive/libarchive/test/test_read_format_gtar_sparse_1_13.tar.uu
===================================================================
--- trunk/contrib/libarchive/libarchive/test/test_read_format_gtar_sparse_1_13.tar.uu	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/libarchive/test/test_read_format_gtar_sparse_1_13.tar.uu	2018-06-19 21:37:44 UTC (rev 11136)
@@ -1,4 +1,4 @@
-$FreeBSD: stable/11/contrib/libarchive/libarchive/test/test_read_format_gtar_sparse_1_13.tar.uu 228763 2011-12-21 11:13:29Z mm $
+$FreeBSD: stable/10/contrib/libarchive/libarchive/test/test_read_format_gtar_sparse_1_13.tar.uu 228763 2011-12-21 11:13:29Z mm $
 begin 644 test_read_format_gtar_sparse_1_13.tar
 M<W!A<G-E````````````````````````````````````````````````````
 M````````````````````````````````````````````````````````````

Modified: trunk/contrib/libarchive/libarchive/test/test_read_format_gtar_sparse_1_17.tar.uu
===================================================================
--- trunk/contrib/libarchive/libarchive/test/test_read_format_gtar_sparse_1_17.tar.uu	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/libarchive/test/test_read_format_gtar_sparse_1_17.tar.uu	2018-06-19 21:37:44 UTC (rev 11136)
@@ -1,4 +1,4 @@
-$FreeBSD: stable/11/contrib/libarchive/libarchive/test/test_read_format_gtar_sparse_1_17.tar.uu 228763 2011-12-21 11:13:29Z mm $
+$FreeBSD: stable/10/contrib/libarchive/libarchive/test/test_read_format_gtar_sparse_1_17.tar.uu 228763 2011-12-21 11:13:29Z mm $
 begin 644 test_read_format_gtar_sparse_1_17.tar
 M<W!A<G-E````````````````````````````````````````````````````
 M````````````````````````````````````````````````````````````

Modified: trunk/contrib/libarchive/libarchive/test/test_read_format_gtar_sparse_1_17_posix00.tar.uu
===================================================================
--- trunk/contrib/libarchive/libarchive/test/test_read_format_gtar_sparse_1_17_posix00.tar.uu	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/libarchive/test/test_read_format_gtar_sparse_1_17_posix00.tar.uu	2018-06-19 21:37:44 UTC (rev 11136)
@@ -1,4 +1,4 @@
-$FreeBSD: stable/11/contrib/libarchive/libarchive/test/test_read_format_gtar_sparse_1_17_posix00.tar.uu 228763 2011-12-21 11:13:29Z mm $
+$FreeBSD: stable/10/contrib/libarchive/libarchive/test/test_read_format_gtar_sparse_1_17_posix00.tar.uu 228763 2011-12-21 11:13:29Z mm $
 begin 644 test_read_format_gtar_sparse_1_17_posix00.tar
 M+B]087A(96%D97)S+C,X-C4Y+W-P87)S90``````````````````````````
 M````````````````````````````````````````````````````````````

Modified: trunk/contrib/libarchive/libarchive/test/test_read_format_gtar_sparse_1_17_posix01.tar.uu
===================================================================
--- trunk/contrib/libarchive/libarchive/test/test_read_format_gtar_sparse_1_17_posix01.tar.uu	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/libarchive/test/test_read_format_gtar_sparse_1_17_posix01.tar.uu	2018-06-19 21:37:44 UTC (rev 11136)
@@ -1,4 +1,4 @@
-$FreeBSD: stable/11/contrib/libarchive/libarchive/test/test_read_format_gtar_sparse_1_17_posix01.tar.uu 228763 2011-12-21 11:13:29Z mm $
+$FreeBSD: stable/10/contrib/libarchive/libarchive/test/test_read_format_gtar_sparse_1_17_posix01.tar.uu 228763 2011-12-21 11:13:29Z mm $
 begin 644 test_read_format_gtar_sparse_1_17_posix01.tar
 M+B]087A(96%D97)S+C,X-C8Q+W-P87)S90``````````````````````````
 M````````````````````````````````````````````````````````````

Modified: trunk/contrib/libarchive/libarchive/test/test_read_format_gtar_sparse_1_17_posix10.tar.uu
===================================================================
--- trunk/contrib/libarchive/libarchive/test/test_read_format_gtar_sparse_1_17_posix10.tar.uu	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/libarchive/test/test_read_format_gtar_sparse_1_17_posix10.tar.uu	2018-06-19 21:37:44 UTC (rev 11136)
@@ -1,4 +1,4 @@
-$FreeBSD: stable/11/contrib/libarchive/libarchive/test/test_read_format_gtar_sparse_1_17_posix10.tar.uu 228763 2011-12-21 11:13:29Z mm $
+$FreeBSD: stable/10/contrib/libarchive/libarchive/test/test_read_format_gtar_sparse_1_17_posix10.tar.uu 228763 2011-12-21 11:13:29Z mm $
 begin 644 test_read_format_gtar_sparse_1_17_posix10.tar
 M+B]087A(96%D97)S+C,X-C8S+W-P87)S90``````````````````````````
 M````````````````````````````````````````````````````````````

Modified: trunk/contrib/libarchive/libarchive/test/test_read_format_gtar_sparse_1_17_posix10_modified.tar.uu
===================================================================
--- trunk/contrib/libarchive/libarchive/test/test_read_format_gtar_sparse_1_17_posix10_modified.tar.uu	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/libarchive/test/test_read_format_gtar_sparse_1_17_posix10_modified.tar.uu	2018-06-19 21:37:44 UTC (rev 11136)
@@ -1,4 +1,4 @@
-$FreeBSD: stable/11/contrib/libarchive/libarchive/test/test_read_format_gtar_sparse_1_17_posix10_modified.tar.uu 228763 2011-12-21 11:13:29Z mm $
+$FreeBSD: stable/10/contrib/libarchive/libarchive/test/test_read_format_gtar_sparse_1_17_posix10_modified.tar.uu 228763 2011-12-21 11:13:29Z mm $
 begin 644 test_read_format_gtar_sparse_1_17_posix10_modified.tar
 M+B]087A(96%D97)S+C,X-C8S+W-P87)S90``````````````````````````
 M````````````````````````````````````````````````````````````

Modified: trunk/contrib/libarchive/libarchive/test/test_read_format_iso.iso.Z.uu
===================================================================
--- trunk/contrib/libarchive/libarchive/test/test_read_format_iso.iso.Z.uu	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/libarchive/test/test_read_format_iso.iso.Z.uu	2018-06-19 21:37:44 UTC (rev 11136)
@@ -1,4 +1,4 @@
-$FreeBSD: stable/11/contrib/libarchive/libarchive/test/test_read_format_iso.iso.Z.uu 228763 2011-12-21 11:13:29Z mm $
+$FreeBSD: stable/10/contrib/libarchive/libarchive/test/test_read_format_iso.iso.Z.uu 228763 2011-12-21 11:13:29Z mm $
 
 begin 644 test_read_format_iso.iso.Z
 M'YV0``(*'$BPH,&#"!,J7,BPH<.'$"-*G$BQHL6+&#-JW,BQH\>/($.*'$FR

Modified: trunk/contrib/libarchive/libarchive/test/test_read_format_iso_Z.c
===================================================================
--- trunk/contrib/libarchive/libarchive/test/test_read_format_iso_Z.c	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/libarchive/test/test_read_format_iso_Z.c	2018-06-19 21:37:44 UTC (rev 11136)
@@ -23,7 +23,7 @@
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 #include "test.h"
-__FBSDID("$FreeBSD: stable/11/contrib/libarchive/libarchive/test/test_read_format_iso_Z.c 299529 2016-05-12 10:16:16Z mm $");
+__FBSDID("$FreeBSD: stable/10/contrib/libarchive/libarchive/test/test_read_format_iso_Z.c 302001 2016-06-17 22:40:10Z mm $");
 
 static void
 test1(void)

Modified: trunk/contrib/libarchive/libarchive/test/test_read_format_iso_joliet.iso.Z.uu
===================================================================
--- trunk/contrib/libarchive/libarchive/test/test_read_format_iso_joliet.iso.Z.uu	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/libarchive/test/test_read_format_iso_joliet.iso.Z.uu	2018-06-19 21:37:44 UTC (rev 11136)
@@ -1,4 +1,4 @@
-$FreeBSD: stable/11/contrib/libarchive/libarchive/test/test_read_format_iso_joliet.iso.Z.uu 228763 2011-12-21 11:13:29Z mm $
+$FreeBSD: stable/10/contrib/libarchive/libarchive/test/test_read_format_iso_joliet.iso.Z.uu 228763 2011-12-21 11:13:29Z mm $
 
 begin 644 test_read_format_iso_joliet.iso.Z
 M'YV0``(*'$BPH,&#"!,J7,BPH<.'$"-*G$BQHL6+&#-JW,BQH\>/($.*'$FR

Modified: trunk/contrib/libarchive/libarchive/test/test_read_format_iso_joliet_long.iso.Z.uu
===================================================================
--- trunk/contrib/libarchive/libarchive/test/test_read_format_iso_joliet_long.iso.Z.uu	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/libarchive/test/test_read_format_iso_joliet_long.iso.Z.uu	2018-06-19 21:37:44 UTC (rev 11136)
@@ -1,4 +1,4 @@
-$FreeBSD: stable/11/contrib/libarchive/libarchive/test/test_read_format_iso_joliet_long.iso.Z.uu 228763 2011-12-21 11:13:29Z mm $
+$FreeBSD: stable/10/contrib/libarchive/libarchive/test/test_read_format_iso_joliet_long.iso.Z.uu 228763 2011-12-21 11:13:29Z mm $
 
 begin 644 test_read_format_iso_joliet_long.iso.Z
 M'YV0``(*'$BPH,&#"!,J7,BPH<.'$"-*G$BQHL6+&#-JW,BQH\>/($.*'$FR

Modified: trunk/contrib/libarchive/libarchive/test/test_read_format_iso_joliet_rockridge.iso.Z.uu
===================================================================
--- trunk/contrib/libarchive/libarchive/test/test_read_format_iso_joliet_rockridge.iso.Z.uu	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/libarchive/test/test_read_format_iso_joliet_rockridge.iso.Z.uu	2018-06-19 21:37:44 UTC (rev 11136)
@@ -1,4 +1,4 @@
-$FreeBSD: stable/11/contrib/libarchive/libarchive/test/test_read_format_iso_joliet_rockridge.iso.Z.uu 228763 2011-12-21 11:13:29Z mm $
+$FreeBSD: stable/10/contrib/libarchive/libarchive/test/test_read_format_iso_joliet_rockridge.iso.Z.uu 228763 2011-12-21 11:13:29Z mm $
 
 begin 644 test_read_format_iso_joliet_rockridge.iso.Z
 M'YV0``(*'$BPH,&#"!,J7,BPH<.'$"-*G$BQHL6+&#-JW,BQH\>/($.*'$FR

Modified: trunk/contrib/libarchive/libarchive/test/test_read_format_iso_multi_extent.c
===================================================================
--- trunk/contrib/libarchive/libarchive/test/test_read_format_iso_multi_extent.c	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/libarchive/test/test_read_format_iso_multi_extent.c	2018-06-19 21:37:44 UTC (rev 11136)
@@ -24,7 +24,7 @@
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 #include "test.h"
-__FBSDID("$FreeBSD: stable/11/contrib/libarchive/libarchive/test/test_read_format_iso_multi_extent.c 299529 2016-05-12 10:16:16Z mm $");
+__FBSDID("$FreeBSD: stable/10/contrib/libarchive/libarchive/test/test_read_format_iso_multi_extent.c 302001 2016-06-17 22:40:10Z mm $");
 
 DEFINE_TEST(test_read_format_iso_multi_extent)
 {

Modified: trunk/contrib/libarchive/libarchive/test/test_read_format_iso_multi_extent.iso.Z.uu
===================================================================
--- trunk/contrib/libarchive/libarchive/test/test_read_format_iso_multi_extent.iso.Z.uu	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/libarchive/test/test_read_format_iso_multi_extent.iso.Z.uu	2018-06-19 21:37:44 UTC (rev 11136)
@@ -1,4 +1,4 @@
-$FreeBSD: stable/11/contrib/libarchive/libarchive/test/test_read_format_iso_multi_extent.iso.Z.uu 228763 2011-12-21 11:13:29Z mm $
+$FreeBSD: stable/10/contrib/libarchive/libarchive/test/test_read_format_iso_multi_extent.iso.Z.uu 228763 2011-12-21 11:13:29Z mm $
 
 begin 644 test_read_format_iso_multi_extent.iso.Z
 M'YV0``(*'$BPH,&#"!,J7,BPH<.'$"-*G$BQHL6+&#-JW,BQH\>/($.*'$FR

Modified: trunk/contrib/libarchive/libarchive/test/test_read_format_iso_rockridge.iso.Z.uu
===================================================================
--- trunk/contrib/libarchive/libarchive/test/test_read_format_iso_rockridge.iso.Z.uu	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/libarchive/test/test_read_format_iso_rockridge.iso.Z.uu	2018-06-19 21:37:44 UTC (rev 11136)
@@ -1,4 +1,4 @@
-$FreeBSD: stable/11/contrib/libarchive/libarchive/test/test_read_format_iso_rockridge.iso.Z.uu 228763 2011-12-21 11:13:29Z mm $
+$FreeBSD: stable/10/contrib/libarchive/libarchive/test/test_read_format_iso_rockridge.iso.Z.uu 228763 2011-12-21 11:13:29Z mm $
 
 begin 644 test_read_format_iso_rockridge.iso.Z
 M'YV0``(*'$BPH,&#"!,J7,BPH<.'$"-*G$BQHL6+&#-JW,BQH\>/($.*'$FR

Modified: trunk/contrib/libarchive/libarchive/test/test_read_format_iso_rockridge_ce.iso.Z.uu
===================================================================
--- trunk/contrib/libarchive/libarchive/test/test_read_format_iso_rockridge_ce.iso.Z.uu	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/libarchive/test/test_read_format_iso_rockridge_ce.iso.Z.uu	2018-06-19 21:37:44 UTC (rev 11136)
@@ -1,4 +1,4 @@
-$FreeBSD: stable/11/contrib/libarchive/libarchive/test/test_read_format_iso_rockridge_ce.iso.Z.uu 228763 2011-12-21 11:13:29Z mm $
+$FreeBSD: stable/10/contrib/libarchive/libarchive/test/test_read_format_iso_rockridge_ce.iso.Z.uu 228763 2011-12-21 11:13:29Z mm $
 
 begin 644 test_read_format_iso_rockridge_ce.iso.Z
 M'YV0``(*'$BPH,&#"!,J7,BPH<.'$"-*G$BQHL6+&#-JW,BQH\>/($.*'$FR

Modified: trunk/contrib/libarchive/libarchive/test/test_read_format_iso_rockridge_new.iso.Z.uu
===================================================================
--- trunk/contrib/libarchive/libarchive/test/test_read_format_iso_rockridge_new.iso.Z.uu	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/libarchive/test/test_read_format_iso_rockridge_new.iso.Z.uu	2018-06-19 21:37:44 UTC (rev 11136)
@@ -1,4 +1,4 @@
-$FreeBSD: stable/11/contrib/libarchive/libarchive/test/test_read_format_iso_rockridge_new.iso.Z.uu 228763 2011-12-21 11:13:29Z mm $
+$FreeBSD: stable/10/contrib/libarchive/libarchive/test/test_read_format_iso_rockridge_new.iso.Z.uu 228763 2011-12-21 11:13:29Z mm $
 
 begin 644 test_read_format_iso_rockridge_new.iso.Z
 M'YV0``(*'$BPH,&#"!,J7,BPH<.'$"-*G$BQHL6+&#-JW,BQH\>/($.*'$FR

Modified: trunk/contrib/libarchive/libarchive/test/test_read_format_iso_rockridge_rr_moved.iso.Z.uu
===================================================================
--- trunk/contrib/libarchive/libarchive/test/test_read_format_iso_rockridge_rr_moved.iso.Z.uu	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/libarchive/test/test_read_format_iso_rockridge_rr_moved.iso.Z.uu	2018-06-19 21:37:44 UTC (rev 11136)
@@ -1,4 +1,4 @@
-$FreeBSD: stable/11/contrib/libarchive/libarchive/test/test_read_format_iso_rockridge_rr_moved.iso.Z.uu 228763 2011-12-21 11:13:29Z mm $
+$FreeBSD: stable/10/contrib/libarchive/libarchive/test/test_read_format_iso_rockridge_rr_moved.iso.Z.uu 228763 2011-12-21 11:13:29Z mm $
 
 begin 644 test_read_format_iso_rockridge_rr_moved.iso.Z
 M'YV0``(*'$BPH,&#"!,J7,BPH<.'$"-*G$BQHL6+&#-JW,BQH\>/($.*'$FR

Modified: trunk/contrib/libarchive/libarchive/test/test_read_format_iso_zisofs.iso.Z.uu
===================================================================
--- trunk/contrib/libarchive/libarchive/test/test_read_format_iso_zisofs.iso.Z.uu	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/libarchive/test/test_read_format_iso_zisofs.iso.Z.uu	2018-06-19 21:37:44 UTC (rev 11136)
@@ -1,4 +1,4 @@
-$FreeBSD: stable/11/contrib/libarchive/libarchive/test/test_read_format_iso_zisofs.iso.Z.uu 228763 2011-12-21 11:13:29Z mm $
+$FreeBSD: stable/10/contrib/libarchive/libarchive/test/test_read_format_iso_zisofs.iso.Z.uu 228763 2011-12-21 11:13:29Z mm $
 
 begin 644 test_read_format_iso_zisofs.iso.Z
 M'YV0``(*'$BPH,&#"!,J7,BPH<.'$"-*G$BQHL6+&#-JW,BQH\>/($.*'$FR

Modified: trunk/contrib/libarchive/libarchive/test/test_read_format_isojoliet_bz2.c
===================================================================
--- trunk/contrib/libarchive/libarchive/test/test_read_format_isojoliet_bz2.c	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/libarchive/test/test_read_format_isojoliet_bz2.c	2018-06-19 21:37:44 UTC (rev 11136)
@@ -27,7 +27,7 @@
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 #include "test.h"
-__FBSDID("$FreeBSD: stable/11/contrib/libarchive/libarchive/test/test_read_format_isojoliet_bz2.c 299529 2016-05-12 10:16:16Z mm $");
+__FBSDID("$FreeBSD: stable/10/contrib/libarchive/libarchive/test/test_read_format_isojoliet_bz2.c 302001 2016-06-17 22:40:10Z mm $");
 
 /*
 Execute the following to rebuild the data for this program:

Modified: trunk/contrib/libarchive/libarchive/test/test_read_format_isojoliet_long.c
===================================================================
--- trunk/contrib/libarchive/libarchive/test/test_read_format_isojoliet_long.c	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/libarchive/test/test_read_format_isojoliet_long.c	2018-06-19 21:37:44 UTC (rev 11136)
@@ -24,7 +24,7 @@
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 #include "test.h"
-__FBSDID("$FreeBSD: stable/11/contrib/libarchive/libarchive/test/test_read_format_isojoliet_long.c 299529 2016-05-12 10:16:16Z mm $");
+__FBSDID("$FreeBSD: stable/10/contrib/libarchive/libarchive/test/test_read_format_isojoliet_long.c 302001 2016-06-17 22:40:10Z mm $");
 
 /*
 Execute the following to rebuild the data for this program:

Modified: trunk/contrib/libarchive/libarchive/test/test_read_format_isojoliet_rr.c
===================================================================
--- trunk/contrib/libarchive/libarchive/test/test_read_format_isojoliet_rr.c	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/libarchive/test/test_read_format_isojoliet_rr.c	2018-06-19 21:37:44 UTC (rev 11136)
@@ -27,7 +27,7 @@
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 #include "test.h"
-__FBSDID("$FreeBSD: stable/11/contrib/libarchive/libarchive/test/test_read_format_isojoliet_rr.c 299529 2016-05-12 10:16:16Z mm $");
+__FBSDID("$FreeBSD: stable/10/contrib/libarchive/libarchive/test/test_read_format_isojoliet_rr.c 302001 2016-06-17 22:40:10Z mm $");
 
 /*
 Execute the following to rebuild the data for this program:

Modified: trunk/contrib/libarchive/libarchive/test/test_read_format_isorr_bz2.c
===================================================================
--- trunk/contrib/libarchive/libarchive/test/test_read_format_isorr_bz2.c	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/libarchive/test/test_read_format_isorr_bz2.c	2018-06-19 21:37:44 UTC (rev 11136)
@@ -23,7 +23,7 @@
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 #include "test.h"
-__FBSDID("$FreeBSD: stable/11/contrib/libarchive/libarchive/test/test_read_format_isorr_bz2.c 299529 2016-05-12 10:16:16Z mm $");
+__FBSDID("$FreeBSD: stable/10/contrib/libarchive/libarchive/test/test_read_format_isorr_bz2.c 313571 2017-02-11 00:56:18Z mm $");
 
 /*
 PLEASE use old cdrtools; mkisofs version is 2.01.

Modified: trunk/contrib/libarchive/libarchive/test/test_read_format_isorr_ce.c
===================================================================
--- trunk/contrib/libarchive/libarchive/test/test_read_format_isorr_ce.c	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/libarchive/test/test_read_format_isorr_ce.c	2018-06-19 21:37:44 UTC (rev 11136)
@@ -24,7 +24,7 @@
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 #include "test.h"
-__FBSDID("$FreeBSD: stable/11/contrib/libarchive/libarchive/test/test_read_format_isorr_ce.c 299529 2016-05-12 10:16:16Z mm $");
+__FBSDID("$FreeBSD: stable/10/contrib/libarchive/libarchive/test/test_read_format_isorr_ce.c 302001 2016-06-17 22:40:10Z mm $");
 
 /*
 Execute the following command to rebuild the data for this program:

Modified: trunk/contrib/libarchive/libarchive/test/test_read_format_isorr_new_bz2.c
===================================================================
--- trunk/contrib/libarchive/libarchive/test/test_read_format_isorr_new_bz2.c	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/libarchive/test/test_read_format_isorr_new_bz2.c	2018-06-19 21:37:44 UTC (rev 11136)
@@ -23,7 +23,7 @@
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 #include "test.h"
-__FBSDID("$FreeBSD: stable/11/contrib/libarchive/libarchive/test/test_read_format_isorr_new_bz2.c 299529 2016-05-12 10:16:16Z mm $");
+__FBSDID("$FreeBSD: stable/10/contrib/libarchive/libarchive/test/test_read_format_isorr_new_bz2.c 302001 2016-06-17 22:40:10Z mm $");
 
 
 /*

Modified: trunk/contrib/libarchive/libarchive/test/test_read_format_isorr_rr_moved.c
===================================================================
--- trunk/contrib/libarchive/libarchive/test/test_read_format_isorr_rr_moved.c	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/libarchive/test/test_read_format_isorr_rr_moved.c	2018-06-19 21:37:44 UTC (rev 11136)
@@ -24,7 +24,7 @@
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 #include "test.h"
-__FBSDID("$FreeBSD: stable/11/contrib/libarchive/libarchive/test/test_read_format_isorr_rr_moved.c 299529 2016-05-12 10:16:16Z mm $");
+__FBSDID("$FreeBSD: stable/10/contrib/libarchive/libarchive/test/test_read_format_isorr_rr_moved.c 302001 2016-06-17 22:40:10Z mm $");
 
 /*
 Execute the following command to rebuild the data for this program:

Modified: trunk/contrib/libarchive/libarchive/test/test_read_format_isozisofs_bz2.c
===================================================================
--- trunk/contrib/libarchive/libarchive/test/test_read_format_isozisofs_bz2.c	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/libarchive/test/test_read_format_isozisofs_bz2.c	2018-06-19 21:37:44 UTC (rev 11136)
@@ -23,7 +23,7 @@
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 #include "test.h"
-__FBSDID("$FreeBSD: stable/11/contrib/libarchive/libarchive/test/test_read_format_isozisofs_bz2.c 299529 2016-05-12 10:16:16Z mm $");
+__FBSDID("$FreeBSD: stable/10/contrib/libarchive/libarchive/test/test_read_format_isozisofs_bz2.c 302001 2016-06-17 22:40:10Z mm $");
 
 /*
 Execute the following command to rebuild the data for this program:

Modified: trunk/contrib/libarchive/libarchive/test/test_read_format_mtree.c
===================================================================
--- trunk/contrib/libarchive/libarchive/test/test_read_format_mtree.c	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/libarchive/test/test_read_format_mtree.c	2018-06-19 21:37:44 UTC (rev 11136)
@@ -24,7 +24,7 @@
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 #include "test.h"
-__FBSDID("$FreeBSD: stable/11/contrib/libarchive/libarchive/test/test_read_format_mtree.c 299529 2016-05-12 10:16:16Z mm $");
+__FBSDID("$FreeBSD: stable/10/contrib/libarchive/libarchive/test/test_read_format_mtree.c 318483 2017-05-18 19:50:15Z mm $");
 
 static void
 test_read_format_mtree1(void)

Modified: trunk/contrib/libarchive/libarchive/test/test_read_format_mtree.mtree.uu
===================================================================
--- trunk/contrib/libarchive/libarchive/test/test_read_format_mtree.mtree.uu	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/libarchive/test/test_read_format_mtree.mtree.uu	2018-06-19 21:37:44 UTC (rev 11136)
@@ -1,4 +1,4 @@
-$FreeBSD: stable/11/contrib/libarchive/libarchive/test/test_read_format_mtree.mtree.uu 299529 2016-05-12 10:16:16Z mm $
+$FreeBSD: stable/10/contrib/libarchive/libarchive/test/test_read_format_mtree.mtree.uu 302001 2016-06-17 22:40:10Z mm $
 begin 644 test_read_format_mtree.mtree
 M(VUT<F5E"F9I;&4@='EP93UF:6QE('5I9#TQ."!M;V1E/3`Q,C,@<VEZ93TS
 M"F1I<B!T>7!E/61I<@H at 9FEL95PP-#!W:71H7#`T,'-P86-E('1Y<&4]9FEL

Modified: trunk/contrib/libarchive/libarchive/test/test_read_format_mtree_crash747.c
===================================================================
--- trunk/contrib/libarchive/libarchive/test/test_read_format_mtree_crash747.c	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/libarchive/test/test_read_format_mtree_crash747.c	2018-06-19 21:37:44 UTC (rev 11136)
@@ -33,6 +33,11 @@
 	const char *reffile = "test_read_format_mtree_crash747.mtree.bz2";
 	struct archive *a;
 
+	if (archive_bzlib_version() == NULL) {
+		skipping("This test requires bzlib");
+		return;
+	}
+
 	extract_reference_file(reffile);
 
 	assert((a = archive_read_new()) != NULL);

Modified: trunk/contrib/libarchive/libarchive/test/test_read_format_pax_bz2.c
===================================================================
--- trunk/contrib/libarchive/libarchive/test/test_read_format_pax_bz2.c	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/libarchive/test/test_read_format_pax_bz2.c	2018-06-19 21:37:44 UTC (rev 11136)
@@ -23,7 +23,7 @@
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 #include "test.h"
-__FBSDID("$FreeBSD: stable/11/contrib/libarchive/libarchive/test/test_read_format_pax_bz2.c 299529 2016-05-12 10:16:16Z mm $");
+__FBSDID("$FreeBSD: stable/10/contrib/libarchive/libarchive/test/test_read_format_pax_bz2.c 302001 2016-06-17 22:40:10Z mm $");
 
 static unsigned char archive[] = {
 'B','Z','h','9','1','A','Y','&','S','Y',152,180,30,185,0,0,140,127,176,212,

Modified: trunk/contrib/libarchive/libarchive/test/test_read_format_rar_encryption_data.c
===================================================================
--- trunk/contrib/libarchive/libarchive/test/test_read_format_rar_encryption_data.c	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/libarchive/test/test_read_format_rar_encryption_data.c	2018-06-19 21:37:44 UTC (rev 11136)
@@ -23,7 +23,7 @@
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 #include "test.h"
-__FBSDID("$FreeBSD: stable/11/contrib/libarchive/libarchive/test/test_read_format_rar_encryption_data.c 299529 2016-05-12 10:16:16Z mm $");
+__FBSDID("$FreeBSD: stable/10/contrib/libarchive/libarchive/test/test_read_format_rar_encryption_data.c 302001 2016-06-17 22:40:10Z mm $");
 
 DEFINE_TEST(test_read_format_rar_encryption_data)
 {

Modified: trunk/contrib/libarchive/libarchive/test/test_read_format_rar_encryption_header.c
===================================================================
--- trunk/contrib/libarchive/libarchive/test/test_read_format_rar_encryption_header.c	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/libarchive/test/test_read_format_rar_encryption_header.c	2018-06-19 21:37:44 UTC (rev 11136)
@@ -23,7 +23,7 @@
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 #include "test.h"
-__FBSDID("$FreeBSD: stable/11/contrib/libarchive/libarchive/test/test_read_format_rar_encryption_header.c 299529 2016-05-12 10:16:16Z mm $");
+__FBSDID("$FreeBSD: stable/10/contrib/libarchive/libarchive/test/test_read_format_rar_encryption_header.c 302001 2016-06-17 22:40:10Z mm $");
 
 DEFINE_TEST(test_read_format_rar_encryption_header)
 {

Modified: trunk/contrib/libarchive/libarchive/test/test_read_format_rar_encryption_partially.c
===================================================================
--- trunk/contrib/libarchive/libarchive/test/test_read_format_rar_encryption_partially.c	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/libarchive/test/test_read_format_rar_encryption_partially.c	2018-06-19 21:37:44 UTC (rev 11136)
@@ -23,7 +23,7 @@
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 #include "test.h"
-__FBSDID("$FreeBSD: stable/11/contrib/libarchive/libarchive/test/test_read_format_rar_encryption_partially.c 299529 2016-05-12 10:16:16Z mm $");
+__FBSDID("$FreeBSD: stable/10/contrib/libarchive/libarchive/test/test_read_format_rar_encryption_partially.c 302001 2016-06-17 22:40:10Z mm $");
 
 DEFINE_TEST(test_read_format_rar_encryption_partially)
 {

Modified: trunk/contrib/libarchive/libarchive/test/test_read_format_rar_invalid1.c
===================================================================
--- trunk/contrib/libarchive/libarchive/test/test_read_format_rar_invalid1.c	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/libarchive/test/test_read_format_rar_invalid1.c	2018-06-19 21:37:44 UTC (rev 11136)
@@ -23,7 +23,7 @@
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 #include "test.h"
-__FBSDID("$FreeBSD: stable/11/contrib/libarchive/libarchive/test/test_read_format_rar_invalid1.c 302075 2016-06-22 07:49:59Z mm $");
+__FBSDID("$FreeBSD: stable/10/contrib/libarchive/libarchive/test/test_read_format_rar_invalid1.c 302295 2016-06-30 12:44:15Z mm $");
 
 DEFINE_TEST(test_read_format_rar_invalid1)
 {

Modified: trunk/contrib/libarchive/libarchive/test/test_read_format_raw.c
===================================================================
--- trunk/contrib/libarchive/libarchive/test/test_read_format_raw.c	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/libarchive/test/test_read_format_raw.c	2018-06-19 21:37:44 UTC (rev 11136)
@@ -26,7 +26,7 @@
  */
 
 #include "test.h"
-__FBSDID("$FreeBSD: stable/11/contrib/libarchive/libarchive/test/test_read_format_raw.c 299529 2016-05-12 10:16:16Z mm $");
+__FBSDID("$FreeBSD: stable/10/contrib/libarchive/libarchive/test/test_read_format_raw.c 311042 2017-01-02 01:43:11Z mm $");
 
 DEFINE_TEST(test_read_format_raw)
 {

Modified: trunk/contrib/libarchive/libarchive/test/test_read_format_raw.data.Z.uu
===================================================================
--- trunk/contrib/libarchive/libarchive/test/test_read_format_raw.data.Z.uu	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/libarchive/test/test_read_format_raw.data.Z.uu	2018-06-19 21:37:44 UTC (rev 11136)
@@ -1,4 +1,4 @@
-$FreeBSD: stable/11/contrib/libarchive/libarchive/test/test_read_format_raw.data.Z.uu 228763 2011-12-21 11:13:29Z mm $
+$FreeBSD: stable/10/contrib/libarchive/libarchive/test/test_read_format_raw.data.Z.uu 228763 2011-12-21 11:13:29Z mm $
 begin 644 test_read_format_raw.data.Z
 ('YV09MZ\40``
 `

Modified: trunk/contrib/libarchive/libarchive/test/test_read_format_raw.data.uu
===================================================================
--- trunk/contrib/libarchive/libarchive/test/test_read_format_raw.data.uu	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/libarchive/test/test_read_format_raw.data.uu	2018-06-19 21:37:44 UTC (rev 11136)
@@ -1,4 +1,4 @@
-$FreeBSD: stable/11/contrib/libarchive/libarchive/test/test_read_format_raw.data.uu 228763 2011-12-21 11:13:29Z mm $
+$FreeBSD: stable/10/contrib/libarchive/libarchive/test/test_read_format_raw.data.uu 228763 2011-12-21 11:13:29Z mm $
 begin 644 test_read_format_raw.data
 $9F]O"@``
 `

Modified: trunk/contrib/libarchive/libarchive/test/test_read_format_tar.c
===================================================================
--- trunk/contrib/libarchive/libarchive/test/test_read_format_tar.c	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/libarchive/test/test_read_format_tar.c	2018-06-19 21:37:44 UTC (rev 11136)
@@ -23,7 +23,7 @@
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 #include "test.h"
-__FBSDID("$FreeBSD: stable/11/contrib/libarchive/libarchive/test/test_read_format_tar.c 299529 2016-05-12 10:16:16Z mm $");
+__FBSDID("$FreeBSD: stable/10/contrib/libarchive/libarchive/test/test_read_format_tar.c 302001 2016-06-17 22:40:10Z mm $");
 
 /*
  * Each of these archives is a short archive with a single entry.  The

Modified: trunk/contrib/libarchive/libarchive/test/test_read_format_tar_empty_filename.c
===================================================================
--- trunk/contrib/libarchive/libarchive/test/test_read_format_tar_empty_filename.c	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/libarchive/test/test_read_format_tar_empty_filename.c	2018-06-19 21:37:44 UTC (rev 11136)
@@ -23,7 +23,7 @@
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 #include "test.h"
-__FBSDID("$FreeBSD: stable/11/contrib/libarchive/libarchive/test/test_read_format_tar_empty_filename.c 299529 2016-05-12 10:16:16Z mm $");
+__FBSDID("$FreeBSD: stable/10/contrib/libarchive/libarchive/test/test_read_format_tar_empty_filename.c 302001 2016-06-17 22:40:10Z mm $");
 
 /*
  * Tar entries with empty filenames are unusual, but shouldn't crash us.

Modified: trunk/contrib/libarchive/libarchive/test/test_read_format_tar_empty_filename.tar.uu
===================================================================
--- trunk/contrib/libarchive/libarchive/test/test_read_format_tar_empty_filename.tar.uu	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/libarchive/test/test_read_format_tar_empty_filename.tar.uu	2018-06-19 21:37:44 UTC (rev 11136)
@@ -1,4 +1,4 @@
-$FreeBSD: stable/11/contrib/libarchive/libarchive/test/test_read_format_tar_empty_filename.tar.uu 228763 2011-12-21 11:13:29Z mm $
+$FreeBSD: stable/10/contrib/libarchive/libarchive/test/test_read_format_tar_empty_filename.tar.uu 228763 2011-12-21 11:13:29Z mm $
 begin 644 test_compat_tar_1.tar
 M````````````````````````````````````````````````````````````
 M````````````````````````````````````````````````````````````

Modified: trunk/contrib/libarchive/libarchive/test/test_read_format_tar_empty_pax.c
===================================================================
--- trunk/contrib/libarchive/libarchive/test/test_read_format_tar_empty_pax.c	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/libarchive/test/test_read_format_tar_empty_pax.c	2018-06-19 21:37:44 UTC (rev 11136)
@@ -23,7 +23,7 @@
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 #include "test.h"
-__FBSDID("$FreeBSD: stable/11/contrib/libarchive/libarchive/test/test_read_format_tar_empty_pax.c 299529 2016-05-12 10:16:16Z mm $");
+__FBSDID("$FreeBSD: stable/10/contrib/libarchive/libarchive/test/test_read_format_tar_empty_pax.c 302001 2016-06-17 22:40:10Z mm $");
 
 /*
  * A "usual" empty tar archive contains only zero bytes

Modified: trunk/contrib/libarchive/libarchive/test/test_read_format_tbz.c
===================================================================
--- trunk/contrib/libarchive/libarchive/test/test_read_format_tbz.c	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/libarchive/test/test_read_format_tbz.c	2018-06-19 21:37:44 UTC (rev 11136)
@@ -23,7 +23,7 @@
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 #include "test.h"
-__FBSDID("$FreeBSD: stable/11/contrib/libarchive/libarchive/test/test_read_format_tbz.c 299529 2016-05-12 10:16:16Z mm $");
+__FBSDID("$FreeBSD: stable/10/contrib/libarchive/libarchive/test/test_read_format_tbz.c 302001 2016-06-17 22:40:10Z mm $");
 
 static unsigned char archive[] = {
 'B','Z','h','9','1','A','Y','&','S','Y',237,7,140,'W',0,0,27,251,144,208,

Modified: trunk/contrib/libarchive/libarchive/test/test_read_format_tgz.c
===================================================================
--- trunk/contrib/libarchive/libarchive/test/test_read_format_tgz.c	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/libarchive/test/test_read_format_tgz.c	2018-06-19 21:37:44 UTC (rev 11136)
@@ -23,7 +23,7 @@
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 #include "test.h"
-__FBSDID("$FreeBSD: stable/11/contrib/libarchive/libarchive/test/test_read_format_tgz.c 299529 2016-05-12 10:16:16Z mm $");
+__FBSDID("$FreeBSD: stable/10/contrib/libarchive/libarchive/test/test_read_format_tgz.c 302001 2016-06-17 22:40:10Z mm $");
 
 static unsigned char archive[] = {
 31,139,8,0,222,'C','p','C',0,3,211,'c',160,'=','0','0','0','0','7','5','U',

Modified: trunk/contrib/libarchive/libarchive/test/test_read_format_tlz.c
===================================================================
--- trunk/contrib/libarchive/libarchive/test/test_read_format_tlz.c	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/libarchive/test/test_read_format_tlz.c	2018-06-19 21:37:44 UTC (rev 11136)
@@ -24,7 +24,7 @@
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 #include "test.h"
-__FBSDID("$FreeBSD: stable/11/contrib/libarchive/libarchive/test/test_read_format_tlz.c 299529 2016-05-12 10:16:16Z mm $");
+__FBSDID("$FreeBSD: stable/10/contrib/libarchive/libarchive/test/test_read_format_tlz.c 302001 2016-06-17 22:40:10Z mm $");
 
 static unsigned char archive[] = {
  93,  0,  0,128,  0,255,255,255,255,255,255,255,255,  0, 23,  0,

Modified: trunk/contrib/libarchive/libarchive/test/test_read_format_txz.c
===================================================================
--- trunk/contrib/libarchive/libarchive/test/test_read_format_txz.c	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/libarchive/test/test_read_format_txz.c	2018-06-19 21:37:44 UTC (rev 11136)
@@ -24,7 +24,7 @@
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 #include "test.h"
-__FBSDID("$FreeBSD: stable/11/contrib/libarchive/libarchive/test/test_read_format_txz.c 299529 2016-05-12 10:16:16Z mm $");
+__FBSDID("$FreeBSD: stable/10/contrib/libarchive/libarchive/test/test_read_format_txz.c 302001 2016-06-17 22:40:10Z mm $");
 
 static unsigned char archive[] = {
 253, 55,122, 88, 90,  0,  0,  4,230,214,180, 70,  2,  0, 33,  1,

Modified: trunk/contrib/libarchive/libarchive/test/test_read_format_tz.c
===================================================================
--- trunk/contrib/libarchive/libarchive/test/test_read_format_tz.c	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/libarchive/test/test_read_format_tz.c	2018-06-19 21:37:44 UTC (rev 11136)
@@ -23,7 +23,7 @@
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 #include "test.h"
-__FBSDID("$FreeBSD: stable/11/contrib/libarchive/libarchive/test/test_read_format_tz.c 299529 2016-05-12 10:16:16Z mm $");
+__FBSDID("$FreeBSD: stable/10/contrib/libarchive/libarchive/test/test_read_format_tz.c 302001 2016-06-17 22:40:10Z mm $");
 
 static unsigned char archive[] = {
 31,157,144,'.',0,8,28,'H',176,160,193,131,8,19,'*','\\',200,176,'!','B',24,

Modified: trunk/contrib/libarchive/libarchive/test/test_read_format_warc.c
===================================================================
--- trunk/contrib/libarchive/libarchive/test/test_read_format_warc.c	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/libarchive/test/test_read_format_warc.c	2018-06-19 21:37:44 UTC (rev 11136)
@@ -25,7 +25,7 @@
  */
 
 #include "test.h"
-__FBSDID("$FreeBSD: stable/11/contrib/libarchive/libarchive/test/test_read_format_warc.c 299529 2016-05-12 10:16:16Z mm $");
+__FBSDID("$FreeBSD: stable/10/contrib/libarchive/libarchive/test/test_read_format_warc.c 302001 2016-06-17 22:40:10Z mm $");
 
 
 DEFINE_TEST(test_read_format_warc)

Modified: trunk/contrib/libarchive/libarchive/test/test_read_format_xar.c
===================================================================
--- trunk/contrib/libarchive/libarchive/test/test_read_format_xar.c	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/libarchive/test/test_read_format_xar.c	2018-06-19 21:37:44 UTC (rev 11136)
@@ -24,7 +24,7 @@
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 #include "test.h"
-__FBSDID("$FreeBSD: stable/11/contrib/libarchive/libarchive/test/test_read_format_xar.c 299529 2016-05-12 10:16:16Z mm $");
+__FBSDID("$FreeBSD: stable/10/contrib/libarchive/libarchive/test/test_read_format_xar.c 302001 2016-06-17 22:40:10Z mm $");
 
 #define UID	1001
 #define UNAME	"cue"

Modified: trunk/contrib/libarchive/libarchive/test/test_read_format_zip.c
===================================================================
--- trunk/contrib/libarchive/libarchive/test/test_read_format_zip.c	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/libarchive/test/test_read_format_zip.c	2018-06-19 21:37:44 UTC (rev 11136)
@@ -24,7 +24,7 @@
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 #include "test.h"
-__FBSDID("$FreeBSD: stable/11/contrib/libarchive/libarchive/test/test_read_format_zip.c 299529 2016-05-12 10:16:16Z mm $");
+__FBSDID("$FreeBSD: stable/10/contrib/libarchive/libarchive/test/test_read_format_zip.c 328828 2018-02-03 02:17:25Z mm $");
 
 /*
  * The reference file for this has been manually tweaked so that:
@@ -41,6 +41,7 @@
 	int64_t o;
 
 	assertEqualIntA(a, ARCHIVE_OK, archive_read_next_header(a, &ae));
+        assertEqualString("ZIP 1.0 (uncompressed)", archive_format_name(a));
 	assertEqualString("dir/", archive_entry_pathname(ae));
 	assertEqualInt(1179604249, archive_entry_mtime(ae));
 	assertEqualInt(0, archive_entry_size(ae));
@@ -53,6 +54,7 @@
 	assertEqualInt((int)s, 0);
 
 	assertEqualIntA(a, ARCHIVE_OK, archive_read_next_header(a, &ae));
+        assertEqualString("ZIP 2.0 (deflation)", archive_format_name(a));
 	assertEqualString("file1", archive_entry_pathname(ae));
 	assertEqualInt(1179604289, archive_entry_mtime(ae));
 	if (seek_checks)
@@ -72,6 +74,7 @@
 	}
 
 	assertEqualIntA(a, ARCHIVE_OK, archive_read_next_header(a, &ae));
+        assertEqualString("ZIP 2.0 (deflation)", archive_format_name(a));
 	assertEqualString("file2", archive_entry_pathname(ae));
 	assertEqualInt(1179605932, archive_entry_mtime(ae));
 	assertEqualInt(archive_entry_is_encrypted(ae), 0);
@@ -93,6 +96,7 @@
 		assert(archive_errno(a) != 0);
 	}
 	assertEqualInt(ARCHIVE_EOF, archive_read_next_header(a, &ae));
+        assertEqualString("ZIP 2.0 (deflation)", archive_format_name(a));
 	/* Verify the number of files read. */
 	failure("the archive file has three files");
 	assertEqualInt(3, archive_file_count(a));

Modified: trunk/contrib/libarchive/libarchive/test/test_read_format_zip.zip.uu
===================================================================
--- trunk/contrib/libarchive/libarchive/test/test_read_format_zip.zip.uu	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/libarchive/test/test_read_format_zip.zip.uu	2018-06-19 21:37:44 UTC (rev 11136)
@@ -1,4 +1,4 @@
-$FreeBSD: stable/11/contrib/libarchive/libarchive/test/test_read_format_zip.zip.uu 232153 2012-02-25 10:58:02Z mm $
+$FreeBSD: stable/10/contrib/libarchive/libarchive/test/test_read_format_zip.zip.uu 232153 2012-02-25 10:58:02Z mm $
 begin 644 test_read_format_zip.zip
 M4$L#!`H`"````%EFLS8````````````````$`!4`9&ER+U54"0`#&55/1M19
 M_4A5>`0`Z`/H`U!+!P@```````````````!02P,$%`````@`;V:S-CHW9CT*

Modified: trunk/contrib/libarchive/libarchive/test/test_read_format_zip_encryption_data.c
===================================================================
--- trunk/contrib/libarchive/libarchive/test/test_read_format_zip_encryption_data.c	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/libarchive/test/test_read_format_zip_encryption_data.c	2018-06-19 21:37:44 UTC (rev 11136)
@@ -23,7 +23,7 @@
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 #include "test.h"
-__FBSDID("$FreeBSD: stable/11/contrib/libarchive/libarchive/test/test_read_format_zip_encryption_data.c 299529 2016-05-12 10:16:16Z mm $");
+__FBSDID("$FreeBSD: stable/10/contrib/libarchive/libarchive/test/test_read_format_zip_encryption_data.c 302001 2016-06-17 22:40:10Z mm $");
 
 DEFINE_TEST(test_read_format_zip_encryption_data)
 {

Modified: trunk/contrib/libarchive/libarchive/test/test_read_format_zip_encryption_header.c
===================================================================
--- trunk/contrib/libarchive/libarchive/test/test_read_format_zip_encryption_header.c	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/libarchive/test/test_read_format_zip_encryption_header.c	2018-06-19 21:37:44 UTC (rev 11136)
@@ -23,7 +23,7 @@
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 #include "test.h"
-__FBSDID("$FreeBSD: stable/11/contrib/libarchive/libarchive/test/test_read_format_zip_encryption_header.c 299529 2016-05-12 10:16:16Z mm $");
+__FBSDID("$FreeBSD: stable/10/contrib/libarchive/libarchive/test/test_read_format_zip_encryption_header.c 302001 2016-06-17 22:40:10Z mm $");
 
 DEFINE_TEST(test_read_format_zip_encryption_header)
 {

Modified: trunk/contrib/libarchive/libarchive/test/test_read_format_zip_encryption_partially.c
===================================================================
--- trunk/contrib/libarchive/libarchive/test/test_read_format_zip_encryption_partially.c	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/libarchive/test/test_read_format_zip_encryption_partially.c	2018-06-19 21:37:44 UTC (rev 11136)
@@ -23,7 +23,7 @@
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 #include "test.h"
-__FBSDID("$FreeBSD: stable/11/contrib/libarchive/libarchive/test/test_read_format_zip_encryption_partially.c 299529 2016-05-12 10:16:16Z mm $");
+__FBSDID("$FreeBSD: stable/10/contrib/libarchive/libarchive/test/test_read_format_zip_encryption_partially.c 302001 2016-06-17 22:40:10Z mm $");
 
 DEFINE_TEST(test_read_format_zip_encryption_partially)
 {

Modified: trunk/contrib/libarchive/libarchive/test/test_read_format_zip_high_compression.c
===================================================================
--- trunk/contrib/libarchive/libarchive/test/test_read_format_zip_high_compression.c	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/libarchive/test/test_read_format_zip_high_compression.c	2018-06-19 21:37:44 UTC (rev 11136)
@@ -50,6 +50,11 @@
 	size_t s;
 	int64_t o;
 
+	if (archive_zlib_version() == NULL) {
+		skipping("Zip compression test requires zlib");
+		return;
+	}
+
 	extract_reference_file(refname);
 	p = slurpfile(&archive_size, refname);
 
@@ -82,6 +87,11 @@
 	char *body, *body_read, *buff;
 	int n;
 
+	if (archive_zlib_version() == NULL) {
+		skipping("Zip compression test requires zlib");
+		return;
+	}
+
 	assert((body = malloc(body_size)) != NULL);
 	assert((body_read = malloc(body_size)) != NULL);
 	assert((buff = malloc(buff_size)) != NULL);

Modified: trunk/contrib/libarchive/libarchive/test/test_read_format_zip_jar.c
===================================================================
--- trunk/contrib/libarchive/libarchive/test/test_read_format_zip_jar.c	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/libarchive/test/test_read_format_zip_jar.c	2018-06-19 21:37:44 UTC (rev 11136)
@@ -23,7 +23,7 @@
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 #include "test.h"
-__FBSDID("$FreeBSD$");
+__FBSDID("$FreeBSD: stable/10/contrib/libarchive/libarchive/test/test_read_format_zip_jar.c 311042 2017-01-02 01:43:11Z mm $");
 
 /*
  * Issue 822: jar files have an empty External File Attributes field which

Modified: trunk/contrib/libarchive/libarchive/test/test_read_format_zip_malformed.c
===================================================================
--- trunk/contrib/libarchive/libarchive/test/test_read_format_zip_malformed.c	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/libarchive/test/test_read_format_zip_malformed.c	2018-06-19 21:37:44 UTC (rev 11136)
@@ -24,7 +24,7 @@
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 #include "test.h"
-__FBSDID("$FreeBSD: stable/11/contrib/libarchive/libarchive/test/test_read_format_zip_malformed.c 299529 2016-05-12 10:16:16Z mm $");
+__FBSDID("$FreeBSD: stable/10/contrib/libarchive/libarchive/test/test_read_format_zip_malformed.c 313571 2017-02-11 00:56:18Z mm $");
 
 static void
 test_malformed1(void)

Modified: trunk/contrib/libarchive/libarchive/test/test_read_format_zip_nested.c
===================================================================
--- trunk/contrib/libarchive/libarchive/test/test_read_format_zip_nested.c	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/libarchive/test/test_read_format_zip_nested.c	2018-06-19 21:37:44 UTC (rev 11136)
@@ -23,7 +23,7 @@
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 #include "test.h"
-__FBSDID("$FreeBSD: stable/11/contrib/libarchive/libarchive/test/test_read_format_zip_nested.c 299529 2016-05-12 10:16:16Z mm $");
+__FBSDID("$FreeBSD: stable/10/contrib/libarchive/libarchive/test/test_read_format_zip_nested.c 313571 2017-02-11 00:56:18Z mm $");
 
 DEFINE_TEST(test_read_format_zip_nested)
 {

Modified: trunk/contrib/libarchive/libarchive/test/test_read_format_zip_nofiletype.c
===================================================================
--- trunk/contrib/libarchive/libarchive/test/test_read_format_zip_nofiletype.c	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/libarchive/test/test_read_format_zip_nofiletype.c	2018-06-19 21:37:44 UTC (rev 11136)
@@ -23,7 +23,7 @@
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 #include "test.h"
-__FBSDID("$FreeBSD: stable/11/contrib/libarchive/libarchive/test/test_read_format_zip_nofiletype.c 299529 2016-05-12 10:16:16Z mm $");
+__FBSDID("$FreeBSD: stable/10/contrib/libarchive/libarchive/test/test_read_format_zip_nofiletype.c 302001 2016-06-17 22:40:10Z mm $");
 
 /*
  * Issue 332:  Some epub files (which are really Zip archives) have

Modified: trunk/contrib/libarchive/libarchive/test/test_read_format_zip_padded.c
===================================================================
--- trunk/contrib/libarchive/libarchive/test/test_read_format_zip_padded.c	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/libarchive/test/test_read_format_zip_padded.c	2018-06-19 21:37:44 UTC (rev 11136)
@@ -23,7 +23,7 @@
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 #include "test.h"
-__FBSDID("$FreeBSD: stable/11/contrib/libarchive/libarchive/test/test_read_format_zip_padded.c 299529 2016-05-12 10:16:16Z mm $");
+__FBSDID("$FreeBSD: stable/10/contrib/libarchive/libarchive/test/test_read_format_zip_padded.c 313571 2017-02-11 00:56:18Z mm $");
 
 static void
 verify_padded_archive(const char *refname)

Modified: trunk/contrib/libarchive/libarchive/test/test_read_format_zip_traditional_encryption_data.c
===================================================================
--- trunk/contrib/libarchive/libarchive/test/test_read_format_zip_traditional_encryption_data.c	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/libarchive/test/test_read_format_zip_traditional_encryption_data.c	2018-06-19 21:37:44 UTC (rev 11136)
@@ -24,7 +24,7 @@
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 #include "test.h"
-__FBSDID("$FreeBSD: stable/11/contrib/libarchive/libarchive/test/test_read_format_zip_traditional_encryption_data.c 299529 2016-05-12 10:16:16Z mm $");
+__FBSDID("$FreeBSD: stable/10/contrib/libarchive/libarchive/test/test_read_format_zip_traditional_encryption_data.c 313571 2017-02-11 00:56:18Z mm $");
 
 DEFINE_TEST(test_read_format_zip_traditional_encryption_data)
 {

Modified: trunk/contrib/libarchive/libarchive/test/test_read_format_zip_winzip_aes.c
===================================================================
--- trunk/contrib/libarchive/libarchive/test/test_read_format_zip_winzip_aes.c	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/libarchive/test/test_read_format_zip_winzip_aes.c	2018-06-19 21:37:44 UTC (rev 11136)
@@ -24,7 +24,7 @@
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 #include "test.h"
-__FBSDID("$FreeBSD: stable/11/contrib/libarchive/libarchive/test/test_read_format_zip_winzip_aes.c 299529 2016-05-12 10:16:16Z mm $");
+__FBSDID("$FreeBSD: stable/10/contrib/libarchive/libarchive/test/test_read_format_zip_winzip_aes.c 313571 2017-02-11 00:56:18Z mm $");
 
 static void
 test_winzip_aes(const char *refname, int need_libz)

Modified: trunk/contrib/libarchive/libarchive/test/test_read_format_zip_winzip_aes_large.c
===================================================================
--- trunk/contrib/libarchive/libarchive/test/test_read_format_zip_winzip_aes_large.c	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/libarchive/test/test_read_format_zip_winzip_aes_large.c	2018-06-19 21:37:44 UTC (rev 11136)
@@ -24,7 +24,7 @@
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 #include "test.h"
-__FBSDID("$FreeBSD: stable/11/contrib/libarchive/libarchive/test/test_read_format_zip_winzip_aes_large.c 299529 2016-05-12 10:16:16Z mm $");
+__FBSDID("$FreeBSD: stable/10/contrib/libarchive/libarchive/test/test_read_format_zip_winzip_aes_large.c 313571 2017-02-11 00:56:18Z mm $");
 
 DEFINE_TEST(test_read_format_zip_winzip_aes256_large)
 {

Modified: trunk/contrib/libarchive/libarchive/test/test_read_format_zip_with_invalid_traditional_eocd.c
===================================================================
--- trunk/contrib/libarchive/libarchive/test/test_read_format_zip_with_invalid_traditional_eocd.c	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/libarchive/test/test_read_format_zip_with_invalid_traditional_eocd.c	2018-06-19 21:37:44 UTC (rev 11136)
@@ -23,7 +23,7 @@
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 #include "test.h"
-__FBSDID("$FreeBSD$");
+__FBSDID("$FreeBSD: stable/10/contrib/libarchive/libarchive/test/test_read_format_zip_with_invalid_traditional_eocd.c 318483 2017-05-18 19:50:15Z mm $");
 
 /*
  * Issue 869: zip files without a valid EOCD header aren't loaded even if they

Modified: trunk/contrib/libarchive/libarchive/test/test_read_format_zip_zip64.c
===================================================================
--- trunk/contrib/libarchive/libarchive/test/test_read_format_zip_zip64.c	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/libarchive/test/test_read_format_zip_zip64.c	2018-06-19 21:37:44 UTC (rev 11136)
@@ -23,7 +23,7 @@
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 #include "test.h"
-__FBSDID("$FreeBSD: stable/11/contrib/libarchive/libarchive/test/test_read_format_zip_zip64.c 299529 2016-05-12 10:16:16Z mm $");
+__FBSDID("$FreeBSD: stable/10/contrib/libarchive/libarchive/test/test_read_format_zip_zip64.c 302001 2016-06-17 22:40:10Z mm $");
 
 /*
  * Sample file was created with:

Modified: trunk/contrib/libarchive/libarchive/test/test_read_large.c
===================================================================
--- trunk/contrib/libarchive/libarchive/test/test_read_large.c	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/libarchive/test/test_read_large.c	2018-06-19 21:37:44 UTC (rev 11136)
@@ -23,7 +23,7 @@
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 #include "test.h"
-__FBSDID("$FreeBSD: stable/11/contrib/libarchive/libarchive/test/test_read_large.c 232153 2012-02-25 10:58:02Z mm $");
+__FBSDID("$FreeBSD: stable/10/contrib/libarchive/libarchive/test/test_read_large.c 232153 2012-02-25 10:58:02Z mm $");
 
 static unsigned char testdata[10 * 1024 * 1024];
 static unsigned char testdatacopy[10 * 1024 * 1024];

Modified: trunk/contrib/libarchive/libarchive/test/test_read_pax_truncated.c
===================================================================
--- trunk/contrib/libarchive/libarchive/test/test_read_pax_truncated.c	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/libarchive/test/test_read_pax_truncated.c	2018-06-19 21:37:44 UTC (rev 11136)
@@ -23,7 +23,7 @@
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 #include "test.h"
-__FBSDID("$FreeBSD: stable/11/contrib/libarchive/libarchive/test/test_read_pax_truncated.c 248616 2013-03-22 13:36:03Z mm $");
+__FBSDID("$FreeBSD: stable/10/contrib/libarchive/libarchive/test/test_read_pax_truncated.c 248616 2013-03-22 13:36:03Z mm $");
 
 DEFINE_TEST(test_read_pax_truncated)
 {

Modified: trunk/contrib/libarchive/libarchive/test/test_read_position.c
===================================================================
--- trunk/contrib/libarchive/libarchive/test/test_read_position.c	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/libarchive/test/test_read_position.c	2018-06-19 21:37:44 UTC (rev 11136)
@@ -23,7 +23,7 @@
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 #include "test.h"
-__FBSDID("$FreeBSD: stable/11/contrib/libarchive/libarchive/test/test_read_position.c 238856 2012-07-28 06:38:44Z mm $");
+__FBSDID("$FreeBSD: stable/10/contrib/libarchive/libarchive/test/test_read_position.c 238856 2012-07-28 06:38:44Z mm $");
 
 static unsigned char nulls[1000];
 static unsigned char tmp[1000];

Modified: trunk/contrib/libarchive/libarchive/test/test_read_truncated.c
===================================================================
--- trunk/contrib/libarchive/libarchive/test/test_read_truncated.c	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/libarchive/test/test_read_truncated.c	2018-06-19 21:37:44 UTC (rev 11136)
@@ -23,7 +23,7 @@
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 #include "test.h"
-__FBSDID("$FreeBSD: stable/11/contrib/libarchive/libarchive/test/test_read_truncated.c 299529 2016-05-12 10:16:16Z mm $");
+__FBSDID("$FreeBSD: stable/10/contrib/libarchive/libarchive/test/test_read_truncated.c 302001 2016-06-17 22:40:10Z mm $");
 
 static char buff[1000000];
 static char buff2[100000];

Modified: trunk/contrib/libarchive/libarchive/test/test_tar_filenames.c
===================================================================
--- trunk/contrib/libarchive/libarchive/test/test_tar_filenames.c	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/libarchive/test/test_tar_filenames.c	2018-06-19 21:37:44 UTC (rev 11136)
@@ -23,7 +23,7 @@
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 #include "test.h"
-__FBSDID("$FreeBSD: stable/11/contrib/libarchive/libarchive/test/test_tar_filenames.c 248616 2013-03-22 13:36:03Z mm $");
+__FBSDID("$FreeBSD: stable/10/contrib/libarchive/libarchive/test/test_tar_filenames.c 248616 2013-03-22 13:36:03Z mm $");
 
 /*
  * Exercise various lengths of filenames in tar archives,

Modified: trunk/contrib/libarchive/libarchive/test/test_tar_large.c
===================================================================
--- trunk/contrib/libarchive/libarchive/test/test_tar_large.c	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/libarchive/test/test_tar_large.c	2018-06-19 21:37:44 UTC (rev 11136)
@@ -23,7 +23,7 @@
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 #include "test.h"
-__FBSDID("$FreeBSD: stable/11/contrib/libarchive/libarchive/test/test_tar_large.c 232153 2012-02-25 10:58:02Z mm $");
+__FBSDID("$FreeBSD: stable/10/contrib/libarchive/libarchive/test/test_tar_large.c 232153 2012-02-25 10:58:02Z mm $");
 
 #include <errno.h>
 #include <stdlib.h>

Modified: trunk/contrib/libarchive/libarchive/test/test_ustar_filenames.c
===================================================================
--- trunk/contrib/libarchive/libarchive/test/test_ustar_filenames.c	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/libarchive/test/test_ustar_filenames.c	2018-06-19 21:37:44 UTC (rev 11136)
@@ -23,7 +23,7 @@
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 #include "test.h"
-__FBSDID("$FreeBSD: stable/11/contrib/libarchive/libarchive/test/test_ustar_filenames.c 248616 2013-03-22 13:36:03Z mm $");
+__FBSDID("$FreeBSD: stable/10/contrib/libarchive/libarchive/test/test_ustar_filenames.c 248616 2013-03-22 13:36:03Z mm $");
 
 /*
  * Exercise various lengths of filenames in ustar archives.

Modified: trunk/contrib/libarchive/libarchive/test/test_write_disk.c
===================================================================
--- trunk/contrib/libarchive/libarchive/test/test_write_disk.c	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/libarchive/test/test_write_disk.c	2018-06-19 21:37:44 UTC (rev 11136)
@@ -23,7 +23,7 @@
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 #include "test.h"
-__FBSDID("$FreeBSD: stable/11/contrib/libarchive/libarchive/test/test_write_disk.c 232153 2012-02-25 10:58:02Z mm $");
+__FBSDID("$FreeBSD: stable/10/contrib/libarchive/libarchive/test/test_write_disk.c 232153 2012-02-25 10:58:02Z mm $");
 
 #define UMASK 022
 /*

Modified: trunk/contrib/libarchive/libarchive/test/test_write_disk_failures.c
===================================================================
--- trunk/contrib/libarchive/libarchive/test/test_write_disk_failures.c	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/libarchive/test/test_write_disk_failures.c	2018-06-19 21:37:44 UTC (rev 11136)
@@ -23,7 +23,7 @@
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 #include "test.h"
-__FBSDID("$FreeBSD: stable/11/contrib/libarchive/libarchive/test/test_write_disk_failures.c 232153 2012-02-25 10:58:02Z mm $");
+__FBSDID("$FreeBSD: stable/10/contrib/libarchive/libarchive/test/test_write_disk_failures.c 232153 2012-02-25 10:58:02Z mm $");
 
 DEFINE_TEST(test_write_disk_failures)
 {

Modified: trunk/contrib/libarchive/libarchive/test/test_write_disk_hardlink.c
===================================================================
--- trunk/contrib/libarchive/libarchive/test/test_write_disk_hardlink.c	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/libarchive/test/test_write_disk_hardlink.c	2018-06-19 21:37:44 UTC (rev 11136)
@@ -23,7 +23,7 @@
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 #include "test.h"
-__FBSDID("$FreeBSD: stable/11/contrib/libarchive/libarchive/test/test_write_disk_hardlink.c 232153 2012-02-25 10:58:02Z mm $");
+__FBSDID("$FreeBSD: stable/10/contrib/libarchive/libarchive/test/test_write_disk_hardlink.c 232153 2012-02-25 10:58:02Z mm $");
 
 #if defined(_WIN32) && !defined(__CYGWIN__)
 /* Execution bits, Group members bits and others bits do not work. */

Modified: trunk/contrib/libarchive/libarchive/test/test_write_disk_perms.c
===================================================================
--- trunk/contrib/libarchive/libarchive/test/test_write_disk_perms.c	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/libarchive/test/test_write_disk_perms.c	2018-06-19 21:37:44 UTC (rev 11136)
@@ -23,7 +23,7 @@
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 #include "test.h"
-__FBSDID("$FreeBSD: stable/11/contrib/libarchive/libarchive/test/test_write_disk_perms.c 299529 2016-05-12 10:16:16Z mm $");
+__FBSDID("$FreeBSD: stable/10/contrib/libarchive/libarchive/test/test_write_disk_perms.c 328828 2018-02-03 02:17:25Z mm $");
 
 #if !defined(_WIN32) || defined(__CYGWIN__)
 
@@ -131,6 +131,8 @@
 	struct archive *a;
 	struct archive_entry *ae;
 	struct stat st;
+	uid_t original_uid;
+	uid_t try_to_change_uid;
 
 	assertUmask(UMASK);
 
@@ -201,6 +203,37 @@
 	failure("dir_overwrite_0744: st.st_mode=%o", st.st_mode);
 	assertEqualInt(st.st_mode & 0777, 0744);
 
+	/* For dir, the owner should get left when not overwritting. */
+	assertMakeDir("dir_owner", 0744);
+
+	if (getuid() == 0) {
+		original_uid = getuid() + 1;
+		try_to_change_uid = getuid();
+		assertEqualInt(0, chown("dir_owner", original_uid, getgid()));
+	} else {
+		original_uid = getuid();
+		try_to_change_uid = getuid() + 1;
+	}
+
+	/* Check original owner. */
+	assertEqualInt(0, stat("dir_owner", &st));
+	failure("dir_owner: st.st_uid=%d", st.st_uid);
+	assertEqualInt(st.st_uid, original_uid);
+	/* Shouldn't try to edit the owner when no overwrite option is set. */
+	assert((ae = archive_entry_new()) != NULL);
+	archive_entry_copy_pathname(ae, "dir_owner");
+	archive_entry_set_mode(ae, S_IFDIR | 0744);
+	archive_entry_set_uid(ae, try_to_change_uid);
+	archive_write_disk_set_options(a,
+	    ARCHIVE_EXTRACT_OWNER | ARCHIVE_EXTRACT_NO_OVERWRITE);
+	assertEqualIntA(a, ARCHIVE_OK, archive_write_header(a, ae));
+	archive_entry_free(ae);
+	assertEqualIntA(a, ARCHIVE_OK, archive_write_finish_entry(a));
+	/* Make sure they're unchanged. */
+	assertEqualInt(0, stat("dir_owner", &st));
+	failure("dir_owner: st.st_uid=%d", st.st_uid);
+	assertEqualInt(st.st_uid, original_uid);
+
 	/* Write a regular file with SUID bit, but don't use _EXTRACT_PERM. */
 	assert((ae = archive_entry_new()) != NULL);
 	archive_entry_copy_pathname(ae, "file_no_suid");

Modified: trunk/contrib/libarchive/libarchive/test/test_write_disk_secure.c
===================================================================
--- trunk/contrib/libarchive/libarchive/test/test_write_disk_secure.c	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/libarchive/test/test_write_disk_secure.c	2018-06-19 21:37:44 UTC (rev 11136)
@@ -23,7 +23,7 @@
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 #include "test.h"
-__FBSDID("$FreeBSD: stable/11/contrib/libarchive/libarchive/test/test_write_disk_secure.c 299529 2016-05-12 10:16:16Z mm $");
+__FBSDID("$FreeBSD: stable/10/contrib/libarchive/libarchive/test/test_write_disk_secure.c 302001 2016-06-17 22:40:10Z mm $");
 
 #define UMASK 022
 

Modified: trunk/contrib/libarchive/libarchive/test/test_write_disk_secure744.c
===================================================================
--- trunk/contrib/libarchive/libarchive/test/test_write_disk_secure744.c	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/libarchive/test/test_write_disk_secure744.c	2018-06-19 21:37:44 UTC (rev 11136)
@@ -23,7 +23,7 @@
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 #include "test.h"
-__FBSDID("$FreeBSD: stable/11/contrib/libarchive/libarchive/test/test_write_disk_secure744.c 305188 2016-09-01 07:53:59Z mm $");
+__FBSDID("$FreeBSD: stable/10/contrib/libarchive/libarchive/test/test_write_disk_secure744.c 305192 2016-09-01 12:01:23Z mm $");
 
 #define UMASK 022
 

Modified: trunk/contrib/libarchive/libarchive/test/test_write_disk_secure745.c
===================================================================
--- trunk/contrib/libarchive/libarchive/test/test_write_disk_secure745.c	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/libarchive/test/test_write_disk_secure745.c	2018-06-19 21:37:44 UTC (rev 11136)
@@ -23,7 +23,7 @@
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 #include "test.h"
-__FBSDID("$FreeBSD: stable/11/contrib/libarchive/libarchive/test/test_write_disk_secure745.c 306321 2016-09-25 22:02:27Z mm $");
+__FBSDID("$FreeBSD: stable/10/contrib/libarchive/libarchive/test/test_write_disk_secure745.c 306322 2016-09-25 22:04:02Z mm $");
 
 #define UMASK 022
 

Modified: trunk/contrib/libarchive/libarchive/test/test_write_disk_secure746.c
===================================================================
--- trunk/contrib/libarchive/libarchive/test/test_write_disk_secure746.c	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/libarchive/test/test_write_disk_secure746.c	2018-06-19 21:37:44 UTC (rev 11136)
@@ -23,7 +23,7 @@
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 #include "test.h"
-__FBSDID("$FreeBSD: stable/11/contrib/libarchive/libarchive/test/test_write_disk_secure746.c 306321 2016-09-25 22:02:27Z mm $");
+__FBSDID("$FreeBSD: stable/10/contrib/libarchive/libarchive/test/test_write_disk_secure746.c 313571 2017-02-11 00:56:18Z mm $");
 
 #define UMASK 022
 
@@ -72,6 +72,9 @@
 
 	/* Verify that target file contents are unchanged. */
 	assertTextFileContents("unmodified", "../target/foo");
+
+	assertEqualIntA(a, ARCHIVE_FATAL, archive_write_close(a));
+	archive_write_free(a);
 #endif
 }
 

Modified: trunk/contrib/libarchive/libarchive/test/test_write_disk_sparse.c
===================================================================
--- trunk/contrib/libarchive/libarchive/test/test_write_disk_sparse.c	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/libarchive/test/test_write_disk_sparse.c	2018-06-19 21:37:44 UTC (rev 11136)
@@ -23,7 +23,7 @@
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 #include "test.h"
-__FBSDID("$FreeBSD: stable/11/contrib/libarchive/libarchive/test/test_write_disk_sparse.c 248616 2013-03-22 13:36:03Z mm $");
+__FBSDID("$FreeBSD: stable/10/contrib/libarchive/libarchive/test/test_write_disk_sparse.c 248616 2013-03-22 13:36:03Z mm $");
 
 /*
  * Write a file using archive_write_data call, read the file

Modified: trunk/contrib/libarchive/libarchive/test/test_write_disk_symlink.c
===================================================================
--- trunk/contrib/libarchive/libarchive/test/test_write_disk_symlink.c	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/libarchive/test/test_write_disk_symlink.c	2018-06-19 21:37:44 UTC (rev 11136)
@@ -23,7 +23,7 @@
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 #include "test.h"
-__FBSDID("$FreeBSD: stable/11/contrib/libarchive/libarchive/test/test_write_disk_symlink.c 232153 2012-02-25 10:58:02Z mm $");
+__FBSDID("$FreeBSD: stable/10/contrib/libarchive/libarchive/test/test_write_disk_symlink.c 232153 2012-02-25 10:58:02Z mm $");
 
 /*
  * Exercise symlink recreation.

Modified: trunk/contrib/libarchive/libarchive/test/test_write_disk_times.c
===================================================================
--- trunk/contrib/libarchive/libarchive/test/test_write_disk_times.c	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/libarchive/test/test_write_disk_times.c	2018-06-19 21:37:44 UTC (rev 11136)
@@ -23,7 +23,7 @@
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 #include "test.h"
-__FBSDID("$FreeBSD: stable/11/contrib/libarchive/libarchive/test/test_write_disk_times.c 232153 2012-02-25 10:58:02Z mm $");
+__FBSDID("$FreeBSD: stable/10/contrib/libarchive/libarchive/test/test_write_disk_times.c 232153 2012-02-25 10:58:02Z mm $");
 
 /*
  * Exercise time restores in archive_write_disk(), including

Modified: trunk/contrib/libarchive/libarchive/test/test_write_filter_lz4.c
===================================================================
--- trunk/contrib/libarchive/libarchive/test/test_write_filter_lz4.c	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/libarchive/test/test_write_filter_lz4.c	2018-06-19 21:37:44 UTC (rev 11136)
@@ -25,7 +25,7 @@
  */
 
 #include "test.h"
-__FBSDID("$FreeBSD: stable/11/contrib/libarchive/libarchive/test/test_write_filter_lz4.c 299529 2016-05-12 10:16:16Z mm $");
+__FBSDID("$FreeBSD: stable/10/contrib/libarchive/libarchive/test/test_write_filter_lz4.c 313571 2017-02-11 00:56:18Z mm $");
 
 /*
  * A basic exercise of lz4 reading and writing.

Added: trunk/contrib/libarchive/libarchive/test/test_write_filter_zstd.c
===================================================================
--- trunk/contrib/libarchive/libarchive/test/test_write_filter_zstd.c	                        (rev 0)
+++ trunk/contrib/libarchive/libarchive/test/test_write_filter_zstd.c	2018-06-19 21:37:44 UTC (rev 11136)
@@ -0,0 +1,201 @@
+/*-
+ * Copyright (c) 2017 Sean Purcell
+ * All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ * 1. Redistributions of source code must retain the above copyright
+ *    notice, this list of conditions and the following disclaimer
+ *    in this position and unchanged.
+ * 2. Redistributions in binary form must reproduce the above copyright
+ *    notice, this list of conditions and the following disclaimer in the
+ *    documentation and/or other materials provided with the distribution.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE AUTHOR(S) ``AS IS'' AND ANY EXPRESS OR
+ * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
+ * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
+ * IN NO EVENT SHALL THE AUTHOR(S) BE LIABLE FOR ANY DIRECT, INDIRECT,
+ * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
+ * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+ * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+ * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
+ * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
+
+#include "test.h"
+__FBSDID("$FreeBSD: stable/10/contrib/libarchive/libarchive/test/test_write_filter_zstd.c 324418 2017-10-08 20:55:45Z mm $");
+
+DEFINE_TEST(test_write_filter_zstd)
+{
+	struct archive_entry *ae;
+	struct archive *a;
+	char *buff, *data;
+	size_t buffsize, datasize;
+	char path[16];
+	size_t used1, used2;
+	int i, r;
+
+	buffsize = 2000000;
+	assert(NULL != (buff = (char *)malloc(buffsize)));
+	if (buff == NULL)
+		return;
+
+	datasize = 10000;
+	assert(NULL != (data = (char *)malloc(datasize)));
+	if (data == NULL) {
+		free(buff);
+		return;
+	}
+	memset(data, 0, datasize);
+
+	/*
+	 * Write a 100 files and read them all back.
+	 */
+	assert((a = archive_write_new()) != NULL);
+	assertEqualIntA(a, ARCHIVE_OK, archive_write_set_format_ustar(a));
+	r = archive_write_add_filter_zstd(a);
+	if (r != ARCHIVE_OK) {
+		skipping("zstd writing not supported on this platform");
+		assertEqualInt(ARCHIVE_OK, archive_write_free(a));
+		free(buff);
+		free(data);
+		return;
+	}
+	assertEqualIntA(a, ARCHIVE_OK,
+	    archive_write_set_bytes_per_block(a, 10));
+	assertEqualInt(ARCHIVE_FILTER_ZSTD, archive_filter_code(a, 0));
+	assertEqualString("zstd", archive_filter_name(a, 0));
+	assertEqualIntA(a, ARCHIVE_OK, archive_write_open_memory(a, buff, buffsize, &used1));
+	assertEqualInt(ARCHIVE_FILTER_ZSTD, archive_filter_code(a, 0));
+	assertEqualString("zstd", archive_filter_name(a, 0));
+	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++) {
+		sprintf(path, "file%03d", i);
+		archive_entry_copy_pathname(ae, path);
+		assertEqualIntA(a, ARCHIVE_OK, archive_write_header(a, ae));
+		assertA(datasize
+		    == (size_t)archive_write_data(a, data, datasize));
+	}
+	archive_entry_free(ae);
+	assertEqualIntA(a, ARCHIVE_OK, archive_write_close(a));
+	assertEqualInt(ARCHIVE_OK, archive_write_free(a));
+
+	assert((a = archive_read_new()) != NULL);
+	assertEqualIntA(a, ARCHIVE_OK, archive_read_support_format_all(a));
+	r = archive_read_support_filter_zstd(a);
+	if (r == ARCHIVE_WARN) {
+		skipping("Can't verify zstd writing by reading back;"
+		    " zstd reading not fully supported on this platform");
+	} else {
+		assertEqualIntA(a, ARCHIVE_OK,
+		    archive_read_support_filter_all(a));
+		assertEqualIntA(a, ARCHIVE_OK,
+		    archive_read_open_memory(a, buff, used1));
+		for (i = 0; i < 100; i++) {
+			sprintf(path, "file%03d", i);
+			if (!assertEqualInt(ARCHIVE_OK,
+				archive_read_next_header(a, &ae)))
+				break;
+			assertEqualString(path, archive_entry_pathname(ae));
+			assertEqualInt((int)datasize, archive_entry_size(ae));
+		}
+		assertEqualIntA(a, ARCHIVE_OK, archive_read_close(a));
+	}
+	assertEqualInt(ARCHIVE_OK, archive_read_free(a));
+
+	/*
+	 * Repeat the cycle again, this time setting some compression
+	 * options.
+	 */
+	assert((a = archive_write_new()) != NULL);
+	assertEqualIntA(a, ARCHIVE_OK, archive_write_set_format_ustar(a));
+	assertEqualIntA(a, ARCHIVE_OK,
+	    archive_write_set_bytes_per_block(a, 10));
+	assertEqualIntA(a, ARCHIVE_OK, archive_write_add_filter_zstd(a));
+	assertEqualIntA(a, ARCHIVE_FAILED,
+	    archive_write_set_filter_option(a, NULL, "nonexistent-option", "0"));
+	assertEqualIntA(a, ARCHIVE_FAILED,
+	    archive_write_set_filter_option(a, NULL, "compression-level", "abc"));
+	assertEqualIntA(a, ARCHIVE_FAILED,
+	    archive_write_set_filter_option(a, NULL, "compression-level", "25")); /* too big */
+	assertEqualIntA(a, ARCHIVE_OK,
+	    archive_write_set_filter_option(a, NULL, "compression-level", "9"));
+	assertEqualIntA(a, ARCHIVE_OK,
+	    archive_write_set_filter_option(a, NULL, "compression-level", "15"));
+	assertEqualIntA(a, ARCHIVE_OK, archive_write_open_memory(a, buff, buffsize, &used2));
+	for (i = 0; i < 100; i++) {
+		sprintf(path, "file%03d", i);
+		assert((ae = archive_entry_new()) != NULL);
+		archive_entry_copy_pathname(ae, path);
+		archive_entry_set_size(ae, datasize);
+		archive_entry_set_filetype(ae, AE_IFREG);
+		assertEqualIntA(a, ARCHIVE_OK, archive_write_header(a, ae));
+		assertA(datasize == (size_t)archive_write_data(a, data, datasize));
+		archive_entry_free(ae);
+	}
+	assertEqualIntA(a, ARCHIVE_OK, archive_write_close(a));
+	assertEqualInt(ARCHIVE_OK, archive_write_free(a));
+
+	failure("compression-level=15 wrote %d bytes, default wrote %d bytes",
+	    (int)used2, (int)used1);
+	assert(used2 < used1);
+
+	assert((a = archive_read_new()) != NULL);
+	assertEqualIntA(a, ARCHIVE_OK, archive_read_support_format_all(a));
+	r = archive_read_support_filter_zstd(a);
+	if (r == ARCHIVE_WARN) {
+		skipping("zstd reading not fully supported on this platform");
+	} else {
+		assertEqualIntA(a, ARCHIVE_OK,
+		    archive_read_support_filter_all(a));
+		assertEqualIntA(a, ARCHIVE_OK,
+		    archive_read_open_memory(a, buff, used2));
+		for (i = 0; i < 100; i++) {
+			sprintf(path, "file%03d", i);
+			failure("Trying to read %s", path);
+			if (!assertEqualIntA(a, ARCHIVE_OK,
+				archive_read_next_header(a, &ae)))
+				break;
+			assertEqualString(path, archive_entry_pathname(ae));
+			assertEqualInt((int)datasize, archive_entry_size(ae));
+		}
+		assertEqualIntA(a, ARCHIVE_OK, archive_read_close(a));
+	}
+	assertEqualInt(ARCHIVE_OK, archive_read_free(a));
+
+	/*
+	 * Test various premature shutdown scenarios to make sure we
+	 * don't crash or leak memory.
+	 */
+	assert((a = archive_write_new()) != NULL);
+	assertEqualIntA(a, ARCHIVE_OK, archive_write_add_filter_zstd(a));
+	assertEqualInt(ARCHIVE_OK, archive_write_free(a));
+
+	assert((a = archive_write_new()) != NULL);
+	assertEqualIntA(a, ARCHIVE_OK, archive_write_add_filter_zstd(a));
+	assertEqualInt(ARCHIVE_OK, archive_write_close(a));
+	assertEqualInt(ARCHIVE_OK, archive_write_free(a));
+
+	assert((a = archive_write_new()) != NULL);
+	assertEqualIntA(a, ARCHIVE_OK, archive_write_set_format_ustar(a));
+	assertEqualIntA(a, ARCHIVE_OK, archive_write_add_filter_zstd(a));
+	assertEqualInt(ARCHIVE_OK, archive_write_close(a));
+	assertEqualInt(ARCHIVE_OK, archive_write_free(a));
+
+	assert((a = archive_write_new()) != NULL);
+	assertEqualIntA(a, ARCHIVE_OK, archive_write_set_format_ustar(a));
+	assertEqualIntA(a, ARCHIVE_OK, archive_write_add_filter_zstd(a));
+	assertEqualIntA(a, ARCHIVE_OK, archive_write_open_memory(a, buff, buffsize, &used2));
+	assertEqualInt(ARCHIVE_OK, archive_write_close(a));
+	assertEqualInt(ARCHIVE_OK, archive_write_free(a));
+
+	/*
+	 * Clean up.
+	 */
+	free(data);
+	free(buff);
+}


Property changes on: trunk/contrib/libarchive/libarchive/test/test_write_filter_zstd.c
___________________________________________________________________
Added: svn:eol-style
## -0,0 +1 ##
+native
\ No newline at end of property
Added: svn:keywords
## -0,0 +1 ##
+MidnightBSD=%H
\ No newline at end of property
Added: svn:mime-type
## -0,0 +1 ##
+text/plain
\ No newline at end of property
Modified: trunk/contrib/libarchive/libarchive/test/test_write_format_ar.c
===================================================================
--- trunk/contrib/libarchive/libarchive/test/test_write_format_ar.c	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/libarchive/test/test_write_format_ar.c	2018-06-19 21:37:44 UTC (rev 11136)
@@ -26,7 +26,7 @@
  */
 
 #include "test.h"
-__FBSDID("$FreeBSD: stable/11/contrib/libarchive/libarchive/test/test_write_format_ar.c 299529 2016-05-12 10:16:16Z mm $");
+__FBSDID("$FreeBSD: stable/10/contrib/libarchive/libarchive/test/test_write_format_ar.c 302001 2016-06-17 22:40:10Z mm $");
 
 static char buff[4096];
 static char buff2[64];

Modified: trunk/contrib/libarchive/libarchive/test/test_write_format_cpio.c
===================================================================
--- trunk/contrib/libarchive/libarchive/test/test_write_format_cpio.c	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/libarchive/test/test_write_format_cpio.c	2018-06-19 21:37:44 UTC (rev 11136)
@@ -23,7 +23,7 @@
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 #include "test.h"
-__FBSDID("$FreeBSD: stable/11/contrib/libarchive/libarchive/test/test_write_format_cpio.c 248616 2013-03-22 13:36:03Z mm $");
+__FBSDID("$FreeBSD: stable/10/contrib/libarchive/libarchive/test/test_write_format_cpio.c 248616 2013-03-22 13:36:03Z mm $");
 
 static void
 test_format(int	(*set_format)(struct archive *))

Modified: trunk/contrib/libarchive/libarchive/test/test_write_format_cpio_empty.c
===================================================================
--- trunk/contrib/libarchive/libarchive/test/test_write_format_cpio_empty.c	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/libarchive/test/test_write_format_cpio_empty.c	2018-06-19 21:37:44 UTC (rev 11136)
@@ -23,7 +23,7 @@
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 #include "test.h"
-__FBSDID("$FreeBSD: stable/11/contrib/libarchive/libarchive/test/test_write_format_cpio_empty.c 248616 2013-03-22 13:36:03Z mm $");
+__FBSDID("$FreeBSD: stable/10/contrib/libarchive/libarchive/test/test_write_format_cpio_empty.c 248616 2013-03-22 13:36:03Z mm $");
 
 /*
  * Check that an "empty" cpio archive is correctly created.

Modified: trunk/contrib/libarchive/libarchive/test/test_write_format_cpio_newc.c
===================================================================
--- trunk/contrib/libarchive/libarchive/test/test_write_format_cpio_newc.c	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/libarchive/test/test_write_format_cpio_newc.c	2018-06-19 21:37:44 UTC (rev 11136)
@@ -23,7 +23,7 @@
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 #include "test.h"
-__FBSDID("$FreeBSD: stable/11/contrib/libarchive/libarchive/test/test_write_format_cpio_newc.c 299529 2016-05-12 10:16:16Z mm $");
+__FBSDID("$FreeBSD: stable/10/contrib/libarchive/libarchive/test/test_write_format_cpio_newc.c 302001 2016-06-17 22:40:10Z mm $");
 
 
 static int

Modified: trunk/contrib/libarchive/libarchive/test/test_write_format_cpio_odc.c
===================================================================
--- trunk/contrib/libarchive/libarchive/test/test_write_format_cpio_odc.c	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/libarchive/test/test_write_format_cpio_odc.c	2018-06-19 21:37:44 UTC (rev 11136)
@@ -23,7 +23,7 @@
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 #include "test.h"
-__FBSDID("$FreeBSD: stable/11/contrib/libarchive/libarchive/test/test_write_format_cpio_odc.c 248616 2013-03-22 13:36:03Z mm $");
+__FBSDID("$FreeBSD: stable/10/contrib/libarchive/libarchive/test/test_write_format_cpio_odc.c 248616 2013-03-22 13:36:03Z mm $");
 
 
 static int

Modified: trunk/contrib/libarchive/libarchive/test/test_write_format_gnutar_filenames.c
===================================================================
--- trunk/contrib/libarchive/libarchive/test/test_write_format_gnutar_filenames.c	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/libarchive/test/test_write_format_gnutar_filenames.c	2018-06-19 21:37:44 UTC (rev 11136)
@@ -23,7 +23,7 @@
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 #include "test.h"
-__FBSDID("$FreeBSD: stable/11/contrib/libarchive/libarchive/test/test_write_format_gnutar_filenames.c 306321 2016-09-25 22:02:27Z mm $");
+__FBSDID("$FreeBSD: stable/10/contrib/libarchive/libarchive/test/test_write_format_gnutar_filenames.c 306322 2016-09-25 22:04:02Z mm $");
 
 /*
  * Inspired by Github issue #682, which reported that gnutar filenames

Modified: trunk/contrib/libarchive/libarchive/test/test_write_format_mtree.c
===================================================================
--- trunk/contrib/libarchive/libarchive/test/test_write_format_mtree.c	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/libarchive/test/test_write_format_mtree.c	2018-06-19 21:37:44 UTC (rev 11136)
@@ -25,7 +25,7 @@
  */
 
 #include "test.h"
-__FBSDID("$FreeBSD: stable/11/contrib/libarchive/libarchive/test/test_write_format_mtree.c 299529 2016-05-12 10:16:16Z mm $");
+__FBSDID("$FreeBSD: stable/10/contrib/libarchive/libarchive/test/test_write_format_mtree.c 302001 2016-06-17 22:40:10Z mm $");
 
 static char buff[4096];
 static struct {

Modified: trunk/contrib/libarchive/libarchive/test/test_write_format_pax.c
===================================================================
--- trunk/contrib/libarchive/libarchive/test/test_write_format_pax.c	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/libarchive/test/test_write_format_pax.c	2018-06-19 21:37:44 UTC (rev 11136)
@@ -23,7 +23,7 @@
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 #include "test.h"
-__FBSDID("$FreeBSD: stable/11/contrib/libarchive/libarchive/test/test_write_format_pax.c 299529 2016-05-12 10:16:16Z mm $");
+__FBSDID("$FreeBSD: stable/10/contrib/libarchive/libarchive/test/test_write_format_pax.c 318483 2017-05-18 19:50:15Z mm $");
 
 static char buff2[64];
 

Modified: trunk/contrib/libarchive/libarchive/test/test_write_format_shar_empty.c
===================================================================
--- trunk/contrib/libarchive/libarchive/test/test_write_format_shar_empty.c	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/libarchive/test/test_write_format_shar_empty.c	2018-06-19 21:37:44 UTC (rev 11136)
@@ -23,7 +23,7 @@
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 #include "test.h"
-__FBSDID("$FreeBSD: stable/11/contrib/libarchive/libarchive/test/test_write_format_shar_empty.c 248616 2013-03-22 13:36:03Z mm $");
+__FBSDID("$FreeBSD: stable/10/contrib/libarchive/libarchive/test/test_write_format_shar_empty.c 248616 2013-03-22 13:36:03Z mm $");
 
 /*
  * Check that an "empty" shar archive is correctly created as an empty file.

Modified: trunk/contrib/libarchive/libarchive/test/test_write_format_tar.c
===================================================================
--- trunk/contrib/libarchive/libarchive/test/test_write_format_tar.c	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/libarchive/test/test_write_format_tar.c	2018-06-19 21:37:44 UTC (rev 11136)
@@ -23,7 +23,7 @@
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 #include "test.h"
-__FBSDID("$FreeBSD: stable/11/contrib/libarchive/libarchive/test/test_write_format_tar.c 299529 2016-05-12 10:16:16Z mm $");
+__FBSDID("$FreeBSD: stable/10/contrib/libarchive/libarchive/test/test_write_format_tar.c 302001 2016-06-17 22:40:10Z mm $");
 
 static char buff[1000000];
 static char buff2[64];

Modified: trunk/contrib/libarchive/libarchive/test/test_write_format_tar_empty.c
===================================================================
--- trunk/contrib/libarchive/libarchive/test/test_write_format_tar_empty.c	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/libarchive/test/test_write_format_tar_empty.c	2018-06-19 21:37:44 UTC (rev 11136)
@@ -23,7 +23,7 @@
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 #include "test.h"
-__FBSDID("$FreeBSD: stable/11/contrib/libarchive/libarchive/test/test_write_format_tar_empty.c 248616 2013-03-22 13:36:03Z mm $");
+__FBSDID("$FreeBSD: stable/10/contrib/libarchive/libarchive/test/test_write_format_tar_empty.c 248616 2013-03-22 13:36:03Z mm $");
 
 /*
  * Check that an "empty" tar archive is correctly created.

Modified: trunk/contrib/libarchive/libarchive/test/test_write_format_tar_ustar.c
===================================================================
--- trunk/contrib/libarchive/libarchive/test/test_write_format_tar_ustar.c	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/libarchive/test/test_write_format_tar_ustar.c	2018-06-19 21:37:44 UTC (rev 11136)
@@ -23,7 +23,7 @@
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 #include "test.h"
-__FBSDID("$FreeBSD: stable/11/contrib/libarchive/libarchive/test/test_write_format_tar_ustar.c 248616 2013-03-22 13:36:03Z mm $");
+__FBSDID("$FreeBSD: stable/10/contrib/libarchive/libarchive/test/test_write_format_tar_ustar.c 248616 2013-03-22 13:36:03Z mm $");
 
 static int
 is_null(const char *p, size_t l)

Modified: trunk/contrib/libarchive/libarchive/test/test_write_format_warc.c
===================================================================
--- trunk/contrib/libarchive/libarchive/test/test_write_format_warc.c	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/libarchive/test/test_write_format_warc.c	2018-06-19 21:37:44 UTC (rev 11136)
@@ -24,7 +24,7 @@
  */
 
 #include "test.h"
-__FBSDID("$FreeBSD: stable/11/contrib/libarchive/libarchive/test/test_write_format_warc.c 299529 2016-05-12 10:16:16Z mm $");
+__FBSDID("$FreeBSD: stable/10/contrib/libarchive/libarchive/test/test_write_format_warc.c 302001 2016-06-17 22:40:10Z mm $");
 
 DEFINE_TEST(test_write_format_warc)
 {

Modified: trunk/contrib/libarchive/libarchive/test/test_write_format_warc_empty.c
===================================================================
--- trunk/contrib/libarchive/libarchive/test/test_write_format_warc_empty.c	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/libarchive/test/test_write_format_warc_empty.c	2018-06-19 21:37:44 UTC (rev 11136)
@@ -24,7 +24,7 @@
  */
 
 #include "test.h"
-__FBSDID("$FreeBSD: stable/11/contrib/libarchive/libarchive/test/test_write_format_warc_empty.c 299529 2016-05-12 10:16:16Z mm $");
+__FBSDID("$FreeBSD: stable/10/contrib/libarchive/libarchive/test/test_write_format_warc_empty.c 302001 2016-06-17 22:40:10Z mm $");
 
 DEFINE_TEST(test_write_format_warc_empty)
 {

Modified: trunk/contrib/libarchive/libarchive/test/test_write_format_zip.c
===================================================================
--- trunk/contrib/libarchive/libarchive/test/test_write_format_zip.c	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/libarchive/test/test_write_format_zip.c	2018-06-19 21:37:44 UTC (rev 11136)
@@ -30,7 +30,7 @@
  */
 
 #include "test.h"
-__FBSDID("$FreeBSD: stable/11/contrib/libarchive/libarchive/test/test_write_format_zip.c 299529 2016-05-12 10:16:16Z mm $");
+__FBSDID("$FreeBSD: stable/10/contrib/libarchive/libarchive/test/test_write_format_zip.c 302001 2016-06-17 22:40:10Z mm $");
 
 /*
  * This test doesn't actually check that the zip writer is

Modified: trunk/contrib/libarchive/libarchive/test/test_write_format_zip_compression_store.c
===================================================================
--- trunk/contrib/libarchive/libarchive/test/test_write_format_zip_compression_store.c	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/libarchive/test/test_write_format_zip_compression_store.c	2018-06-19 21:37:44 UTC (rev 11136)
@@ -28,7 +28,7 @@
  */
 
 #include "test.h"
-__FBSDID("$FreeBSD: stable/11/contrib/libarchive/libarchive/test/test_write_format_zip_compression_store.c 299529 2016-05-12 10:16:16Z mm $");
+__FBSDID("$FreeBSD: stable/10/contrib/libarchive/libarchive/test/test_write_format_zip_compression_store.c 318483 2017-05-18 19:50:15Z mm $");
 
 /* File data */
 static const char file_name[] = "file";

Modified: trunk/contrib/libarchive/libarchive/test/test_write_format_zip_empty.c
===================================================================
--- trunk/contrib/libarchive/libarchive/test/test_write_format_zip_empty.c	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/libarchive/test/test_write_format_zip_empty.c	2018-06-19 21:37:44 UTC (rev 11136)
@@ -28,7 +28,7 @@
  */
 
 #include "test.h"
-__FBSDID("$FreeBSD: stable/11/contrib/libarchive/libarchive/test/test_write_format_zip_empty.c 248616 2013-03-22 13:36:03Z mm $");
+__FBSDID("$FreeBSD: stable/10/contrib/libarchive/libarchive/test/test_write_format_zip_empty.c 311042 2017-01-02 01:43:11Z mm $");
 
 DEFINE_TEST(test_write_format_zip_empty)
 {

Modified: trunk/contrib/libarchive/libarchive/test/test_write_format_zip_empty_zip64.c
===================================================================
--- trunk/contrib/libarchive/libarchive/test/test_write_format_zip_empty_zip64.c	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/libarchive/test/test_write_format_zip_empty_zip64.c	2018-06-19 21:37:44 UTC (rev 11136)
@@ -28,7 +28,7 @@
  */
 
 #include "test.h"
-__FBSDID("$FreeBSD: stable/11/contrib/libarchive/libarchive/test/test_write_format_zip_empty_zip64.c 299529 2016-05-12 10:16:16Z mm $");
+__FBSDID("$FreeBSD: stable/10/contrib/libarchive/libarchive/test/test_write_format_zip_empty_zip64.c 311042 2017-01-02 01:43:11Z mm $");
 
 DEFINE_TEST(test_write_format_zip_empty_zip64)
 {

Modified: trunk/contrib/libarchive/libarchive/test/test_write_format_zip_file.c
===================================================================
--- trunk/contrib/libarchive/libarchive/test/test_write_format_zip_file.c	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/libarchive/test/test_write_format_zip_file.c	2018-06-19 21:37:44 UTC (rev 11136)
@@ -29,7 +29,7 @@
  */
 
 #include "test.h"
-__FBSDID("$FreeBSD: stable/11/contrib/libarchive/libarchive/test/test_write_format_zip_file.c 299529 2016-05-12 10:16:16Z mm $");
+__FBSDID("$FreeBSD: stable/10/contrib/libarchive/libarchive/test/test_write_format_zip_file.c 302001 2016-06-17 22:40:10Z mm $");
 
 /*
  * Detailed byte-for-byte verification of the format of a zip archive

Modified: trunk/contrib/libarchive/libarchive/test/test_write_format_zip_file_zip64.c
===================================================================
--- trunk/contrib/libarchive/libarchive/test/test_write_format_zip_file_zip64.c	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/libarchive/test/test_write_format_zip_file_zip64.c	2018-06-19 21:37:44 UTC (rev 11136)
@@ -29,7 +29,7 @@
  */
 
 #include "test.h"
-__FBSDID("$FreeBSD: stable/11/contrib/libarchive/libarchive/test/test_write_format_zip_file_zip64.c 299529 2016-05-12 10:16:16Z mm $");
+__FBSDID("$FreeBSD: stable/10/contrib/libarchive/libarchive/test/test_write_format_zip_file_zip64.c 302001 2016-06-17 22:40:10Z mm $");
 
 /*
  * Detailed byte-for-byte verification of the format of a zip archive

Modified: trunk/contrib/libarchive/libarchive/test/test_write_format_zip_large.c
===================================================================
--- trunk/contrib/libarchive/libarchive/test/test_write_format_zip_large.c	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/libarchive/test/test_write_format_zip_large.c	2018-06-19 21:37:44 UTC (rev 11136)
@@ -23,7 +23,7 @@
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 #include "test.h"
-__FBSDID("$FreeBSD: stable/11/contrib/libarchive/libarchive/test/test_write_format_zip_large.c 299529 2016-05-12 10:16:16Z mm $");
+__FBSDID("$FreeBSD: stable/10/contrib/libarchive/libarchive/test/test_write_format_zip_large.c 318483 2017-05-18 19:50:15Z mm $");
 
 #include <errno.h>
 #include <stdlib.h>

Modified: trunk/contrib/libarchive/libarchive/test/test_write_format_zip_zip64.c
===================================================================
--- trunk/contrib/libarchive/libarchive/test/test_write_format_zip_zip64.c	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/libarchive/test/test_write_format_zip_zip64.c	2018-06-19 21:37:44 UTC (rev 11136)
@@ -24,7 +24,7 @@
  */
 
 #include "test.h"
-__FBSDID("$FreeBSD: stable/11/contrib/libarchive/libarchive/test/test_write_format_zip_zip64.c 299529 2016-05-12 10:16:16Z mm $");
+__FBSDID("$FreeBSD: stable/10/contrib/libarchive/libarchive/test/test_write_format_zip_zip64.c 313571 2017-02-11 00:56:18Z mm $");
 
 static void
 verify_zip_filesize(uint64_t size, int expected)

Modified: trunk/contrib/libarchive/libarchive/test/test_write_open_memory.c
===================================================================
--- trunk/contrib/libarchive/libarchive/test/test_write_open_memory.c	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/libarchive/test/test_write_open_memory.c	2018-06-19 21:37:44 UTC (rev 11136)
@@ -23,7 +23,7 @@
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 #include "test.h"
-__FBSDID("$FreeBSD: stable/11/contrib/libarchive/libarchive/test/test_write_open_memory.c 248616 2013-03-22 13:36:03Z mm $");
+__FBSDID("$FreeBSD: stable/10/contrib/libarchive/libarchive/test/test_write_open_memory.c 248616 2013-03-22 13:36:03Z mm $");
 
 /* Try to force archive_write_open_memory.c to write past the end of an array. */
 static unsigned char buff[16384];

Modified: trunk/contrib/libarchive/libarchive/test/test_write_read_format_zip.c
===================================================================
--- trunk/contrib/libarchive/libarchive/test/test_write_read_format_zip.c	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/libarchive/test/test_write_read_format_zip.c	2018-06-19 21:37:44 UTC (rev 11136)
@@ -29,7 +29,7 @@
  */
 
 #include "test.h"
-__FBSDID("$FreeBSD: stable/11/contrib/libarchive/libarchive/test/test_write_read_format_zip.c 299529 2016-05-12 10:16:16Z mm $");
+__FBSDID("$FreeBSD: stable/10/contrib/libarchive/libarchive/test/test_write_read_format_zip.c 302001 2016-06-17 22:40:10Z mm $");
 
 /*
  * These tests verify that our reader can read files

Modified: trunk/contrib/libarchive/libarchive/test/test_xattr_platform.c
===================================================================
--- trunk/contrib/libarchive/libarchive/test/test_xattr_platform.c	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/libarchive/test/test_xattr_platform.c	2018-06-19 21:37:44 UTC (rev 11136)
@@ -24,7 +24,7 @@
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 #include "test.h"
-__FBSDID("$FreeBSD$");
+__FBSDID("$FreeBSD: stable/10/contrib/libarchive/libarchive/test/test_xattr_platform.c 316338 2017-03-31 20:17:30Z mm $");
 
 DEFINE_TEST(test_xattr_platform)
 {
@@ -35,7 +35,6 @@
 	struct archive_entry *ae;
 	const char *name;
 	const void *value;
-	void *rvalue;
 	size_t size, insize;
 	int e, r;
 	const char *attrname = "user.libarchive.test";
@@ -96,9 +95,8 @@
 	assertEqualIntA(a, ARCHIVE_OK, archive_write_close(a));
 	assertEqualInt(ARCHIVE_OK, archive_write_free(a));
 
-	rvalue = getXattr("writetest", attrname, &insize);
+	value = getXattr("writetest", attrname, &insize);
 	if (assertEqualInt(insize, strlen(writeval) + 1) != 0)
-		assertEqualMem(rvalue, writeval, insize);
-	free(rvalue);
+		assertEqualMem(value, writeval, insize);
 #endif
 }

Modified: trunk/contrib/libarchive/libarchive_fe/err.c
===================================================================
--- trunk/contrib/libarchive/libarchive_fe/err.c	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/libarchive_fe/err.c	2018-06-19 21:37:44 UTC (rev 11136)
@@ -25,7 +25,7 @@
  */
 
 #include "lafe_platform.h"
-__FBSDID("$FreeBSD: stable/11/contrib/libarchive/libarchive_fe/err.c 299529 2016-05-12 10:16:16Z mm $");
+__FBSDID("$FreeBSD: stable/10/contrib/libarchive/libarchive_fe/err.c 302001 2016-06-17 22:40:10Z mm $");
 
 #ifdef HAVE_STDARG_H
 #include <stdarg.h>

Modified: trunk/contrib/libarchive/libarchive_fe/err.h
===================================================================
--- trunk/contrib/libarchive/libarchive_fe/err.h	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/libarchive_fe/err.h	2018-06-19 21:37:44 UTC (rev 11136)
@@ -22,7 +22,7 @@
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  *
- * $FreeBSD: stable/11/contrib/libarchive/libarchive_fe/err.h 299529 2016-05-12 10:16:16Z mm $
+ * $FreeBSD: stable/10/contrib/libarchive/libarchive_fe/err.h 302001 2016-06-17 22:40:10Z mm $
  */
 
 #ifndef LAFE_ERR_H

Modified: trunk/contrib/libarchive/libarchive_fe/lafe_platform.h
===================================================================
--- trunk/contrib/libarchive/libarchive_fe/lafe_platform.h	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/libarchive_fe/lafe_platform.h	2018-06-19 21:37:44 UTC (rev 11136)
@@ -22,7 +22,7 @@
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  *
- * $FreeBSD: stable/11/contrib/libarchive/libarchive_fe/lafe_platform.h 228763 2011-12-21 11:13:29Z mm $
+ * $FreeBSD: stable/10/contrib/libarchive/libarchive_fe/lafe_platform.h 228763 2011-12-21 11:13:29Z mm $
  */
 
 /*

Modified: trunk/contrib/libarchive/libarchive_fe/line_reader.c
===================================================================
--- trunk/contrib/libarchive/libarchive_fe/line_reader.c	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/libarchive_fe/line_reader.c	2018-06-19 21:37:44 UTC (rev 11136)
@@ -26,7 +26,7 @@
  */
 
 #include "lafe_platform.h"
-__FBSDID("$FreeBSD: stable/11/contrib/libarchive/libarchive_fe/line_reader.c 232153 2012-02-25 10:58:02Z mm $");
+__FBSDID("$FreeBSD: stable/10/contrib/libarchive/libarchive_fe/line_reader.c 232153 2012-02-25 10:58:02Z mm $");
 
 #include <errno.h>
 #include <stdio.h>

Modified: trunk/contrib/libarchive/libarchive_fe/line_reader.h
===================================================================
--- trunk/contrib/libarchive/libarchive_fe/line_reader.h	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/libarchive_fe/line_reader.h	2018-06-19 21:37:44 UTC (rev 11136)
@@ -22,7 +22,7 @@
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  *
- * $FreeBSD: stable/11/contrib/libarchive/libarchive_fe/line_reader.h 228774 2011-12-21 15:20:17Z mm $
+ * $FreeBSD: stable/10/contrib/libarchive/libarchive_fe/line_reader.h 228774 2011-12-21 15:20:17Z mm $
  */
 
 #ifndef LAFE_LINE_READER_H

Modified: trunk/contrib/libarchive/libarchive_fe/passphrase.c
===================================================================
--- trunk/contrib/libarchive/libarchive_fe/passphrase.c	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/libarchive_fe/passphrase.c	2018-06-19 21:37:44 UTC (rev 11136)
@@ -48,7 +48,7 @@
 
 
 #include "lafe_platform.h"
-__FBSDID("$FreeBSD: stable/11/contrib/libarchive/libarchive_fe/passphrase.c 302294 2016-06-30 08:51:50Z mm $");
+__FBSDID("$FreeBSD: stable/10/contrib/libarchive/libarchive_fe/passphrase.c 302425 2016-07-08 10:06:02Z mm $");
 
 #include <errno.h>
 #ifdef HAVE_STDLIB_H

Modified: trunk/contrib/libarchive/tar/bsdtar.1
===================================================================
--- trunk/contrib/libarchive/tar/bsdtar.1	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/tar/bsdtar.1	2018-06-19 21:37:44 UTC (rev 11136)
@@ -23,9 +23,9 @@
 .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
 .\" SUCH DAMAGE.
 .\"
-.\" $FreeBSD: stable/11/contrib/libarchive/tar/bsdtar.1 299529 2016-05-12 10:16:16Z mm $
+.\" $FreeBSD: stable/10/contrib/libarchive/tar/bsdtar.1 324418 2017-10-08 20:55:45Z mm $
 .\"
-.Dd February 25, 2017
+.Dd October 1, 2017
 .Dt TAR 1
 .Os
 .Sh NAME
@@ -302,19 +302,18 @@
 Compress the resulting archive with
 .Xr xz 1 .
 In extract or list modes, this option is ignored.
-Note that, unlike other
+Note that this
 .Nm tar
-implementations, this implementation recognizes XZ compression
-automatically when reading archives.
+implementation recognizes XZ compression automatically when reading archives.
 .It Fl j , Fl Fl bzip , Fl Fl bzip2 , Fl Fl bunzip2
 (c mode only)
 Compress the resulting archive with
 .Xr bzip2 1 .
 In extract or list modes, this option is ignored.
-Note that, unlike other
+Note that this
 .Nm tar
-implementations, this implementation recognizes bzip2 compression
-automatically when reading archives.
+implementation recognizes bzip2 compression automatically when reading
+archives.
 .It Fl k , Fl Fl keep-old-files
 (x mode only)
 Do not overwrite existing files.
@@ -337,25 +336,41 @@
 Compress the resulting archive with
 .Xr lrzip 1 .
 In extract or list modes, this option is ignored.
+Note that this
+.Nm tar
+implementation recognizes lrzip compression automatically when reading
+archives.
 .It Fl Fl lz4
 (c mode only)
 Compress the archive with lz4-compatible compression before writing it.
-In input mode, this option is ignored; lz4 compression is recognized
-automatically on input.
+In extract or list modes, this option is ignored.
+Note that this
+.Nm tar
+implementation recognizes lz4 compression automatically when reading archives.
+.It Fl Fl zstd
+(c mode only)
+Compress the archive with zstd-compatible compression before writing it.
+In extract or list modes, this option is ignored.
+Note that this
+.Nm tar
+implementation recognizes zstd compression automatically when reading archives.
 .It Fl Fl lzma
 (c mode only) Compress the resulting archive with the original LZMA algorithm.
+In extract or list modes, this option is ignored.
 Use of this option is discouraged and new archives should be created with
 .Fl Fl xz
 instead.
-Note that, unlike other
+Note that this
 .Nm tar
-implementations, this implementation recognizes LZMA compression
-automatically when reading archives.
+implementation recognizes LZMA compression automatically when reading archives.
 .It Fl Fl lzop
 (c mode only)
 Compress the resulting archive with
 .Xr lzop 1 .
 In extract or list modes, this option is ignored.
+Note that this
+.Nm tar
+implementation recognizes LZO compression automatically when reading archives.
 .It Fl m , Fl Fl modification-time
 (x mode only)
 Do not extract modification time.
@@ -577,6 +592,8 @@
 .It Cm lz4:block-dependence
 Use the previous block of the block being compressed for
 a compression dictionary to improve compression ratio.
+.It Cm zstd:compression-level
+A decimal integer from 1 to 22 specifying the zstd compression level.
 .It Cm lzop:compression-level
 A decimal integer from 1 to 9 specifying the lzop compression level.
 .It Cm xz:compression-level
@@ -826,28 +843,28 @@
 Compress the resulting archive with
 .Xr bzip2 1 .
 In extract or list modes, this option is ignored.
-Note that, unlike other
+Note that this
 .Nm tar
-implementations, this implementation recognizes bzip2 compression
-automatically when reading archives.
+implementation recognizes bzip2 compression automatically when reading
+archives.
 .It Fl Z , Fl Fl compress , Fl Fl uncompress
 (c mode only)
 Compress the resulting archive with
 .Xr compress 1 .
 In extract or list modes, this option is ignored.
-Note that, unlike other
+Note that this
 .Nm tar
-implementations, this implementation recognizes compress compression
-automatically when reading archives.
+implementation recognizes compress compression automatically when reading
+archives.
 .It Fl z , Fl Fl gunzip , Fl Fl gzip
 (c mode only)
 Compress the resulting archive with
 .Xr gzip 1 .
 In extract or list modes, this option is ignored.
-Note that, unlike other
+Note that this
 .Nm tar
-implementations, this implementation recognizes gzip compression
-automatically when reading archives.
+implementation recognizes gzip compression automatically when reading
+archives.
 .El
 .Sh ENVIRONMENT
 The following environment variables affect the execution of

Modified: trunk/contrib/libarchive/tar/bsdtar.c
===================================================================
--- trunk/contrib/libarchive/tar/bsdtar.c	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/tar/bsdtar.c	2018-06-19 21:37:44 UTC (rev 11136)
@@ -24,7 +24,7 @@
  */
 
 #include "bsdtar_platform.h"
-__FBSDID("$FreeBSD: stable/11/contrib/libarchive/tar/bsdtar.c 299529 2016-05-12 10:16:16Z mm $");
+__FBSDID("$FreeBSD: stable/10/contrib/libarchive/tar/bsdtar.c 324418 2017-10-08 20:55:45Z mm $");
 
 #ifdef HAVE_SYS_PARAM_H
 #include <sys/param.h>
@@ -419,6 +419,7 @@
 		case OPTION_LZIP: /* GNU tar beginning with 1.23 */
 		case OPTION_LZMA: /* GNU tar beginning with 1.20 */
 		case OPTION_LZOP: /* GNU tar beginning with 1.21 */
+		case OPTION_ZSTD:
 			if (compression != '\0')
 				lafe_errc(1, 0,
 				    "Can't specify both -%c and -%c", opt,
@@ -427,9 +428,10 @@
 			switch (opt) {
 			case OPTION_LRZIP: compression_name = "lrzip"; break;
 			case OPTION_LZ4:  compression_name = "lz4"; break;
-			case OPTION_LZIP: compression_name = "lzip"; break; 
-			case OPTION_LZMA: compression_name = "lzma"; break; 
-			case OPTION_LZOP: compression_name = "lzop"; break; 
+			case OPTION_LZIP: compression_name = "lzip"; break;
+			case OPTION_LZMA: compression_name = "lzma"; break;
+			case OPTION_LZOP: compression_name = "lzop"; break;
+			case OPTION_ZSTD: compression_name = "zstd"; break;
 			}
 			break;
 		case 'm': /* SUSv2 */

Modified: trunk/contrib/libarchive/tar/bsdtar.h
===================================================================
--- trunk/contrib/libarchive/tar/bsdtar.h	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/tar/bsdtar.h	2018-06-19 21:37:44 UTC (rev 11136)
@@ -22,7 +22,7 @@
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  *
- * $FreeBSD: stable/11/contrib/libarchive/tar/bsdtar.h 299529 2016-05-12 10:16:16Z mm $
+ * $FreeBSD: stable/10/contrib/libarchive/tar/bsdtar.h 324418 2017-10-08 20:55:45Z mm $
  */
 
 #include "bsdtar_platform.h"
@@ -181,7 +181,8 @@
 	OPTION_USE_COMPRESS_PROGRAM,
 	OPTION_UUENCODE,
 	OPTION_VERSION,
-	OPTION_XATTRS
+	OPTION_XATTRS,
+	OPTION_ZSTD,
 };
 
 int	bsdtar_getopt(struct bsdtar *);

Modified: trunk/contrib/libarchive/tar/bsdtar_platform.h
===================================================================
--- trunk/contrib/libarchive/tar/bsdtar_platform.h	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/tar/bsdtar_platform.h	2018-06-19 21:37:44 UTC (rev 11136)
@@ -22,7 +22,7 @@
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  *
- * $FreeBSD: stable/11/contrib/libarchive/tar/bsdtar_platform.h 299529 2016-05-12 10:16:16Z mm $
+ * $FreeBSD: stable/10/contrib/libarchive/tar/bsdtar_platform.h 302001 2016-06-17 22:40:10Z mm $
  */
 
 /*

Modified: trunk/contrib/libarchive/tar/cmdline.c
===================================================================
--- trunk/contrib/libarchive/tar/cmdline.c	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/tar/cmdline.c	2018-06-19 21:37:44 UTC (rev 11136)
@@ -28,7 +28,7 @@
  */
 
 #include "bsdtar_platform.h"
-__FBSDID("$FreeBSD: stable/11/contrib/libarchive/tar/cmdline.c 305188 2016-09-01 07:53:59Z mm $");
+__FBSDID("$FreeBSD: stable/10/contrib/libarchive/tar/cmdline.c 324418 2017-10-08 20:55:45Z mm $");
 
 #ifdef HAVE_ERRNO_H
 #include <errno.h>
@@ -160,6 +160,7 @@
 	{ "version",              0, OPTION_VERSION },
 	{ "xattrs",               0, OPTION_XATTRS },
 	{ "xz",                   0, 'J' },
+	{ "zstd",                 0, OPTION_ZSTD },
 	{ NULL, 0, 0 }
 };
 

Modified: trunk/contrib/libarchive/tar/creation_set.c
===================================================================
--- trunk/contrib/libarchive/tar/creation_set.c	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/tar/creation_set.c	2018-06-19 21:37:44 UTC (rev 11136)
@@ -80,9 +80,10 @@
 		{ ".lzma",	"lzma" },
 		{ ".uu",	"uuencode" },
 		{ ".xz",	"xz" },
+		{ ".zst",	"zstd"},
 		{ NULL,		NULL }
 	};
-	
+
 	return get_suffix_code(filters, suffix);
 }
 
@@ -121,6 +122,7 @@
 		{ ".tzo",	".tar.lzo" },
 		{ ".taZ",	".tar.Z" },
 		{ ".tZ",	".tar.Z" },
+		{ ".tzst",	".tar.zst" },
 		{ NULL,		NULL }
 	};
 

Modified: trunk/contrib/libarchive/tar/read.c
===================================================================
--- trunk/contrib/libarchive/tar/read.c	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/tar/read.c	2018-06-19 21:37:44 UTC (rev 11136)
@@ -24,7 +24,7 @@
  */
 
 #include "bsdtar_platform.h"
-__FBSDID("$FreeBSD: stable/11/contrib/libarchive/tar/read.c 299529 2016-05-12 10:16:16Z mm $");
+__FBSDID("$FreeBSD: stable/10/contrib/libarchive/tar/read.c 315433 2017-03-16 23:08:18Z mm $");
 
 #ifdef HAVE_SYS_TYPES_H
 #include <sys/types.h>

Modified: trunk/contrib/libarchive/tar/subst.c
===================================================================
--- trunk/contrib/libarchive/tar/subst.c	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/tar/subst.c	2018-06-19 21:37:44 UTC (rev 11136)
@@ -24,7 +24,7 @@
  */
 
 #include "bsdtar_platform.h"
-__FBSDID("$FreeBSD: stable/11/contrib/libarchive/tar/subst.c 307138 2016-10-12 10:28:22Z mm $");
+__FBSDID("$FreeBSD: stable/10/contrib/libarchive/tar/subst.c 307139 2016-10-12 10:28:54Z mm $");
 
 #if defined(HAVE_REGEX_H) || defined(HAVE_PCREPOSIX_H)
 #include "bsdtar.h"

Modified: trunk/contrib/libarchive/tar/test/test.h
===================================================================
--- trunk/contrib/libarchive/tar/test/test.h	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/tar/test/test.h	2018-06-19 21:37:44 UTC (rev 11136)
@@ -22,7 +22,7 @@
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  *
- * $FreeBSD$
+ * $FreeBSD: stable/10/contrib/libarchive/tar/test/test.h 315433 2017-03-16 23:08:18Z mm $
  */
 
 /* Every test program should #include "test.h" as the first thing. */

Modified: trunk/contrib/libarchive/tar/test/test_0.c
===================================================================
--- trunk/contrib/libarchive/tar/test/test_0.c	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/tar/test/test_0.c	2018-06-19 21:37:44 UTC (rev 11136)
@@ -23,7 +23,7 @@
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 #include "test.h"
-__FBSDID("$FreeBSD: stable/11/contrib/libarchive/tar/test/test_0.c 232153 2012-02-25 10:58:02Z mm $");
+__FBSDID("$FreeBSD: stable/10/contrib/libarchive/tar/test/test_0.c 232153 2012-02-25 10:58:02Z mm $");
 
 /*
  * This first test does basic sanity checks on the environment.  For

Modified: trunk/contrib/libarchive/tar/test/test_basic.c
===================================================================
--- trunk/contrib/libarchive/tar/test/test_basic.c	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/tar/test/test_basic.c	2018-06-19 21:37:44 UTC (rev 11136)
@@ -23,7 +23,7 @@
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 #include "test.h"
-__FBSDID("$FreeBSD: stable/11/contrib/libarchive/tar/test/test_basic.c 238909 2012-07-30 14:47:35Z mm $");
+__FBSDID("$FreeBSD: stable/10/contrib/libarchive/tar/test/test_basic.c 238909 2012-07-30 14:47:35Z mm $");
 
 static const char *
 make_files(void)

Modified: trunk/contrib/libarchive/tar/test/test_copy.c
===================================================================
--- trunk/contrib/libarchive/tar/test/test_copy.c	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/tar/test/test_copy.c	2018-06-19 21:37:44 UTC (rev 11136)
@@ -23,7 +23,7 @@
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 #include "test.h"
-__FBSDID("$FreeBSD: stable/11/contrib/libarchive/tar/test/test_copy.c 248616 2013-03-22 13:36:03Z mm $");
+__FBSDID("$FreeBSD: stable/10/contrib/libarchive/tar/test/test_copy.c 311042 2017-01-02 01:43:11Z mm $");
 
 #if defined(__CYGWIN__)
 # include <limits.h>

Modified: trunk/contrib/libarchive/tar/test/test_empty_mtree.c
===================================================================
--- trunk/contrib/libarchive/tar/test/test_empty_mtree.c	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/tar/test/test_empty_mtree.c	2018-06-19 21:37:44 UTC (rev 11136)
@@ -23,7 +23,7 @@
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 #include "test.h"
-__FBSDID("$FreeBSD: stable/11/contrib/libarchive/tar/test/test_empty_mtree.c 228763 2011-12-21 11:13:29Z mm $");
+__FBSDID("$FreeBSD: stable/10/contrib/libarchive/tar/test/test_empty_mtree.c 228763 2011-12-21 11:13:29Z mm $");
 
 /*
  * Regression test:  We used to get a bogus error message when we

Added: trunk/contrib/libarchive/tar/test/test_extract.tar.zst.uu
===================================================================
--- trunk/contrib/libarchive/tar/test/test_extract.tar.zst.uu	                        (rev 0)
+++ trunk/contrib/libarchive/tar/test/test_extract.tar.zst.uu	2018-06-19 21:37:44 UTC (rev 11136)
@@ -0,0 +1,6 @@
+begin 644 test_extract.tar.zst
+M*+4O_010S0,`<L40$Z`5.(2U_RNV_[]L4V;Z_/R at 1:7Y$3;9E`8$D$WI:W1)
+M'58'D3->Y+>!0*5E/PM"$7^K^1VI3SS-AX&_W0KQWY!-Z1(`_4$%[$"]<T!A
+L(*`#I!DXC4[J!6J8$!DJ$D"9$T*L]#G-$$/A`#`I`-(`UUKAU$Z@"`UXII``
+`
+end

Modified: trunk/contrib/libarchive/tar/test/test_extract_tar_lz4.c
===================================================================
--- trunk/contrib/libarchive/tar/test/test_extract_tar_lz4.c	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/tar/test/test_extract_tar_lz4.c	2018-06-19 21:37:44 UTC (rev 11136)
@@ -23,7 +23,7 @@
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 #include "test.h"
-__FBSDID("$FreeBSD: stable/11/contrib/libarchive/tar/test/test_extract_tar_lz4.c 299529 2016-05-12 10:16:16Z mm $");
+__FBSDID("$FreeBSD: stable/10/contrib/libarchive/tar/test/test_extract_tar_lz4.c 302001 2016-06-17 22:40:10Z mm $");
 
 DEFINE_TEST(test_extract_tar_lz4)
 {

Added: trunk/contrib/libarchive/tar/test/test_extract_tar_zstd.c
===================================================================
--- trunk/contrib/libarchive/tar/test/test_extract_tar_zstd.c	                        (rev 0)
+++ trunk/contrib/libarchive/tar/test/test_extract_tar_zstd.c	2018-06-19 21:37:44 UTC (rev 11136)
@@ -0,0 +1,48 @@
+/*-
+ * Copyright (c) 2017 Sean Purcell
+ * All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ * 1. Redistributions of source code must retain the above copyright
+ *    notice, this list of conditions and the following disclaimer.
+ * 2. Redistributions in binary form must reproduce the above copyright
+ *    notice, this list of conditions and the following disclaimer in the
+ *    documentation and/or other materials provided with the distribution.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE AUTHOR(S) ``AS IS'' AND ANY EXPRESS OR
+ * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
+ * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
+ * IN NO EVENT SHALL THE AUTHOR(S) BE LIABLE FOR ANY DIRECT, INDIRECT,
+ * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
+ * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+ * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+ * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
+ * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
+#include "test.h"
+__FBSDID("$FreeBSD: stable/10/contrib/libarchive/tar/test/test_extract_tar_zstd.c 324418 2017-10-08 20:55:45Z mm $");
+
+DEFINE_TEST(test_extract_tar_zstd)
+{
+	const char *reffile = "test_extract.tar.zst";
+	int f;
+
+	extract_reference_file(reffile);
+	f = systemf("%s -tf %s >test.out 2>test.err", testprog, reffile);
+	if (f == 0 || canZstd()) {
+		assertEqualInt(0, systemf("%s -xf %s >test.out 2>test.err",
+		    testprog, reffile));
+
+		assertFileExists("file1");
+		assertTextFileContents("contents of file1.\n", "file1");
+		assertFileExists("file2");
+		assertTextFileContents("contents of file2.\n", "file2");
+		assertEmptyFile("test.out");
+		assertEmptyFile("test.err");
+	} else {
+		skipping("It seems zstd is not supported on this platform");
+	}
+}


Property changes on: trunk/contrib/libarchive/tar/test/test_extract_tar_zstd.c
___________________________________________________________________
Added: svn:eol-style
## -0,0 +1 ##
+native
\ No newline at end of property
Added: svn:keywords
## -0,0 +1 ##
+MidnightBSD=%H
\ No newline at end of property
Added: svn:mime-type
## -0,0 +1 ##
+text/plain
\ No newline at end of property
Modified: trunk/contrib/libarchive/tar/test/test_help.c
===================================================================
--- trunk/contrib/libarchive/tar/test/test_help.c	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/tar/test/test_help.c	2018-06-19 21:37:44 UTC (rev 11136)
@@ -23,7 +23,7 @@
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 #include "test.h"
-__FBSDID("$FreeBSD: stable/11/contrib/libarchive/tar/test/test_help.c 228763 2011-12-21 11:13:29Z mm $");
+__FBSDID("$FreeBSD: stable/10/contrib/libarchive/tar/test/test_help.c 228763 2011-12-21 11:13:29Z mm $");
 
 /*
  * Test that "--help", "-h", and "-W help" options all work and

Modified: trunk/contrib/libarchive/tar/test/test_leading_slash.c
===================================================================
--- trunk/contrib/libarchive/tar/test/test_leading_slash.c	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/tar/test/test_leading_slash.c	2018-06-19 21:37:44 UTC (rev 11136)
@@ -23,7 +23,7 @@
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 #include "test.h"
-__FBSDID("$FreeBSD: stable/11/contrib/libarchive/tar/test/test_leading_slash.c 299529 2016-05-12 10:16:16Z mm $");
+__FBSDID("$FreeBSD: stable/10/contrib/libarchive/tar/test/test_leading_slash.c 310570 2016-12-26 06:25:39Z ngie $");
 
 DEFINE_TEST(test_leading_slash)
 {

Modified: trunk/contrib/libarchive/tar/test/test_missing_file.c
===================================================================
--- trunk/contrib/libarchive/tar/test/test_missing_file.c	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/tar/test/test_missing_file.c	2018-06-19 21:37:44 UTC (rev 11136)
@@ -23,7 +23,7 @@
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 #include "test.h"
-__FBSDID("$FreeBSD: stable/11/contrib/libarchive/tar/test/test_missing_file.c 302075 2016-06-22 07:49:59Z mm $");
+__FBSDID("$FreeBSD: stable/10/contrib/libarchive/tar/test/test_missing_file.c 307798 2016-10-22 21:41:28Z mm $");
 
 DEFINE_TEST(test_missing_file)
 {

Modified: trunk/contrib/libarchive/tar/test/test_option_T_upper.c
===================================================================
--- trunk/contrib/libarchive/tar/test/test_option_T_upper.c	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/tar/test/test_option_T_upper.c	2018-06-19 21:37:44 UTC (rev 11136)
@@ -23,7 +23,7 @@
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 #include "test.h"
-__FBSDID("$FreeBSD: stable/11/contrib/libarchive/tar/test/test_option_T_upper.c 232153 2012-02-25 10:58:02Z mm $");
+__FBSDID("$FreeBSD: stable/10/contrib/libarchive/tar/test/test_option_T_upper.c 232153 2012-02-25 10:58:02Z mm $");
 
 static int
 tryMakeFile(const char *fn)

Modified: trunk/contrib/libarchive/tar/test/test_option_acls.c
===================================================================
--- trunk/contrib/libarchive/tar/test/test_option_acls.c	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/tar/test/test_option_acls.c	2018-06-19 21:37:44 UTC (rev 11136)
@@ -23,7 +23,7 @@
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 #include "test.h"
-__FBSDID("$FreeBSD$");
+__FBSDID("$FreeBSD: stable/10/contrib/libarchive/tar/test/test_option_acls.c 328828 2018-02-03 02:17:25Z mm $");
 
 #if ARCHIVE_ACL_FREEBSD || ARCHIVE_ACL_DARWIN || ARCHIVE_ACL_LIBACL
 static const acl_perm_t acl_perms[] = {
@@ -85,7 +85,9 @@
     ACL_ENTRY_INHERIT_ONLY,
     ACL_ENTRY_SUCCESSFUL_ACCESS,
     ACL_ENTRY_FAILED_ACCESS,
+#ifdef ACL_ENTRY_INHERITED
     ACL_ENTRY_INHERITED
+#endif
 #endif	/* ARCHIVE_ACL_FREEBSD_NFS4 */
 };
 #endif /* ARCHIVE_ACL_DARWIN || ARCHIVE_ACL_FREEBSD_NFS4 */
@@ -360,10 +362,8 @@
 	if (richacl_a != NULL) {
 		richacl_b = richacl_get_file(path_b);
 		if (richacl_b == NULL &&
-		    (errno == ENODATA || errno == ENOTSUP || errno == ENOSYS)) {
-			richacl_free(richacl_a);
+		    (errno == ENODATA || errno == ENOTSUP || errno == ENOSYS))
 			return (0);
-		}
 		failure("richacl_get_file() error: %s (%s)", path_b,
 		    strerror(errno));
 		if (assert(richacl_b != NULL) == 0) {
@@ -483,7 +483,7 @@
 	r = compare_acls("f", "acls_acls/f");
 	assertEqualInt(r, 1);
 
-	/* Extractl acls without acls */
+	/* Extract acls without acls */
 	assertMakeDir("acls_noacls", 0755);
 	clear_inheritance_flags("acls_noacls", acltype);
 	r = systemf("%s -x -C acls_noacls -p --no-acls -f acls.tar >acls_noacls.out 2>acls_noacls.err", testprog);

Modified: trunk/contrib/libarchive/tar/test/test_option_fflags.c
===================================================================
--- trunk/contrib/libarchive/tar/test/test_option_fflags.c	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/tar/test/test_option_fflags.c	2018-06-19 21:37:44 UTC (rev 11136)
@@ -23,7 +23,7 @@
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 #include "test.h"
-__FBSDID("$FreeBSD$");
+__FBSDID("$FreeBSD: stable/10/contrib/libarchive/tar/test/test_option_fflags.c 315433 2017-03-16 23:08:18Z mm $");
 
 static void
 clear_fflags(const char *pathname)

Modified: trunk/contrib/libarchive/tar/test/test_option_lz4.c
===================================================================
--- trunk/contrib/libarchive/tar/test/test_option_lz4.c	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/tar/test/test_option_lz4.c	2018-06-19 21:37:44 UTC (rev 11136)
@@ -23,7 +23,7 @@
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 #include "test.h"
-__FBSDID("$FreeBSD: stable/11/contrib/libarchive/tar/test/test_option_lz4.c 299529 2016-05-12 10:16:16Z mm $");
+__FBSDID("$FreeBSD: stable/10/contrib/libarchive/tar/test/test_option_lz4.c 311042 2017-01-02 01:43:11Z mm $");
 
 DEFINE_TEST(test_option_lz4)
 {

Modified: trunk/contrib/libarchive/tar/test/test_option_passphrase.c
===================================================================
--- trunk/contrib/libarchive/tar/test/test_option_passphrase.c	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/tar/test/test_option_passphrase.c	2018-06-19 21:37:44 UTC (rev 11136)
@@ -23,7 +23,7 @@
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 #include "test.h"
-__FBSDID("$FreeBSD: stable/11/contrib/libarchive/tar/test/test_option_passphrase.c 299529 2016-05-12 10:16:16Z mm $");
+__FBSDID("$FreeBSD: stable/10/contrib/libarchive/tar/test/test_option_passphrase.c 302001 2016-06-17 22:40:10Z mm $");
 
 DEFINE_TEST(test_option_passphrase)
 {

Modified: trunk/contrib/libarchive/tar/test/test_option_q.c
===================================================================
--- trunk/contrib/libarchive/tar/test/test_option_q.c	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/tar/test/test_option_q.c	2018-06-19 21:37:44 UTC (rev 11136)
@@ -23,7 +23,7 @@
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 #include "test.h"
-__FBSDID("$FreeBSD: stable/11/contrib/libarchive/tar/test/test_option_q.c 232153 2012-02-25 10:58:02Z mm $");
+__FBSDID("$FreeBSD: stable/10/contrib/libarchive/tar/test/test_option_q.c 232153 2012-02-25 10:58:02Z mm $");
 
 DEFINE_TEST(test_option_q)
 {

Modified: trunk/contrib/libarchive/tar/test/test_option_r.c
===================================================================
--- trunk/contrib/libarchive/tar/test/test_option_r.c	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/tar/test/test_option_r.c	2018-06-19 21:37:44 UTC (rev 11136)
@@ -23,7 +23,7 @@
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 #include "test.h"
-__FBSDID("$FreeBSD: stable/11/contrib/libarchive/tar/test/test_option_r.c 248616 2013-03-22 13:36:03Z mm $");
+__FBSDID("$FreeBSD: stable/10/contrib/libarchive/tar/test/test_option_r.c 310570 2016-12-26 06:25:39Z ngie $");
 
 /*
  * Also see test_option_q for additional validation of -r support.

Modified: trunk/contrib/libarchive/tar/test/test_option_s.c
===================================================================
--- trunk/contrib/libarchive/tar/test/test_option_s.c	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/tar/test/test_option_s.c	2018-06-19 21:37:44 UTC (rev 11136)
@@ -23,7 +23,7 @@
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 #include "test.h"
-__FBSDID("$FreeBSD: stable/11/contrib/libarchive/tar/test/test_option_s.c 299529 2016-05-12 10:16:16Z mm $");
+__FBSDID("$FreeBSD: stable/10/contrib/libarchive/tar/test/test_option_s.c 302001 2016-06-17 22:40:10Z mm $");
 
 DEFINE_TEST(test_option_s)
 {

Modified: trunk/contrib/libarchive/tar/test/test_option_xattrs.c
===================================================================
--- trunk/contrib/libarchive/tar/test/test_option_xattrs.c	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/tar/test/test_option_xattrs.c	2018-06-19 21:37:44 UTC (rev 11136)
@@ -23,7 +23,7 @@
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 #include "test.h"
-__FBSDID("$FreeBSD$");
+__FBSDID("$FreeBSD: stable/10/contrib/libarchive/tar/test/test_option_xattrs.c 316338 2017-03-31 20:17:30Z mm $");
 
 DEFINE_TEST(test_option_xattrs)
 {
@@ -33,7 +33,7 @@
 
 	const char *testattr = "user.libarchive.test";
 	const char *testval = "testval";
-	void *readval;
+	const void *readval;
 	size_t size;
 	int r;
 
@@ -62,7 +62,6 @@
 	readval = getXattr("xattrs_xattrs/f", testattr, &size);
 	if(assertEqualInt(size, strlen(testval) + 1) != 0)
 		assertEqualMem(readval, testval, size);
-	free(readval);
 
 	/* Extract xattrs without xattrs */
 	assertMakeDir("xattrs_noxattrs", 0755);

Added: trunk/contrib/libarchive/tar/test/test_option_zstd.c
===================================================================
--- trunk/contrib/libarchive/tar/test/test_option_zstd.c	                        (rev 0)
+++ trunk/contrib/libarchive/tar/test/test_option_zstd.c	2018-06-19 21:37:44 UTC (rev 11136)
@@ -0,0 +1,85 @@
+/*-
+ * Copyright (c) 2017 Sean Purcell
+ * All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ * 1. Redistributions of source code must retain the above copyright
+ *    notice, this list of conditions and the following disclaimer.
+ * 2. Redistributions in binary form must reproduce the above copyright
+ *    notice, this list of conditions and the following disclaimer in the
+ *    documentation and/or other materials provided with the distribution.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE AUTHOR(S) ``AS IS'' AND ANY EXPRESS OR
+ * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
+ * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
+ * IN NO EVENT SHALL THE AUTHOR(S) BE LIABLE FOR ANY DIRECT, INDIRECT,
+ * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
+ * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+ * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+ * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
+ * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
+#include "test.h"
+__FBSDID("$FreeBSD: stable/10/contrib/libarchive/tar/test/test_option_zstd.c 324418 2017-10-08 20:55:45Z mm $");
+
+DEFINE_TEST(test_option_zstd)
+{
+	char *p;
+	int r;
+	size_t s;
+
+	/* Create a file. */
+	assertMakeFile("f", 0644, "a");
+
+	/* Archive it with lz4 compression. */
+	r = systemf("%s -cf - --zstd f >archive.out 2>archive.err",
+	    testprog);
+	p = slurpfile(&s, "archive.err");
+	p[s] = '\0';
+	if (r != 0) {
+		if (strstr(p, "Unsupported compression") != NULL) {
+			skipping("This version of bsdtar was compiled "
+			    "without zstd support");
+			goto done;
+		}
+		/* POSIX permits different handling of the spawnp
+		 * system call used to launch the subsidiary
+		 * program: */
+		/* Some systems fail immediately to spawn the new process. */
+		if (strstr(p, "Can't launch") != NULL && !canZstd()) {
+			skipping("This version of bsdtar uses an external zstd program "
+			    "but no such program is available on this system.");
+			goto done;
+		}
+		/* Some systems successfully spawn the new process,
+		 * but fail to exec a program within that process.
+		 * This results in failure at the first attempt to
+		 * write. */
+		if (strstr(p, "Can't write") != NULL && !canZstd()) {
+			skipping("This version of bsdtar uses an external zstd program "
+			    "but no such program is available on this system.");
+			goto done;
+		}
+		/* On some systems the error won't be detected until closing
+		   time, by a 127 exit error returned by waitpid. */
+		if (strstr(p, "Error closing") != NULL && !canZstd()) {
+			skipping("This version of bsdcpio uses an external zstd program "
+			    "but no such program is available on this system.");
+			return;
+		}
+		failure("--zstd option is broken: %s", p);
+		assertEqualInt(r, 0);
+		goto done;
+	}
+	free(p);
+	/* Check that the archive file has an lz4 signature. */
+	p = slurpfile(&s, "archive.out");
+	assert(s > 2);
+	assertEqualMem(p, "\x28\xb5\x2f\xfd", 4);
+
+done:
+	free(p);
+}


Property changes on: trunk/contrib/libarchive/tar/test/test_option_zstd.c
___________________________________________________________________
Added: svn:eol-style
## -0,0 +1 ##
+native
\ No newline at end of property
Added: svn:keywords
## -0,0 +1 ##
+MidnightBSD=%H
\ No newline at end of property
Added: svn:mime-type
## -0,0 +1 ##
+text/plain
\ No newline at end of property
Modified: trunk/contrib/libarchive/tar/test/test_patterns.c
===================================================================
--- trunk/contrib/libarchive/tar/test/test_patterns.c	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/tar/test/test_patterns.c	2018-06-19 21:37:44 UTC (rev 11136)
@@ -24,7 +24,7 @@
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 #include "test.h"
-__FBSDID("$FreeBSD: stable/11/contrib/libarchive/tar/test/test_patterns.c 232153 2012-02-25 10:58:02Z mm $");
+__FBSDID("$FreeBSD: stable/10/contrib/libarchive/tar/test/test_patterns.c 232153 2012-02-25 10:58:02Z mm $");
 
 DEFINE_TEST(test_patterns)
 {

Modified: trunk/contrib/libarchive/tar/test/test_stdio.c
===================================================================
--- trunk/contrib/libarchive/tar/test/test_stdio.c	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/tar/test/test_stdio.c	2018-06-19 21:37:44 UTC (rev 11136)
@@ -23,7 +23,7 @@
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 #include "test.h"
-__FBSDID("$FreeBSD: stable/11/contrib/libarchive/tar/test/test_stdio.c 248616 2013-03-22 13:36:03Z mm $");
+__FBSDID("$FreeBSD: stable/10/contrib/libarchive/tar/test/test_stdio.c 310570 2016-12-26 06:25:39Z ngie $");
 
 DEFINE_TEST(test_stdio)
 {

Modified: trunk/contrib/libarchive/tar/test/test_strip_components.c
===================================================================
--- trunk/contrib/libarchive/tar/test/test_strip_components.c	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/tar/test/test_strip_components.c	2018-06-19 21:37:44 UTC (rev 11136)
@@ -23,7 +23,7 @@
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 #include "test.h"
-__FBSDID("$FreeBSD: stable/11/contrib/libarchive/tar/test/test_strip_components.c 232153 2012-02-25 10:58:02Z mm $");
+__FBSDID("$FreeBSD: stable/10/contrib/libarchive/tar/test/test_strip_components.c 232153 2012-02-25 10:58:02Z mm $");
 
 DEFINE_TEST(test_strip_components)
 {

Modified: trunk/contrib/libarchive/tar/test/test_symlink_dir.c
===================================================================
--- trunk/contrib/libarchive/tar/test/test_symlink_dir.c	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/tar/test/test_symlink_dir.c	2018-06-19 21:37:44 UTC (rev 11136)
@@ -23,7 +23,7 @@
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 #include "test.h"
-__FBSDID("$FreeBSD: stable/11/contrib/libarchive/tar/test/test_symlink_dir.c 232153 2012-02-25 10:58:02Z mm $");
+__FBSDID("$FreeBSD: stable/10/contrib/libarchive/tar/test/test_symlink_dir.c 309702 2016-12-08 01:07:00Z mm $");
 
 /*
  * tar -x -P should follow existing symlinks for dirs, but not other

Modified: trunk/contrib/libarchive/tar/util.c
===================================================================
--- trunk/contrib/libarchive/tar/util.c	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/tar/util.c	2018-06-19 21:37:44 UTC (rev 11136)
@@ -24,7 +24,7 @@
  */
 
 #include "bsdtar_platform.h"
-__FBSDID("$FreeBSD: stable/11/contrib/libarchive/tar/util.c 305188 2016-09-01 07:53:59Z mm $");
+__FBSDID("$FreeBSD: stable/10/contrib/libarchive/tar/util.c 315433 2017-03-16 23:08:18Z mm $");
 
 #ifdef HAVE_SYS_STAT_H
 #include <sys/stat.h>

Modified: trunk/contrib/libarchive/tar/write.c
===================================================================
--- trunk/contrib/libarchive/tar/write.c	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/tar/write.c	2018-06-19 21:37:44 UTC (rev 11136)
@@ -25,7 +25,7 @@
  */
 
 #include "bsdtar_platform.h"
-__FBSDID("$FreeBSD: stable/11/contrib/libarchive/tar/write.c 307138 2016-10-12 10:28:22Z mm $");
+__FBSDID("$FreeBSD: stable/10/contrib/libarchive/tar/write.c 315433 2017-03-16 23:08:18Z mm $");
 
 #ifdef HAVE_SYS_TYPES_H
 #include <sys/types.h>

Modified: trunk/contrib/libarchive/test_utils/test_common.h
===================================================================
--- trunk/contrib/libarchive/test_utils/test_common.h	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/test_utils/test_common.h	2018-06-19 21:37:44 UTC (rev 11136)
@@ -22,7 +22,7 @@
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  *
- * $FreeBSD$
+ * $FreeBSD: stable/10/contrib/libarchive/test_utils/test_common.h 324418 2017-10-08 20:55:45Z mm $
  */
 
 #ifndef	TEST_COMMON_H
@@ -329,6 +329,9 @@
 /* Return true if this platform can run the "lz4" program. */
 int canLz4(void);
 
+/* Return true if this platform can run the "zstd" program. */
+int canZstd(void);
+
 /* Return true if this platform can run the "lzip" program. */
 int canLzip(void);
 
@@ -348,7 +351,7 @@
 int setTestAcl(const char *path);
 
 /* Get extended attribute */
-void *getXattr(const char *, const char *, size_t *);
+const void *getXattr(const char *, const char *, size_t *);
 
 /* Set extended attribute */
 int setXattr(const char *, const char *, const void *, size_t);

Modified: trunk/contrib/libarchive/test_utils/test_main.c
===================================================================
--- trunk/contrib/libarchive/test_utils/test_main.c	2018-06-19 20:51:03 UTC (rev 11135)
+++ trunk/contrib/libarchive/test_utils/test_main.c	2018-06-19 21:37:44 UTC (rev 11136)
@@ -2319,6 +2319,21 @@
 }
 
 /*
+ * Can this platform run the zstd program?
+ */
+int
+canZstd(void)
+{
+	static int tested = 0, value = 0;
+	if (!tested) {
+		tested = 1;
+		if (systemf("zstd -V %s", redirectArgs) == 0)
+			value = 1;
+	}
+	return (value);
+}
+
+/*
  * Can this platform run the lzip program?
  */
 int
@@ -2453,8 +2468,8 @@
 	return (0);
 }
 
-/* Get extended attribute value from a path */
-void *
+/* Get extended attribute from a path */
+const void *
 getXattr(const char *path, const char *name, size_t *sizep)
 { 
 	void *value = NULL;



More information about the Midnightbsd-cvs mailing list