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
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
/*-
|
|
2
|
+
* Copyright (c) 2020 Martin Matuska
|
|
3
|
+
* All rights reserved.
|
|
4
|
+
*
|
|
5
|
+
* Redistribution and use in source and binary forms, with or without
|
|
6
|
+
* modification, are permitted provided that the following conditions
|
|
7
|
+
* are met:
|
|
8
|
+
* 1. Redistributions of source code must retain the above copyright
|
|
9
|
+
* notice, this list of conditions and the following disclaimer.
|
|
10
|
+
* 2. Redistributions in binary form must reproduce the above copyright
|
|
11
|
+
* notice, this list of conditions and the following disclaimer in the
|
|
12
|
+
* documentation and/or other materials provided with the distribution.
|
|
13
|
+
*
|
|
14
|
+
* THIS SOFTWARE IS PROVIDED BY THE AUTHOR(S) ``AS IS'' AND ANY EXPRESS OR
|
|
15
|
+
* IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
|
|
16
|
+
* OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
|
|
17
|
+
* IN NO EVENT SHALL THE AUTHOR(S) BE LIABLE FOR ANY DIRECT, INDIRECT,
|
|
18
|
+
* INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
|
|
19
|
+
* NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
|
|
20
|
+
* DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
|
|
21
|
+
* THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
|
|
22
|
+
* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
|
|
23
|
+
* THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
|
24
|
+
*
|
|
25
|
+
* $FreeBSD$
|
|
26
|
+
*/
|
|
27
|
+
|
|
28
|
+
#ifndef ARCHIVE_WRITE_SET_FORMAT_PRIVATE_H_INCLUDED
|
|
29
|
+
#define ARCHIVE_WRITE_SET_FORMAT_PRIVATE_H_INCLUDED
|
|
30
|
+
|
|
31
|
+
#ifndef __LIBARCHIVE_BUILD
|
|
32
|
+
#ifndef __LIBARCHIVE_TEST
|
|
33
|
+
#error This header is only to be used internally to libarchive.
|
|
34
|
+
#endif
|
|
35
|
+
#endif
|
|
36
|
+
|
|
37
|
+
#include "archive.h"
|
|
38
|
+
#include "archive_entry.h"
|
|
39
|
+
|
|
40
|
+
void __archive_write_entry_filetype_unsupported(struct archive *a,
|
|
41
|
+
struct archive_entry *entry, const char *format);
|
|
42
|
+
#endif
|
|
@@ -0,0 +1,125 @@
|
|
|
1
|
+
/*-
|
|
2
|
+
* Copyright (c) 2013 Marek Kubica
|
|
3
|
+
* All rights reserved.
|
|
4
|
+
*
|
|
5
|
+
* Redistribution and use in source and binary forms, with or without
|
|
6
|
+
* modification, are permitted provided that the following conditions
|
|
7
|
+
* are met:
|
|
8
|
+
* 1. Redistributions of source code must retain the above copyright
|
|
9
|
+
* notice, this list of conditions and the following disclaimer.
|
|
10
|
+
* 2. Redistributions in binary form must reproduce the above copyright
|
|
11
|
+
* notice, this list of conditions and the following disclaimer in the
|
|
12
|
+
* documentation and/or other materials provided with the distribution.
|
|
13
|
+
*
|
|
14
|
+
* THIS SOFTWARE IS PROVIDED BY THE AUTHOR(S) ``AS IS'' AND ANY EXPRESS OR
|
|
15
|
+
* IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
|
|
16
|
+
* OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
|
|
17
|
+
* IN NO EVENT SHALL THE AUTHOR(S) BE LIABLE FOR ANY DIRECT, INDIRECT,
|
|
18
|
+
* INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
|
|
19
|
+
* NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
|
|
20
|
+
* DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
|
|
21
|
+
* THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
|
|
22
|
+
* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
|
|
23
|
+
* THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
|
24
|
+
*/
|
|
25
|
+
|
|
26
|
+
#include "archive_platform.h"
|
|
27
|
+
|
|
28
|
+
#ifdef HAVE_ERRNO_H
|
|
29
|
+
#include <errno.h>
|
|
30
|
+
#endif
|
|
31
|
+
|
|
32
|
+
#include "archive_entry.h"
|
|
33
|
+
#include "archive_write_private.h"
|
|
34
|
+
|
|
35
|
+
static ssize_t archive_write_raw_data(struct archive_write *,
|
|
36
|
+
const void *buff, size_t s);
|
|
37
|
+
static int archive_write_raw_free(struct archive_write *);
|
|
38
|
+
static int archive_write_raw_header(struct archive_write *,
|
|
39
|
+
struct archive_entry *);
|
|
40
|
+
|
|
41
|
+
struct raw {
|
|
42
|
+
int entries_written;
|
|
43
|
+
};
|
|
44
|
+
|
|
45
|
+
/*
|
|
46
|
+
* Set output format to 'raw' format.
|
|
47
|
+
*/
|
|
48
|
+
int
|
|
49
|
+
archive_write_set_format_raw(struct archive *_a)
|
|
50
|
+
{
|
|
51
|
+
struct archive_write *a = (struct archive_write *)_a;
|
|
52
|
+
struct raw *raw;
|
|
53
|
+
|
|
54
|
+
archive_check_magic(_a, ARCHIVE_WRITE_MAGIC,
|
|
55
|
+
ARCHIVE_STATE_NEW, "archive_write_set_format_raw");
|
|
56
|
+
|
|
57
|
+
/* If someone else was already registered, unregister them. */
|
|
58
|
+
if (a->format_free != NULL)
|
|
59
|
+
(a->format_free)(a);
|
|
60
|
+
|
|
61
|
+
raw = (struct raw *)calloc(1, sizeof(*raw));
|
|
62
|
+
if (raw == NULL) {
|
|
63
|
+
archive_set_error(&a->archive, ENOMEM, "Can't allocate raw data");
|
|
64
|
+
return (ARCHIVE_FATAL);
|
|
65
|
+
}
|
|
66
|
+
raw->entries_written = 0;
|
|
67
|
+
a->format_data = raw;
|
|
68
|
+
a->format_name = "raw";
|
|
69
|
+
/* no options exist for this format */
|
|
70
|
+
a->format_options = NULL;
|
|
71
|
+
a->format_write_header = archive_write_raw_header;
|
|
72
|
+
a->format_write_data = archive_write_raw_data;
|
|
73
|
+
a->format_finish_entry = NULL;
|
|
74
|
+
/* nothing needs to be done on closing */
|
|
75
|
+
a->format_close = NULL;
|
|
76
|
+
a->format_free = archive_write_raw_free;
|
|
77
|
+
a->archive.archive_format = ARCHIVE_FORMAT_RAW;
|
|
78
|
+
a->archive.archive_format_name = "RAW";
|
|
79
|
+
return (ARCHIVE_OK);
|
|
80
|
+
}
|
|
81
|
+
|
|
82
|
+
static int
|
|
83
|
+
archive_write_raw_header(struct archive_write *a, struct archive_entry *entry)
|
|
84
|
+
{
|
|
85
|
+
struct raw *raw = (struct raw *)a->format_data;
|
|
86
|
+
|
|
87
|
+
if (archive_entry_filetype(entry) != AE_IFREG) {
|
|
88
|
+
archive_set_error(&a->archive, ERANGE,
|
|
89
|
+
"Raw format only supports filetype AE_IFREG");
|
|
90
|
+
return (ARCHIVE_FATAL);
|
|
91
|
+
}
|
|
92
|
+
|
|
93
|
+
|
|
94
|
+
if (raw->entries_written > 0) {
|
|
95
|
+
archive_set_error(&a->archive, ERANGE,
|
|
96
|
+
"Raw format only supports one entry per archive");
|
|
97
|
+
return (ARCHIVE_FATAL);
|
|
98
|
+
}
|
|
99
|
+
raw->entries_written++;
|
|
100
|
+
|
|
101
|
+
return (ARCHIVE_OK);
|
|
102
|
+
}
|
|
103
|
+
|
|
104
|
+
static ssize_t
|
|
105
|
+
archive_write_raw_data(struct archive_write *a, const void *buff, size_t s)
|
|
106
|
+
{
|
|
107
|
+
int ret;
|
|
108
|
+
|
|
109
|
+
ret = __archive_write_output(a, buff, s);
|
|
110
|
+
if (ret >= 0)
|
|
111
|
+
return (s);
|
|
112
|
+
else
|
|
113
|
+
return (ret);
|
|
114
|
+
}
|
|
115
|
+
|
|
116
|
+
static int
|
|
117
|
+
archive_write_raw_free(struct archive_write *a)
|
|
118
|
+
{
|
|
119
|
+
struct raw *raw;
|
|
120
|
+
|
|
121
|
+
raw = (struct raw *)a->format_data;
|
|
122
|
+
free(raw);
|
|
123
|
+
a->format_data = NULL;
|
|
124
|
+
return (ARCHIVE_OK);
|
|
125
|
+
}
|
|
@@ -42,6 +42,7 @@ __FBSDID("$FreeBSD: head/lib/libarchive/archive_write_set_format_shar.c 189438 2
|
|
|
42
42
|
#include "archive_entry.h"
|
|
43
43
|
#include "archive_private.h"
|
|
44
44
|
#include "archive_write_private.h"
|
|
45
|
+
#include "archive_write_set_format_private.h"
|
|
45
46
|
|
|
46
47
|
struct shar {
|
|
47
48
|
int dump;
|
|
@@ -59,8 +60,8 @@ struct shar {
|
|
|
59
60
|
struct archive_string quoted_name;
|
|
60
61
|
};
|
|
61
62
|
|
|
62
|
-
static int
|
|
63
|
-
static int
|
|
63
|
+
static int archive_write_shar_close(struct archive_write *);
|
|
64
|
+
static int archive_write_shar_free(struct archive_write *);
|
|
64
65
|
static int archive_write_shar_header(struct archive_write *,
|
|
65
66
|
struct archive_entry *);
|
|
66
67
|
static ssize_t archive_write_shar_data_sed(struct archive_write *,
|
|
@@ -106,25 +107,25 @@ archive_write_set_format_shar(struct archive *_a)
|
|
|
106
107
|
struct archive_write *a = (struct archive_write *)_a;
|
|
107
108
|
struct shar *shar;
|
|
108
109
|
|
|
110
|
+
archive_check_magic(_a, ARCHIVE_WRITE_MAGIC,
|
|
111
|
+
ARCHIVE_STATE_NEW, "archive_write_set_format_shar");
|
|
112
|
+
|
|
109
113
|
/* If someone else was already registered, unregister them. */
|
|
110
|
-
if (a->
|
|
111
|
-
(a->
|
|
114
|
+
if (a->format_free != NULL)
|
|
115
|
+
(a->format_free)(a);
|
|
112
116
|
|
|
113
|
-
shar = (struct shar *)
|
|
117
|
+
shar = (struct shar *)calloc(1, sizeof(*shar));
|
|
114
118
|
if (shar == NULL) {
|
|
115
119
|
archive_set_error(&a->archive, ENOMEM, "Can't allocate shar data");
|
|
116
120
|
return (ARCHIVE_FATAL);
|
|
117
121
|
}
|
|
118
|
-
memset(shar, 0, sizeof(*shar));
|
|
119
122
|
archive_string_init(&shar->work);
|
|
120
123
|
archive_string_init(&shar->quoted_name);
|
|
121
124
|
a->format_data = shar;
|
|
122
|
-
|
|
123
|
-
a->pad_uncompressed = 0;
|
|
124
125
|
a->format_name = "shar";
|
|
125
126
|
a->format_write_header = archive_write_shar_header;
|
|
126
|
-
a->
|
|
127
|
-
a->
|
|
127
|
+
a->format_close = archive_write_shar_close;
|
|
128
|
+
a->format_free = archive_write_shar_free;
|
|
128
129
|
a->format_write_data = archive_write_shar_data_sed;
|
|
129
130
|
a->format_finish_entry = archive_write_shar_finish_entry;
|
|
130
131
|
a->archive.archive_format = ARCHIVE_FORMAT_SHAR_BASE;
|
|
@@ -169,8 +170,7 @@ archive_write_shar_header(struct archive_write *a, struct archive_entry *entry)
|
|
|
169
170
|
}
|
|
170
171
|
|
|
171
172
|
/* Save the entry for the closing. */
|
|
172
|
-
|
|
173
|
-
archive_entry_free(shar->entry);
|
|
173
|
+
archive_entry_free(shar->entry);
|
|
174
174
|
shar->entry = archive_entry_clone(entry);
|
|
175
175
|
name = archive_entry_pathname(entry);
|
|
176
176
|
|
|
@@ -195,8 +195,8 @@ archive_write_shar_header(struct archive_write *a, struct archive_entry *entry)
|
|
|
195
195
|
archive_entry_set_size(entry, 0);
|
|
196
196
|
if (archive_entry_hardlink(entry) == NULL &&
|
|
197
197
|
archive_entry_symlink(entry) == NULL) {
|
|
198
|
-
|
|
199
|
-
|
|
198
|
+
__archive_write_entry_filetype_unsupported(
|
|
199
|
+
&a->archive, entry, "shar");
|
|
200
200
|
return (ARCHIVE_WARN);
|
|
201
201
|
}
|
|
202
202
|
}
|
|
@@ -266,12 +266,12 @@ archive_write_shar_header(struct archive_write *a, struct archive_entry *entry)
|
|
|
266
266
|
shar->quoted_name.s, shar->quoted_name.s);
|
|
267
267
|
} else {
|
|
268
268
|
if (shar->dump) {
|
|
269
|
+
unsigned int mode = archive_entry_mode(entry) & 0777;
|
|
269
270
|
archive_string_sprintf(&shar->work,
|
|
270
271
|
"uudecode -p > %s << 'SHAR_END'\n",
|
|
271
272
|
shar->quoted_name.s);
|
|
272
273
|
archive_string_sprintf(&shar->work,
|
|
273
|
-
"begin %o ",
|
|
274
|
-
archive_entry_mode(entry) & 0777);
|
|
274
|
+
"begin %o ", mode);
|
|
275
275
|
shar_quote(&shar->work, name, 0);
|
|
276
276
|
archive_strcat(&shar->work, "\n");
|
|
277
277
|
} else {
|
|
@@ -289,8 +289,7 @@ archive_write_shar_header(struct archive_write *a, struct archive_entry *entry)
|
|
|
289
289
|
"mkdir -p %s > /dev/null 2>&1\n",
|
|
290
290
|
shar->quoted_name.s);
|
|
291
291
|
/* Record that we just created this directory. */
|
|
292
|
-
|
|
293
|
-
free(shar->last_dir);
|
|
292
|
+
free(shar->last_dir);
|
|
294
293
|
|
|
295
294
|
shar->last_dir = strdup(name);
|
|
296
295
|
/* Trim a trailing '/'. */
|
|
@@ -308,15 +307,15 @@ archive_write_shar_header(struct archive_write *a, struct archive_entry *entry)
|
|
|
308
307
|
break;
|
|
309
308
|
case AE_IFCHR:
|
|
310
309
|
archive_string_sprintf(&shar->work,
|
|
311
|
-
"mknod %s c %
|
|
312
|
-
archive_entry_rdevmajor(entry),
|
|
313
|
-
archive_entry_rdevminor(entry));
|
|
310
|
+
"mknod %s c %ju %ju\n", shar->quoted_name.s,
|
|
311
|
+
(uintmax_t)archive_entry_rdevmajor(entry),
|
|
312
|
+
(uintmax_t)archive_entry_rdevminor(entry));
|
|
314
313
|
break;
|
|
315
314
|
case AE_IFBLK:
|
|
316
315
|
archive_string_sprintf(&shar->work,
|
|
317
|
-
"mknod %s b %
|
|
318
|
-
archive_entry_rdevmajor(entry),
|
|
319
|
-
archive_entry_rdevminor(entry));
|
|
316
|
+
"mknod %s b %ju %ju\n", shar->quoted_name.s,
|
|
317
|
+
(uintmax_t)archive_entry_rdevmajor(entry),
|
|
318
|
+
(uintmax_t)archive_entry_rdevminor(entry));
|
|
320
319
|
break;
|
|
321
320
|
default:
|
|
322
321
|
return (ARCHIVE_WARN);
|
|
@@ -349,11 +348,13 @@ archive_write_shar_data_sed(struct archive_write *a, const void *buff, size_t n)
|
|
|
349
348
|
* twice before entering the loop, so make sure three additional
|
|
350
349
|
* bytes can be written.
|
|
351
350
|
*/
|
|
352
|
-
if (archive_string_ensure(&shar->work, ensured + 3) == NULL)
|
|
353
|
-
|
|
351
|
+
if (archive_string_ensure(&shar->work, ensured + 3) == NULL) {
|
|
352
|
+
archive_set_error(&a->archive, ENOMEM, "Out of memory");
|
|
353
|
+
return (ARCHIVE_FATAL);
|
|
354
|
+
}
|
|
354
355
|
|
|
355
356
|
if (shar->work.length > ensured) {
|
|
356
|
-
ret = (
|
|
357
|
+
ret = __archive_write_output(a, shar->work.s,
|
|
357
358
|
shar->work.length);
|
|
358
359
|
if (ret != ARCHIVE_OK)
|
|
359
360
|
return (ARCHIVE_FATAL);
|
|
@@ -377,7 +378,7 @@ archive_write_shar_data_sed(struct archive_write *a, const void *buff, size_t n)
|
|
|
377
378
|
|
|
378
379
|
if (buf >= buf_end) {
|
|
379
380
|
shar->work.length = buf - shar->work.s;
|
|
380
|
-
ret = (
|
|
381
|
+
ret = __archive_write_output(a, shar->work.s,
|
|
381
382
|
shar->work.length);
|
|
382
383
|
if (ret != ARCHIVE_OK)
|
|
383
384
|
return (ARCHIVE_FATAL);
|
|
@@ -406,16 +407,18 @@ uuencode_group(const char _in[3], char out[4])
|
|
|
406
407
|
out[3] = UUENC( 0x3f & t );
|
|
407
408
|
}
|
|
408
409
|
|
|
409
|
-
static
|
|
410
|
-
|
|
410
|
+
static int
|
|
411
|
+
_uuencode_line(struct archive_write *a, struct shar *shar, const char *inbuf, size_t len)
|
|
411
412
|
{
|
|
412
|
-
char
|
|
413
|
+
char *buf;
|
|
413
414
|
size_t alloc_len;
|
|
414
415
|
|
|
415
416
|
/* len <= 45 -> expanded to 60 + len byte + new line */
|
|
416
417
|
alloc_len = shar->work.length + 62;
|
|
417
|
-
if (archive_string_ensure(&shar->work, alloc_len) == NULL)
|
|
418
|
-
|
|
418
|
+
if (archive_string_ensure(&shar->work, alloc_len) == NULL) {
|
|
419
|
+
archive_set_error(&a->archive, ENOMEM, "Out of memory");
|
|
420
|
+
return (ARCHIVE_FATAL);
|
|
421
|
+
}
|
|
419
422
|
|
|
420
423
|
buf = shar->work.s + shar->work.length;
|
|
421
424
|
*buf++ = UUENC(len);
|
|
@@ -426,21 +429,33 @@ uuencode_line(struct shar *shar, const char *inbuf, size_t len)
|
|
|
426
429
|
buf += 4;
|
|
427
430
|
}
|
|
428
431
|
if (len != 0) {
|
|
432
|
+
char tmp_buf[3];
|
|
429
433
|
tmp_buf[0] = inbuf[0];
|
|
430
434
|
if (len == 1)
|
|
431
435
|
tmp_buf[1] = '\0';
|
|
432
436
|
else
|
|
433
437
|
tmp_buf[1] = inbuf[1];
|
|
434
438
|
tmp_buf[2] = '\0';
|
|
435
|
-
uuencode_group(
|
|
439
|
+
uuencode_group(tmp_buf, buf);
|
|
436
440
|
buf += 4;
|
|
437
441
|
}
|
|
438
442
|
*buf++ = '\n';
|
|
439
|
-
if ((buf - shar->work.s) > (ptrdiff_t)(shar->work.length + 62))
|
|
440
|
-
|
|
443
|
+
if ((buf - shar->work.s) > (ptrdiff_t)(shar->work.length + 62)) {
|
|
444
|
+
archive_set_error(&a->archive,
|
|
445
|
+
ARCHIVE_ERRNO_MISC, "Buffer overflow");
|
|
446
|
+
return (ARCHIVE_FATAL);
|
|
447
|
+
}
|
|
441
448
|
shar->work.length = buf - shar->work.s;
|
|
449
|
+
return (ARCHIVE_OK);
|
|
442
450
|
}
|
|
443
451
|
|
|
452
|
+
#define uuencode_line(__a, __shar, __inbuf, __len) \
|
|
453
|
+
do { \
|
|
454
|
+
int r = _uuencode_line(__a, __shar, __inbuf, __len); \
|
|
455
|
+
if (r != ARCHIVE_OK) \
|
|
456
|
+
return (ARCHIVE_FATAL); \
|
|
457
|
+
} while (0)
|
|
458
|
+
|
|
444
459
|
static ssize_t
|
|
445
460
|
archive_write_shar_data_uuencode(struct archive_write *a, const void *buff,
|
|
446
461
|
size_t length)
|
|
@@ -464,7 +479,7 @@ archive_write_shar_data_uuencode(struct archive_write *a, const void *buff,
|
|
|
464
479
|
shar->outpos += n;
|
|
465
480
|
return length;
|
|
466
481
|
}
|
|
467
|
-
uuencode_line(shar, shar->outbuff, 45);
|
|
482
|
+
uuencode_line(a, shar, shar->outbuff, 45);
|
|
468
483
|
src += n;
|
|
469
484
|
n = length - n;
|
|
470
485
|
} else {
|
|
@@ -472,13 +487,13 @@ archive_write_shar_data_uuencode(struct archive_write *a, const void *buff,
|
|
|
472
487
|
}
|
|
473
488
|
|
|
474
489
|
while (n >= 45) {
|
|
475
|
-
uuencode_line(shar, src, 45);
|
|
490
|
+
uuencode_line(a, shar, src, 45);
|
|
476
491
|
src += 45;
|
|
477
492
|
n -= 45;
|
|
478
493
|
|
|
479
494
|
if (shar->work.length < 65536)
|
|
480
495
|
continue;
|
|
481
|
-
ret = (
|
|
496
|
+
ret = __archive_write_output(a, shar->work.s,
|
|
482
497
|
shar->work.length);
|
|
483
498
|
if (ret != ARCHIVE_OK)
|
|
484
499
|
return (ARCHIVE_FATAL);
|
|
@@ -506,7 +521,7 @@ archive_write_shar_finish_entry(struct archive_write *a)
|
|
|
506
521
|
/* Finish uuencoded data. */
|
|
507
522
|
if (shar->has_data) {
|
|
508
523
|
if (shar->outpos > 0)
|
|
509
|
-
uuencode_line(shar, shar->outbuff,
|
|
524
|
+
uuencode_line(a, shar, shar->outbuff,
|
|
510
525
|
shar->outpos);
|
|
511
526
|
archive_strcat(&shar->work, "`\nend\n");
|
|
512
527
|
archive_strcat(&shar->work, "SHAR_END\n");
|
|
@@ -517,7 +532,7 @@ archive_write_shar_finish_entry(struct archive_write *a)
|
|
|
517
532
|
* directories; defer that to end of script.
|
|
518
533
|
*/
|
|
519
534
|
archive_string_sprintf(&shar->work, "chmod %o ",
|
|
520
|
-
archive_entry_mode(shar->entry) & 07777);
|
|
535
|
+
(unsigned int)(archive_entry_mode(shar->entry) & 07777));
|
|
521
536
|
shar_quote(&shar->work, archive_entry_pathname(shar->entry), 1);
|
|
522
537
|
archive_strcat(&shar->work, "\n");
|
|
523
538
|
|
|
@@ -531,14 +546,14 @@ archive_write_shar_finish_entry(struct archive_write *a)
|
|
|
531
546
|
archive_strcat(&shar->work, ":");
|
|
532
547
|
shar_quote(&shar->work, g, 1);
|
|
533
548
|
}
|
|
549
|
+
archive_strcat(&shar->work, " ");
|
|
534
550
|
shar_quote(&shar->work,
|
|
535
551
|
archive_entry_pathname(shar->entry), 1);
|
|
536
552
|
archive_strcat(&shar->work, "\n");
|
|
537
553
|
}
|
|
538
554
|
|
|
539
555
|
if ((p = archive_entry_fflags_text(shar->entry)) != NULL) {
|
|
540
|
-
archive_string_sprintf(&shar->work, "chflags %s ",
|
|
541
|
-
p, archive_entry_pathname(shar->entry));
|
|
556
|
+
archive_string_sprintf(&shar->work, "chflags %s ", p);
|
|
542
557
|
shar_quote(&shar->work,
|
|
543
558
|
archive_entry_pathname(shar->entry), 1);
|
|
544
559
|
archive_strcat(&shar->work, "\n");
|
|
@@ -561,7 +576,7 @@ archive_write_shar_finish_entry(struct archive_write *a)
|
|
|
561
576
|
if (shar->work.length < 65536)
|
|
562
577
|
return (ARCHIVE_OK);
|
|
563
578
|
|
|
564
|
-
ret = (
|
|
579
|
+
ret = __archive_write_output(a, shar->work.s, shar->work.length);
|
|
565
580
|
if (ret != ARCHIVE_OK)
|
|
566
581
|
return (ARCHIVE_FATAL);
|
|
567
582
|
archive_string_empty(&shar->work);
|
|
@@ -570,7 +585,7 @@ archive_write_shar_finish_entry(struct archive_write *a)
|
|
|
570
585
|
}
|
|
571
586
|
|
|
572
587
|
static int
|
|
573
|
-
|
|
588
|
+
archive_write_shar_close(struct archive_write *a)
|
|
574
589
|
{
|
|
575
590
|
struct shar *shar;
|
|
576
591
|
int ret;
|
|
@@ -593,7 +608,7 @@ archive_write_shar_finish(struct archive_write *a)
|
|
|
593
608
|
|
|
594
609
|
archive_strcat(&shar->work, "exit\n");
|
|
595
610
|
|
|
596
|
-
ret = (
|
|
611
|
+
ret = __archive_write_output(a, shar->work.s, shar->work.length);
|
|
597
612
|
if (ret != ARCHIVE_OK)
|
|
598
613
|
return (ARCHIVE_FATAL);
|
|
599
614
|
|
|
@@ -608,7 +623,7 @@ archive_write_shar_finish(struct archive_write *a)
|
|
|
608
623
|
}
|
|
609
624
|
|
|
610
625
|
static int
|
|
611
|
-
|
|
626
|
+
archive_write_shar_free(struct archive_write *a)
|
|
612
627
|
{
|
|
613
628
|
struct shar *shar;
|
|
614
629
|
|