Denys Vlasenko
f2c184be83
unlzma: fixed speedup/shrink by Pascal Bellard (pascal.bellard AT ads-lu.com)
...
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2009-09-15 23:40:08 +02:00
Denys Vlasenko
3de3f57c6d
Revert "unlzma: speedup, by Pascal Bellard (pascal.bellard AT ads-lu.com)"
...
https://bugs.busybox.net/show_bug.cgi?id=599
This reverts commit 9ac3dc764a
.
2009-09-06 15:06:25 +02:00
Denys Vlasenko
b9762922d1
libunarchive: fix a bug where mode and time is no longer restored
...
Introduced by me in 1.15.x. Found by Rob Landley.
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2009-08-30 01:18:34 +02:00
Denys Vlasenko
0a130d510d
rpm2cpio: handle unseekable input correctly
...
function old new delta
data_skip 14 20 +6
seek_by_jump 67 72 +5
data_align 81 84 +3
seek_by_read 20 19 -1
skip_header 99 94 -5
rpm2cpio_main 183 177 -6
------------------------------------------------------------------------------
(add/remove: 0/0 grow/shrink: 3/3 up/down: 14/-12) Total: 2 bytes
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2009-08-28 21:09:51 +02:00
Denys Vlasenko
b773f715d6
tar: handle 256-base encoding in mtime
...
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2009-07-08 18:58:09 +02:00
Denys Vlasenko
09e63bb81f
df: fix "df /"
...
also, clean up mount checks in mkfs/fsck.
function old new delta
find_mount_point 243 261 +18
sha1_process_block64 497 510 +13
find_main 436 444 +8
display_speed 85 90 +5
df_main 795 793 -2
parse_command 1463 1460 -3
static.ignored_mounts 8 - -8
mkfs_minix_main 2962 2937 -25
fsck_minix_main 3065 2970 -95
------------------------------------------------------------------------------
(add/remove: 0/1 grow/shrink: 4/4 up/down: 44/-133) Total: -89 bytes
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2009-07-05 04:50:36 +02:00
Mike Frysinger
b9f2bb36ea
only build common libarchive objs when needed
...
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
2009-05-28 00:47:14 -04:00
Mike Frysinger
4f239b1bb4
libunarchive: fix build failure with !FEATURE_TAR_UNAME_GNAME
...
We can't use C if(...) with ENABLE_FEATURE_TAR_UNAME_GNAME because it
relies on conditional members in the file_header_t structure:
archival/libunarchive/data_extract_all.c: In function ‘data_extract_all’:
archival/libunarchive/data_extract_all.c:123: error: ‘file_header_t’ has no member named ‘uname’
archival/libunarchive/data_extract_all.c:124: error: ‘file_header_t’ has no member named ‘uname’
archival/libunarchive/data_extract_all.c:127: error: ‘file_header_t’ has no member named ‘gname’
archival/libunarchive/data_extract_all.c:128: error: ‘file_header_t’ has no member named ‘gname’
make[1]: *** [archival/libunarchive/data_extract_all.o] Error 1
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
2009-05-05 07:00:27 -04:00
Denis Vlasenko
9ac3dc764a
unlzma: speedup, by Pascal Bellard (pascal.bellard AT ads-lu.com)
...
LZMA_FAST off: 10% faster and:
function old new delta
rc_is_bit_1 - 92 +92
rc_do_normalize 45 81 +36
rc_update_bit_1 25 - -25
rc_update_bit_0 30 - -30
rc_is_bit_0_helper 38 - -38
rc_get_bit 60 17 -43
rc_read 48 - -48
unpack_lzma_stream 1768 1517 -251
------------------------------------------------------------------------------
(add/remove: 1/4 grow/shrink: 1/2 up/down: 128/-435) Total: -307 bytes
LZMA_FAST on: 14% faster and:
unpack_lzma_stream 2301 2737 +436
rc_get_bit 106 - -106
2009-04-25 12:19:35 +00:00
Denis Vlasenko
f9d4fc3cf8
switch_root: improve behavior on error; improve help text
...
*: make "can't execute '%s'" message uniform
2009-04-21 20:40:51 +00:00
Denis Vlasenko
5e34ff29bc
*: mass renaming of USE_XXXX to IF_XXXX
...
and SKIP_XXXX to IF_NOT_XXXX - the second one was especially
badly named. It was not skipping anything!
2009-04-21 11:09:40 +00:00
Denis Vlasenko
8b814b4a34
tar: support for tar --numeric-owner. By Natanael Copa.
...
function old new delta
tar_longopts 221 237 +16
data_extract_all 692 705 +13
tar_main 690 702 +12
2009-04-21 00:52:21 +00:00
Denis Vlasenko
3266aa9ec2
trailing whitespace removal
2009-04-01 11:24:04 +00:00
Denis Vlasenko
1f0b95f147
tar: make FEATURE_TAR_AUTODETECT work with DESKTOP off too.
2009-03-13 14:26:44 +00:00
Denis Vlasenko
ab6b446e95
header_verbose_list: show off_t size, not cast to (unsigned)
...
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
2008-12-12 02:14:35 +00:00
Denis Vlasenko
efb545b9bd
optimize 16- and 32-bit moves
...
function old new delta
udhcpd_main 1239 1257 +18
udhcp_add_simple_option 93 92 -1
buffer_read_le_u32 19 18 -1
unpack_gz_stream_with_info 526 520 -6
dnsd_main 1470 1463 -7
udhcp_run_script 1208 1186 -22
send_ACK 255 229 -26
arping_main 1661 1623 -38
send_offer 470 428 -42
------------------------------------------------------------------------------
(add/remove: 0/0 grow/shrink: 1/8 up/down: 18/-143) Total: -125 bytes
2008-12-08 22:56:18 +00:00
Denis Vlasenko
1a9e9bdd93
gunzip: restore mtime. approx +80 bytes of code
...
rpm: make code more robust
lsmod: small code shrink
2008-11-01 12:54:56 +00:00
Denis Vlasenko
d83676ec47
data_extract_all: do not complain if directory exists on mkdir
...
rpm/cpio: move "20653 blocks" printout from get_header_cpio to cpio_main -
rpm doesn't want to have that
2008-10-17 14:03:56 +00:00
Denis Vlasenko
e9ad84dfd4
*: refactor handling of archived files. "tar f file.tar.lzma" now works too.
...
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
2008-08-05 13:10:34 +00:00
Denis Vlasenko
68a192c007
fix trivial build warning
2008-07-22 19:38:57 +00:00
Denis Vlasenko
adc772a5f2
tar: fix handling of tarballs with symlinks with size field != 0
2008-07-20 17:10:43 +00:00
Denis Vlasenko
a46dd89e94
cpio: internalize archive_xread_all_eof. add a few paranoia checks
...
for corrupted cpio files.
modprobe-small: remove stray include
route: small code shrink
function old new delta
get_header_cpio 958 980 +22
archive_xread_all_eof 33 - -33
------------------------------------------------------------------------------
(add/remove: 0/1 grow/shrink: 1/0 up/down: 22/-33) Total: -11 bytes
2008-07-12 09:20:44 +00:00
Denis Vlasenko
ee1b3b1042
cpio: on unpack, limit filename length to 8k; shorten comment a bit
2008-07-11 22:20:59 +00:00
Denis Vlasenko
2b407b12be
cpio: support some long options; document GNU options
2008-07-11 21:42:12 +00:00
Denis Vlasenko
86090e2599
fix compile failures resulting from last few commits
2008-07-11 08:23:52 +00:00
Denis Vlasenko
0381d422d9
dpkg_deb: slight code shrink
...
ar: reuse existing ar unpacking code
get_header_tar: handle autodetection for tiny .tar.gz files too
unarchive.h: do not include CONFIGed out things
function old new delta
get_header_tar 1521 1534 +13
dpkg_deb_main 400 380 -20
ar_main 260 196 -64
------------------------------------------------------------------------------
(add/remove: 0/0 grow/shrink: 1/2 up/down: 13/-84) Total: -71 bytes
2008-07-10 23:06:00 +00:00
Denis Vlasenko
b6052724ff
open_transformer: do not return fd, it does not change
...
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
2008-07-10 17:43:01 +00:00
Denis Vlasenko
a60f84ebf0
*: rename ATTRIBUTE_XXX to just XXX.
2008-07-05 09:18:54 +00:00
Denis Vlasenko
fa0b56db76
sendmail: fix wrong vfork usage here too
...
*: 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
2008-07-01 16:09:07 +00:00
Denis Vlasenko
82604e9730
revert last two commits. vfork cannot be used in subroutine,
...
it trashes stack on return
2008-07-01 15:59:42 +00:00
Denis Vlasenko
58d60c3333
*: introduce and use xfork()
...
function old new delta
xfork - 20 +20
msh_main 1377 1380 +3
mod_process 455 446 -9
forkexit_or_rexec 30 17 -13
expand_variables 1434 1421 -13
open_transformer 91 76 -15
------------------------------------------------------------------------------
(add/remove: 1/0 grow/shrink: 1/4 up/down: 23/-50) Total: -27 bytes
2008-07-01 11:11:24 +00:00
Denis Vlasenko
3da5572bfa
*: introduce and use xvfork()
...
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
2008-07-01 10:40:41 +00:00
Denis Vlasenko
86d88c0990
bunzip2: make proper fix for the problem "fixed" in rev. 22521
...
Thanks for Rob Landley <rob@landley.net>
2008-06-28 18:10:09 +00:00
Denis Vlasenko
a60936da06
libunarchive: stop using static data in archivers - archive_handle_t
...
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
2008-06-28 05:04:09 +00:00
Denis Vlasenko
2bbdda09df
unlzma: fix memory leak (Pascal Bellard)
2008-06-27 15:48:45 +00:00
Denis Vlasenko
defc1ea340
*: introduce and use FAST_FUNC: regparm on i386, otherwise no-on
...
text data bss dec hex filename
808035 611 6868 815514 c719a busybox_old
804472 611 6868 811951 c63af busybox_unstripped
2008-06-27 02:52:20 +00:00
Denis Vlasenko
5fb79535ee
bunzip2: fix an uncompression error. Add the example to testsuite.
2008-06-26 20:27:42 +00:00
Denis Vlasenko
f5d8c90d73
style fixes, no code changes
2008-06-26 14:32:57 +00:00
Denis Vlasenko
2649f215ae
open_transformer: fix bug of calling exit instead of _exit
...
open_transformer: don't leak compressed descriptor anymore
recursive_action: tiny shrink
2008-06-26 03:26:57 +00:00
Bernhard Reutner-Fischer
5e25ddb7d3
- use STD*_FILENO some more. No object-code changes
2008-05-19 09:48:17 +00:00
Bernhard Reutner-Fischer
636a1f85e8
- use EXIT_{SUCCESS,FAILURE}. No object-code changes
2008-05-19 09:29:47 +00:00
Denis Vlasenko
6b06cb80be
more of -Wall fixes from Cristian Ionescu-Idbohrn.
...
Some are fixing real bugs.
function old new delta
syslogd_main 938 958 +20
get_signum 136 143 +7
obj_load 777 782 +5
recv_from_to 210 214 +4
get_next_block 1795 1799 +4
display_topmem_process_list 1117 1121 +4
logread_main 484 487 +3
buffer_fill_and_print 73 76 +3
kill_main 687 689 +2
ll_remember_index 240 241 +1
do_stats 452 453 +1
if_readconf 166 165 -1
display_process_list 1192 1191 -1
run_applet_and_exit 507 505 -2
print_signames 33 31 -2
parse_one_line 1092 1090 -2
find_out_spec 57 55 -2
add_ksymoops_symbols 421 419 -2
ash_main 1407 1402 -5
------------------------------------------------------------------------------
(add/remove: 0/0 grow/shrink: 11/8 up/down: 54/-17) Total: 37 bytes
2008-05-15 21:30:45 +00:00
Denis Vlasenko
77ad97f199
more -Wall warning fixes from Cristian Ionescu-Idbohrn.
...
This time it resulted in small code changes:
function old new delta
nexpr 820 828 +8
tail_main 1200 1202 +2
wrapf 166 167 +1
parse_mount_options 227 209 -18
------------------------------------------------------------------------------
(add/remove: 0/0 grow/shrink: 3/1 up/down: 11/-18) Total: -7 bytes
2008-05-13 02:27:31 +00:00
Denis Vlasenko
05efca90d2
tar: fix obscure case when name is "" and prefix is not ""
2008-04-29 04:12:58 +00:00
Denis Vlasenko
d93400bffb
tar: fix the case where long base names can be ignored
2008-04-29 03:54:16 +00:00
Denis Vlasenko
5a07a1d255
tar: move vfork into separate function (smaller code)
...
open_transformer: more informative error messages
function old new delta
vfork_compressor - 210 +210
writeTarFile 547 299 -248
------------------------------------------------------------------------------
(add/remove: 1/0 grow/shrink: 0/1 up/down: 210/-248) Total: -38 bytes
2008-04-21 21:56:07 +00:00
Denis Vlasenko
bc1918a7a2
trivial fixes to make bbox compile with gcc 4.3.0
2008-04-15 01:17:50 +00:00
Denis Vlasenko
1af00eda92
cpio: fix a bug where we do not extract zero-sized hardlinks
...
(spotted at http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=466771 ).
Add testsuite entry for that, and another one for another bug:
we do not list hardlinks in cpio -t (not fixed).
function old new delta
get_header_cpio 884 909 +25
static.saved_hardlinks_created - 4 +4
static.pending_hardlinks 4 - -4
static.inode 4 - -4
cpio_main 1122 1060 -62
2008-04-05 02:44:30 +00:00
Denis Vlasenko
c0183e6e0d
unlzma: shrink by Pascal Bellard <pascal.bellard AT ads-lu.com>
2008-03-18 03:13:25 +00:00
Denis Vlasenko
9f153f610f
fsck_minix: getopt32-ification; code shrink; reduce stack usage;
...
fix bug in map_block2: s/(blknr >= 256 * 256)/(blknr < 256 * 256)/
function old new delta
get_inode_common - 291 +291
add_zone_common - 205 +205
ask 229 215 -14
write_super_block 109 90 -19
write_block 653 629 -24
bad_zone 95 64 -31
read_block 241 198 -43
fsck_minix_main 3285 3195 -90
add_zone2 217 34 -183
add_zone 216 33 -183
recursive_check 1097 866 -231
recursive_check2 1340 956 -384
------------------------------------------------------------------------------
(add/remove: 2/0 grow/shrink: 0/10 up/down: 496/-1202) Total: -706 bytes
text data bss dec hex filename
799349 661 7428 807438 c520e busybox_old
798437 661 7428 806526 c4e7e busybox_unstripped
2008-03-17 08:32:26 +00:00