git: aa2aad0492d8 - stable/13 - libarchive: merge from vendor branch

From: Martin Matuska <mm_at_FreeBSD.org>
Date: Sat, 04 May 2024 12:37:39 UTC
The branch stable/13 has been updated by mm:

URL: https://cgit.FreeBSD.org/src/commit/?id=aa2aad0492d822c85186348244642107be4c911a

commit aa2aad0492d822c85186348244642107be4c911a
Author:     Martin Matuska <mm@FreeBSD.org>
AuthorDate: 2024-04-16 21:39:31 +0000
Commit:     Martin Matuska <mm@FreeBSD.org>
CommitDate: 2024-05-04 11:53:07 +0000

    libarchive: merge from vendor branch
    
    Libarchive 3.7.3
    
    New features:
      #1941 uudecode filter: support file name and file mode in raw mode
      #1943 7-zip reader: translate Windows permissions into UNIX
            permissions
      #1962 zstd filter now supports the "long" write option
      #2012 add trailing letter b to bsdtar(1) substitute pattern
      #2031 PCRE2 support
      #2054 add support for long options "--group" and "--owner" to tar(1)
    
    Security fixes:
      #2101 Fix possible vulnerability in tar error reporting introduced
            in f27c173
    
    Important bugfixes:
      #1974 ISO9660: preserve the natural order of links
      #2105 rar5: fix infinite loop if during rar5 decompression the last
            block produced no data
      #2027 xz filter: fix incorrect eof at the end of an lzip member
      #2043 zip: fix end-of-data marker processing when decompressing zip
            archives
    
    (cherry picked from commit b9128a37faafede823eb456aa65a11ac69997284)
---
 contrib/libarchive/.editorconfig                   |   18 -
 contrib/libarchive/.github/workflows/cifuzz.yml    |   24 -
 contrib/libarchive/NEWS                            |    4 +
 .../build/autoconf/m4_ax_compile_check_sizeof.m4   |  115 --
 contrib/libarchive/cat/bsdcat.1                    |    2 -
 contrib/libarchive/cat/bsdcat.c                    |   36 +-
 contrib/libarchive/cat/bsdcat.h                    |    7 -
 contrib/libarchive/cat/bsdcat_platform.h           |   24 +-
 contrib/libarchive/cat/cmdline.c                   |    1 -
 contrib/libarchive/cat/test/test.h                 |    2 -
 contrib/libarchive/cpio/bsdcpio.1                  |    2 -
 contrib/libarchive/cpio/cmdline.c                  |    1 -
 contrib/libarchive/cpio/cpio.c                     |   17 +-
 contrib/libarchive/cpio/cpio.h                     |    2 -
 contrib/libarchive/cpio/cpio_platform.h            |   18 +-
 contrib/libarchive/cpio/test/test.h                |    2 -
 contrib/libarchive/cpio/test/test_0.c              |    1 -
 contrib/libarchive/cpio/test/test_basic.c          |    1 -
 contrib/libarchive/cpio/test/test_cmdline.c        |    1 -
 contrib/libarchive/cpio/test/test_extract_cpio_Z.c |    1 -
 .../libarchive/cpio/test/test_extract_cpio_bz2.c   |    1 -
 .../libarchive/cpio/test/test_extract_cpio_grz.c   |    1 -
 .../libarchive/cpio/test/test_extract_cpio_gz.c    |    1 -
 .../libarchive/cpio/test/test_extract_cpio_lrz.c   |    1 -
 .../libarchive/cpio/test/test_extract_cpio_lz.c    |    1 -
 .../libarchive/cpio/test/test_extract_cpio_lz4.c   |    1 -
 .../libarchive/cpio/test/test_extract_cpio_lzma.c  |    1 -
 .../libarchive/cpio/test/test_extract_cpio_lzo.c   |    1 -
 .../libarchive/cpio/test/test_extract_cpio_xz.c    |    1 -
 .../libarchive/cpio/test/test_extract_cpio_zstd.c  |    1 -
 contrib/libarchive/cpio/test/test_format_newc.c    |    1 -
 contrib/libarchive/cpio/test/test_gcpio_compat.c   |    1 -
 .../cpio/test/test_gcpio_compat_ref.bin.uu         |    1 -
 .../cpio/test/test_gcpio_compat_ref.crc.uu         |    1 -
 .../cpio/test/test_gcpio_compat_ref.newc.uu        |    1 -
 .../cpio/test/test_gcpio_compat_ref.ustar.uu       |    1 -
 contrib/libarchive/cpio/test/test_missing_file.c   |    1 -
 contrib/libarchive/cpio/test/test_option_0.c       |    1 -
 contrib/libarchive/cpio/test/test_option_B_upper.c |    2 -
 contrib/libarchive/cpio/test/test_option_C_upper.c |    2 -
 contrib/libarchive/cpio/test/test_option_J_upper.c |    1 -
 contrib/libarchive/cpio/test/test_option_L_upper.c |    1 -
 contrib/libarchive/cpio/test/test_option_Z_upper.c |    1 -
 contrib/libarchive/cpio/test/test_option_a.c       |    1 -
 .../libarchive/cpio/test/test_option_b64encode.c   |    1 -
 contrib/libarchive/cpio/test/test_option_c.c       |    1 -
 contrib/libarchive/cpio/test/test_option_d.c       |    2 -
 contrib/libarchive/cpio/test/test_option_f.c       |    1 -
 contrib/libarchive/cpio/test/test_option_f.cpio.uu |    1 -
 contrib/libarchive/cpio/test/test_option_grzip.c   |    1 -
 contrib/libarchive/cpio/test/test_option_help.c    |    1 -
 contrib/libarchive/cpio/test/test_option_l.c       |    1 -
 contrib/libarchive/cpio/test/test_option_lrzip.c   |    1 -
 contrib/libarchive/cpio/test/test_option_lz4.c     |    1 -
 contrib/libarchive/cpio/test/test_option_lzma.c    |    1 -
 contrib/libarchive/cpio/test/test_option_lzop.c    |    1 -
 contrib/libarchive/cpio/test/test_option_m.c       |    2 -
 contrib/libarchive/cpio/test/test_option_m.cpio.uu |    1 -
 .../libarchive/cpio/test/test_option_passphrase.c  |    1 -
 contrib/libarchive/cpio/test/test_option_t.c       |    1 -
 contrib/libarchive/cpio/test/test_option_t.cpio.uu |    1 -
 .../libarchive/cpio/test/test_option_t.stdout.uu   |    1 -
 .../libarchive/cpio/test/test_option_tv.stdout.uu  |    1 -
 contrib/libarchive/cpio/test/test_option_u.c       |    1 -
 .../libarchive/cpio/test/test_option_uuencode.c    |    1 -
 contrib/libarchive/cpio/test/test_option_xz.c      |    1 -
 contrib/libarchive/cpio/test/test_option_y.c       |    1 -
 contrib/libarchive/cpio/test/test_option_z.c       |    1 -
 contrib/libarchive/cpio/test/test_option_zstd.c    |    1 -
 contrib/libarchive/cpio/test/test_owner_parse.c    |    1 -
 .../libarchive/cpio/test/test_passthrough_dotdot.c |    1 -
 .../cpio/test/test_passthrough_reverse.c           |    1 -
 contrib/libarchive/libarchive/archive.h            |   10 +-
 contrib/libarchive/libarchive/archive_acl.c        |    1 -
 .../libarchive/libarchive/archive_acl_private.h    |    2 -
 .../libarchive/libarchive/archive_check_magic.c    |   20 +-
 contrib/libarchive/libarchive/archive_cmdline.c    |    2 -
 .../libarchive/archive_cmdline_private.h           |    2 -
 contrib/libarchive/libarchive/archive_crc32.h      |    2 -
 contrib/libarchive/libarchive/archive_cryptor.c    |    4 +-
 contrib/libarchive/libarchive/archive_digest.c     |    2 +-
 contrib/libarchive/libarchive/archive_endian.h     |    2 -
 contrib/libarchive/libarchive/archive_entry.3      |    2 -
 contrib/libarchive/libarchive/archive_entry.c      |   30 +-
 contrib/libarchive/libarchive/archive_entry.h      |    8 +-
 .../libarchive/archive_entry_copy_stat.c           |    1 -
 .../libarchive/archive_entry_link_resolver.c       |    1 -
 .../libarchive/libarchive/archive_entry_locale.h   |    2 -
 .../libarchive/libarchive/archive_entry_private.h  |    6 +-
 .../libarchive/libarchive/archive_entry_sparse.c   |    1 -
 contrib/libarchive/libarchive/archive_entry_stat.c |    1 -
 .../libarchive/libarchive/archive_entry_strmode.c  |    1 -
 contrib/libarchive/libarchive/archive_entry_time.3 |    2 -
 .../libarchive/libarchive/archive_entry_xattr.c    |    1 -
 contrib/libarchive/libarchive/archive_getdate.c    |    4 -
 contrib/libarchive/libarchive/archive_getdate.h    |    2 -
 contrib/libarchive/libarchive/archive_match.c      |    1 -
 contrib/libarchive/libarchive/archive_options.c    |    1 -
 .../libarchive/archive_options_private.h           |    2 -
 contrib/libarchive/libarchive/archive_pack_dev.c   |    7 -
 contrib/libarchive/libarchive/archive_pathmatch.c  |    1 -
 contrib/libarchive/libarchive/archive_pathmatch.h  |    2 -
 contrib/libarchive/libarchive/archive_platform.h   |   15 -
 .../libarchive/libarchive/archive_platform_acl.h   |    2 -
 .../libarchive/libarchive/archive_platform_xattr.h |    2 -
 contrib/libarchive/libarchive/archive_private.h    |   12 +-
 contrib/libarchive/libarchive/archive_random.c     |    3 +-
 contrib/libarchive/libarchive/archive_read.3       |    2 -
 contrib/libarchive/libarchive/archive_read.c       |    1 -
 .../libarchive/archive_read_add_passphrase.3       |    2 -
 .../libarchive/archive_read_add_passphrase.c       |    1 -
 .../libarchive/archive_read_append_filter.c        |    1 -
 contrib/libarchive/libarchive/archive_read_data.3  |    2 -
 .../libarchive/archive_read_data_into_fd.c         |    1 -
 contrib/libarchive/libarchive/archive_read_disk.3  |    2 -
 .../libarchive/archive_read_disk_entry_from_file.c |    1 -
 .../libarchive/archive_read_disk_posix.c           |    1 -
 .../libarchive/archive_read_disk_private.h         |    2 -
 .../archive_read_disk_set_standard_lookup.c        |    1 -
 .../libarchive/libarchive/archive_read_extract.3   |    2 -
 .../libarchive/libarchive/archive_read_extract.c   |    1 -
 .../libarchive/libarchive/archive_read_extract2.c  |    1 -
 .../libarchive/libarchive/archive_read_filter.3    |    2 -
 .../libarchive/libarchive/archive_read_format.3    |    2 -
 contrib/libarchive/libarchive/archive_read_free.3  |    2 -
 .../libarchive/libarchive/archive_read_header.3    |    2 -
 contrib/libarchive/libarchive/archive_read_new.3   |    2 -
 contrib/libarchive/libarchive/archive_read_open.3  |    2 -
 .../libarchive/libarchive/archive_read_open_fd.c   |    1 -
 .../libarchive/libarchive/archive_read_open_file.c |    1 -
 .../libarchive/archive_read_open_filename.c        |  112 +-
 .../libarchive/archive_read_open_memory.c          |    1 -
 .../libarchive/libarchive/archive_read_private.h   |    2 -
 .../libarchive/archive_read_set_format.c           |    1 -
 .../libarchive/archive_read_set_options.3          |    2 -
 .../libarchive/archive_read_set_options.c          |    1 -
 .../libarchive/archive_read_support_filter_all.c   |    1 -
 .../archive_read_support_filter_by_code.c          |    1 -
 .../libarchive/archive_read_support_filter_bzip2.c |    4 +-
 .../archive_read_support_filter_compress.c         |    3 +-
 .../libarchive/archive_read_support_filter_grzip.c |    3 -
 .../libarchive/archive_read_support_filter_gzip.c  |    5 +-
 .../libarchive/archive_read_support_filter_lrzip.c |    3 -
 .../libarchive/archive_read_support_filter_lz4.c   |    8 +-
 .../libarchive/archive_read_support_filter_lzop.c  |    6 +-
 .../libarchive/archive_read_support_filter_none.c  |    1 -
 .../archive_read_support_filter_program.c          |    1 -
 .../libarchive/archive_read_support_filter_rpm.c   |    2 +-
 .../libarchive/archive_read_support_filter_uu.c    |   53 +-
 .../libarchive/archive_read_support_filter_xz.c    |   20 +-
 .../libarchive/archive_read_support_filter_zstd.c  |    4 +-
 .../libarchive/archive_read_support_format_7zip.c  |   83 +-
 .../libarchive/archive_read_support_format_all.c   |    1 -
 .../libarchive/archive_read_support_format_ar.c    |    1 -
 .../archive_read_support_format_by_code.c          |    1 -
 .../libarchive/archive_read_support_format_cpio.c  |    1 -
 .../libarchive/archive_read_support_format_empty.c |    1 -
 .../archive_read_support_format_iso9660.c          |    6 +-
 .../libarchive/archive_read_support_format_mtree.c |    1 -
 .../libarchive/archive_read_support_format_rar.c   |    2 +-
 .../libarchive/archive_read_support_format_rar5.c  |   12 +-
 .../libarchive/archive_read_support_format_raw.c   |    1 -
 .../libarchive/archive_read_support_format_tar.c   |    1 -
 .../libarchive/archive_read_support_format_warc.c  |    1 -
 .../libarchive/archive_read_support_format_xar.c   |    3 +-
 .../libarchive/archive_read_support_format_zip.c   |  499 ++++---
 contrib/libarchive/libarchive/archive_string.c     |   16 +-
 contrib/libarchive/libarchive/archive_string.h     |    3 -
 .../libarchive/archive_string_composition.h        |    2 -
 .../libarchive/libarchive/archive_string_sprintf.c |    1 -
 contrib/libarchive/libarchive/archive_util.3       |    2 -
 contrib/libarchive/libarchive/archive_util.c       |    1 -
 .../libarchive/archive_version_details.c           |    1 -
 contrib/libarchive/libarchive/archive_virtual.c    |    1 -
 contrib/libarchive/libarchive/archive_write.3      |    2 -
 contrib/libarchive/libarchive/archive_write.c      |    3 +-
 .../libarchive/archive_write_add_filter.c          |    1 -
 .../archive_write_add_filter_b64encode.c           |    2 -
 .../libarchive/archive_write_add_filter_by_name.c  |    1 -
 .../libarchive/archive_write_add_filter_bzip2.c    |    2 -
 .../libarchive/archive_write_add_filter_compress.c |    2 -
 .../libarchive/archive_write_add_filter_grzip.c    |    2 -
 .../libarchive/archive_write_add_filter_gzip.c     |    2 -
 .../libarchive/archive_write_add_filter_lrzip.c    |    2 -
 .../libarchive/archive_write_add_filter_lz4.c      |    2 -
 .../libarchive/archive_write_add_filter_lzop.c     |    1 -
 .../libarchive/archive_write_add_filter_none.c     |    1 -
 .../libarchive/archive_write_add_filter_program.c  |    1 -
 .../libarchive/archive_write_add_filter_uuencode.c |    2 -
 .../libarchive/archive_write_add_filter_xz.c       |    2 -
 .../libarchive/archive_write_add_filter_zstd.c     |  149 +-
 .../libarchive/archive_write_blocksize.3           |    2 -
 contrib/libarchive/libarchive/archive_write_data.3 |    2 -
 contrib/libarchive/libarchive/archive_write_disk.3 |    2 -
 .../libarchive/archive_write_disk_posix.c          |    1 -
 .../libarchive/archive_write_disk_private.h        |    2 -
 .../archive_write_disk_set_standard_lookup.c       |    1 -
 .../libarchive/libarchive/archive_write_filter.3   |    2 -
 .../libarchive/archive_write_finish_entry.3        |    2 -
 .../libarchive/libarchive/archive_write_format.3   |    2 -
 contrib/libarchive/libarchive/archive_write_free.3 |    2 -
 .../libarchive/libarchive/archive_write_header.3   |    2 -
 contrib/libarchive/libarchive/archive_write_new.3  |    2 -
 contrib/libarchive/libarchive/archive_write_open.3 |    2 -
 .../libarchive/libarchive/archive_write_open_fd.c  |    1 -
 .../libarchive/archive_write_open_file.c           |    1 -
 .../libarchive/archive_write_open_filename.c       |    1 -
 .../libarchive/archive_write_open_memory.c         |    1 -
 .../libarchive/libarchive/archive_write_private.h  |    2 -
 .../libarchive/archive_write_set_format.c          |    1 -
 .../libarchive/archive_write_set_format_7zip.c     |   34 +-
 .../libarchive/archive_write_set_format_ar.c       |    1 -
 .../libarchive/archive_write_set_format_by_name.c  |    1 -
 .../archive_write_set_format_cpio_binary.c         |    1 -
 .../archive_write_set_format_cpio_newc.c           |    1 -
 .../libarchive/archive_write_set_format_cpio_odc.c |    1 -
 .../archive_write_set_format_filter_by_ext.c       |    1 -
 .../libarchive/archive_write_set_format_gnutar.c   |    2 -
 .../libarchive/archive_write_set_format_mtree.c    |    1 -
 .../libarchive/archive_write_set_format_pax.c      |    1 -
 .../libarchive/archive_write_set_format_private.h  |    2 -
 .../libarchive/archive_write_set_format_shar.c     |    1 -
 .../libarchive/archive_write_set_format_ustar.c    |    2 -
 .../libarchive/archive_write_set_format_v7tar.c    |    2 -
 .../libarchive/archive_write_set_format_warc.c     |    1 -
 .../libarchive/archive_write_set_format_xar.c      |    1 -
 .../libarchive/archive_write_set_format_zip.c      |  189 ++-
 .../libarchive/archive_write_set_options.3         |   20 +-
 .../libarchive/archive_write_set_options.c         |    1 -
 .../libarchive/archive_write_set_passphrase.3      |    2 -
 .../libarchive/archive_write_set_passphrase.c      |    1 -
 contrib/libarchive/libarchive/cpio.5               |    2 -
 contrib/libarchive/libarchive/filter_fork.h        |    2 -
 contrib/libarchive/libarchive/filter_fork_posix.c  |    2 -
 contrib/libarchive/libarchive/libarchive-formats.5 |    2 -
 contrib/libarchive/libarchive/libarchive.3         |    2 -
 contrib/libarchive/libarchive/libarchive_changes.3 |    2 -
 .../libarchive/libarchive/libarchive_internals.3   |    2 -
 contrib/libarchive/libarchive/tar.5                |    2 -
 contrib/libarchive/libarchive/test/README          |    2 -
 .../libarchive/libarchive/test/read_open_memory.c  |    1 -
 contrib/libarchive/libarchive/test/test_acl_nfs4.c |    1 -
 contrib/libarchive/libarchive/test/test_acl_pax.c  |    1 -
 .../libarchive/test/test_acl_platform_nfs4.c       |    1 -
 .../libarchive/test/test_acl_platform_posix1e.c    |    1 -
 .../libarchive/libarchive/test/test_acl_posix1e.c  |    1 -
 contrib/libarchive/libarchive/test/test_acl_text.c |    1 -
 .../libarchive/test/test_archive_api_feature.c     |    1 -
 .../libarchive/test/test_archive_clear_error.c     |    1 -
 .../libarchive/test/test_archive_cmdline.c         |    1 -
 .../libarchive/test/test_archive_getdate.c         |    1 -
 .../libarchive/test/test_archive_match_owner.c     |    1 -
 .../libarchive/test/test_archive_match_path.c      |    1 -
 .../libarchive/test/test_archive_match_time.c      |    1 -
 .../libarchive/test/test_archive_pathmatch.c       |    1 -
 .../test/test_archive_read_add_passphrase.c        |    1 -
 .../test/test_archive_read_close_twice.c           |    2 -
 .../test/test_archive_read_close_twice_open_fd.c   |    1 -
 .../test_archive_read_close_twice_open_filename.c  |    1 -
 .../test/test_archive_read_multiple_data_objects.c |    5 +-
 .../test/test_archive_read_next_header_empty.c     |    1 -
 .../test/test_archive_read_next_header_raw.c       |    1 -
 .../libarchive/test/test_archive_read_open2.c      |    1 -
 .../test/test_archive_read_set_filter_option.c     |    1 -
 .../test/test_archive_read_set_format_option.c     |    1 -
 .../libarchive/test/test_archive_read_set_option.c |    1 -
 .../test/test_archive_read_set_options.c           |    1 -
 .../libarchive/test/test_archive_read_support.c    |    1 -
 .../libarchive/test/test_archive_set_error.c       |    1 -
 .../libarchive/test/test_archive_string.c          |    3 +-
 .../test/test_archive_string_conversion.c          |    4 +-
 .../test/test_archive_string_conversion.txt.Z.uu   |    1 -
 .../test/test_archive_write_add_filter_by_name.c   |    4 +-
 .../test/test_archive_write_set_filter_option.c    |    1 -
 .../test/test_archive_write_set_format_by_name.c   |    2 -
 .../test_archive_write_set_format_filter_by_ext.c  |    2 -
 .../test/test_archive_write_set_format_option.c    |    1 -
 .../test/test_archive_write_set_option.c           |    1 -
 .../test/test_archive_write_set_options.c          |    1 -
 .../test/test_archive_write_set_passphrase.c       |    1 -
 contrib/libarchive/libarchive/test/test_bad_fd.c   |    1 -
 .../libarchive/libarchive/test/test_compat_bzip2.c |    1 -
 .../libarchive/test/test_compat_bzip2_1.tbz.uu     |    2 -
 .../libarchive/test/test_compat_bzip2_2.tbz.uu     |    2 -
 .../libarchive/libarchive/test/test_compat_cpio.c  |    1 -
 .../libarchive/test/test_compat_cpio_1.cpio.uu     |    2 -
 .../libarchive/libarchive/test/test_compat_gtar.c  |    1 -
 .../libarchive/test/test_compat_gtar_1.tar.uu      |    1 -
 .../libarchive/test/test_compat_gtar_2.tar.uu      |    2 +-
 .../libarchive/libarchive/test/test_compat_gzip.c  |    1 -
 .../libarchive/test/test_compat_gzip_1.tgz.uu      |    2 -
 .../libarchive/test/test_compat_gzip_2.tgz.uu      |    2 -
 .../libarchive/libarchive/test/test_compat_lz4.c   |    1 -
 .../libarchive/libarchive/test/test_compat_lzip.c  |   85 +-
 .../libarchive/test/test_compat_lzip_3.lz.uu       | 1461 +++++++++++++++++++
 .../libarchive/test/test_compat_lzip_4.tlz.uu      | 1474 ++++++++++++++++++++
 .../libarchive/libarchive/test/test_compat_lzma.c  |    1 -
 .../libarchive/test/test_compat_lzma_1.tlz.uu      |    2 -
 .../libarchive/test/test_compat_lzma_2.tlz.uu      |    2 -
 .../libarchive/test/test_compat_lzma_3.tlz.uu      |    2 -
 .../libarchive/libarchive/test/test_compat_lzop.c  |    1 -
 .../libarchive/libarchive/test/test_compat_mac.c   |    1 -
 .../libarchive/test/test_compat_perl_archive_tar.c |    1 -
 .../test/test_compat_plexus_archiver_tar.c         |    1 -
 .../test/test_compat_solaris_pax_sparse.c          |    2 -
 .../libarchive/test/test_compat_solaris_tar_acl.c  |    1 -
 .../libarchive/test/test_compat_star_acl.c         |    1 -
 .../libarchive/test/test_compat_tar_directory.c    |    1 -
 .../test/test_compat_tar_directory_1.tar.uu        |    1 -
 .../libarchive/test/test_compat_tar_hardlink.c     |    1 -
 .../test/test_compat_tar_hardlink_1.tar.uu         |    1 -
 .../libarchive/test/test_compat_uudecode.c         |    1 -
 .../libarchive/test/test_compat_uudecode_large.c   |    1 -
 .../libarchive/libarchive/test/test_compat_xz.c    |    1 -
 .../libarchive/test/test_compat_xz_1.txz.uu        |    3 +-
 .../libarchive/libarchive/test/test_compat_zip.c   |    1 -
 .../libarchive/test/test_compat_zip_1.zip.uu       |    1 -
 .../libarchive/test/test_compat_zip_8.zip.uu       |   12 +-
 .../libarchive/libarchive/test/test_compat_zstd.c  |    2 -
 .../libarchive/libarchive/test/test_empty_write.c  |    1 -
 contrib/libarchive/libarchive/test/test_entry.c    |    1 -
 .../libarchive/test/test_entry_strmode.c           |    1 -
 .../libarchive/test/test_extattr_freebsd.c         |    1 -
 .../libarchive/libarchive/test/test_filter_count.c |    1 -
 contrib/libarchive/libarchive/test/test_fuzz.c     |    1 -
 .../libarchive/test/test_fuzz_1.iso.Z.uu           |    2 -
 .../test/test_gnutar_filename_encoding.c           |    2 -
 .../libarchive/test/test_link_resolver.c           |    1 -
 .../libarchive/libarchive/test/test_open_failure.c |    1 -
 contrib/libarchive/libarchive/test/test_open_fd.c  |    1 -
 .../libarchive/libarchive/test/test_open_file.c    |    1 -
 .../libarchive/test/test_open_filename.c           |    1 -
 .../libarchive/test/test_pax_filename_encoding.c   |    1 -
 .../test/test_pax_filename_encoding.tar.uu         |    1 -
 .../libarchive/test/test_pax_xattr_header.c        |    1 -
 .../test_rar_multivolume_single_file.part1.rar.uu  |    2 +-
 .../test_rar_multivolume_single_file.part2.rar.uu  |    2 +-
 .../test_rar_multivolume_single_file.part3.rar.uu  |    2 +-
 ...ar_multivolume_uncompressed_files.part01.rar.uu |    2 +-
 ...ar_multivolume_uncompressed_files.part02.rar.uu |    2 +-
 ...ar_multivolume_uncompressed_files.part03.rar.uu |    2 +-
 ...ar_multivolume_uncompressed_files.part04.rar.uu |    2 +-
 ...ar_multivolume_uncompressed_files.part05.rar.uu |    2 +-
 ...ar_multivolume_uncompressed_files.part06.rar.uu |    2 +-
 ...ar_multivolume_uncompressed_files.part07.rar.uu |    2 +-
 ...ar_multivolume_uncompressed_files.part08.rar.uu |    2 +-
 ...ar_multivolume_uncompressed_files.part09.rar.uu |    2 +-
 ...ar_multivolume_uncompressed_files.part10.rar.uu |    2 +-
 .../libarchive/test/test_read_data_large.c         |    1 -
 .../libarchive/libarchive/test/test_read_disk.c    |    1 -
 .../test/test_read_disk_directory_traversals.c     |    1 -
 .../test/test_read_disk_entry_from_file.c          |    1 -
 .../libarchive/libarchive/test/test_read_extract.c |    1 -
 .../libarchive/test/test_read_file_nonexistent.c   |    1 -
 .../test/test_read_filter_lrzip.tar.lrz.uu         |    2 +-
 .../libarchive/test/test_read_filter_program.c     |    1 -
 .../test/test_read_filter_program_signature.c      |    1 -
 .../libarchive/test/test_read_filter_uudecode.c    |    1 -
 .../test/test_read_filter_uudecode_base64_raw.uu   |   11 +
 .../test/test_read_filter_uudecode_raw.c           |   67 +
 .../test/test_read_filter_uudecode_raw.uu          |   14 +
 .../libarchive/test/test_read_format_7zip.c        |   81 +-
 .../test/test_read_format_7zip_copy.7z.uu          |    2 +-
 .../test/test_read_format_7zip_deflate_arm64.7z.uu |    2 +-
 .../test/test_read_format_7zip_encryption_data.c   |    1 -
 .../test/test_read_format_7zip_encryption_header.c |    2 -
 .../test_read_format_7zip_encryption_partially.c   |    1 -
 .../test/test_read_format_7zip_lzma2_arm64.7z.uu   |    2 +-
 .../test/test_read_format_7zip_malformed.c         |    1 -
 .../test/test_read_format_7zip_packinfo_digests.c  |    5 +-
 .../test/test_read_format_7zip_win_attrib.7z.uu    |   10 +
 .../libarchive/test/test_read_format_ar.ar.uu      |    2 -
 .../libarchive/test/test_read_format_ar.c          |    2 -
 .../libarchive/test/test_read_format_cab.c         |    1 -
 .../test/test_read_format_cab_filename.c           |    1 -
 .../test_read_format_cab_filename_cp932.cab.uu     |    2 +-
 .../libarchive/test/test_read_format_cpio_afio.c   |    1 -
 .../libarchive/test/test_read_format_cpio_bin.c    |    1 -
 .../libarchive/test/test_read_format_cpio_bin_Z.c  |    1 -
 .../libarchive/test/test_read_format_cpio_bin_be.c |    1 -
 .../test/test_read_format_cpio_bin_be.cpio.uu      |    1 -
 .../test/test_read_format_cpio_bin_bz2.c           |    1 -
 .../libarchive/test/test_read_format_cpio_bin_gz.c |    1 -
 .../libarchive/test/test_read_format_cpio_bin_le.c |    1 -
 .../test/test_read_format_cpio_bin_lzip.c          |    1 -
 .../test/test_read_format_cpio_bin_lzma.c          |    1 -
 .../libarchive/test/test_read_format_cpio_bin_xz.c |    1 -
 .../test/test_read_format_cpio_filename.c          |   13 +-
 .../test_read_format_cpio_filename_cp866.cpio.uu   |    2 +-
 .../test_read_format_cpio_filename_eucjp.cpio.uu   |    2 +-
 .../test_read_format_cpio_filename_koi8r.cpio.uu   |    2 +-
 .../test_read_format_cpio_filename_utf8_jp.cpio.uu |    2 +-
 .../test_read_format_cpio_filename_utf8_ru.cpio.uu |    2 +-
 .../libarchive/test/test_read_format_cpio_odc.c    |    1 -
 .../test/test_read_format_cpio_svr4_gzip.c         |    1 -
 .../test/test_read_format_cpio_svr4c_Z.c           |    1 -
 .../libarchive/test/test_read_format_empty.c       |    1 -
 .../test/test_read_format_gtar_filename.c          |    1 -
 .../test_read_format_gtar_filename_cp866.tar.Z.uu  |    2 +-
 .../test_read_format_gtar_filename_eucjp.tar.Z.uu  |    2 +-
 .../test_read_format_gtar_filename_koi8r.tar.Z.uu  |    2 +-
 .../libarchive/test/test_read_format_gtar_gz.c     |    1 -
 .../libarchive/test/test_read_format_gtar_lzma.c   |    1 -
 .../libarchive/test/test_read_format_gtar_sparse.c |    2 -
 .../test/test_read_format_gtar_sparse_1_13.tar.uu  |    1 -
 .../test/test_read_format_gtar_sparse_1_17.tar.uu  |    1 -
 ...est_read_format_gtar_sparse_1_17_posix00.tar.uu |    1 -
 ...est_read_format_gtar_sparse_1_17_posix01.tar.uu |    1 -
 ...est_read_format_gtar_sparse_1_17_posix10.tar.uu |    1 -
 ...format_gtar_sparse_1_17_posix10_modified.tar.uu |    1 -
 .../test/test_read_format_gtar_sparse_skip_entry.c |    1 -
 ...est_read_format_gtar_sparse_skip_entry.tar.Z.uu |    2 +-
 .../libarchive/test/test_read_format_iso.iso.Z.uu  |    2 -
 .../libarchive/test/test_read_format_iso_Z.c       |    1 -
 .../test/test_read_format_iso_joliet.iso.Z.uu      |    2 -
 .../test/test_read_format_iso_joliet_long.iso.Z.uu |    2 -
 .../test_read_format_iso_joliet_rockridge.iso.Z.uu |    2 -
 .../test/test_read_format_iso_multi_extent.c       |    1 -
 .../test_read_format_iso_multi_extent.iso.Z.uu     |    2 -
 .../test/test_read_format_iso_rockridge.iso.Z.uu   |    2 -
 .../test_read_format_iso_rockridge_ce.iso.Z.uu     |    2 -
 .../test_read_format_iso_rockridge_new.iso.Z.uu    |    2 -
 ...est_read_format_iso_rockridge_rr_moved.iso.Z.uu |    2 -
 .../libarchive/test/test_read_format_iso_xorriso.c |    2 -
 .../test/test_read_format_iso_zisofs.iso.Z.uu      |    2 -
 .../test/test_read_format_isojoliet_bz2.c          |    1 -
 .../test/test_read_format_isojoliet_long.c         |    7 +-
 .../test/test_read_format_isojoliet_rr.c           |    1 -
 .../test/test_read_format_isojoliet_versioned.c    |    1 -
 .../libarchive/test/test_read_format_isorr_bz2.c   |    1 -
 .../libarchive/test/test_read_format_isorr_ce.c    |    1 -
 .../test/test_read_format_isorr_new_bz2.c          |    2 -
 .../test/test_read_format_isorr_rr_moved.c         |    1 -
 .../test/test_read_format_isozisofs_bz2.c          |    1 -
 .../libarchive/test/test_read_format_lha.c         |    1 -
 .../test/test_read_format_lha_bugfix_0.c           |    1 -
 .../test/test_read_format_lha_filename.c           |    1 -
 .../test_read_format_lha_filename_cp932.lzh.uu     |    2 +-
 .../test/test_read_format_lha_filename_utf16.c     |    1 -
 .../test_read_format_lha_filename_utf16.lzh.uu     |   38 +-
 .../libarchive/test/test_read_format_mtree.c       |    1 -
 .../libarchive/test/test_read_format_pax_bz2.c     |    1 -
 .../libarchive/test/test_read_format_rar.c         |   85 +-
 .../libarchive/test/test_read_format_rar.rar.uu    |    2 +-
 .../libarchive/test/test_read_format_rar5.c        |   30 +
 ...format_rar5_bad_window_sz_in_mltarc_file.rar.uu |    2 +-
 .../test/test_read_format_rar5_compressed.rar.uu   |    2 +-
 ...d_format_rar5_different_winsize_on_merge.rar.uu |    2 +-
 ...est_read_format_rar5_multiarchive.part01.rar.uu |    2 +-
 ...est_read_format_rar5_multiarchive.part02.rar.uu |    2 +-
 ...est_read_format_rar5_multiarchive.part03.rar.uu |    2 +-
 ...est_read_format_rar5_multiarchive.part04.rar.uu |    2 +-
 ...est_read_format_rar5_multiarchive.part05.rar.uu |    2 +-
 ...est_read_format_rar5_multiarchive.part06.rar.uu |    2 +-
 ...est_read_format_rar5_multiarchive.part07.rar.uu |    2 +-
 ...est_read_format_rar5_multiarchive.part08.rar.uu |    2 +-
 .../test_read_format_rar5_multiple_files.rar.uu    |    2 +-
 ...st_read_format_rar5_multiple_files_solid.rar.uu |    2 +-
 .../test/test_read_format_rar5_sfx.exe.uu          |    2 +-
 .../test/test_read_format_rar5_stored.rar.uu       |    2 +-
 .../test/test_read_format_rar5_unicode.rar.uu      |    9 +
 .../test/test_read_format_rar_binary_data.rar.uu   |    2 +-
 .../test/test_read_format_rar_compress_best.rar.uu |    2 +-
 .../test_read_format_rar_compress_normal.rar.uu    |    2 +-
 .../test/test_read_format_rar_encryption_data.c    |    1 -
 .../test/test_read_format_rar_encryption_header.c  |    1 -
 .../test_read_format_rar_encryption_partially.c    |    1 -
 .../libarchive/test/test_read_format_rar_filter.c  |    1 -
 .../test/test_read_format_rar_invalid1.c           |    1 -
 .../test_read_format_rar_multi_lzss_blocks.rar.uu  |    2 +-
 ...est_read_format_rar_multivolume.part0001.rar.uu |    2 +-
 ...est_read_format_rar_multivolume.part0002.rar.uu |    2 +-
 ...est_read_format_rar_multivolume.part0003.rar.uu |    2 +-
 ...est_read_format_rar_multivolume.part0004.rar.uu |    2 +-
 .../test/test_read_format_rar_noeof.rar.uu         |    2 +-
 ...est_read_format_rar_ppmd_lzss_conversion.rar.uu |    2 +-
 .../test/test_read_format_rar_sfx.exe.uu           |    2 +-
 .../test/test_read_format_rar_subblock.rar.uu      |    2 +-
 .../test/test_read_format_rar_windows.rar.uu       |    2 +-
 .../libarchive/test/test_read_format_raw.bufr.uu   |    2 +-
 .../libarchive/test/test_read_format_raw.c         |    1 -
 .../libarchive/test/test_read_format_raw.data.Z.uu |    1 -
 .../libarchive/test/test_read_format_raw.data.uu   |    1 -
 .../libarchive/test/test_read_format_tar.c         |    1 -
 .../test/test_read_format_tar_concatenated.c       |    1 -
 .../test/test_read_format_tar_empty_filename.c     |    1 -
 .../test_read_format_tar_empty_filename.tar.uu     |    3 +-
 .../test/test_read_format_tar_empty_pax.c          |    1 -
 .../test/test_read_format_tar_empty_pax.tar.Z.uu   |    2 +-
 .../test_read_format_tar_empty_with_gnulabel.c     |    1 -
 .../test/test_read_format_tar_filename.c           |    1 -
 .../test/test_read_format_tar_invalid_pax_size.c   |    1 -
 .../test_read_format_tar_invalid_pax_size.tar.uu   |    2 +-
 .../libarchive/test/test_read_format_tbz.c         |    1 -
 .../libarchive/test/test_read_format_tgz.c         |    1 -
 .../libarchive/test/test_read_format_tlz.c         |    1 -
 .../libarchive/test/test_read_format_txz.c         |    1 -
 .../libarchive/test/test_read_format_tz.c          |    1 -
 .../test/test_read_format_ustar_filename.c         |    1 -
 .../libarchive/test/test_read_format_warc.c        |    2 -
 .../libarchive/test/test_read_format_xar.c         |    1 -
 .../libarchive/test/test_read_format_zip.c         |    3 +-
 .../test/test_read_format_zip_7075_utf8_paths.c    |    1 -
 .../test/test_read_format_zip_bzip2.zipx.uu        |    2 +-
 .../test/test_read_format_zip_comment_stored.c     |    1 -
 .../test/test_read_format_zip_encryption_data.c    |    1 -
 .../test/test_read_format_zip_encryption_header.c  |    1 -
 .../test_read_format_zip_encryption_partially.c    |    1 -
 .../test/test_read_format_zip_filename.c           |    7 +-
 .../test_read_format_zip_filename_cp866.zip.uu     |    2 +-
 .../test_read_format_zip_filename_cp932.zip.uu     |    2 +-
 .../test_read_format_zip_filename_koi8r.zip.uu     |    2 +-
 .../test_read_format_zip_filename_utf8_jp.zip.uu   |    2 +-
 .../test_read_format_zip_filename_utf8_ru.zip.uu   |    2 +-
 .../test_read_format_zip_filename_utf8_ru2.zip.uu  |    2 +-
 .../test/test_read_format_zip_high_compression.c   |    2 -
 .../libarchive/test/test_read_format_zip_jar.c     |    1 -
 .../test/test_read_format_zip_lzma.zipx.uu         |    2 +-
 .../test/test_read_format_zip_mac_metadata.c       |    1 -
 .../test/test_read_format_zip_malformed.c          |    1 -
 .../libarchive/test/test_read_format_zip_nested.c  |    3 +-
 .../test/test_read_format_zip_nofiletype.c         |    1 -
 .../libarchive/test/test_read_format_zip_padded.c  |    1 -
 .../test/test_read_format_zip_ppmd8.zipx.uu        |    2 +-
 .../libarchive/test/test_read_format_zip_sfx.c     |    1 -
 ...t_read_format_zip_traditional_encryption_data.c |    1 -
 .../test/test_read_format_zip_winzip_aes.c         |    1 -
 .../test/test_read_format_zip_winzip_aes128.zip.uu |    2 +-
 .../test/test_read_format_zip_winzip_aes256.zip.uu |    2 +-
 ...est_read_format_zip_winzip_aes256_stored.zip.uu |    2 +-
 .../test/test_read_format_zip_winzip_aes_large.c   |    1 -
 ...read_format_zip_with_invalid_traditional_eocd.c |    2 -
 ...format_zip_with_invalid_traditional_eocd.zip.uu |    2 +-
 .../libarchive/test/test_read_format_zip_zip64.c   |    1 -
 .../libarchive/libarchive/test/test_read_large.c   |    1 -
 .../test/test_read_large_splitted_rar_aa.uu        |    2 +-
 .../test/test_read_large_splitted_rar_ab.uu        |    2 +-
 .../test/test_read_large_splitted_rar_ac.uu        |    2 +-
 .../test/test_read_large_splitted_rar_ad.uu        |    2 +-
 .../test/test_read_large_splitted_rar_ae.uu        |    2 +-
 .../libarchive/test/test_read_pax_truncated.c      |    1 -
 .../test/test_read_pax_xattr_schily.tar.uu         |    2 +-
 .../libarchive/test/test_read_position.c           |    1 -
 .../libarchive/test/test_read_splitted_rar_aa.uu   |    2 +-
 .../libarchive/test/test_read_splitted_rar_ab.uu   |    2 +-
 .../libarchive/test/test_read_splitted_rar_ac.uu   |    2 +-
 .../libarchive/test/test_read_splitted_rar_ad.uu   |    2 +-
 .../libarchive/test/test_read_truncated.c          |    1 -
 .../libarchive/test/test_read_truncated_filter.c   |    1 -
 .../libarchive/libarchive/test/test_sparse_basic.c |    3 +-
 .../test/test_splitted_rar_seek_support_aa.uu      |    2 +-
 .../test/test_splitted_rar_seek_support_ab.uu      |    2 +-
 .../test/test_splitted_rar_seek_support_ac.uu      |    2 +-
 .../libarchive/test/test_tar_filenames.c           |    1 -
 .../libarchive/libarchive/test/test_tar_large.c    |    1 -
 .../libarchive/test/test_ustar_filename_encoding.c |    1 -
 .../libarchive/test/test_ustar_filenames.c         |    1 -
 .../libarchive/libarchive/test/test_write_disk.c   |    1 -
 .../libarchive/test/test_write_disk_appledouble.c  |    1 -
 .../libarchive/test/test_write_disk_failures.c     |    1 -
 .../libarchive/test/test_write_disk_hardlink.c     |    1 -
 .../test/test_write_disk_hfs_compression.c         |    1 -
 .../libarchive/test/test_write_disk_lookup.c       |    1 -
 .../libarchive/test/test_write_disk_mac_metadata.c |    1 -
 .../test/test_write_disk_no_hfs_compression.c      |    1 -
 .../libarchive/test/test_write_disk_perms.c        |    1 -
 .../libarchive/test/test_write_disk_secure.c       |    1 -
 .../libarchive/test/test_write_disk_secure744.c    |    1 -
 .../libarchive/test/test_write_disk_secure745.c    |    1 -
 .../libarchive/test/test_write_disk_secure746.c    |    1 -
 .../libarchive/test/test_write_disk_sparse.c       |    1 -
 .../libarchive/test/test_write_disk_symlink.c      |    1 -
 .../libarchive/test/test_write_disk_times.c        |    1 -
 .../libarchive/test/test_write_filter_b64encode.c  |    1 -
 .../libarchive/test/test_write_filter_bzip2.c      |    1 -
 .../libarchive/test/test_write_filter_compress.c   |    1 -
 .../libarchive/test/test_write_filter_gzip.c       |    1 -
 .../test/test_write_filter_gzip_timestamp.c        |    1 -
 .../libarchive/test/test_write_filter_lz4.c        |    5 +-
 .../libarchive/test/test_write_filter_lzip.c       |    1 -
 .../libarchive/test/test_write_filter_lzma.c       |    1 -
 .../libarchive/test/test_write_filter_lzop.c       |    4 +-
 .../libarchive/test/test_write_filter_program.c    |    1 -
 .../libarchive/test/test_write_filter_uuencode.c   |    1 -
 .../libarchive/test/test_write_filter_xz.c         |    1 -
 .../libarchive/test/test_write_filter_zstd.c       |  107 +-
 .../libarchive/test/test_write_format_7zip.c       |    1 -
 .../libarchive/test/test_write_format_7zip_empty.c |    1 -
 .../libarchive/test/test_write_format_7zip_large.c |    1 -
 .../libarchive/test/test_write_format_ar.c         |    1 -
 .../libarchive/test/test_write_format_cpio.c       |    1 -
 .../libarchive/test/test_write_format_cpio_empty.c |    1 -
 .../libarchive/test/test_write_format_cpio_newc.c  |    2 -
 .../libarchive/test/test_write_format_cpio_odc.c   |    2 -
 .../libarchive/test/test_write_format_gnutar.c     |    1 -
 .../test/test_write_format_gnutar_filenames.c      |    1 -
 .../libarchive/test/test_write_format_iso9660.c    |   21 +-
 .../libarchive/test/test_write_format_mtree.c      |    1 -
 .../test/test_write_format_mtree_absolute_path.c   |    1 -
 .../test/test_write_format_mtree_classic.c         |    1 -
 .../test/test_write_format_mtree_classic_indent.c  |    1 -
 .../test/test_write_format_mtree_fflags.c          |    2 +-
 .../test/test_write_format_mtree_no_separator.c    |    2 +-
 .../test/test_write_format_mtree_quoted_filename.c |    1 -
 .../libarchive/test/test_write_format_pax.c        |    1 -
 .../libarchive/test/test_write_format_shar_empty.c |    1 -
 .../libarchive/test/test_write_format_tar.c        |    1 -
 .../libarchive/test/test_write_format_tar_empty.c  |    1 -
 .../libarchive/test/test_write_format_tar_sparse.c |    1 -
 .../libarchive/test/test_write_format_tar_ustar.c  |    1 -
 .../libarchive/test/test_write_format_tar_v7tar.c  |    1 -
 .../libarchive/test/test_write_format_warc.c       |    1 -
 .../libarchive/test/test_write_format_warc_empty.c |    1 -
 .../libarchive/test/test_write_format_xar.c        |    1 -
 .../libarchive/test/test_write_format_xar_empty.c  |    1 -
 .../libarchive/test/test_write_format_zip.c        |   50 +-
 .../test/test_write_format_zip64_stream.c          |  276 ++++
 .../test/test_write_format_zip_compression_store.c |   66 +-
 .../libarchive/test/test_write_format_zip_empty.c  |    1 -
 .../test/test_write_format_zip_empty_zip64.c       |    1 -
 .../test/test_write_format_zip_entry_size_unset.c  |   13 +-
 .../libarchive/test/test_write_format_zip_file.c   |   43 +-
 .../test/test_write_format_zip_file_zip64.c        |   47 +-
 .../libarchive/test/test_write_format_zip_large.c  |   31 +-
 .../libarchive/test/test_write_format_zip_stream.c |  247 ++++
 .../libarchive/test/test_write_format_zip_zip64.c  |    1 -
 .../libarchive/test/test_write_open_memory.c       |    1 -
 .../libarchive/test/test_write_read_format_zip.c   |   56 +-
 .../libarchive/test/test_xattr_platform.c          |    1 -
 .../libarchive/test/test_zip_filename_encoding.c   |    4 +-
 contrib/libarchive/libarchive_fe/err.c             |    2 -
 contrib/libarchive/libarchive_fe/err.h             |   11 +-
 contrib/libarchive/libarchive_fe/lafe_platform.h   |   12 -
 contrib/libarchive/libarchive_fe/line_reader.c     |    2 -
 contrib/libarchive/libarchive_fe/passphrase.c      |    4 +-
 contrib/libarchive/tar/bsdtar.1                    |   77 +-
 contrib/libarchive/tar/bsdtar.c                    |   82 +-
 contrib/libarchive/tar/bsdtar.h                    |    8 +-
 contrib/libarchive/tar/bsdtar_platform.h           |   24 +-
 contrib/libarchive/tar/cmdline.c                   |    3 +-
 contrib/libarchive/tar/creation_set.c              |    1 -
 contrib/libarchive/tar/read.c                      |    1 -
 contrib/libarchive/tar/subst.c                     |   28 +-
 contrib/libarchive/tar/test/test.h                 |    2 -
 contrib/libarchive/tar/test/test_0.c               |    1 -
 contrib/libarchive/tar/test/test_basic.c           |    1 -
 contrib/libarchive/tar/test/test_copy.c            |    1 -
 contrib/libarchive/tar/test/test_empty_mtree.c     |    1 -
 contrib/libarchive/tar/test/test_extract_tar_Z.c   |    1 -
 contrib/libarchive/tar/test/test_extract_tar_bz2.c |    1 -
 contrib/libarchive/tar/test/test_extract_tar_grz.c |    1 -
 contrib/libarchive/tar/test/test_extract_tar_gz.c  |    1 -
 contrib/libarchive/tar/test/test_extract_tar_lrz.c |    1 -
 contrib/libarchive/tar/test/test_extract_tar_lz.c  |    1 -
 contrib/libarchive/tar/test/test_extract_tar_lz4.c |    1 -
 .../libarchive/tar/test/test_extract_tar_lzma.c    |    1 -
 contrib/libarchive/tar/test/test_extract_tar_lzo.c |    1 -
 contrib/libarchive/tar/test/test_extract_tar_xz.c  |    1 -
 .../libarchive/tar/test/test_extract_tar_zstd.c    |    1 -
 contrib/libarchive/tar/test/test_format_newc.c     |    1 -
 contrib/libarchive/tar/test/test_help.c            |    1 -
 contrib/libarchive/tar/test/test_leading_slash.c   |    1 -
 contrib/libarchive/tar/test/test_missing_file.c    |    1 -
 contrib/libarchive/tar/test/test_option_C_mtree.c  |    1 -
 contrib/libarchive/tar/test/test_option_C_upper.c  |    1 -
 contrib/libarchive/tar/test/test_option_H_upper.c  |    1 -
 contrib/libarchive/tar/test/test_option_L_upper.c  |    1 -
 contrib/libarchive/tar/test/test_option_O_upper.c  |    1 -
 contrib/libarchive/tar/test/test_option_T_upper.c  |    1 -
 contrib/libarchive/tar/test/test_option_U_upper.c  |    1 -
 contrib/libarchive/tar/test/test_option_X_upper.c  |    1 -
 contrib/libarchive/tar/test/test_option_a.c        |    1 -
 contrib/libarchive/tar/test/test_option_acls.c     |    1 -
 contrib/libarchive/tar/test/test_option_b.c        |    1 -
 .../libarchive/tar/test/test_option_b64encode.c    |    1 -
 contrib/libarchive/tar/test/test_option_exclude.c  |    1 -
 .../libarchive/tar/test/test_option_exclude_vcs.c  |    2 +-
 contrib/libarchive/tar/test/test_option_fflags.c   |    1 -
 .../libarchive/tar/test/test_option_gid_gname.c    |    1 -
 contrib/libarchive/tar/test/test_option_group.c    |   84 ++
 contrib/libarchive/tar/test/test_option_grzip.c    |    1 -
 .../libarchive/tar/test/test_option_ignore_zeros.c |    1 -
 contrib/libarchive/tar/test/test_option_j.c        |    1 -
 contrib/libarchive/tar/test/test_option_k.c        |    1 -
 .../tar/test/test_option_keep_newer_files.c        |    1 -
 contrib/libarchive/tar/test/test_option_lrzip.c    |    1 -
 contrib/libarchive/tar/test/test_option_lz4.c      |    1 -
 contrib/libarchive/tar/test/test_option_lzma.c     |    1 -
 contrib/libarchive/tar/test/test_option_lzop.c     |    1 -
 contrib/libarchive/tar/test/test_option_n.c        |    1 -
 .../libarchive/tar/test/test_option_newer_than.c   |    1 -
 contrib/libarchive/tar/test/test_option_nodump.c   |    1 -
 .../libarchive/tar/test/test_option_older_than.c   |    1 -
 contrib/libarchive/tar/test/test_option_owner.c    |   84 ++
 .../libarchive/tar/test/test_option_passphrase.c   |    1 -
 contrib/libarchive/tar/test/test_option_q.c        |    1 -
 contrib/libarchive/tar/test/test_option_r.c        |    1 -
 contrib/libarchive/tar/test/test_option_s.c        |   12 +-
 .../libarchive/tar/test/test_option_safe_writes.c  |    1 -
 .../libarchive/tar/test/test_option_uid_uname.c    |    1 -
 contrib/libarchive/tar/test/test_option_uuencode.c |    1 -
 contrib/libarchive/tar/test/test_option_xattrs.c   |    1 -
 contrib/libarchive/tar/test/test_option_xz.c       |    1 -
 contrib/libarchive/tar/test/test_option_z.c        |    1 -
 contrib/libarchive/tar/test/test_option_zstd.c     |    1 -
 contrib/libarchive/tar/test/test_patterns.c        |    1 -
 contrib/libarchive/tar/test/test_print_longpath.c  |    1 -
 contrib/libarchive/tar/test/test_stdio.c           |    1 -
 .../libarchive/tar/test/test_strip_components.c    |    1 -
 contrib/libarchive/tar/test/test_symlink_dir.c     |    1 -
 contrib/libarchive/tar/util.c                      |    3 +-
 contrib/libarchive/tar/write.c                     |    1 -
 contrib/libarchive/test_utils/test_common.h        |   15 +-
 contrib/libarchive/test_utils/test_main.c          |   18 +-
 contrib/libarchive/unzip/bsdunzip.1                |    2 -
 contrib/libarchive/unzip/bsdunzip.c                |   17 +-
 contrib/libarchive/unzip/bsdunzip_platform.h       |   24 +-
 contrib/libarchive/unzip/cmdline.c                 |    3 +-
 contrib/libarchive/unzip/test/test.h               |    2 -
 contrib/libarchive/unzip/test/test_I.c             |   41 +
 contrib/libarchive/unzip/test/test_I.zip.uu        |    8 +
 contrib/libarchive/unzip/test/test_doubledash.c    |   44 +
 lib/libarchive/Makefile.inc                        |    2 +-
 lib/libarchive/tests/Makefile                      |    7 +
 usr.bin/unzip/tests/Makefile                       |    3 +
 725 files changed, 5735 insertions(+), 1735 deletions(-)

diff --git a/contrib/libarchive/.editorconfig b/contrib/libarchive/.editorconfig
deleted file mode 100644
index 2b797a039e97..000000000000
--- a/contrib/libarchive/.editorconfig
+++ /dev/null
@@ -1,18 +0,0 @@
-# To use this config on you editor, follow the instructions at:
-# http://editorconfig.org
-
-root = true
-
-[*]
-charset = utf-8
-indent_style = tab
-insert_final_newline = true
-trim_trailing_whitespace = true
-
-[*.sh]
-indent_style = space
-indent_size = 4
-
-[CMakeLists.txt]
-indent_style = space
-indent_size = 2
diff --git a/contrib/libarchive/.github/workflows/cifuzz.yml b/contrib/libarchive/.github/workflows/cifuzz.yml
deleted file mode 100644
index e5c60e4b0de2..000000000000
--- a/contrib/libarchive/.github/workflows/cifuzz.yml
+++ /dev/null
@@ -1,24 +0,0 @@
-name: CIFuzz
-on: [pull_request]
-jobs:
-  Fuzzing:
-    runs-on: ubuntu-latest
-    steps:
-    - name: Build Fuzzers
-      id: build
-      uses: google/oss-fuzz/infra/cifuzz/actions/build_fuzzers@master
-      with:
-        oss-fuzz-project-name: 'libarchive'
-        dry-run: false
-    - name: Run Fuzzers
-      uses: google/oss-fuzz/infra/cifuzz/actions/run_fuzzers@master
-      with:
-        oss-fuzz-project-name: 'libarchive'
-        fuzz-seconds: 600
-        dry-run: false
-    - name: Upload Crash
-      uses: actions/upload-artifact@v1
-      if: failure() && steps.build.outcome == 'success'
-      with:
-        name: artifacts
-        path: ./out/artifacts
diff --git a/contrib/libarchive/NEWS b/contrib/libarchive/NEWS
index 7509c9ce5fa1..f4395fd1c979 100644
--- a/contrib/libarchive/NEWS
+++ b/contrib/libarchive/NEWS
@@ -1,3 +1,7 @@
+Apr 08, 2024: libarchive 3.7.3 released
+
+Sep 12, 2023: libarchive 3.7.2 released
+
 Jul 29, 2023: libarchive 3.7.1 released
 
 Jul 18, 2023: libarchive 3.7.0 released
diff --git a/contrib/libarchive/build/autoconf/m4_ax_compile_check_sizeof.m4 b/contrib/libarchive/build/autoconf/m4_ax_compile_check_sizeof.m4
deleted file mode 100644
index f834df6346c9..000000000000
--- a/contrib/libarchive/build/autoconf/m4_ax_compile_check_sizeof.m4
+++ /dev/null
@@ -1,115 +0,0 @@
-# ============================================================================
-#  https://www.gnu.org/software/autoconf-archive/ax_compile_check_sizeof.html
-# ============================================================================
-#
-# SYNOPSIS
-#
-#   AX_COMPILE_CHECK_SIZEOF(TYPE [, HEADERS [, EXTRA_SIZES...]])
-#
-# DESCRIPTION
-#
-#   This macro checks for the size of TYPE using compile checks, not run
-#   checks. You can supply extra HEADERS to look into. the check will cycle
-#   through 1 2 4 8 16 and any EXTRA_SIZES the user supplies. If a match is
-#   found, it will #define SIZEOF_`TYPE' to that value. Otherwise it will
-#   emit a configure time error indicating the size of the type could not be
-#   determined.
-#
-#   The trick is that C will not allow duplicate case labels. While this is
-#   valid C code:
-#
-#     switch (0) case 0: case 1:;
-#
-#   The following is not:
-#
-#     switch (0) case 0: case 0:;
-#
-#   Thus, the AC_COMPILE_IFELSE will fail if the currently tried size does
-#   not match.
-#
-#   Here is an example skeleton configure.in script, demonstrating the
-#   macro's usage:
-#
-#     AC_PROG_CC
-#     AC_CHECK_HEADERS(stddef.h unistd.h)
-#     AC_TYPE_SIZE_T
-#     AC_CHECK_TYPE(ssize_t, int)
-#
-#     headers='#ifdef HAVE_STDDEF_H
-#     #include <stddef.h>
-#     #endif
-#     #ifdef HAVE_UNISTD_H
-#     #include <unistd.h>
-#     #endif
-#     '
-#
-#     AX_COMPILE_CHECK_SIZEOF(char)
-#     AX_COMPILE_CHECK_SIZEOF(short)
-#     AX_COMPILE_CHECK_SIZEOF(int)
-#     AX_COMPILE_CHECK_SIZEOF(long)
-#     AX_COMPILE_CHECK_SIZEOF(unsigned char *)
-#     AX_COMPILE_CHECK_SIZEOF(void *)
-#     AX_COMPILE_CHECK_SIZEOF(size_t, $headers)
-#     AX_COMPILE_CHECK_SIZEOF(ssize_t, $headers)
-#     AX_COMPILE_CHECK_SIZEOF(ptrdiff_t, $headers)
-#     AX_COMPILE_CHECK_SIZEOF(off_t, $headers)
-#
-# LICENSE
-#
-#   Copyright (c) 2008 Kaveh Ghazi <ghazi@caip.rutgers.edu>
-#   Copyright (c) 2017 Reini Urban <rurban@cpan.org>
-#
-#   This program is free software: you can redistribute it and/or modify it
-#   under the terms of the GNU General Public License as published by the
-#   Free Software Foundation, either version 3 of the License, or (at your
-#   option) any later version.
-#
-#   This program is distributed in the hope that it will be useful, but
-#   WITHOUT ANY WARRANTY; without even the implied warranty of
-#   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General
-#   Public License for more details.
-#
-#   You should have received a copy of the GNU General Public License along
-#   with this program. If not, see <https://www.gnu.org/licenses/>.
-#
-#   As a special exception, the respective Autoconf Macro's copyright owner
-#   gives unlimited permission to copy, distribute and modify the configure
-#   scripts that are the output of Autoconf when processing the Macro. You
-#   need not follow the terms of the GNU General Public License when using
-#   or distributing such scripts, even though portions of the text of the
-#   Macro appear in them. The GNU General Public License (GPL) does govern
-#   all other use of the material that constitutes the Autoconf Macro.
-#
-#   This special exception to the GPL applies to versions of the Autoconf
-#   Macro released by the Autoconf Archive. When you make and distribute a
-#   modified version of the Autoconf Macro, you may extend this special
-#   exception to the GPL to apply to your modified version as well.
-
-#serial 8
-
-AU_ALIAS([AC_COMPILE_CHECK_SIZEOF], [AX_COMPILE_CHECK_SIZEOF])
-AC_DEFUN([AX_COMPILE_CHECK_SIZEOF],
-[changequote(<<, >>)dnl
-dnl The name to #define.
-define(<<AC_TYPE_NAME>>, translit(sizeof_$1, [a-z *], [A-Z_P]))dnl
-dnl The cache variable name.
-define(<<AC_CV_NAME>>, translit(ac_cv_sizeof_$1, [ *], [_p]))dnl
-changequote([, ])dnl
-AC_MSG_CHECKING(size of $1)
-AC_CACHE_VAL(AC_CV_NAME,
-[for ac_size in 4 8 1 2 16 $3 ; do # List sizes in rough order of prevalence.
-  AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[
-#include <sys/types.h>
-$2
-]], [[switch (0) case 0: case (sizeof ($1) == $ac_size):;]])], [AC_CV_NAME=$ac_size])
-  if test x$AC_CV_NAME != x ; then break; fi
-done
-])
-if test x$AC_CV_NAME = x ; then
-  AC_MSG_ERROR([cannot determine a size for $1])
-fi
-AC_MSG_RESULT($AC_CV_NAME)
-AC_DEFINE_UNQUOTED(AC_TYPE_NAME, $AC_CV_NAME, [The number of bytes in type $1])
-undefine([AC_TYPE_NAME])dnl
-undefine([AC_CV_NAME])dnl
-])
diff --git a/contrib/libarchive/cat/bsdcat.1 b/contrib/libarchive/cat/bsdcat.1
index 036623e4e4d6..9fa66d60e1e6 100644
--- a/contrib/libarchive/cat/bsdcat.1
+++ b/contrib/libarchive/cat/bsdcat.1
@@ -22,8 +22,6 @@
 .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
 .\" SUCH DAMAGE.
 .\"
-.\" $FreeBSD$
-.\"
 .Dd March 1, 2014
 .Dt BSDCAT 1
 .Os
diff --git a/contrib/libarchive/cat/bsdcat.c b/contrib/libarchive/cat/bsdcat.c
index bdb9c40b9150..19d3de65cea4 100644
--- a/contrib/libarchive/cat/bsdcat.c
+++ b/contrib/libarchive/cat/bsdcat.c
@@ -24,7 +24,6 @@
  */
 
 #include "bsdcat_platform.h"
-__FBSDID("$FreeBSD$");
 
 #include <stdio.h>
 #ifdef HAVE_STDLIB_H
@@ -37,6 +36,9 @@ __FBSDID("$FreeBSD$");
 #include <string.h>
 #endif
 
+#include <archive.h>
+#include <archive_entry.h>
+
 #include "bsdcat.h"
 #include "err.h"
 
*** 16950 LINES SKIPPED ***