libarchive-static 1.0.6 → 1.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/ext/extconf.rb +2 -9
- data/ext/libarchive-0.1.1/ext/archive_read_support_compression.c +6 -6
- data/ext/libarchive-0.1.1/ext/archive_read_support_compression.o +0 -0
- data/ext/libarchive-0.1.1/ext/archive_read_support_format.o +0 -0
- data/ext/libarchive-0.1.1/ext/archive_write_open_rb_str.c +1 -1
- data/ext/libarchive-0.1.1/ext/archive_write_open_rb_str.o +0 -0
- data/ext/libarchive-0.1.1/ext/archive_write_set_compression.c +5 -5
- data/ext/libarchive-0.1.1/ext/archive_write_set_compression.o +0 -0
- data/ext/libarchive-0.1.1/ext/config.h +23 -0
- data/ext/libarchive-0.1.1/ext/config.log +230 -0
- data/ext/libarchive-0.1.1/ext/config.status +671 -0
- data/ext/libarchive-0.1.1/ext/libarchive.c +1 -1
- data/ext/libarchive-0.1.1/ext/libarchive.o +0 -0
- data/ext/libarchive-0.1.1/ext/libarchive_archive.c +7 -7
- data/ext/libarchive-0.1.1/ext/libarchive_archive.o +0 -0
- data/ext/libarchive-0.1.1/ext/libarchive_entry.c +6 -0
- data/ext/libarchive-0.1.1/ext/libarchive_entry.o +0 -0
- data/ext/libarchive-0.1.1/ext/libarchive_reader.c +6 -4
- data/ext/libarchive-0.1.1/ext/libarchive_reader.o +0 -0
- data/ext/libarchive-0.1.1/ext/libarchive_ruby.so +0 -0
- data/ext/libarchive-0.1.1/ext/libarchive_win32.h +1 -1
- data/ext/libarchive-0.1.1/ext/libarchive_writer.c +2 -2
- data/ext/libarchive-0.1.1/ext/libarchive_writer.o +0 -0
- data/ext/libarchive-3.6.2/Makefile.in +16892 -0
- data/ext/libarchive-3.6.2/build/autoconf/ax_append_compile_flags.m4 +67 -0
- data/ext/libarchive-3.6.2/build/autoconf/ax_append_flag.m4 +71 -0
- data/ext/libarchive-3.6.2/build/autoconf/ax_check_compile_flag.m4 +74 -0
- data/ext/libarchive-3.6.2/build/autoconf/ax_require_defined.m4 +37 -0
- data/ext/{libarchive-2.8.4 → libarchive-3.6.2}/build/autoconf/check_stdcall_func.m4 +0 -0
- data/ext/libarchive-3.6.2/build/autoconf/compile +348 -0
- data/ext/libarchive-3.6.2/build/autoconf/config.guess +1754 -0
- data/ext/libarchive-3.6.2/build/autoconf/config.rpath +696 -0
- data/ext/libarchive-3.6.2/build/autoconf/config.sub +1890 -0
- data/ext/libarchive-3.6.2/build/autoconf/depcomp +791 -0
- data/ext/libarchive-3.6.2/build/autoconf/iconv.m4 +271 -0
- data/ext/libarchive-3.6.2/build/autoconf/install-sh +541 -0
- data/ext/{libarchive-2.8.4 → libarchive-3.6.2}/build/autoconf/la_uid_t.m4 +0 -0
- data/ext/libarchive-3.6.2/build/autoconf/lib-ld.m4 +109 -0
- data/ext/libarchive-3.6.2/build/autoconf/lib-link.m4 +777 -0
- data/ext/libarchive-3.6.2/build/autoconf/lib-prefix.m4 +224 -0
- data/ext/libarchive-3.6.2/build/autoconf/ltmain.sh +11251 -0
- data/ext/libarchive-3.6.2/build/autoconf/m4_ax_compile_check_sizeof.m4 +115 -0
- data/ext/libarchive-3.6.2/build/autoconf/missing +215 -0
- data/ext/libarchive-3.6.2/build/autoconf/test-driver +153 -0
- data/ext/{libarchive-2.8.4 → libarchive-3.6.2}/build/pkgconfig/libarchive.pc.in +4 -1
- data/ext/libarchive-3.6.2/config.h.in +1504 -0
- data/ext/libarchive-3.6.2/configure +25558 -0
- data/ext/libarchive-3.6.2/libarchive/archive.h +1212 -0
- data/ext/libarchive-3.6.2/libarchive/archive_acl.c +2097 -0
- data/ext/libarchive-3.6.2/libarchive/archive_acl_private.h +83 -0
- data/ext/libarchive-3.6.2/libarchive/archive_blake2.h +197 -0
- data/ext/libarchive-3.6.2/libarchive/archive_blake2_impl.h +161 -0
- data/ext/libarchive-3.6.2/libarchive/archive_blake2s_ref.c +369 -0
- data/ext/libarchive-3.6.2/libarchive/archive_blake2sp_ref.c +361 -0
- data/ext/{libarchive-2.8.4 → libarchive-3.6.2}/libarchive/archive_check_magic.c +63 -22
- data/ext/libarchive-3.6.2/libarchive/archive_cmdline.c +227 -0
- data/ext/libarchive-3.6.2/libarchive/archive_cmdline_private.h +47 -0
- data/ext/{libarchive-2.8.4 → libarchive-3.6.2}/libarchive/archive_crc32.h +17 -0
- data/ext/libarchive-3.6.2/libarchive/archive_cryptor.c +534 -0
- data/ext/libarchive-3.6.2/libarchive/archive_cryptor_private.h +188 -0
- data/ext/libarchive-3.6.2/libarchive/archive_digest.c +1505 -0
- data/ext/libarchive-3.6.2/libarchive/archive_digest_private.h +416 -0
- data/ext/libarchive-3.6.2/libarchive/archive_disk_acl_darwin.c +559 -0
- data/ext/libarchive-3.6.2/libarchive/archive_disk_acl_freebsd.c +712 -0
- data/ext/libarchive-3.6.2/libarchive/archive_disk_acl_linux.c +760 -0
- data/ext/libarchive-3.6.2/libarchive/archive_disk_acl_sunos.c +824 -0
- data/ext/{libarchive-2.8.4 → libarchive-3.6.2}/libarchive/archive_endian.h +48 -15
- data/ext/libarchive-3.6.2/libarchive/archive_entry.c +2149 -0
- data/ext/{libarchive-2.8.4 → libarchive-3.6.2}/libarchive/archive_entry.h +305 -106
- data/ext/{libarchive-2.8.4 → libarchive-3.6.2}/libarchive/archive_entry_copy_bhfi.c +5 -4
- data/ext/{libarchive-2.8.4 → libarchive-3.6.2}/libarchive/archive_entry_copy_stat.c +9 -3
- data/ext/{libarchive-2.8.4 → libarchive-3.6.2}/libarchive/archive_entry_link_resolver.c +104 -62
- data/ext/libarchive-3.6.2/libarchive/archive_entry_locale.h +92 -0
- data/ext/{libarchive-2.8.4 → libarchive-3.6.2}/libarchive/archive_entry_private.h +65 -49
- data/ext/libarchive-3.6.2/libarchive/archive_entry_sparse.c +156 -0
- data/ext/{libarchive-2.8.4 → libarchive-3.6.2}/libarchive/archive_entry_stat.c +6 -6
- data/ext/{libarchive-2.8.4 → libarchive-3.6.2}/libarchive/archive_entry_strmode.c +1 -1
- data/ext/{libarchive-2.8.4 → libarchive-3.6.2}/libarchive/archive_entry_xattr.c +4 -6
- data/ext/libarchive-3.6.2/libarchive/archive_getdate.c +1165 -0
- data/ext/libarchive-3.6.2/libarchive/archive_getdate.h +39 -0
- data/ext/libarchive-3.6.2/libarchive/archive_hmac.c +334 -0
- data/ext/libarchive-3.6.2/libarchive/archive_hmac_private.h +117 -0
- data/ext/libarchive-3.6.2/libarchive/archive_match.c +1875 -0
- data/ext/libarchive-3.6.2/libarchive/archive_openssl_evp_private.h +53 -0
- data/ext/libarchive-3.6.2/libarchive/archive_openssl_hmac_private.h +54 -0
- data/ext/libarchive-3.6.2/libarchive/archive_options.c +218 -0
- data/ext/libarchive-3.6.2/libarchive/archive_options_private.h +51 -0
- data/ext/libarchive-3.6.2/libarchive/archive_pack_dev.c +337 -0
- data/ext/libarchive-3.6.2/libarchive/archive_pack_dev.h +49 -0
- data/ext/libarchive-3.6.2/libarchive/archive_pathmatch.c +463 -0
- data/ext/libarchive-3.6.2/libarchive/archive_pathmatch.h +52 -0
- data/ext/{libarchive-2.8.4 → libarchive-3.6.2}/libarchive/archive_platform.h +77 -9
- data/ext/libarchive-3.6.2/libarchive/archive_platform_acl.h +55 -0
- data/ext/libarchive-3.6.2/libarchive/archive_platform_xattr.h +47 -0
- data/ext/libarchive-3.6.2/libarchive/archive_ppmd7.c +1168 -0
- data/ext/libarchive-3.6.2/libarchive/archive_ppmd7_private.h +119 -0
- data/ext/libarchive-3.6.2/libarchive/archive_ppmd8.c +1287 -0
- data/ext/libarchive-3.6.2/libarchive/archive_ppmd8_private.h +148 -0
- data/ext/libarchive-3.6.2/libarchive/archive_ppmd_private.h +151 -0
- data/ext/{libarchive-2.8.4 → libarchive-3.6.2}/libarchive/archive_private.h +74 -18
- data/ext/libarchive-3.6.2/libarchive/archive_random.c +272 -0
- data/ext/libarchive-3.6.2/libarchive/archive_random_private.h +36 -0
- data/ext/libarchive-3.6.2/libarchive/archive_rb.c +709 -0
- data/ext/libarchive-3.6.2/libarchive/archive_rb.h +113 -0
- data/ext/libarchive-3.6.2/libarchive/archive_read.c +1756 -0
- data/ext/libarchive-3.6.2/libarchive/archive_read_add_passphrase.c +190 -0
- data/ext/libarchive-3.6.2/libarchive/archive_read_append_filter.c +204 -0
- data/ext/{libarchive-2.8.4 → libarchive-3.6.2}/libarchive/archive_read_data_into_fd.c +64 -18
- data/ext/libarchive-3.6.2/libarchive/archive_read_disk_entry_from_file.c +1086 -0
- data/ext/libarchive-3.6.2/libarchive/archive_read_disk_posix.c +2732 -0
- data/ext/{libarchive-2.8.4 → libarchive-3.6.2}/libarchive/archive_read_disk_private.h +40 -4
- data/ext/{libarchive-2.8.4 → libarchive-3.6.2}/libarchive/archive_read_disk_set_standard_lookup.c +21 -11
- data/ext/libarchive-3.6.2/libarchive/archive_read_disk_windows.c +2479 -0
- data/ext/libarchive-3.6.2/libarchive/archive_read_extract.c +60 -0
- data/ext/{libarchive-2.8.4/libarchive/archive_read_extract.c → libarchive-3.6.2/libarchive/archive_read_extract2.c} +34 -61
- data/ext/{libarchive-2.8.4 → libarchive-3.6.2}/libarchive/archive_read_open_fd.c +70 -49
- data/ext/{libarchive-2.8.4 → libarchive-3.6.2}/libarchive/archive_read_open_file.c +38 -23
- data/ext/libarchive-3.6.2/libarchive/archive_read_open_filename.c +586 -0
- data/ext/{libarchive-2.8.4 → libarchive-3.6.2}/libarchive/archive_read_open_memory.c +58 -28
- data/ext/{libarchive-2.8.4 → libarchive-3.6.2}/libarchive/archive_read_private.h +127 -59
- data/ext/libarchive-3.6.2/libarchive/archive_read_set_format.c +117 -0
- data/ext/libarchive-3.6.2/libarchive/archive_read_set_options.c +133 -0
- data/ext/{libarchive-2.8.4/libarchive/archive_read_support_compression_all.c → libarchive-3.6.2/libarchive/archive_read_support_filter_all.c} +35 -10
- data/ext/libarchive-3.6.2/libarchive/archive_read_support_filter_by_code.c +83 -0
- data/ext/{libarchive-2.8.4/libarchive/archive_read_support_compression_bzip2.c → libarchive-3.6.2/libarchive/archive_read_support_filter_bzip2.c} +38 -26
- data/ext/{libarchive-2.8.4/libarchive/archive_read_support_compression_compress.c → libarchive-3.6.2/libarchive/archive_read_support_filter_compress.c} +52 -44
- data/ext/libarchive-3.6.2/libarchive/archive_read_support_filter_grzip.c +112 -0
- data/ext/{libarchive-2.8.4/libarchive/archive_read_support_compression_gzip.c → libarchive-3.6.2/libarchive/archive_read_support_filter_gzip.c} +108 -37
- data/ext/libarchive-3.6.2/libarchive/archive_read_support_filter_lrzip.c +122 -0
- data/ext/libarchive-3.6.2/libarchive/archive_read_support_filter_lz4.c +742 -0
- data/ext/libarchive-3.6.2/libarchive/archive_read_support_filter_lzop.c +499 -0
- data/ext/{libarchive-2.8.4/libarchive/archive_read_support_compression_none.c → libarchive-3.6.2/libarchive/archive_read_support_filter_none.c} +15 -3
- data/ext/{libarchive-2.8.4/libarchive/archive_read_support_compression_program.c → libarchive-3.6.2/libarchive/archive_read_support_filter_program.c} +114 -77
- data/ext/{libarchive-2.8.4/libarchive/archive_read_support_compression_rpm.c → libarchive-3.6.2/libarchive/archive_read_support_filter_rpm.c} +31 -31
- data/ext/{libarchive-2.8.4/libarchive/archive_read_support_compression_uu.c → libarchive-3.6.2/libarchive/archive_read_support_filter_uu.c} +141 -85
- data/ext/{libarchive-2.8.4/libarchive/archive_read_support_compression_xz.c → libarchive-3.6.2/libarchive/archive_read_support_filter_xz.c} +369 -284
- data/ext/libarchive-3.6.2/libarchive/archive_read_support_filter_zstd.c +297 -0
- data/ext/libarchive-3.6.2/libarchive/archive_read_support_format_7zip.c +3900 -0
- data/ext/libarchive-3.6.2/libarchive/archive_read_support_format_all.c +89 -0
- data/ext/{libarchive-2.8.4 → libarchive-3.6.2}/libarchive/archive_read_support_format_ar.c +126 -72
- data/ext/libarchive-3.6.2/libarchive/archive_read_support_format_by_code.c +92 -0
- data/ext/libarchive-3.6.2/libarchive/archive_read_support_format_cab.c +3228 -0
- data/ext/libarchive-3.6.2/libarchive/archive_read_support_format_cpio.c +1104 -0
- data/ext/{libarchive-2.8.4 → libarchive-3.6.2}/libarchive/archive_read_support_format_empty.c +14 -11
- data/ext/{libarchive-2.8.4 → libarchive-3.6.2}/libarchive/archive_read_support_format_iso9660.c +990 -541
- data/ext/libarchive-3.6.2/libarchive/archive_read_support_format_lha.c +2916 -0
- data/ext/libarchive-3.6.2/libarchive/archive_read_support_format_mtree.c +2150 -0
- data/ext/libarchive-3.6.2/libarchive/archive_read_support_format_rar.c +3797 -0
- data/ext/libarchive-3.6.2/libarchive/archive_read_support_format_rar5.c +4251 -0
- data/ext/{libarchive-2.8.4 → libarchive-3.6.2}/libarchive/archive_read_support_format_raw.c +38 -31
- data/ext/{libarchive-2.8.4 → libarchive-3.6.2}/libarchive/archive_read_support_format_tar.c +1157 -629
- data/ext/libarchive-3.6.2/libarchive/archive_read_support_format_warc.c +848 -0
- data/ext/{libarchive-2.8.4 → libarchive-3.6.2}/libarchive/archive_read_support_format_xar.c +439 -258
- data/ext/libarchive-3.6.2/libarchive/archive_read_support_format_zip.c +4270 -0
- data/ext/libarchive-3.6.2/libarchive/archive_string.c +4240 -0
- data/ext/libarchive-3.6.2/libarchive/archive_string.h +243 -0
- data/ext/libarchive-3.6.2/libarchive/archive_string_composition.h +2292 -0
- data/ext/{libarchive-2.8.4 → libarchive-3.6.2}/libarchive/archive_string_sprintf.c +44 -16
- data/ext/libarchive-3.6.2/libarchive/archive_util.c +655 -0
- data/ext/libarchive-3.6.2/libarchive/archive_version_details.c +151 -0
- data/ext/{libarchive-2.8.4 → libarchive-3.6.2}/libarchive/archive_virtual.c +85 -16
- data/ext/{libarchive-2.8.4 → libarchive-3.6.2}/libarchive/archive_windows.c +214 -541
- data/ext/{libarchive-2.8.4 → libarchive-3.6.2}/libarchive/archive_windows.h +74 -106
- data/ext/libarchive-3.6.2/libarchive/archive_write.c +828 -0
- data/ext/libarchive-3.6.2/libarchive/archive_write_add_filter.c +72 -0
- data/ext/libarchive-3.6.2/libarchive/archive_write_add_filter_b64encode.c +304 -0
- data/ext/libarchive-3.6.2/libarchive/archive_write_add_filter_by_name.c +77 -0
- data/ext/libarchive-3.6.2/libarchive/archive_write_add_filter_bzip2.c +401 -0
- data/ext/{libarchive-2.8.4/libarchive/archive_write_set_compression_compress.c → libarchive-3.6.2/libarchive/archive_write_add_filter_compress.c} +86 -131
- data/ext/libarchive-3.6.2/libarchive/archive_write_add_filter_grzip.c +135 -0
- data/ext/libarchive-3.6.2/libarchive/archive_write_add_filter_gzip.c +442 -0
- data/ext/libarchive-3.6.2/libarchive/archive_write_add_filter_lrzip.c +197 -0
- data/ext/libarchive-3.6.2/libarchive/archive_write_add_filter_lz4.c +700 -0
- data/ext/libarchive-3.6.2/libarchive/archive_write_add_filter_lzop.c +478 -0
- data/ext/{libarchive-2.8.4/libarchive/archive_read_support_format_all.c → libarchive-3.6.2/libarchive/archive_write_add_filter_none.c} +11 -11
- data/ext/libarchive-3.6.2/libarchive/archive_write_add_filter_program.c +391 -0
- data/ext/libarchive-3.6.2/libarchive/archive_write_add_filter_uuencode.c +295 -0
- data/ext/libarchive-3.6.2/libarchive/archive_write_add_filter_xz.c +545 -0
- data/ext/libarchive-3.6.2/libarchive/archive_write_add_filter_zstd.c +418 -0
- data/ext/libarchive-3.6.2/libarchive/archive_write_disk_posix.c +4711 -0
- data/ext/{libarchive-2.8.4 → libarchive-3.6.2}/libarchive/archive_write_disk_private.h +9 -2
- data/ext/{libarchive-2.8.4 → libarchive-3.6.2}/libarchive/archive_write_disk_set_standard_lookup.c +30 -29
- data/ext/libarchive-3.6.2/libarchive/archive_write_disk_windows.c +2842 -0
- data/ext/{libarchive-2.8.4 → libarchive-3.6.2}/libarchive/archive_write_open_fd.c +15 -10
- data/ext/{libarchive-2.8.4 → libarchive-3.6.2}/libarchive/archive_write_open_file.c +15 -9
- data/ext/{libarchive-2.8.4 → libarchive-3.6.2}/libarchive/archive_write_open_filename.c +128 -20
- data/ext/{libarchive-2.8.4 → libarchive-3.6.2}/libarchive/archive_write_open_memory.c +7 -18
- data/ext/{libarchive-2.8.4 → libarchive-3.6.2}/libarchive/archive_write_private.h +72 -29
- data/ext/{libarchive-2.8.4 → libarchive-3.6.2}/libarchive/archive_write_set_format.c +56 -3
- data/ext/libarchive-3.6.2/libarchive/archive_write_set_format_7zip.c +2322 -0
- data/ext/{libarchive-2.8.4 → libarchive-3.6.2}/libarchive/archive_write_set_format_ar.c +54 -34
- data/ext/{libarchive-2.8.4 → libarchive-3.6.2}/libarchive/archive_write_set_format_by_name.c +20 -2
- data/ext/libarchive-3.6.2/libarchive/archive_write_set_format_cpio.c +11 -0
- data/ext/libarchive-3.6.2/libarchive/archive_write_set_format_cpio_binary.c +610 -0
- data/ext/libarchive-3.6.2/libarchive/archive_write_set_format_cpio_newc.c +457 -0
- data/ext/libarchive-3.6.2/libarchive/archive_write_set_format_cpio_odc.c +500 -0
- data/ext/libarchive-3.6.2/libarchive/archive_write_set_format_filter_by_ext.c +142 -0
- data/ext/libarchive-3.6.2/libarchive/archive_write_set_format_gnutar.c +755 -0
- data/ext/libarchive-3.6.2/libarchive/archive_write_set_format_iso9660.c +8165 -0
- data/ext/libarchive-3.6.2/libarchive/archive_write_set_format_mtree.c +2217 -0
- data/ext/{libarchive-2.8.4 → libarchive-3.6.2}/libarchive/archive_write_set_format_pax.c +1049 -387
- data/ext/libarchive-3.6.2/libarchive/archive_write_set_format_private.h +42 -0
- data/ext/libarchive-3.6.2/libarchive/archive_write_set_format_raw.c +125 -0
- data/ext/{libarchive-2.8.4 → libarchive-3.6.2}/libarchive/archive_write_set_format_shar.c +62 -47
- data/ext/{libarchive-2.8.4 → libarchive-3.6.2}/libarchive/archive_write_set_format_ustar.c +279 -108
- data/ext/libarchive-3.6.2/libarchive/archive_write_set_format_v7tar.c +638 -0
- data/ext/libarchive-3.6.2/libarchive/archive_write_set_format_warc.c +453 -0
- data/ext/libarchive-3.6.2/libarchive/archive_write_set_format_xar.c +3259 -0
- data/ext/libarchive-3.6.2/libarchive/archive_write_set_format_zip.c +1704 -0
- data/ext/libarchive-3.6.2/libarchive/archive_write_set_options.c +130 -0
- data/ext/libarchive-3.6.2/libarchive/archive_write_set_passphrase.c +95 -0
- data/ext/libarchive-3.6.2/libarchive/archive_xxhash.h +48 -0
- data/ext/libarchive-3.6.2/libarchive/config_freebsd.h +271 -0
- data/ext/{libarchive-2.8.4 → libarchive-3.6.2}/libarchive/filter_fork.h +10 -5
- data/ext/{libarchive-2.8.4/libarchive/filter_fork.c → libarchive-3.6.2/libarchive/filter_fork_posix.c} +98 -19
- data/ext/libarchive-3.6.2/libarchive/filter_fork_windows.c +236 -0
- data/ext/libarchive-3.6.2/libarchive/xxhash.c +525 -0
- data/ext/libarchive-static-makefile +144 -80
- data/ext/libarchive-static-wrapper-makefile +1 -1
- data/ext/zlib-1.2.13/Makefile.in +404 -0
- data/ext/{zlib-1.2.5 → zlib-1.2.13}/adler32.c +51 -34
- data/ext/{zlib-1.2.5 → zlib-1.2.13}/compress.c +27 -21
- data/ext/zlib-1.2.13/configure +922 -0
- data/ext/zlib-1.2.13/crc32.c +1125 -0
- data/ext/zlib-1.2.13/crc32.h +9446 -0
- data/ext/{zlib-1.2.5 → zlib-1.2.13}/deflate.c +842 -459
- data/ext/{zlib-1.2.5 → zlib-1.2.13}/deflate.h +37 -33
- data/ext/{zlib-1.2.5 → zlib-1.2.13}/gzclose.c +0 -0
- data/ext/{zlib-1.2.5 → zlib-1.2.13}/gzguts.h +103 -16
- data/ext/{zlib-1.2.5 → zlib-1.2.13}/gzlib.c +155 -53
- data/ext/zlib-1.2.13/gzread.c +650 -0
- data/ext/zlib-1.2.13/gzwrite.c +677 -0
- data/ext/{zlib-1.2.5 → zlib-1.2.13}/infback.c +24 -12
- data/ext/{zlib-1.2.5 → zlib-1.2.13}/inffast.c +49 -66
- data/ext/{zlib-1.2.5 → zlib-1.2.13}/inffast.h +0 -0
- data/ext/{zlib-1.2.5 → zlib-1.2.13}/inffixed.h +3 -3
- data/ext/{zlib-1.2.5 → zlib-1.2.13}/inflate.c +209 -94
- data/ext/{zlib-1.2.5 → zlib-1.2.13}/inflate.h +9 -5
- data/ext/{zlib-1.2.5 → zlib-1.2.13}/inftrees.c +24 -50
- data/ext/{zlib-1.2.5 → zlib-1.2.13}/inftrees.h +1 -1
- data/ext/{zlib-1.2.5 → zlib-1.2.13}/trees.c +135 -198
- data/ext/{zlib-1.2.5 → zlib-1.2.13}/trees.h +0 -0
- data/ext/zlib-1.2.13/uncompr.c +93 -0
- data/ext/{zlib-1.2.5 → zlib-1.2.13}/zconf.h +182 -63
- data/ext/{zlib-1.2.5 → zlib-1.2.13}/zlib.h +617 -295
- data/ext/{zlib-1.2.5 → zlib-1.2.13}/zutil.c +50 -41
- data/ext/{zlib-1.2.5 → zlib-1.2.13}/zutil.h +83 -82
- metadata +241 -133
- data/ext/libarchive-0.1.1/libarchive.c +0 -1762
- data/ext/libarchive-2.8.4/Makefile.in +0 -7076
- data/ext/libarchive-2.8.4/build/autoconf/compile +0 -143
- data/ext/libarchive-2.8.4/build/autoconf/config.guess +0 -1502
- data/ext/libarchive-2.8.4/build/autoconf/config.sub +0 -1708
- data/ext/libarchive-2.8.4/build/autoconf/depcomp +0 -630
- data/ext/libarchive-2.8.4/build/autoconf/install-sh +0 -291
- data/ext/libarchive-2.8.4/build/autoconf/ltmain.sh +0 -8406
- data/ext/libarchive-2.8.4/build/autoconf/missing +0 -376
- data/ext/libarchive-2.8.4/config.h.in +0 -772
- data/ext/libarchive-2.8.4/configure +0 -17916
- data/ext/libarchive-2.8.4/libarchive/archive.h +0 -741
- data/ext/libarchive-2.8.4/libarchive/archive_entry.c +0 -2202
- data/ext/libarchive-2.8.4/libarchive/archive_hash.h +0 -281
- data/ext/libarchive-2.8.4/libarchive/archive_read.c +0 -1249
- data/ext/libarchive-2.8.4/libarchive/archive_read_disk.c +0 -198
- data/ext/libarchive-2.8.4/libarchive/archive_read_disk_entry_from_file.c +0 -570
- data/ext/libarchive-2.8.4/libarchive/archive_read_open_filename.c +0 -272
- data/ext/libarchive-2.8.4/libarchive/archive_read_support_format_cpio.c +0 -777
- data/ext/libarchive-2.8.4/libarchive/archive_read_support_format_mtree.c +0 -1304
- data/ext/libarchive-2.8.4/libarchive/archive_read_support_format_zip.c +0 -903
- data/ext/libarchive-2.8.4/libarchive/archive_string.c +0 -453
- data/ext/libarchive-2.8.4/libarchive/archive_string.h +0 -148
- data/ext/libarchive-2.8.4/libarchive/archive_util.c +0 -391
- data/ext/libarchive-2.8.4/libarchive/archive_write.c +0 -466
- data/ext/libarchive-2.8.4/libarchive/archive_write_disk.c +0 -2628
- data/ext/libarchive-2.8.4/libarchive/archive_write_set_compression_bzip2.c +0 -408
- data/ext/libarchive-2.8.4/libarchive/archive_write_set_compression_gzip.c +0 -477
- data/ext/libarchive-2.8.4/libarchive/archive_write_set_compression_none.c +0 -257
- data/ext/libarchive-2.8.4/libarchive/archive_write_set_compression_program.c +0 -347
- data/ext/libarchive-2.8.4/libarchive/archive_write_set_compression_xz.c +0 -438
- data/ext/libarchive-2.8.4/libarchive/archive_write_set_format_cpio.c +0 -344
- data/ext/libarchive-2.8.4/libarchive/archive_write_set_format_cpio_newc.c +0 -295
- data/ext/libarchive-2.8.4/libarchive/archive_write_set_format_mtree.c +0 -1050
- data/ext/libarchive-2.8.4/libarchive/archive_write_set_format_zip.c +0 -667
- data/ext/libarchive-2.8.4/libarchive/config_freebsd.h +0 -154
- data/ext/libarchive-2.8.4/libarchive/filter_fork_windows.c +0 -113
- data/ext/zlib-1.2.5/Makefile.in +0 -257
- data/ext/zlib-1.2.5/configure +0 -596
- data/ext/zlib-1.2.5/crc32.c +0 -442
- data/ext/zlib-1.2.5/crc32.h +0 -441
- data/ext/zlib-1.2.5/example.c +0 -565
- data/ext/zlib-1.2.5/gzread.c +0 -653
- data/ext/zlib-1.2.5/gzwrite.c +0 -531
- data/ext/zlib-1.2.5/minigzip.c +0 -440
- data/ext/zlib-1.2.5/uncompr.c +0 -59
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
/*-
|
|
2
2
|
* Copyright (c) 2003-2008 Tim Kientzle
|
|
3
|
+
* Copyright (c) 2016 Martin Matuska
|
|
3
4
|
* All rights reserved.
|
|
4
5
|
*
|
|
5
6
|
* Redistribution and use in source and binary forms, with or without
|
|
@@ -28,6 +29,9 @@
|
|
|
28
29
|
#ifndef ARCHIVE_ENTRY_H_INCLUDED
|
|
29
30
|
#define ARCHIVE_ENTRY_H_INCLUDED
|
|
30
31
|
|
|
32
|
+
/* Note: Compiler will complain if this does not match archive.h! */
|
|
33
|
+
#define ARCHIVE_VERSION_NUMBER 3006002
|
|
34
|
+
|
|
31
35
|
/*
|
|
32
36
|
* Note: archive_entry.h is for use outside of libarchive; the
|
|
33
37
|
* configuration headers (config.h, archive_platform.h, etc.) are
|
|
@@ -38,44 +42,66 @@
|
|
|
38
42
|
|
|
39
43
|
#include <sys/types.h>
|
|
40
44
|
#include <stddef.h> /* for wchar_t */
|
|
45
|
+
#include <stdint.h>
|
|
41
46
|
#include <time.h>
|
|
42
47
|
|
|
43
48
|
#if defined(_WIN32) && !defined(__CYGWIN__)
|
|
44
49
|
#include <windows.h>
|
|
45
50
|
#endif
|
|
46
51
|
|
|
47
|
-
/* Get
|
|
48
|
-
|
|
49
|
-
#if
|
|
50
|
-
#define
|
|
51
|
-
# if defined(__BORLANDC__)
|
|
52
|
-
# define __LA_UID_T uid_t
|
|
53
|
-
# define __LA_GID_T gid_t
|
|
54
|
-
# define __LA_DEV_T dev_t
|
|
55
|
-
# define __LA_MODE_T mode_t
|
|
56
|
-
# else
|
|
57
|
-
# define __LA_UID_T short
|
|
58
|
-
# define __LA_GID_T short
|
|
59
|
-
# define __LA_DEV_T unsigned int
|
|
60
|
-
# define __LA_MODE_T unsigned short
|
|
52
|
+
/* Get a suitable 64-bit integer type. */
|
|
53
|
+
#if !defined(__LA_INT64_T_DEFINED)
|
|
54
|
+
# if ARCHIVE_VERSION_NUMBER < 4000000
|
|
55
|
+
#define __LA_INT64_T la_int64_t
|
|
61
56
|
# endif
|
|
62
|
-
#
|
|
57
|
+
#define __LA_INT64_T_DEFINED
|
|
58
|
+
# if defined(_WIN32) && !defined(__CYGWIN__) && !defined(__WATCOMC__)
|
|
59
|
+
typedef __int64 la_int64_t;
|
|
60
|
+
# else
|
|
63
61
|
#include <unistd.h>
|
|
64
|
-
#
|
|
65
|
-
|
|
66
|
-
#
|
|
67
|
-
|
|
68
|
-
#
|
|
62
|
+
# if defined(_SCO_DS) || defined(__osf__)
|
|
63
|
+
typedef long long la_int64_t;
|
|
64
|
+
# else
|
|
65
|
+
typedef int64_t la_int64_t;
|
|
66
|
+
# endif
|
|
67
|
+
# endif
|
|
69
68
|
#endif
|
|
70
69
|
|
|
71
|
-
/*
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
#define
|
|
70
|
+
/* The la_ssize_t should match the type used in 'struct stat' */
|
|
71
|
+
#if !defined(__LA_SSIZE_T_DEFINED)
|
|
72
|
+
/* Older code relied on the __LA_SSIZE_T macro; after 4.0 we'll switch to the typedef exclusively. */
|
|
73
|
+
# if ARCHIVE_VERSION_NUMBER < 4000000
|
|
74
|
+
#define __LA_SSIZE_T la_ssize_t
|
|
75
|
+
# endif
|
|
76
|
+
#define __LA_SSIZE_T_DEFINED
|
|
77
|
+
# if defined(_WIN32) && !defined(__CYGWIN__) && !defined(__WATCOMC__)
|
|
78
|
+
# if defined(_SSIZE_T_DEFINED) || defined(_SSIZE_T_)
|
|
79
|
+
typedef ssize_t la_ssize_t;
|
|
80
|
+
# elif defined(_WIN64)
|
|
81
|
+
typedef __int64 la_ssize_t;
|
|
82
|
+
# else
|
|
83
|
+
typedef long la_ssize_t;
|
|
84
|
+
# endif
|
|
85
|
+
# else
|
|
86
|
+
# include <unistd.h> /* ssize_t */
|
|
87
|
+
typedef ssize_t la_ssize_t;
|
|
88
|
+
# endif
|
|
89
|
+
#endif
|
|
78
90
|
|
|
91
|
+
/* Get a suitable definition for mode_t */
|
|
92
|
+
#if ARCHIVE_VERSION_NUMBER >= 3999000
|
|
93
|
+
/* Switch to plain 'int' for libarchive 4.0. It's less broken than 'mode_t' */
|
|
94
|
+
# define __LA_MODE_T int
|
|
95
|
+
#elif defined(_WIN32) && !defined(__CYGWIN__) && !defined(__BORLANDC__) && !defined(__WATCOMC__)
|
|
96
|
+
# define __LA_MODE_T unsigned short
|
|
97
|
+
#else
|
|
98
|
+
# define __LA_MODE_T mode_t
|
|
99
|
+
#endif
|
|
100
|
+
|
|
101
|
+
/* Large file support for Android */
|
|
102
|
+
#if defined(__LIBARCHIVE_BUILD) && defined(__ANDROID__)
|
|
103
|
+
#include "android_lf.h"
|
|
104
|
+
#endif
|
|
79
105
|
|
|
80
106
|
/*
|
|
81
107
|
* On Windows, define LIBARCHIVE_STATIC if you're building or using a
|
|
@@ -91,16 +117,24 @@
|
|
|
91
117
|
# endif
|
|
92
118
|
# else
|
|
93
119
|
# ifdef __GNUC__
|
|
94
|
-
# define __LA_DECL
|
|
120
|
+
# define __LA_DECL
|
|
95
121
|
# else
|
|
96
122
|
# define __LA_DECL __declspec(dllimport)
|
|
97
123
|
# endif
|
|
98
124
|
# endif
|
|
125
|
+
#elif defined __LIBARCHIVE_ENABLE_VISIBILITY
|
|
126
|
+
# define __LA_DECL __attribute__((visibility("default")))
|
|
99
127
|
#else
|
|
100
128
|
/* Static libraries on all platforms and shared libraries on non-Windows. */
|
|
101
129
|
# define __LA_DECL
|
|
102
130
|
#endif
|
|
103
131
|
|
|
132
|
+
#if defined(__GNUC__) && __GNUC__ >= 3 && __GNUC_MINOR__ >= 1
|
|
133
|
+
# define __LA_DEPRECATED __attribute__((deprecated))
|
|
134
|
+
#else
|
|
135
|
+
# define __LA_DEPRECATED
|
|
136
|
+
#endif
|
|
137
|
+
|
|
104
138
|
#ifdef __cplusplus
|
|
105
139
|
extern "C" {
|
|
106
140
|
#endif
|
|
@@ -121,6 +155,7 @@ extern "C" {
|
|
|
121
155
|
* applications (e.g., a package manager could attach special
|
|
122
156
|
* package-management attributes to each entry).
|
|
123
157
|
*/
|
|
158
|
+
struct archive;
|
|
124
159
|
struct archive_entry;
|
|
125
160
|
|
|
126
161
|
/*
|
|
@@ -144,14 +179,25 @@ struct archive_entry;
|
|
|
144
179
|
* portable values to platform-native values when entries are read from
|
|
145
180
|
* or written to disk.
|
|
146
181
|
*/
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
#define
|
|
152
|
-
#define
|
|
153
|
-
#define
|
|
154
|
-
#define
|
|
182
|
+
/*
|
|
183
|
+
* In libarchive 4.0, we can drop the casts here.
|
|
184
|
+
* They're needed to work around Borland C's broken mode_t.
|
|
185
|
+
*/
|
|
186
|
+
#define AE_IFMT ((__LA_MODE_T)0170000)
|
|
187
|
+
#define AE_IFREG ((__LA_MODE_T)0100000)
|
|
188
|
+
#define AE_IFLNK ((__LA_MODE_T)0120000)
|
|
189
|
+
#define AE_IFSOCK ((__LA_MODE_T)0140000)
|
|
190
|
+
#define AE_IFCHR ((__LA_MODE_T)0020000)
|
|
191
|
+
#define AE_IFBLK ((__LA_MODE_T)0060000)
|
|
192
|
+
#define AE_IFDIR ((__LA_MODE_T)0040000)
|
|
193
|
+
#define AE_IFIFO ((__LA_MODE_T)0010000)
|
|
194
|
+
|
|
195
|
+
/*
|
|
196
|
+
* Symlink types
|
|
197
|
+
*/
|
|
198
|
+
#define AE_SYMLINK_TYPE_UNDEFINED 0
|
|
199
|
+
#define AE_SYMLINK_TYPE_FILE 1
|
|
200
|
+
#define AE_SYMLINK_TYPE_DIRECTORY 2
|
|
155
201
|
|
|
156
202
|
/*
|
|
157
203
|
* Basic object manipulation
|
|
@@ -163,6 +209,15 @@ __LA_DECL struct archive_entry *archive_entry_clone(struct archive_entry *);
|
|
|
163
209
|
__LA_DECL void archive_entry_free(struct archive_entry *);
|
|
164
210
|
__LA_DECL struct archive_entry *archive_entry_new(void);
|
|
165
211
|
|
|
212
|
+
/*
|
|
213
|
+
* This form of archive_entry_new2() will pull character-set
|
|
214
|
+
* conversion information from the specified archive handle. The
|
|
215
|
+
* older archive_entry_new(void) form is equivalent to calling
|
|
216
|
+
* archive_entry_new2(NULL) and will result in the use of an internal
|
|
217
|
+
* default character-set conversion.
|
|
218
|
+
*/
|
|
219
|
+
__LA_DECL struct archive_entry *archive_entry_new2(struct archive *);
|
|
220
|
+
|
|
166
221
|
/*
|
|
167
222
|
* Retrieve fields from an archive_entry.
|
|
168
223
|
*
|
|
@@ -192,6 +247,7 @@ __LA_DECL time_t archive_entry_ctime(struct archive_entry *);
|
|
|
192
247
|
__LA_DECL long archive_entry_ctime_nsec(struct archive_entry *);
|
|
193
248
|
__LA_DECL int archive_entry_ctime_is_set(struct archive_entry *);
|
|
194
249
|
__LA_DECL dev_t archive_entry_dev(struct archive_entry *);
|
|
250
|
+
__LA_DECL int archive_entry_dev_is_set(struct archive_entry *);
|
|
195
251
|
__LA_DECL dev_t archive_entry_devmajor(struct archive_entry *);
|
|
196
252
|
__LA_DECL dev_t archive_entry_devminor(struct archive_entry *);
|
|
197
253
|
__LA_DECL __LA_MODE_T archive_entry_filetype(struct archive_entry *);
|
|
@@ -199,49 +255,58 @@ __LA_DECL void archive_entry_fflags(struct archive_entry *,
|
|
|
199
255
|
unsigned long * /* set */,
|
|
200
256
|
unsigned long * /* clear */);
|
|
201
257
|
__LA_DECL const char *archive_entry_fflags_text(struct archive_entry *);
|
|
202
|
-
__LA_DECL
|
|
258
|
+
__LA_DECL la_int64_t archive_entry_gid(struct archive_entry *);
|
|
203
259
|
__LA_DECL const char *archive_entry_gname(struct archive_entry *);
|
|
260
|
+
__LA_DECL const char *archive_entry_gname_utf8(struct archive_entry *);
|
|
204
261
|
__LA_DECL const wchar_t *archive_entry_gname_w(struct archive_entry *);
|
|
205
262
|
__LA_DECL const char *archive_entry_hardlink(struct archive_entry *);
|
|
263
|
+
__LA_DECL const char *archive_entry_hardlink_utf8(struct archive_entry *);
|
|
206
264
|
__LA_DECL const wchar_t *archive_entry_hardlink_w(struct archive_entry *);
|
|
207
|
-
__LA_DECL
|
|
208
|
-
__LA_DECL
|
|
265
|
+
__LA_DECL la_int64_t archive_entry_ino(struct archive_entry *);
|
|
266
|
+
__LA_DECL la_int64_t archive_entry_ino64(struct archive_entry *);
|
|
267
|
+
__LA_DECL int archive_entry_ino_is_set(struct archive_entry *);
|
|
209
268
|
__LA_DECL __LA_MODE_T archive_entry_mode(struct archive_entry *);
|
|
210
269
|
__LA_DECL time_t archive_entry_mtime(struct archive_entry *);
|
|
211
270
|
__LA_DECL long archive_entry_mtime_nsec(struct archive_entry *);
|
|
212
271
|
__LA_DECL int archive_entry_mtime_is_set(struct archive_entry *);
|
|
213
272
|
__LA_DECL unsigned int archive_entry_nlink(struct archive_entry *);
|
|
214
273
|
__LA_DECL const char *archive_entry_pathname(struct archive_entry *);
|
|
274
|
+
__LA_DECL const char *archive_entry_pathname_utf8(struct archive_entry *);
|
|
215
275
|
__LA_DECL const wchar_t *archive_entry_pathname_w(struct archive_entry *);
|
|
276
|
+
__LA_DECL __LA_MODE_T archive_entry_perm(struct archive_entry *);
|
|
216
277
|
__LA_DECL dev_t archive_entry_rdev(struct archive_entry *);
|
|
217
278
|
__LA_DECL dev_t archive_entry_rdevmajor(struct archive_entry *);
|
|
218
279
|
__LA_DECL dev_t archive_entry_rdevminor(struct archive_entry *);
|
|
219
280
|
__LA_DECL const char *archive_entry_sourcepath(struct archive_entry *);
|
|
220
|
-
__LA_DECL
|
|
281
|
+
__LA_DECL const wchar_t *archive_entry_sourcepath_w(struct archive_entry *);
|
|
282
|
+
__LA_DECL la_int64_t archive_entry_size(struct archive_entry *);
|
|
221
283
|
__LA_DECL int archive_entry_size_is_set(struct archive_entry *);
|
|
222
284
|
__LA_DECL const char *archive_entry_strmode(struct archive_entry *);
|
|
223
285
|
__LA_DECL const char *archive_entry_symlink(struct archive_entry *);
|
|
286
|
+
__LA_DECL const char *archive_entry_symlink_utf8(struct archive_entry *);
|
|
287
|
+
__LA_DECL int archive_entry_symlink_type(struct archive_entry *);
|
|
224
288
|
__LA_DECL const wchar_t *archive_entry_symlink_w(struct archive_entry *);
|
|
225
|
-
__LA_DECL
|
|
289
|
+
__LA_DECL la_int64_t archive_entry_uid(struct archive_entry *);
|
|
226
290
|
__LA_DECL const char *archive_entry_uname(struct archive_entry *);
|
|
291
|
+
__LA_DECL const char *archive_entry_uname_utf8(struct archive_entry *);
|
|
227
292
|
__LA_DECL const wchar_t *archive_entry_uname_w(struct archive_entry *);
|
|
293
|
+
__LA_DECL int archive_entry_is_data_encrypted(struct archive_entry *);
|
|
294
|
+
__LA_DECL int archive_entry_is_metadata_encrypted(struct archive_entry *);
|
|
295
|
+
__LA_DECL int archive_entry_is_encrypted(struct archive_entry *);
|
|
228
296
|
|
|
229
297
|
/*
|
|
230
298
|
* Set fields in an archive_entry.
|
|
231
299
|
*
|
|
232
|
-
* Note
|
|
233
|
-
*
|
|
234
|
-
*
|
|
235
|
-
*
|
|
236
|
-
* are therefore exact synonyms for the 'copy' versions. The 'copy'
|
|
237
|
-
* names will be retired in libarchive 3.0.
|
|
300
|
+
* Note: Before libarchive 2.4, there were 'set' and 'copy' versions
|
|
301
|
+
* of the string setters. 'copy' copied the actual string, 'set' just
|
|
302
|
+
* stored the pointer. In libarchive 2.4 and later, strings are
|
|
303
|
+
* always copied.
|
|
238
304
|
*/
|
|
239
305
|
|
|
240
306
|
__LA_DECL void archive_entry_set_atime(struct archive_entry *, time_t, long);
|
|
241
307
|
__LA_DECL void archive_entry_unset_atime(struct archive_entry *);
|
|
242
308
|
#if defined(_WIN32) && !defined(__CYGWIN__)
|
|
243
|
-
__LA_DECL void archive_entry_copy_bhfi(struct archive_entry *,
|
|
244
|
-
BY_HANDLE_FILE_INFORMATION *);
|
|
309
|
+
__LA_DECL void archive_entry_copy_bhfi(struct archive_entry *, BY_HANDLE_FILE_INFORMATION *);
|
|
245
310
|
#endif
|
|
246
311
|
__LA_DECL void archive_entry_set_birthtime(struct archive_entry *, time_t, long);
|
|
247
312
|
__LA_DECL void archive_entry_unset_birthtime(struct archive_entry *);
|
|
@@ -259,23 +324,21 @@ __LA_DECL const char *archive_entry_copy_fflags_text(struct archive_entry *,
|
|
|
259
324
|
const char *);
|
|
260
325
|
__LA_DECL const wchar_t *archive_entry_copy_fflags_text_w(struct archive_entry *,
|
|
261
326
|
const wchar_t *);
|
|
262
|
-
__LA_DECL void archive_entry_set_gid(struct archive_entry *,
|
|
327
|
+
__LA_DECL void archive_entry_set_gid(struct archive_entry *, la_int64_t);
|
|
263
328
|
__LA_DECL void archive_entry_set_gname(struct archive_entry *, const char *);
|
|
329
|
+
__LA_DECL void archive_entry_set_gname_utf8(struct archive_entry *, const char *);
|
|
264
330
|
__LA_DECL void archive_entry_copy_gname(struct archive_entry *, const char *);
|
|
265
331
|
__LA_DECL void archive_entry_copy_gname_w(struct archive_entry *, const wchar_t *);
|
|
266
332
|
__LA_DECL int archive_entry_update_gname_utf8(struct archive_entry *, const char *);
|
|
267
333
|
__LA_DECL void archive_entry_set_hardlink(struct archive_entry *, const char *);
|
|
334
|
+
__LA_DECL void archive_entry_set_hardlink_utf8(struct archive_entry *, const char *);
|
|
268
335
|
__LA_DECL void archive_entry_copy_hardlink(struct archive_entry *, const char *);
|
|
269
336
|
__LA_DECL void archive_entry_copy_hardlink_w(struct archive_entry *, const wchar_t *);
|
|
270
337
|
__LA_DECL int archive_entry_update_hardlink_utf8(struct archive_entry *, const char *);
|
|
271
|
-
|
|
272
|
-
|
|
273
|
-
__LA_DECL void archive_entry_set_ino(struct archive_entry *, __LA_INT64_T);
|
|
274
|
-
#else
|
|
275
|
-
__LA_DECL void archive_entry_set_ino(struct archive_entry *, unsigned long);
|
|
276
|
-
#endif
|
|
277
|
-
__LA_DECL void archive_entry_set_ino64(struct archive_entry *, __LA_INT64_T);
|
|
338
|
+
__LA_DECL void archive_entry_set_ino(struct archive_entry *, la_int64_t);
|
|
339
|
+
__LA_DECL void archive_entry_set_ino64(struct archive_entry *, la_int64_t);
|
|
278
340
|
__LA_DECL void archive_entry_set_link(struct archive_entry *, const char *);
|
|
341
|
+
__LA_DECL void archive_entry_set_link_utf8(struct archive_entry *, const char *);
|
|
279
342
|
__LA_DECL void archive_entry_copy_link(struct archive_entry *, const char *);
|
|
280
343
|
__LA_DECL void archive_entry_copy_link_w(struct archive_entry *, const wchar_t *);
|
|
281
344
|
__LA_DECL int archive_entry_update_link_utf8(struct archive_entry *, const char *);
|
|
@@ -284,6 +347,7 @@ __LA_DECL void archive_entry_set_mtime(struct archive_entry *, time_t, long);
|
|
|
284
347
|
__LA_DECL void archive_entry_unset_mtime(struct archive_entry *);
|
|
285
348
|
__LA_DECL void archive_entry_set_nlink(struct archive_entry *, unsigned int);
|
|
286
349
|
__LA_DECL void archive_entry_set_pathname(struct archive_entry *, const char *);
|
|
350
|
+
__LA_DECL void archive_entry_set_pathname_utf8(struct archive_entry *, const char *);
|
|
287
351
|
__LA_DECL void archive_entry_copy_pathname(struct archive_entry *, const char *);
|
|
288
352
|
__LA_DECL void archive_entry_copy_pathname_w(struct archive_entry *, const wchar_t *);
|
|
289
353
|
__LA_DECL int archive_entry_update_pathname_utf8(struct archive_entry *, const char *);
|
|
@@ -291,18 +355,24 @@ __LA_DECL void archive_entry_set_perm(struct archive_entry *, __LA_MODE_T);
|
|
|
291
355
|
__LA_DECL void archive_entry_set_rdev(struct archive_entry *, dev_t);
|
|
292
356
|
__LA_DECL void archive_entry_set_rdevmajor(struct archive_entry *, dev_t);
|
|
293
357
|
__LA_DECL void archive_entry_set_rdevminor(struct archive_entry *, dev_t);
|
|
294
|
-
__LA_DECL void archive_entry_set_size(struct archive_entry *,
|
|
358
|
+
__LA_DECL void archive_entry_set_size(struct archive_entry *, la_int64_t);
|
|
295
359
|
__LA_DECL void archive_entry_unset_size(struct archive_entry *);
|
|
296
360
|
__LA_DECL void archive_entry_copy_sourcepath(struct archive_entry *, const char *);
|
|
361
|
+
__LA_DECL void archive_entry_copy_sourcepath_w(struct archive_entry *, const wchar_t *);
|
|
297
362
|
__LA_DECL void archive_entry_set_symlink(struct archive_entry *, const char *);
|
|
363
|
+
__LA_DECL void archive_entry_set_symlink_type(struct archive_entry *, int);
|
|
364
|
+
__LA_DECL void archive_entry_set_symlink_utf8(struct archive_entry *, const char *);
|
|
298
365
|
__LA_DECL void archive_entry_copy_symlink(struct archive_entry *, const char *);
|
|
299
366
|
__LA_DECL void archive_entry_copy_symlink_w(struct archive_entry *, const wchar_t *);
|
|
300
367
|
__LA_DECL int archive_entry_update_symlink_utf8(struct archive_entry *, const char *);
|
|
301
|
-
__LA_DECL void archive_entry_set_uid(struct archive_entry *,
|
|
368
|
+
__LA_DECL void archive_entry_set_uid(struct archive_entry *, la_int64_t);
|
|
302
369
|
__LA_DECL void archive_entry_set_uname(struct archive_entry *, const char *);
|
|
370
|
+
__LA_DECL void archive_entry_set_uname_utf8(struct archive_entry *, const char *);
|
|
303
371
|
__LA_DECL void archive_entry_copy_uname(struct archive_entry *, const char *);
|
|
304
372
|
__LA_DECL void archive_entry_copy_uname_w(struct archive_entry *, const wchar_t *);
|
|
305
373
|
__LA_DECL int archive_entry_update_uname_utf8(struct archive_entry *, const char *);
|
|
374
|
+
__LA_DECL void archive_entry_set_is_data_encrypted(struct archive_entry *, char is_encrypted);
|
|
375
|
+
__LA_DECL void archive_entry_set_is_metadata_encrypted(struct archive_entry *, char is_encrypted);
|
|
306
376
|
/*
|
|
307
377
|
* Routines to bulk copy fields to/from a platform-native "struct
|
|
308
378
|
* stat." Libarchive used to just store a struct stat inside of each
|
|
@@ -310,11 +380,36 @@ __LA_DECL int archive_entry_update_uname_utf8(struct archive_entry *, const char
|
|
|
310
380
|
* manipulate archives on systems different than the ones they were
|
|
311
381
|
* created on.
|
|
312
382
|
*
|
|
313
|
-
* TODO: On Linux, provide both stat32 and
|
|
383
|
+
* TODO: On Linux and other LFS systems, provide both stat32 and
|
|
384
|
+
* stat64 versions of these functions and all of the macro glue so
|
|
385
|
+
* that archive_entry_stat is magically defined to
|
|
386
|
+
* archive_entry_stat32 or archive_entry_stat64 as appropriate.
|
|
314
387
|
*/
|
|
315
388
|
__LA_DECL const struct stat *archive_entry_stat(struct archive_entry *);
|
|
316
389
|
__LA_DECL void archive_entry_copy_stat(struct archive_entry *, const struct stat *);
|
|
317
390
|
|
|
391
|
+
/*
|
|
392
|
+
* Storage for Mac OS-specific AppleDouble metadata information.
|
|
393
|
+
* Apple-format tar files store a separate binary blob containing
|
|
394
|
+
* encoded metadata with ACL, extended attributes, etc.
|
|
395
|
+
* This provides a place to store that blob.
|
|
396
|
+
*/
|
|
397
|
+
|
|
398
|
+
__LA_DECL const void * archive_entry_mac_metadata(struct archive_entry *, size_t *);
|
|
399
|
+
__LA_DECL void archive_entry_copy_mac_metadata(struct archive_entry *, const void *, size_t);
|
|
400
|
+
|
|
401
|
+
/*
|
|
402
|
+
* Digest routine. This is used to query the raw hex digest for the
|
|
403
|
+
* given entry. The type of digest is provided as an argument.
|
|
404
|
+
*/
|
|
405
|
+
#define ARCHIVE_ENTRY_DIGEST_MD5 0x00000001
|
|
406
|
+
#define ARCHIVE_ENTRY_DIGEST_RMD160 0x00000002
|
|
407
|
+
#define ARCHIVE_ENTRY_DIGEST_SHA1 0x00000003
|
|
408
|
+
#define ARCHIVE_ENTRY_DIGEST_SHA256 0x00000004
|
|
409
|
+
#define ARCHIVE_ENTRY_DIGEST_SHA384 0x00000005
|
|
410
|
+
#define ARCHIVE_ENTRY_DIGEST_SHA512 0x00000006
|
|
411
|
+
|
|
412
|
+
__LA_DECL const unsigned char * archive_entry_digest(struct archive_entry *, int /* type */);
|
|
318
413
|
|
|
319
414
|
/*
|
|
320
415
|
* ACL routines. This used to simply store and return text-format ACL
|
|
@@ -326,32 +421,97 @@ __LA_DECL void archive_entry_copy_stat(struct archive_entry *, const struct stat
|
|
|
326
421
|
*
|
|
327
422
|
* This last point, in particular, forces me to implement a reasonably
|
|
328
423
|
* complete set of ACL support routines.
|
|
329
|
-
*
|
|
330
|
-
* TODO: Extend this to support NFSv4/NTFS permissions. That should
|
|
331
|
-
* allow full ACL support on Mac OS, in particular, which uses
|
|
332
|
-
* POSIX.1e-style interfaces to manipulate NFSv4/NTFS permissions.
|
|
333
424
|
*/
|
|
334
425
|
|
|
335
426
|
/*
|
|
336
|
-
* Permission bits
|
|
337
|
-
* "permset"/"perm" abstract type nonsense. A permset is just a simple
|
|
338
|
-
* bitmap, following long-standing Unix tradition.
|
|
427
|
+
* Permission bits.
|
|
339
428
|
*/
|
|
340
|
-
#define ARCHIVE_ENTRY_ACL_EXECUTE
|
|
341
|
-
#define ARCHIVE_ENTRY_ACL_WRITE
|
|
342
|
-
#define ARCHIVE_ENTRY_ACL_READ
|
|
429
|
+
#define ARCHIVE_ENTRY_ACL_EXECUTE 0x00000001
|
|
430
|
+
#define ARCHIVE_ENTRY_ACL_WRITE 0x00000002
|
|
431
|
+
#define ARCHIVE_ENTRY_ACL_READ 0x00000004
|
|
432
|
+
#define ARCHIVE_ENTRY_ACL_READ_DATA 0x00000008
|
|
433
|
+
#define ARCHIVE_ENTRY_ACL_LIST_DIRECTORY 0x00000008
|
|
434
|
+
#define ARCHIVE_ENTRY_ACL_WRITE_DATA 0x00000010
|
|
435
|
+
#define ARCHIVE_ENTRY_ACL_ADD_FILE 0x00000010
|
|
436
|
+
#define ARCHIVE_ENTRY_ACL_APPEND_DATA 0x00000020
|
|
437
|
+
#define ARCHIVE_ENTRY_ACL_ADD_SUBDIRECTORY 0x00000020
|
|
438
|
+
#define ARCHIVE_ENTRY_ACL_READ_NAMED_ATTRS 0x00000040
|
|
439
|
+
#define ARCHIVE_ENTRY_ACL_WRITE_NAMED_ATTRS 0x00000080
|
|
440
|
+
#define ARCHIVE_ENTRY_ACL_DELETE_CHILD 0x00000100
|
|
441
|
+
#define ARCHIVE_ENTRY_ACL_READ_ATTRIBUTES 0x00000200
|
|
442
|
+
#define ARCHIVE_ENTRY_ACL_WRITE_ATTRIBUTES 0x00000400
|
|
443
|
+
#define ARCHIVE_ENTRY_ACL_DELETE 0x00000800
|
|
444
|
+
#define ARCHIVE_ENTRY_ACL_READ_ACL 0x00001000
|
|
445
|
+
#define ARCHIVE_ENTRY_ACL_WRITE_ACL 0x00002000
|
|
446
|
+
#define ARCHIVE_ENTRY_ACL_WRITE_OWNER 0x00004000
|
|
447
|
+
#define ARCHIVE_ENTRY_ACL_SYNCHRONIZE 0x00008000
|
|
448
|
+
|
|
449
|
+
#define ARCHIVE_ENTRY_ACL_PERMS_POSIX1E \
|
|
450
|
+
(ARCHIVE_ENTRY_ACL_EXECUTE \
|
|
451
|
+
| ARCHIVE_ENTRY_ACL_WRITE \
|
|
452
|
+
| ARCHIVE_ENTRY_ACL_READ)
|
|
453
|
+
|
|
454
|
+
#define ARCHIVE_ENTRY_ACL_PERMS_NFS4 \
|
|
455
|
+
(ARCHIVE_ENTRY_ACL_EXECUTE \
|
|
456
|
+
| ARCHIVE_ENTRY_ACL_READ_DATA \
|
|
457
|
+
| ARCHIVE_ENTRY_ACL_LIST_DIRECTORY \
|
|
458
|
+
| ARCHIVE_ENTRY_ACL_WRITE_DATA \
|
|
459
|
+
| ARCHIVE_ENTRY_ACL_ADD_FILE \
|
|
460
|
+
| ARCHIVE_ENTRY_ACL_APPEND_DATA \
|
|
461
|
+
| ARCHIVE_ENTRY_ACL_ADD_SUBDIRECTORY \
|
|
462
|
+
| ARCHIVE_ENTRY_ACL_READ_NAMED_ATTRS \
|
|
463
|
+
| ARCHIVE_ENTRY_ACL_WRITE_NAMED_ATTRS \
|
|
464
|
+
| ARCHIVE_ENTRY_ACL_DELETE_CHILD \
|
|
465
|
+
| ARCHIVE_ENTRY_ACL_READ_ATTRIBUTES \
|
|
466
|
+
| ARCHIVE_ENTRY_ACL_WRITE_ATTRIBUTES \
|
|
467
|
+
| ARCHIVE_ENTRY_ACL_DELETE \
|
|
468
|
+
| ARCHIVE_ENTRY_ACL_READ_ACL \
|
|
469
|
+
| ARCHIVE_ENTRY_ACL_WRITE_ACL \
|
|
470
|
+
| ARCHIVE_ENTRY_ACL_WRITE_OWNER \
|
|
471
|
+
| ARCHIVE_ENTRY_ACL_SYNCHRONIZE)
|
|
343
472
|
|
|
344
|
-
/*
|
|
345
|
-
|
|
346
|
-
|
|
473
|
+
/*
|
|
474
|
+
* Inheritance values (NFS4 ACLs only); included in permset.
|
|
475
|
+
*/
|
|
476
|
+
#define ARCHIVE_ENTRY_ACL_ENTRY_INHERITED 0x01000000
|
|
477
|
+
#define ARCHIVE_ENTRY_ACL_ENTRY_FILE_INHERIT 0x02000000
|
|
478
|
+
#define ARCHIVE_ENTRY_ACL_ENTRY_DIRECTORY_INHERIT 0x04000000
|
|
479
|
+
#define ARCHIVE_ENTRY_ACL_ENTRY_NO_PROPAGATE_INHERIT 0x08000000
|
|
480
|
+
#define ARCHIVE_ENTRY_ACL_ENTRY_INHERIT_ONLY 0x10000000
|
|
481
|
+
#define ARCHIVE_ENTRY_ACL_ENTRY_SUCCESSFUL_ACCESS 0x20000000
|
|
482
|
+
#define ARCHIVE_ENTRY_ACL_ENTRY_FAILED_ACCESS 0x40000000
|
|
483
|
+
|
|
484
|
+
#define ARCHIVE_ENTRY_ACL_INHERITANCE_NFS4 \
|
|
485
|
+
(ARCHIVE_ENTRY_ACL_ENTRY_FILE_INHERIT \
|
|
486
|
+
| ARCHIVE_ENTRY_ACL_ENTRY_DIRECTORY_INHERIT \
|
|
487
|
+
| ARCHIVE_ENTRY_ACL_ENTRY_NO_PROPAGATE_INHERIT \
|
|
488
|
+
| ARCHIVE_ENTRY_ACL_ENTRY_INHERIT_ONLY \
|
|
489
|
+
| ARCHIVE_ENTRY_ACL_ENTRY_SUCCESSFUL_ACCESS \
|
|
490
|
+
| ARCHIVE_ENTRY_ACL_ENTRY_FAILED_ACCESS \
|
|
491
|
+
| ARCHIVE_ENTRY_ACL_ENTRY_INHERITED)
|
|
492
|
+
|
|
493
|
+
/* We need to be able to specify combinations of these. */
|
|
494
|
+
#define ARCHIVE_ENTRY_ACL_TYPE_ACCESS 0x00000100 /* POSIX.1e only */
|
|
495
|
+
#define ARCHIVE_ENTRY_ACL_TYPE_DEFAULT 0x00000200 /* POSIX.1e only */
|
|
496
|
+
#define ARCHIVE_ENTRY_ACL_TYPE_ALLOW 0x00000400 /* NFS4 only */
|
|
497
|
+
#define ARCHIVE_ENTRY_ACL_TYPE_DENY 0x00000800 /* NFS4 only */
|
|
498
|
+
#define ARCHIVE_ENTRY_ACL_TYPE_AUDIT 0x00001000 /* NFS4 only */
|
|
499
|
+
#define ARCHIVE_ENTRY_ACL_TYPE_ALARM 0x00002000 /* NFS4 only */
|
|
500
|
+
#define ARCHIVE_ENTRY_ACL_TYPE_POSIX1E (ARCHIVE_ENTRY_ACL_TYPE_ACCESS \
|
|
501
|
+
| ARCHIVE_ENTRY_ACL_TYPE_DEFAULT)
|
|
502
|
+
#define ARCHIVE_ENTRY_ACL_TYPE_NFS4 (ARCHIVE_ENTRY_ACL_TYPE_ALLOW \
|
|
503
|
+
| ARCHIVE_ENTRY_ACL_TYPE_DENY \
|
|
504
|
+
| ARCHIVE_ENTRY_ACL_TYPE_AUDIT \
|
|
505
|
+
| ARCHIVE_ENTRY_ACL_TYPE_ALARM)
|
|
347
506
|
|
|
348
507
|
/* Tag values mimic POSIX.1e */
|
|
349
508
|
#define ARCHIVE_ENTRY_ACL_USER 10001 /* Specified user. */
|
|
350
509
|
#define ARCHIVE_ENTRY_ACL_USER_OBJ 10002 /* User who owns the file. */
|
|
351
510
|
#define ARCHIVE_ENTRY_ACL_GROUP 10003 /* Specified group. */
|
|
352
511
|
#define ARCHIVE_ENTRY_ACL_GROUP_OBJ 10004 /* Group who owns the file. */
|
|
353
|
-
#define ARCHIVE_ENTRY_ACL_MASK 10005 /* Modify group access. */
|
|
354
|
-
#define ARCHIVE_ENTRY_ACL_OTHER 10006 /* Public. */
|
|
512
|
+
#define ARCHIVE_ENTRY_ACL_MASK 10005 /* Modify group access (POSIX.1e only) */
|
|
513
|
+
#define ARCHIVE_ENTRY_ACL_OTHER 10006 /* Public (POSIX.1e only) */
|
|
514
|
+
#define ARCHIVE_ENTRY_ACL_EVERYONE 10107 /* Everyone (NFS4 only) */
|
|
355
515
|
|
|
356
516
|
/*
|
|
357
517
|
* Set the ACL by clearing it and adding entries one at a time.
|
|
@@ -363,60 +523,80 @@ __LA_DECL void archive_entry_copy_stat(struct archive_entry *, const struct stat
|
|
|
363
523
|
* default and access information in a single ACL list.
|
|
364
524
|
*/
|
|
365
525
|
__LA_DECL void archive_entry_acl_clear(struct archive_entry *);
|
|
366
|
-
__LA_DECL
|
|
526
|
+
__LA_DECL int archive_entry_acl_add_entry(struct archive_entry *,
|
|
367
527
|
int /* type */, int /* permset */, int /* tag */,
|
|
368
528
|
int /* qual */, const char * /* name */);
|
|
369
|
-
__LA_DECL
|
|
529
|
+
__LA_DECL int archive_entry_acl_add_entry_w(struct archive_entry *,
|
|
370
530
|
int /* type */, int /* permset */, int /* tag */,
|
|
371
531
|
int /* qual */, const wchar_t * /* name */);
|
|
372
532
|
|
|
373
533
|
/*
|
|
374
534
|
* To retrieve the ACL, first "reset", then repeatedly ask for the
|
|
375
535
|
* "next" entry. The want_type parameter allows you to request only
|
|
376
|
-
*
|
|
536
|
+
* certain types of entries.
|
|
377
537
|
*/
|
|
378
538
|
__LA_DECL int archive_entry_acl_reset(struct archive_entry *, int /* want_type */);
|
|
379
539
|
__LA_DECL int archive_entry_acl_next(struct archive_entry *, int /* want_type */,
|
|
380
540
|
int * /* type */, int * /* permset */, int * /* tag */,
|
|
381
541
|
int * /* qual */, const char ** /* name */);
|
|
382
|
-
__LA_DECL int archive_entry_acl_next_w(struct archive_entry *, int /* want_type */,
|
|
383
|
-
int * /* type */, int * /* permset */, int * /* tag */,
|
|
384
|
-
int * /* qual */, const wchar_t ** /* name */);
|
|
385
542
|
|
|
386
543
|
/*
|
|
387
544
|
* Construct a text-format ACL. The flags argument is a bitmask that
|
|
388
545
|
* can include any of the following:
|
|
389
546
|
*
|
|
390
|
-
*
|
|
391
|
-
*
|
|
392
|
-
*
|
|
393
|
-
* each ACL entry. (As used by 'star'.)
|
|
547
|
+
* Flags only for archive entries with POSIX.1e ACL:
|
|
548
|
+
* ARCHIVE_ENTRY_ACL_TYPE_ACCESS - Include POSIX.1e "access" entries.
|
|
549
|
+
* ARCHIVE_ENTRY_ACL_TYPE_DEFAULT - Include POSIX.1e "default" entries.
|
|
394
550
|
* ARCHIVE_ENTRY_ACL_STYLE_MARK_DEFAULT - Include "default:" before each
|
|
395
551
|
* default ACL entry.
|
|
552
|
+
* ARCHIVE_ENTRY_ACL_STYLE_SOLARIS - Output only one colon after "other" and
|
|
553
|
+
* "mask" entries.
|
|
554
|
+
*
|
|
555
|
+
* Flags only for archive entries with NFSv4 ACL:
|
|
556
|
+
* ARCHIVE_ENTRY_ACL_STYLE_COMPACT - Do not output the minus character for
|
|
557
|
+
* unset permissions and flags in NFSv4 ACL permission and flag fields
|
|
558
|
+
*
|
|
559
|
+
* Flags for for archive entries with POSIX.1e ACL or NFSv4 ACL:
|
|
560
|
+
* ARCHIVE_ENTRY_ACL_STYLE_EXTRA_ID - Include extra numeric ID field in
|
|
561
|
+
* each ACL entry.
|
|
562
|
+
* ARCHIVE_ENTRY_ACL_STYLE_SEPARATOR_COMMA - Separate entries with comma
|
|
563
|
+
* instead of newline.
|
|
396
564
|
*/
|
|
397
|
-
#define ARCHIVE_ENTRY_ACL_STYLE_EXTRA_ID
|
|
398
|
-
#define ARCHIVE_ENTRY_ACL_STYLE_MARK_DEFAULT
|
|
565
|
+
#define ARCHIVE_ENTRY_ACL_STYLE_EXTRA_ID 0x00000001
|
|
566
|
+
#define ARCHIVE_ENTRY_ACL_STYLE_MARK_DEFAULT 0x00000002
|
|
567
|
+
#define ARCHIVE_ENTRY_ACL_STYLE_SOLARIS 0x00000004
|
|
568
|
+
#define ARCHIVE_ENTRY_ACL_STYLE_SEPARATOR_COMMA 0x00000008
|
|
569
|
+
#define ARCHIVE_ENTRY_ACL_STYLE_COMPACT 0x00000010
|
|
570
|
+
|
|
571
|
+
__LA_DECL wchar_t *archive_entry_acl_to_text_w(struct archive_entry *,
|
|
572
|
+
la_ssize_t * /* len */, int /* flags */);
|
|
573
|
+
__LA_DECL char *archive_entry_acl_to_text(struct archive_entry *,
|
|
574
|
+
la_ssize_t * /* len */, int /* flags */);
|
|
575
|
+
__LA_DECL int archive_entry_acl_from_text_w(struct archive_entry *,
|
|
576
|
+
const wchar_t * /* wtext */, int /* type */);
|
|
577
|
+
__LA_DECL int archive_entry_acl_from_text(struct archive_entry *,
|
|
578
|
+
const char * /* text */, int /* type */);
|
|
579
|
+
|
|
580
|
+
/* Deprecated constants */
|
|
581
|
+
#define OLD_ARCHIVE_ENTRY_ACL_STYLE_EXTRA_ID 1024
|
|
582
|
+
#define OLD_ARCHIVE_ENTRY_ACL_STYLE_MARK_DEFAULT 2048
|
|
583
|
+
|
|
584
|
+
/* Deprecated functions */
|
|
399
585
|
__LA_DECL const wchar_t *archive_entry_acl_text_w(struct archive_entry *,
|
|
400
|
-
int /* flags */);
|
|
586
|
+
int /* flags */) __LA_DEPRECATED;
|
|
587
|
+
__LA_DECL const char *archive_entry_acl_text(struct archive_entry *,
|
|
588
|
+
int /* flags */) __LA_DEPRECATED;
|
|
589
|
+
|
|
590
|
+
/* Return bitmask of ACL types in an archive entry */
|
|
591
|
+
__LA_DECL int archive_entry_acl_types(struct archive_entry *);
|
|
401
592
|
|
|
402
593
|
/* Return a count of entries matching 'want_type' */
|
|
403
594
|
__LA_DECL int archive_entry_acl_count(struct archive_entry *, int /* want_type */);
|
|
404
595
|
|
|
405
|
-
/*
|
|
406
|
-
|
|
407
|
-
|
|
408
|
-
|
|
409
|
-
* Because of the need to support many formats cleanly, new arguments
|
|
410
|
-
* are likely to get added on a regular basis. Clients who try to use
|
|
411
|
-
* this interface are likely to be surprised when it changes.
|
|
412
|
-
*
|
|
413
|
-
* You were warned!
|
|
414
|
-
*
|
|
415
|
-
* TODO: Move this declaration out of the public header and into
|
|
416
|
-
* a private header. Warnings above are silly.
|
|
417
|
-
*/
|
|
418
|
-
__LA_DECL int __archive_entry_acl_parse_w(struct archive_entry *,
|
|
419
|
-
const wchar_t *, int /* type */);
|
|
596
|
+
/* Return an opaque ACL object. */
|
|
597
|
+
/* There's not yet anything clients can actually do with this... */
|
|
598
|
+
struct archive_acl;
|
|
599
|
+
__LA_DECL struct archive_acl *archive_entry_acl(struct archive_entry *);
|
|
420
600
|
|
|
421
601
|
/*
|
|
422
602
|
* extended attributes
|
|
@@ -437,6 +617,24 @@ __LA_DECL int archive_entry_xattr_reset(struct archive_entry *);
|
|
|
437
617
|
__LA_DECL int archive_entry_xattr_next(struct archive_entry *,
|
|
438
618
|
const char ** /* name */, const void ** /* value */, size_t *);
|
|
439
619
|
|
|
620
|
+
/*
|
|
621
|
+
* sparse
|
|
622
|
+
*/
|
|
623
|
+
|
|
624
|
+
__LA_DECL void archive_entry_sparse_clear(struct archive_entry *);
|
|
625
|
+
__LA_DECL void archive_entry_sparse_add_entry(struct archive_entry *,
|
|
626
|
+
la_int64_t /* offset */, la_int64_t /* length */);
|
|
627
|
+
|
|
628
|
+
/*
|
|
629
|
+
* To retrieve the xattr list, first "reset", then repeatedly ask for the
|
|
630
|
+
* "next" entry.
|
|
631
|
+
*/
|
|
632
|
+
|
|
633
|
+
__LA_DECL int archive_entry_sparse_count(struct archive_entry *);
|
|
634
|
+
__LA_DECL int archive_entry_sparse_reset(struct archive_entry *);
|
|
635
|
+
__LA_DECL int archive_entry_sparse_next(struct archive_entry *,
|
|
636
|
+
la_int64_t * /* offset */, la_int64_t * /* length */);
|
|
637
|
+
|
|
440
638
|
/*
|
|
441
639
|
* Utility to match up hardlinks.
|
|
442
640
|
*
|
|
@@ -449,7 +647,7 @@ __LA_DECL int archive_entry_xattr_next(struct archive_entry *,
|
|
|
449
647
|
* be written.
|
|
450
648
|
* 4. Call archive_entry_linkify(resolver, NULL) until
|
|
451
649
|
* no more entries are returned.
|
|
452
|
-
* 5. Call
|
|
650
|
+
* 5. Call archive_entry_linkresolver_free(resolver) to free resources.
|
|
453
651
|
*
|
|
454
652
|
* The entries returned have their hardlink and size fields updated
|
|
455
653
|
* appropriately. If an entry is passed in that does not refer to
|
|
@@ -499,7 +697,7 @@ struct archive_entry_linkresolver;
|
|
|
499
697
|
* linkify(l2) => l1
|
|
500
698
|
* linkify(NULL) => l2 (at end, you retrieve remaining links)
|
|
501
699
|
* As the name suggests, this strategy is used by newer cpio variants.
|
|
502
|
-
* It's
|
|
700
|
+
* It's noticeably more complex for the archiver, slightly more complex
|
|
503
701
|
* for the dearchiver than the tar strategy, but makes it straightforward
|
|
504
702
|
* to restore a file using any link by simply continuing to scan until
|
|
505
703
|
* you see a link that is stored with a body. In contrast, the tar
|
|
@@ -513,7 +711,8 @@ __LA_DECL void archive_entry_linkresolver_set_strategy(
|
|
|
513
711
|
__LA_DECL void archive_entry_linkresolver_free(struct archive_entry_linkresolver *);
|
|
514
712
|
__LA_DECL void archive_entry_linkify(struct archive_entry_linkresolver *,
|
|
515
713
|
struct archive_entry **, struct archive_entry **);
|
|
516
|
-
|
|
714
|
+
__LA_DECL struct archive_entry *archive_entry_partial_links(
|
|
715
|
+
struct archive_entry_linkresolver *res, unsigned int *links);
|
|
517
716
|
#ifdef __cplusplus
|
|
518
717
|
}
|
|
519
718
|
#endif
|