Denys Vlasenko
dcbfaba264
fix improper utimes usage
...
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2009-11-29 19:40:36 +01:00
Denys Vlasenko
f94c9bf288
tar: fix bug 673 (misdetection of repeated dir as hardlink). +92 bytes
...
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>
2009-11-29 07:45:33 +01:00
Denys Vlasenko
6ccaa23f2b
libunarchive: fix reversed test for older/newer
...
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2009-11-24 01:16:12 +01:00
Denys Vlasenko
389cca4b9e
some non-gnu compilers can't have non-const struct initializers
...
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2009-11-15 02:28:56 +01:00
Bernhard Reutner-Fischer
a307af1af6
use utimes() rather than obsolescent utime()
...
Signed-off-by: Bernhard Reutner-Fischer <rep.dot.nop@gmail.com>
2009-11-15 00:12:53 +01:00
Denys Vlasenko
adf922ec28
*: a few more NOINLINEs
...
function old new delta
print_linkinfo - 815 +815
do_msg - 783 +783
INET_setroute - 757 +757
varvalue - 746 +746
do_sem - 637 +637
inflate_codes - 617 +617
INET6_setroute - 491 +491
edir - 370 +370
sync_cursor - 298 +298
update_utmp - 246 +246
searchLines - 165 +165
setup_alarm - 144 +144
may_wakeup - 101 +101
getNum 566 371 -195
refresh 1166 848 -318
rtcwake_main 809 479 -330
getty_main 2396 1921 -475
chpst_main 1373 746 -627
inflate_unzip_internal 1335 567 -768
evalvar 1384 612 -772
ipaddr_list_or_flush 2160 1246 -914
route_main 1585 245 -1340
ipcs_main 2523 1049 -1474
------------------------------------------------------------------------------
(add/remove: 13/0 grow/shrink: 0/10 up/down: 6170/-7213) Total: -1043 bytes
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2009-10-08 14:35:37 +02:00
Denys Vlasenko
8d338173a4
tar: accept spaces at the end of header fields (compat)
...
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2009-09-23 17:16:37 +02:00
Denys Vlasenko
2bf6634ef4
ar: fix long filenames handling (bug 611)
...
function old new delta
get_header_ar 493 528 +35
read_num - 25 +25
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2009-09-20 01:28:27 +02:00
Denys Vlasenko
885583ebe3
tar: do chown, not lchown to restore mode (compat)
...
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2009-09-17 03:02:57 +02:00
Denys Vlasenko
d57d62686d
tar: fix --numeric-owner, --no-same-owner, --no-same-permissions bits
...
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2009-09-17 02:43:14 +02:00
Denys Vlasenko
8dc0e1929e
use PACKED macro insted of open-coding GCC-ism
...
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2009-09-16 00:58:11 +02:00
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