aboutsummaryrefslogtreecommitdiff
path: root/archival/tar.c (follow)
Commit message (Collapse)AuthorAgeFilesLines
...
* update seamless uncompression codeDenys Vlasenko2012-03-061-40/+31
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This change makes "tar tf hello_world.txz" work without adding special-casing for ".txz" extension. It also removes ever-growing magic checking code in rpm2cpio and get_header_tar - we reuse one which lives in setup_unzip_on_fd. function old new delta unpack_gz_stream 7 566 +559 check_signature16 - 70 +70 setup_unzip_on_fd 99 142 +43 handle_SIGCHLD - 41 +41 unpack_bz2_stream 342 376 +34 unzip_main 2352 2385 +33 bbunpack 503 533 +30 open_transformer 74 102 +28 unpack_Z_stream 1278 1304 +26 unpack_gunzip 101 123 +22 init_transformer_aux_data - 18 +18 unpack_xz_stream 2388 2402 +14 open_zipped 131 141 +10 rpm_main 1358 1363 +5 get_header_tar_lzma 52 57 +5 get_header_tar_bz2 52 57 +5 unpack_lzma_stream 2698 2702 +4 hash_find 234 233 -1 get_header_tar 1759 1733 -26 get_header_tar_gz 92 57 -35 unpack_uncompress 51 12 -39 rpm2cpio_main 201 147 -54 unpack_unxz 67 12 -55 unpack_bz2_stream_prime 55 - -55 get_header_tar_Z 86 - -86 unpack_gz_stream_with_info 539 - -539 ------------------------------------------------------------------------------ (add/remove: 3/3 grow/shrink: 14/6 up/down: 947/-890) Total: 57 bytes Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
* rename archive.h to bb_archive.h. no code changesDenys Vlasenko2011-09-221-1/+1
| | | | Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
* randomconfig fixesDenys Vlasenko2011-08-101-1/+1
| | | | Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
* *: remove "Options:" string from help textsDenys Vlasenko2011-06-051-1/+0
| | | | | | | function old new delta packed_usage 28706 28623 -83 Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
* tar: store negative mtime as 0; pack very large files using base-256 encodingDenys Vlasenko2011-05-041-4/+32
| | | | | | | function old new delta writeTarHeader 841 979 +138 Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
* use user's shell instead of hardwired "/bin/sh" (android needs this)Denys Vlasenko2011-03-081-0/+1
| | | | Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
* tar: skip leading / and handle names like abc/..////def -> def (not ///def)Denys Vlasenko2011-03-021-11/+2
| | | | | | | | | function old new delta strip_unsafe_prefix - 105 +105 writeFileToTarball 557 520 -37 get_header_tar 1545 1462 -83 Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
* tar: fix a bug where autodetection messes up -z on extractDenys Vlasenko2011-02-061-2/+4
| | | | Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
* tar: support -T - and -X -Denys Vlasenko2011-02-031-1/+1
| | | | Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
* tar: add -h and -T to help textDenys Vlasenko2011-01-311-8/+13
| | | | Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
* tar: add a note about -C and symlink-in-tarball attackDenys Vlasenko2011-01-041-0/+19
| | | | Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
* modprobe: add support for --show-dependsSerj Kalichev2010-12-261-1/+0
| | | | | | | | | | | | | function old new delta modprobe_longopts - 16 +16 packed_usage 28018 28028 +10 modprobe_main 648 653 +5 do_modprobe 580 536 -44 ------------------------------------------------------------------------------ (add/remove: 1/0 grow/shrink: 2/1 up/down: 31/-44) Total: -13 bytes Signed-off-by: Serj Kalichev <serj.kalichev@gmail.com> Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
* rename archival/libunarchive -> archival/libarchive; move bz/ into itDenys Vlasenko2010-11-031-1/+1
| | | | Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
* libbb: add xfstat functionDenys Vlasenko2010-08-311-2/+1
| | | | | | | | | | | | | | | | function old new delta xfstat - 25 +25 mkfs_ext2_main 2421 2423 +2 mkfs_reiser_main 1197 1194 -3 next 312 307 -5 ar_main 533 522 -11 mkfs_minix_main 2938 2924 -14 mkfs_vfat_main 1511 1495 -16 writeTarFile 272 255 -17 ------------------------------------------------------------------------------ (add/remove: 1/0 grow/shrink: 1/6 up/down: 27/-66) Total: -39 bytes Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
* *: make GNU licensing statement forms more regularDenys Vlasenko2010-08-161-2/+2
| | | | | | | This change retains "or later" state! No licensing _changes_ here, only form is adjusted (article, space between "GPL" and "v2" and so on). Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
* whitespace fixesDenys Vlasenko2010-07-061-1/+1
| | | | Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
* *: introduce and use xfork() and xvfork()Pascal Bellard2010-07-041-3/+1
| | | | | | | | | | | | | | | | function old new delta launch_helper 170 169 -1 setup_heredoc 312 302 -10 handle_dir_common 367 354 -13 expand_vars_to_list 2456 2443 -13 open_transformer 89 74 -15 data_extract_to_command 439 423 -16 do_ipaddr 1406 1389 -17 ------------------------------------------------------------------------------ (add/remove: 0/0 grow/shrink: 0/7 up/down: 0/-85) Total: -85 bytes Signed-off-by: Pascal Bellard <pascal.bellard@ads-lu.com> Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
* *: tar-related cleanups: move struct to unarchive.h; move help to tar.cDenys Vlasenko2010-06-261-40/+67
| | | | Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
* tar: optional support for --to-commandLadislav Michl2010-06-251-0/+12
| | | | | | | | | | | | | | | | function old new delta data_extract_to_command - 430 +430 dec2env - 44 +44 tar_main 778 819 +41 str2env - 37 +37 tar_var - 32 +32 xputenv - 22 +22 tar_longopts 257 270 +13 ------------------------------------------------------------------------------ (add/remove: 6/0 grow/shrink: 2/0 up/down: 619/0) Total: 619 bytes Signed-off-by: Ladislav Michl <Ladislav.Michl@seznam.cz> Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
* *: small code shrinks and compile fix for unicodeDenys Vlasenko2010-01-201-8/+6
| | | | Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
* tar: handle -m (--touch) switch, enabled by FEATURE_TAR_NOPRESERVE_TIMEMikhail Gusarov2010-01-201-0/+11
| | | | | | | | | | | | | function old new delta .rodata 2731 2779 +48 usage_messages 432 471 +39 tar_main 603 614 +11 tar_longopts 211 219 +8 ------------------------------------------------------------------------------ (add/remove: 0/0 grow/shrink: 4/0 up/down: 106/0) Total: 106 bytes Signed-off-by: Mikhail Gusarov <dottedmag@dottedmag.net> Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
* tar: fix recently added SEGV on "tar" w/o argsDenys Vlasenko2009-12-181-1/+1
| | | | Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
* tar: add support for --overwrite. +70 bytes.Denys Vlasenko2009-12-161-2/+11
| | | | Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
* libunarchive: move dpkg-specific things into dpkg.c. 0 byte size differencesDenys Vlasenko2009-12-161-7/+7
| | | | Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
* wget: check for close success; fix chunked; do not bother to send QUIT to ftpDenys Vlasenko2009-12-111-1/+1
| | | | | | Also, random fixes to use %u for unsigned quantities. -14 bytes in wget. Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
* tar: revert part of last change. -39 bytesDenys Vlasenko2009-11-291-18/+11
| | | | | | | It looks like GNU "tar cf file file" _does_ save file as if it is a hardlink, when it meets it for the second time. Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
* tar: fix bug 673 (misdetection of repeated dir as hardlink). +92 bytesDenys Vlasenko2009-11-291-55/+71
| | | | | | | | While at it, remove many superfluous ops on unpack: mkdir("."), lots of umask() calls. Can remove more by caching username->uid. Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
* *: use "can't" instead of "cannot"Denys Vlasenko2009-11-131-2/+2
| | | | Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
* tar: add support for -o as synonym to --no-same-owner. +5 bytesBernhard Reutner-Fischer2009-10-251-10/+12
| | | | | Signed-off-by: Bernhard Reutner-Fischer <rep.dot.nop@gmail.com> Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
* tar: handle "tar fx TARFILE" etcDenys Vlasenko2009-10-251-0/+27
| | | | | | | function old new delta tar_main 702 751 +49 Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
* tar: fix --numeric-owner, --no-same-owner, --no-same-permissions bitsDenys Vlasenko2009-09-171-16/+20
| | | | Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
* switch_root: improve behavior on error; improve help textDenis Vlasenko2009-04-211-1/+1
| | | | | *: make "can't execute '%s'" message uniform
* *: mass renaming of USE_XXXX to IF_XXXXDenis Vlasenko2009-04-211-27/+27
| | | | | | and SKIP_XXXX to IF_NOT_XXXX - the second one was especially badly named. It was not skipping anything!
* tar: support for tar --numeric-owner. By Natanael Copa.Denis Vlasenko2009-04-211-0/+6
| | | | | | | | function old new delta tar_longopts 221 237 +16 data_extract_all 692 705 +13 tar_main 690 702 +12
* tar: stop changing net tarfile's mode, GNU tar doesn't do itDenis Vlasenko2009-01-201-2/+0
|
* header_verbose_list: show off_t size, not cast to (unsigned)Denis Vlasenko2008-12-121-1/+2
| | | | | | | | | get_header_tar: support GNU tar's "base256" encoding function old new delta get_header_tar 1536 1600 +64 header_verbose_list 242 257 +15
* tar: fix typo in commentDenis Vlasenko2008-10-251-1/+1
|
* tar: fix bug 3844: non-root tar does not preserve permsDenis Vlasenko2008-10-241-0/+4
|
* *: refactor handling of archived files. "tar f file.tar.lzma" now works too.Denis Vlasenko2008-08-051-43/+49
| | | | | | | | | | | | | | | | | | | | | | | | function old new delta unpack_Z_stream - 1229 +1229 open_zipped - 176 +176 unpack_bz2_stream_prime - 60 +60 tar_main 642 677 +35 find_main 406 418 +12 sv_main 1222 1233 +11 decode_format_string 829 837 +8 cmp_main 641 649 +8 popstring 134 140 +6 filter_accept_list_reassign 120 125 +5 parse_and_put_prompt 800 804 +4 passwd_main 1053 1049 -4 make_new_name_gunzip 119 114 -5 rpm_main 1688 1670 -18 prepare 302 283 -19 xmalloc_open_zipped_read_close 135 61 -74 uncompress 1229 - -1229 ------------------------------------------------------------------------------ (add/remove: 3/1 grow/shrink: 8/5 up/down: 1554/-1349) Total: 205 bytes
* libbb: [x]fopen_for_{read,write} introduced and used.Denis Vlasenko2008-07-211-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | (by Valdimir) function old new delta config_open2 - 41 +41 config_read 507 542 +35 find_pair 169 187 +18 fopen_for_write - 14 +14 fopen_for_read - 14 +14 find_main 406 418 +12 xfopen_for_write - 10 +10 xfopen_for_read - 10 +10 popstring 134 140 +6 parse_inittab 396 401 +5 next_token 923 928 +5 pack_gzip 1659 1661 +2 bb__parsespent 117 119 +2 fallbackSort 1719 1717 -2 evalvar 1376 1374 -2 qrealloc 36 33 -3 ... ... ... ... singlemount 4579 4569 -10 process_stdin 443 433 -10 patch_main 1111 1101 -10 ifupdown_main 2175 2165 -10 file_action_grep 90 80 -10 uuidcache_init 649 637 -12 hush_main 797 785 -12 read_config 230 217 -13 dpkg_main 3835 3820 -15 read_line_input 3134 3110 -24 sysctl_main 232 203 -29 config_open 40 10 -30 WARN_BAD_LINE 44 - -44 login_main 1714 1575 -139 ------------------------------------------------------------------------------ (add/remove: 5/1 grow/shrink: 8/74 up/down: 174/-737) Total: -563 bytes
* open_transformer: do not return fd, it does not changeDenis Vlasenko2008-07-101-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | libbb: adopt zipped read from modprobe-small function old new delta getoptscmd 708 713 +5 qgravechar 106 109 +3 huft_build 1165 1168 +3 tr_main 474 472 -2 open_transformer 91 89 -2 evalvar 1376 1374 -2 rpm_main 1691 1688 -3 qrealloc 36 33 -3 get_header_tar_lzma 55 52 -3 get_header_tar_gz 100 97 -3 get_header_tar_bz2 55 52 -3 get_header_tar_Z 89 86 -3 find_main 418 406 -12 prepare 302 283 -19 xmalloc_open_zipped_read_close 161 135 -26 xmalloc_read 248 199 -49 ------------------------------------------------------------------------------ (add/remove: 0/0 grow/shrink: 3/13 up/down: 11/-130) Total: -119 bytes
* *: rename ATTRIBUTE_XXX to just XXX.Denis Vlasenko2008-07-051-2/+2
|
* sendmail: fix wrong vfork usage here tooDenis Vlasenko2008-07-011-1/+1
| | | | | | | | | | | | *: shorten error texts function old new delta launch_helper - 151 +151 vfork_or_die 20 - -20 sendgetmail_main 1946 1848 -98 ------------------------------------------------------------------------------ (add/remove: 1/1 grow/shrink: 0/1 up/down: 151/-118) Total: 33 bytes
* revert last two commits. vfork cannot be used in subroutine,Denis Vlasenko2008-07-011-1/+3
| | | | | it trashes stack on return
* *: introduce and use xvfork()Denis Vlasenko2008-07-011-3/+1
| | | | | | | | | | | | | | | | | | | | function old new delta time_main 1052 1285 +233 crontab_main 623 856 +233 ifupdown_main 2202 2403 +201 xvfork - 20 +20 passwd_main 1049 1053 +4 grave 1068 1066 -2 script_main 935 921 -14 vfork_or_die 20 - -20 vfork_compressor 206 175 -31 open_as_user 109 - -109 popen2 218 - -218 edit_file 910 690 -220 run_command 268 - -268 ------------------------------------------------------------------------------ (add/remove: 1/4 grow/shrink: 4/4 up/down: 691/-882) Total: -191 bytes
* libunarchive: stop using static data in archivers - archive_handle_tDenis Vlasenko2008-06-281-6/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | can trivially provide space for that. rpm: code shrink tar: simplify autodetection of bz2/.gz function old new delta static.not_first 1 - -1 static.end 1 - -1 bb_makedev 51 49 -2 static.saved_hardlinks_created 4 - -4 static.saved_hardlinks 4 - -4 longname 4 - -4 linkname 4 - -4 hash_file 251 247 -4 get_header_tar 1528 1521 -7 rpm_main 1711 1697 -14 get_header_cpio 965 944 -21 ------------------------------------------------------------------------------ (add/remove: 0/6 grow/shrink: 0/5 up/down: 0/-66) Total: -66 bytes text data bss dec hex filename 804926 611 6868 812405 c6575 busybox_old 804878 611 6852 812341 c6535 busybox_unstripped
* *: introduce and use FAST_FUNC: regparm on i386, otherwise no-onDenis Vlasenko2008-06-271-3/+3
| | | | | | | text data bss dec hex filename 808035 611 6868 815514 c719a busybox_old 804472 611 6868 811951 c63af busybox_unstripped
* *: use llist_pop for traverse-and-free list operationDenis Vlasenko2008-06-151-7/+2
| | | | | | | | | | | | | | | | | | function old new delta append_file_list_to_list 109 111 +2 udhcpc_main 2414 2413 -1 run_parts_main 325 324 -1 od_main 2324 2323 -1 getopt_main 709 707 -2 env_main 253 251 -2 sed_main 659 656 -3 ps_main 522 519 -3 traceroute_main 3960 3954 -6 sort_main 844 838 -6 diff_main 866 858 -8 ------------------------------------------------------------------------------ (add/remove: 0/0 grow/shrink: 1/10 up/down: 2/-33) Total: -31 bytes
* tar: fix "unused parameter 'gzip'" warningDenis Vlasenko2008-06-141-0/+3
|
* - use EXIT_{SUCCESS,FAILURE}. No object-code changesBernhard Reutner-Fischer2008-05-191-1/+1
|