aboutsummaryrefslogtreecommitdiff
path: root/archival/libarchive (follow)
Commit message (Collapse)AuthorAgeFilesLines
* Merge branch 'busybox' into mergeRon Yorston2018-05-132-14/+23
|\
| * unlzma: do emit the error message on bad input, when we exit with 1Denys Vlasenko2018-04-241-0/+6
| | | | | | | | Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
| * unlzma: fix another SEGV caseDenys Vlasenko2018-04-191-2/+7
| | | | | | | | | | | | | | function old new delta unpack_lzma_stream 1705 1717 +12 Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
| * ar: stop using static dataDenys Vlasenko2018-04-151-11/+7
| | | | | | | | | | | | | | | | | | | | | | function old new delta static.ar_long_names 4 - -4 static.ar_long_name_size 4 - -4 get_header_ar 546 532 -14 ------------------------------------------------------------------------------ (add/remove: 0/2 grow/shrink: 0/1 up/down: 0/-22) Total: -22 bytes Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
| * dpkg: fix symlink creation, closes 10941Denys Vlasenko2018-04-131-1/+3
| | | | | | | | | | | | | | function old new delta get_header_ar 434 442 +8 Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
* | Merge branch 'busybox' into mergeRon Yorston2018-04-093-23/+67
|\|
| * unlzma: fix segfault on bad archiveDenys Vlasenko2018-04-081-0/+11
| | | | | | | | | | | | | | function old new delta unpack_lzma_stream 2647 2653 +6 Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
| * bzip2: fix two crashes on corrupted archivesDenys Vlasenko2018-04-082-23/+56
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | As it turns out, longjmp'ing into freed stack is not healthy... function old new delta unpack_usage_messages - 97 +97 unpack_bz2_stream 369 409 +40 get_next_block 1667 1677 +10 get_bits 156 155 -1 start_bunzip 212 183 -29 bb_show_usage 181 120 -61 ------------------------------------------------------------------------------ (add/remove: 1/0 grow/shrink: 2/3 up/down: 147/-91) Total: 56 bytes Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
* | libarchive: failure to extract symlink isn't fatalRon Yorston2018-04-091-1/+9
| | | | | | | | | | | | | | | | Recent upstream changes made the failure of symlink(2) when extracting from an archive a fatal error. The busybox-w32 implementation of symlink(2) always fails. Just issue a warning and move on.
* | Merge branch 'busybox' into mergeRon Yorston2018-04-021-1/+1
|\|
| * libbb: new function bb_die_memory_exhaustedDenys Vlasenko2018-04-011-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | function old new delta bb_die_memory_exhausted - 10 +10 xstrdup 28 23 -5 xsetenv 27 22 -5 xrealloc 32 27 -5 xputenv 22 17 -5 xmalloc 30 25 -5 xfdopen_helper 40 35 -5 xasprintf 44 39 -5 wget_main 2387 2382 -5 open_socket 54 49 -5 glob_brace 419 414 -5 bb_get_chunk_from_file 146 141 -5 ------------------------------------------------------------------------------ (add/remove: 1/0 grow/shrink: 0/11 up/down: 10/-55) Total: -45 bytes Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
* | Merge branch 'busybox' into mergeRon Yorston2018-03-012-54/+33
|\|
| * tar,unzip: postpone creation of symlinks with "suspicious" targetsDenys Vlasenko2018-02-202-54/+33
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This mostly reverts commit bc9bbeb2b81001e8731cd2ae501c8fccc8d87cc7 "libarchive: do not extract unsafe symlinks unless $EXTRACT_UNSAFE_SYMLINKS=1" Users report that it is somewhat too restrictive. See https://bugs.busybox.net/show_bug.cgi?id=8411 In particular, this interferes with unpacking of busybox-based filesystems with links like "sbin/applet" -> "../bin/busybox". The change is made smaller by deleting ARCHIVE_EXTRACT_QUIET flag - it is unused since 2010, and removing conditionals on it allows commonalizing some error message codes. function old new delta create_or_remember_symlink - 94 +94 create_symlinks_from_list - 64 +64 tar_main 1002 1006 +4 unzip_main 2732 2724 -8 data_extract_all 984 891 -93 unsafe_symlink_target 147 - -147 ------------------------------------------------------------------------------ (add/remove: 2/1 grow/shrink: 1/2 up/down: 162/-248) Total: -86 bytes Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
* | Merge branch 'busybox' into mergeRon Yorston2018-02-1310-337/+430
|\|
| * bzip2: expose tuning knob for faster/smaller codeDenys Vlasenko2018-02-074-18/+18
| | | | | | | | Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
| * ar: hopefully fix out-of-bounds read in get_header_ar()Denys Vlasenko2018-02-061-2/+2
| | | | | | | | | | | | https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=882175 Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
| * bzip2: work around bad compiler optimizationDenys Vlasenko2018-02-051-32/+43
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | gc-6.1.1 x86_64: function old new delta generateMTFValues 380 367 -13 gcc-4.3.1 386: function old new delta inner_loop - 41 +41 generateMTFValues 357 294 -63 ------------------------------------------------------------------------------ (add/remove: 1/0 grow/shrink: 0/1 up/down: 41/-63) Total: -22 bytes gcc-6.3.0 386: function old new delta inner_loop - 36 +36 generateMTFValues 363 250 -113 ------------------------------------------------------------------------------ (add/remove: 1/0 grow/shrink: 0/1 up/down: 36/-113) Total: -77 bytes The last case, gcc-6.3.0, runs almost 3 times faster after this change. Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
| * gunzip: fix from gzip-1.3.12 for gzip file with all zero length codesDenys Vlasenko2018-02-041-4/+11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Corresponding changelog from gzip-1.3.12 reads: """ 2006-12-20 Paul Eggert <eggert@cs.ucla.edu> * inflate.c (huft_build): Fix regression that caused gzip to refuse to uncompress null input (all zero length codes). Problem reported by Yiorgos Adamopoulos. This regression was caused by the security patch installed 2006-11-20, which in turn came from Debian, which in turn apparently came from Thomas Biege of SuSe. """ function old new delta huft_build 1176 1216 +40 Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
| * bzip2: move runningOrder[] back to stack - 256 bytes is not muchDenys Vlasenko2018-02-032-6/+8
| | | | | | | | | | | | | | function old new delta mainSort 1119 1108 -11 Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
| * bzip2: move ->origPtr out of struct EState, make a few members smallerDenys Vlasenko2018-02-033-27/+27
| | | | | | | | | | | | | | | | | | | | | | | | | | function old new delta BZ2_compressBlock 223 228 +5 BZ2_blockSort 85 88 +3 generateMTFValues 356 357 +1 handle_compress 355 349 -6 compressStream 538 531 -7 ------------------------------------------------------------------------------ (add/remove: 0/0 grow/shrink: 3/2 up/down: 9/-13) Total: -4 bytes Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
| * bzip2: pass sorting params through EState* pointerDenys Vlasenko2018-02-033-67/+65
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | function old new delta mainGtU 499 515 +16 sendMTFValues 2085 2094 +9 mainSort 1116 1119 +3 generateMTFValues 357 356 -1 fallbackSort 1719 1705 -14 mainQSort3 1163 1141 -22 BZ2_blockSort 118 85 -33 ------------------------------------------------------------------------------ (add/remove: 0/0 grow/shrink: 3/4 up/down: 28/-70) Total: -42 bytes Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
| * gzip2: small simplification in mainSimpleSort()Denys Vlasenko2018-02-031-14/+15
| | | | | | | | | | | | | | function old new delta mainQSort3 1165 1163 -2 Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
| * bzip2: a few more locals converted to generic typesDenys Vlasenko2018-02-031-7/+7
| | | | | | | | Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
| * bzip2: eliminate one parameter to mainQSort3()Denys Vlasenko2018-02-031-5/+9
| | | | | | | | Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
| * bzip2: small simplification in mainSort()Denys Vlasenko2018-02-031-5/+5
| | | | | | | | | | | | | | function old new delta mainSort 1127 1118 -9 Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
| * bzip2: convert some locals to unsigned'sDenys Vlasenko2018-02-031-5/+5
| | | | | | | | Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
| * bzip2: runningOrder[] values are always 0..255, make it uint8Denys Vlasenko2018-02-032-6/+5
| | | | | | | | | | | | | | function old new delta mainSort 1171 1124 -47 Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
| * bzip2: remove redundant clearing of an alredy unset bitDenys Vlasenko2018-02-031-2/+2
| | | | | | | | | | | | | | function old new delta mainSort 1178 1171 -7 Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
| * bzip2: eliminate write-only local numQSortedDenys Vlasenko2018-02-031-7/+3
| | | | | | | | Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
| * bzip2: make locals in mainSort() saner, convert one of them from uint16 to ↵Denys Vlasenko2018-02-031-29/+36
| | | | | | | | | | | | | | | | | | unsigned function old new delta mainSort 1192 1178 -14 Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
| * bzip2: remove redundant loop termination check in mainSort()Denys Vlasenko2018-02-031-3/+6
| | | | | | | | | | | | | | function old new delta mainSort 1202 1192 -10 Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
| * bzip2: reduce indentation, no code changesDenys Vlasenko2018-02-031-44/+45
| | | | | | | | Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
| * bzip2: reuse zPend processing codeDenys Vlasenko2018-02-031-31/+13
| | | | | | | | | | | | | | function old new delta generateMTFValues 378 357 -21 Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
| * bzip2: shrink makeMaps_e()Denys Vlasenko2018-02-031-3/+4
| | | | | | | | | | | | | | function old new delta generateMTFValues 378 368 -10 Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
| * bzip2: optimize zPend variable codeDenys Vlasenko2018-02-033-23/+39
| | | | | | | | | | | | | | function old new delta generateMTFValues 433 378 -55 Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
| * bzip2: have two separate "store bit 0" and "store bit 1" functionsDenys Vlasenko2018-02-031-6/+19
| | | | | | | | | | | | | | | | | | | | | | | | function old new delta sendMTFValues 2051 2085 +34 bsW1_0 - 33 +33 BZ2_compressBlock 225 223 -2 bsW1 52 - -52 ------------------------------------------------------------------------------ (add/remove: 1/1 grow/shrink: 1/1 up/down: 67/-54) Total: 13 bytes Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
| * bzip2: ~1% speedup by special-casing "store 1 bit" functionDenys Vlasenko2018-02-033-5/+23
| | | | | | | | | | | | | | | | | | | | | | | | function old new delta bsW1 - 52 +52 BZ2_compressBlock 230 225 -5 BZ2_blockSort 125 118 -7 sendMTFValues 2070 2051 -19 ------------------------------------------------------------------------------ (add/remove: 1/0 grow/shrink: 0/3 up/down: 52/-31) Total: 21 bytes Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
| * bzip2: rewrite bit of code which depends on integer overflowDenys Vlasenko2018-02-031-5/+5
| | | | | | | | | | | | | | function old new delta sendMTFValues 2093 2070 -23 Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
| * bzip2: delete write-only fave[] arrayDenys Vlasenko2018-02-031-5/+0
| | | | | | | | Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
| * bgip2: fewer specifically-sized [u]int32_t's locals in sendMTFValuesDenys Vlasenko2018-02-031-12/+32
| | | | | | | | | | | | | | | | | | Generic ints/unsigneds are usually fine. Yes, really. function old new delta sendMTFValues 2100 2093 -7 Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
| * bzip2: code shrinkDenys Vlasenko2018-02-031-5/+10
| | | | | | | | | | | | | | function old new delta sendMTFValues 2111 2100 -11 Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
| * bzip2: code shrinkDenys Vlasenko2018-02-033-18/+18
| | | | | | | | | | | | | | | | | | | | | | | | | | | | function old new delta BZ2_compressBlock 225 230 +5 handle_compress 356 355 -1 bsW16 59 56 -3 bsW 64 61 -3 bsFinishWrite 37 32 -5 prepare_new_block 48 34 -14 ------------------------------------------------------------------------------ (add/remove: 0/0 grow/shrink: 1/5 up/down: 5/-26) Total: -21 bytes Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
| * bzip2: code shrinkDenys Vlasenko2018-02-021-11/+25
| | | | | | | | | | | | | | | | | | | | | | | | function old new delta bsW16 - 59 +59 sendMTFValues 2116 2111 -5 bsPutU16 36 - -36 bsPutU32 76 31 -45 ------------------------------------------------------------------------------ (add/remove: 1/1 grow/shrink: 0/2 up/down: 59/-86) Total: -27 bytes Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
| * libbb: commonalize a bit of little-endian CRC32 table generation codeDenys Vlasenko2018-02-012-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | function old new delta global_crc32_new_table_le - 11 +11 crc32_new_table_le - 9 +9 inflate_unzip_internal 560 556 -4 flash_eraseall_main 823 819 -4 unpack_xz_stream 2403 2394 -9 lzop_main 121 112 -9 gzip_main 187 178 -9 ------------------------------------------------------------------------------ (add/remove: 2/0 grow/shrink: 0/5 up/down: 20/-35) Total: -15 bytes Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
| * lzop: code shrinkDenys Vlasenko2018-02-011-2/+1
| | | | | | | | | | | | | | | | function old new delta lzo_decompress 526 524 -2 lzo_compress 473 470 -3 Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
| * tar: accomodate non-terminated tar.chksum fields as seen from github.comDenys Vlasenko2018-01-271-24/+25
| | | | | | | | | | | | | | function old new delta get_header_tar 1783 1696 -87 Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
* | Merge branch 'busybox' into mergeRon Yorston2017-11-0329-57/+43
|\|
| * unlzma: fix SEGV, closes 10436Denys Vlasenko2017-10-271-1/+5
| | | | | | | | Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
| * bunzip2: fix runCnt overflow from bug 10431Denys Vlasenko2017-10-221-11/+19
| | | | | | | | | | | | | | | | | | | | | | This particular corrupted file can be dealth with by using "unsigned". If there will be cases where it genuinely overflows, there is a disabled code to deal with that too. function old new delta get_next_block 1678 1667 -11 Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
| * whitespace and comment format fixes, no code changesDenys Vlasenko2017-10-055-8/+10
| | | | | | | | Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>