Denis Vlasenko [Thu, 21 Aug 2008 11:34:57 +0000 (11:34 -0000)]
cosmetic fixes on the webpage
Bernhard Reutner-Fischer [Thu, 21 Aug 2008 11:34:46 +0000 (11:34 -0000)]
- tweak markup
Bernhard Reutner-Fischer [Thu, 21 Aug 2008 11:23:42 +0000 (11:23 -0000)]
- bump copyright year
Bernhard Reutner-Fischer [Thu, 21 Aug 2008 11:19:52 +0000 (11:19 -0000)]
- fix markup
Bernhard Reutner-Fischer [Thu, 21 Aug 2008 10:54:55 +0000 (10:54 -0000)]
- fix some wrong markup.
sed -i -e 's, href=\([^"][^>]*\)>, href="\1">,g' *.html
The proper way to specify an attribute is to quote the val: theattrib="val"
Bernhard Reutner-Fischer [Thu, 21 Aug 2008 10:35:26 +0000 (10:35 -0000)]
- correct release date for 1.12.0 and fix a few typos
Denis Vlasenko [Thu, 21 Aug 2008 10:19:28 +0000 (10:19 -0000)]
announce 1.12.0
Denis Vlasenko [Wed, 20 Aug 2008 23:30:42 +0000 (23:30 -0000)]
Bump version to 1.13.0.svn
Denis Vlasenko [Wed, 20 Aug 2008 23:29:10 +0000 (23:29 -0000)]
This is 1.12.0
Denis Vlasenko [Wed, 20 Aug 2008 23:03:38 +0000 (23:03 -0000)]
getopt32: do not return pointer to alloca() areas
Denis Vlasenko [Wed, 20 Aug 2008 22:19:27 +0000 (22:19 -0000)]
envdir: fix "envdir with no params" case
Denis Vlasenko [Wed, 20 Aug 2008 08:50:02 +0000 (08:50 -0000)]
findfs: make it use setuid-ness of busybox binary
Denis Vlasenko [Wed, 20 Aug 2008 02:38:48 +0000 (02:38 -0000)]
fsck: use getmntent_r instead of open-coded parsing. By Vladimir
function old new delta
create_fs_device 125 158 +33
parse_word 41 - -41
parse_escape 55 - -55
fsck_main 2246 1893 -353
------------------------------------------------------------------------------
(add/remove: 0/2 grow/shrink: 1/1 up/down: 33/-449) Total: -416 bytes
Denis Vlasenko [Wed, 20 Aug 2008 00:46:32 +0000 (00:46 -0000)]
linedit: fix use-after-free
Denis Vlasenko [Wed, 20 Aug 2008 00:15:42 +0000 (00:15 -0000)]
libbb: getopt32() should not ever touch argv[0] (even read)
Denis Vlasenko [Wed, 20 Aug 2008 00:12:22 +0000 (00:12 -0000)]
libbb: fix mishandling of "all argv are opts" in getopt32()
function old new delta
top_main 1100 1095 -5
getopt32 1398 1361 -37
------------------------------------------------------------------------------
(add/remove: 0/0 grow/shrink: 0/2 up/down: 0/-42) Total: -42 bytes
Denis Vlasenko [Tue, 19 Aug 2008 23:02:23 +0000 (23:02 -0000)]
ifupdown: fixes for shutdown of DHCP-managed interfaces
from Wade Berrier <wberrier AT gmail.com>
Denis Vlasenko [Tue, 19 Aug 2008 22:26:05 +0000 (22:26 -0000)]
Updating defconfig, fixing a typo in Config.in
Bernhard Reutner-Fischer [Tue, 19 Aug 2008 11:28:52 +0000 (11:28 -0000)]
- add new applet rdev (Grant Erickson)
- fixes and shrink (me)
Denis Vlasenko [Sun, 17 Aug 2008 14:17:48 +0000 (14:17 -0000)]
showkey: new applet by Vladimir
Denis Vlasenko [Sun, 17 Aug 2008 14:12:26 +0000 (14:12 -0000)]
setfont: new applet by Vladimir
Denis Vlasenko [Sun, 17 Aug 2008 12:47:19 +0000 (12:47 -0000)]
libbb: use ptsname_r, it's smaller
function old new delta
xgetpty 91 81 -10
ptsname 33 - -33
text data bss dec hex filename
793828 592 6692 801112 c3958 busybox_old
793796 592 6660 801048 c3918 busybox_unstripped
Denis Vlasenko [Sat, 16 Aug 2008 11:48:02 +0000 (11:48 -0000)]
ash: fix "(cat < file)" hang introduced by rev 22944.
Denis Vlasenko [Fri, 15 Aug 2008 21:20:23 +0000 (21:20 -0000)]
cut: fix buffer overflow (bug 4544).
Denis Vlasenko [Fri, 15 Aug 2008 21:03:17 +0000 (21:03 -0000)]
chpst: fix "envdir dir" case (bug 4574).
Denis Vlasenko [Fri, 15 Aug 2008 20:14:23 +0000 (20:14 -0000)]
arp: without -H <type>, assume "ether". closes 4564
Denis Vlasenko [Fri, 15 Aug 2008 19:56:24 +0000 (19:56 -0000)]
install: fix long option not taking params (bug 4584)
Denis Vlasenko [Fri, 15 Aug 2008 19:18:35 +0000 (19:18 -0000)]
mkdir: fix "uname 0222; mkdir foo/bar" case
(by Doug Graham <dgraham AT nortel.com>)
function old new delta
bb_make_directory 291 280 -11
Denis Vlasenko [Thu, 14 Aug 2008 21:57:43 +0000 (21:57 -0000)]
nmeter: fix read past the end if a buffer. Closes 4594
Denis Vlasenko [Tue, 12 Aug 2008 01:35:34 +0000 (01:35 -0000)]
ifupdown: fixes for custom MAC address, by Wade Berrier <wberrier AT gmail.com>
Denis Vlasenko [Sun, 10 Aug 2008 20:46:39 +0000 (20:46 -0000)]
sendmail: work around (bogus) gcc warning
Denis Vlasenko [Sat, 9 Aug 2008 20:31:57 +0000 (20:31 -0000)]
fix byte-swapping of compressed help on big-endian machines
Denis Vlasenko [Sat, 9 Aug 2008 17:16:40 +0000 (17:16 -0000)]
optimize config_read() (by Timo Teras <timo.teras AT iki.fi>)
function old new delta
bb_get_chunk_with_continuation - 176 +176
find_pair 169 187 +18
...
process_stdin 443 433 -10
config_read 549 456 -93
bb_get_chunk_from_file 139 7 -132
------------------------------------------------------------------------------
(add/remove: 1/0 grow/shrink: 7/7 up/down: 215/-254) Total: -39 bytes
Denis Vlasenko [Sat, 9 Aug 2008 16:15:14 +0000 (16:15 -0000)]
grep: option to use GNU regex matching instead of POSIX one.
This fixes problems with NULs in files being scanned, but
costs +800 bytes. The same can be done to sed (TODO).
Bernhard Reutner-Fischer [Wed, 6 Aug 2008 18:14:38 +0000 (18:14 -0000)]
- support relatime / norelatime
Bernhard Reutner-Fischer [Wed, 6 Aug 2008 17:39:30 +0000 (17:39 -0000)]
- fix typo
Denis Vlasenko [Wed, 6 Aug 2008 09:41:09 +0000 (09:41 -0000)]
modprobe-small: fix infinite looping, by Timo Teras
Denis Vlasenko [Wed, 6 Aug 2008 08:44:09 +0000 (08:44 -0000)]
fix bug 4464 for real. I am dumb.
Denis Vlasenko [Wed, 6 Aug 2008 00:51:43 +0000 (00:51 -0000)]
modprobe: semi-trivial code shrink
function old new delta
build_dep 870 859 -11
already_loaded 134 112 -22
modprobe_main 449 368 -81
------------------------------------------------------------------------------
(add/remove: 0/0 grow/shrink: 0/3 up/down: 0/-114) Total: -114 bytes
Denis Vlasenko [Tue, 5 Aug 2008 23:32:27 +0000 (23:32 -0000)]
*: use get_console_fd() as appropriate, and make it fail on open error -
get_console_fd_or_die().
function old new delta
get_console_fd_or_die - 163 +163
loadkmap_main 211 201 -10
loadfont_main 440 430 -10
dumpkmap_main 218 208 -10
kbd_mode_main 158 146 -12
setkeycodes_main 156 143 -13
get_console_fd 163 - -163
------------------------------------------------------------------------------
(add/remove: 1/1 grow/shrink: 0/5 up/down: 163/-218) Total: -55 bytes
Denis Vlasenko [Tue, 5 Aug 2008 23:01:01 +0000 (23:01 -0000)]
kbd_mode: remove erroneous & from &var. By Vladimir.
Denis Vlasenko [Tue, 5 Aug 2008 21:12:00 +0000 (21:12 -0000)]
libbb: fix thinko in latest xrealloc_vector change
Bernhard Reutner-Fischer [Tue, 5 Aug 2008 19:06:35 +0000 (19:06 -0000)]
- reinstate commented out _FORTIFY_SOURCE that was somehow dropped by Denys?
Denis Vlasenko [Tue, 5 Aug 2008 17:43:29 +0000 (17:43 -0000)]
randomconfig fixes
Denis Vlasenko [Tue, 5 Aug 2008 15:28:05 +0000 (15:28 -0000)]
man: teach it to use .lzma if requested by .config
man: fix a case when a full pathname to manpage is given
Denis Vlasenko [Tue, 5 Aug 2008 14:15:19 +0000 (14:15 -0000)]
man: yet another fixlet to "manpage link" code
Denis Vlasenko [Tue, 5 Aug 2008 13:45:22 +0000 (13:45 -0000)]
man: fixlet for man links
Denis Vlasenko [Tue, 5 Aug 2008 13:16:18 +0000 (13:16 -0000)]
man: add handling of "man links", by Ivana Varekova <varekova AT redhat.com>
function old new delta
run_pipe 102 354 +252
show_manpage - 126 +126
man_main 705 615 -90
------------------------------------------------------------------------------
(add/remove: 1/0 grow/shrink: 1/1 up/down: 378/-90) Total: 288 bytes
Denis Vlasenko [Tue, 5 Aug 2008 13:10:34 +0000 (13:10 -0000)]
*: 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
Bernhard Reutner-Fischer [Tue, 5 Aug 2008 09:56:56 +0000 (09:56 -0000)]
- don't free user-supplied string (via -e)
- fix helptext
function old new delta
chpasswd_main 300 319 +19
packed_usage 24352 24344 -8
.rodata 122227 122195 -32
------------------------------------------------------------------------------
(add/remove: 0/0 grow/shrink: 1/2 up/down: 19/-40) Total: -21 bytes
Denis Vlasenko [Tue, 5 Aug 2008 07:59:25 +0000 (07:59 -0000)]
whitespace fixes, no code changed
Denis Vlasenko [Mon, 4 Aug 2008 21:30:55 +0000 (21:30 -0000)]
xargs: fix -e default to match newer GNU xargs, add SUS mandated -E.
closes bug 4414
Denis Vlasenko [Mon, 4 Aug 2008 21:16:46 +0000 (21:16 -0000)]
modprobe: use buffering line reads (fgets) instead of reads().
libbb: remove reads()
function old new delta
include_conf_file_act 961 980 +19
localcmd 282 284 +2
already_loaded 155 151 -4
in_cksum 58 53 -5
modprobe_main 1630 1624 -6
reads 129 - -129
------------------------------------------------------------------------------
(add/remove: 0/1 grow/shrink: 2/3 up/down: 21/-144) Total: -123 bytes
Denis Vlasenko [Mon, 4 Aug 2008 14:40:58 +0000 (14:40 -0000)]
fix some testsuite false positives
Denis Vlasenko [Mon, 4 Aug 2008 13:20:36 +0000 (13:20 -0000)]
libbb: make xrealloc_vector zero out the realloc'ed tail
function old new delta
xrealloc_vector_helper 51 76 +25
man_main 712 705 -7
act 250 234 -16
create_list 91 70 -21
getopt_main 695 664 -31
load_dep_bb 281 248 -33
fileAction 744 709 -35
------------------------------------------------------------------------------
(add/remove: 0/0 grow/shrink: 1/6 up/down: 25/-143) Total: -118 bytes
Denis Vlasenko [Mon, 4 Aug 2008 00:46:07 +0000 (00:46 -0000)]
hush: fix mishandling of a'b'c=fff as assignments. They are not.
function old new delta
parse_stream 1920 2004 +84
done_word 715 752 +37
parse_and_run_stream 328 333 +5
builtin_exec 25 29 +4
pseudo_exec_argv 138 139 +1
run_list 2006 1999 -7
is_assignment 215 134 -81
------------------------------------------------------------------------------
(add/remove: 0/0 grow/shrink: 5/2 up/down: 131/-88) Total: 43 bytes
Denis Vlasenko [Sun, 3 Aug 2008 22:27:50 +0000 (22:27 -0000)]
hush: remove a comment about already fixed bug
Denis Vlasenko [Sun, 3 Aug 2008 22:14:02 +0000 (22:14 -0000)]
makedevs: shrink by Vladimir
function old new delta
makedevs_main 1071 1049 -22
packed_usage 24744 24708 -36
Denis Vlasenko [Sun, 3 Aug 2008 19:23:30 +0000 (19:23 -0000)]
ssd: fix -K/-S mixup in help text
Denis Vlasenko [Sun, 3 Aug 2008 19:20:25 +0000 (19:20 -0000)]
xargs: update help text
Denis Vlasenko [Sun, 3 Aug 2008 19:12:25 +0000 (19:12 -0000)]
xargs: fix xargs -e; added test for that
Denis Vlasenko [Sun, 3 Aug 2008 18:43:45 +0000 (18:43 -0000)]
halt: signal init regardless of ENABLE_INIT
Denis Vlasenko [Fri, 1 Aug 2008 02:32:23 +0000 (02:32 -0000)]
nameif: shrink (by Vladimir)
function old new delta
nameif_main 668 636 -32
Denis Vlasenko [Fri, 1 Aug 2008 02:15:51 +0000 (02:15 -0000)]
makedevs: fix help text discrepancies
Denis Vlasenko [Fri, 1 Aug 2008 02:15:05 +0000 (02:15 -0000)]
makedevs: shrink (by Vladimir); testsuite
function old new delta
makedevs_main 1153 1071 -82
Denis Vlasenko [Thu, 31 Jul 2008 10:34:48 +0000 (10:34 -0000)]
hush: support $_NUMBERS variable names
Denis Vlasenko [Thu, 31 Jul 2008 10:09:26 +0000 (10:09 -0000)]
hush: fix "case ... in <newline> word)..."
Denis Vlasenko [Thu, 31 Jul 2008 00:17:01 +0000 (00:17 -0000)]
hush: support "pattern1|pattern2...)" in case statements
parse_stream 1847 1861 +14
run_list 1995 2006 +11
Denis Vlasenko [Wed, 30 Jul 2008 22:58:18 +0000 (22:58 -0000)]
tr: fix yet another access past the end of a string (bug 4374)
Denis Vlasenko [Wed, 30 Jul 2008 21:23:26 +0000 (21:23 -0000)]
chpst: large code shrink by Vladimir
function old new delta
chpst_main 1058 1357 +299
euidgid 56 - -56
suidgid 59 - -59
slimit 208 - -208
packed_usage 24638 24420 -218
edir 375 - -375
------------------------------------------------------------------------------
(add/remove: 0/4 grow/shrink: 1/1 up/down: 299/-916) Total: -617 bytes
Denis Vlasenko [Wed, 30 Jul 2008 15:35:05 +0000 (15:35 -0000)]
ash: bash compat: "shift $BIGNUM" is equivalent to "shift 1"
Denis Vlasenko [Tue, 29 Jul 2008 19:48:30 +0000 (19:48 -0000)]
hush: trivial code shrink
function old new delta
builtin_continue 48 22 -26
Denis Vlasenko [Tue, 29 Jul 2008 19:43:10 +0000 (19:43 -0000)]
hush: use G.xxx instead of #define xxx G.xxx. We have too many globals
there and #defines get messy. Remove one write-only G.variable.
Denis Vlasenko [Tue, 29 Jul 2008 13:57:59 +0000 (13:57 -0000)]
randomconfig fix
Denis Vlasenko [Tue, 29 Jul 2008 13:36:09 +0000 (13:36 -0000)]
hush: small fix for repeated continue and fix for wrong loop depth count
after Ctrl-C; with testcase for first one
Denis Vlasenko [Tue, 29 Jul 2008 11:47:46 +0000 (11:47 -0000)]
hush: fix inverted check (was making all break's to act as "break 99999")
Denis Vlasenko [Tue, 29 Jul 2008 11:37:15 +0000 (11:37 -0000)]
hush: fix break'ing out of {} and () groups; with testcase
function old new delta
builtin_break 93 129 +36
builtin_continue 21 47 +26
run_list 1973 1976 +3
Denis Vlasenko [Tue, 29 Jul 2008 11:10:01 +0000 (11:10 -0000)]
randomconfig fixes
Denis Vlasenko [Tue, 29 Jul 2008 10:16:05 +0000 (10:16 -0000)]
hush: add #defines to switch off break/continue if loops are not supported
*: remove a few inline keywords
no code changes
Denis Vlasenko [Tue, 29 Jul 2008 00:19:44 +0000 (00:19 -0000)]
modprobe: support for /etc/modprobe.d, by Timo Teras.
function old new delta
include_conf_file_act - 929 +929
include_conf_recursive - 30 +30
include_conf_file2 - 30 +30
include_conf_file - 14 +14
include_conf_dir_act - 14 +14
build_dep 1011 875 -136
include_conf 922 - -922
------------------------------------------------------------------------------
(add/remove: 5/1 grow/shrink: 0/1 up/down: 1017/-1058) Total: -41 bytes
Denis Vlasenko [Tue, 29 Jul 2008 00:00:14 +0000 (00:00 -0000)]
libbb: dump: do not use uninitialized memory. close bug 4364.
Denis Vlasenko [Mon, 28 Jul 2008 23:49:42 +0000 (23:49 -0000)]
tr: fix "tr [=" case. Closes bug 4374.
function old new delta
expand 1701 1738 +37
tr_main 472 474 +2
Denis Vlasenko [Mon, 28 Jul 2008 23:17:31 +0000 (23:17 -0000)]
hush: fix "while false; ..." exitcode; add testsuites
Denis Vlasenko [Mon, 28 Jul 2008 23:07:06 +0000 (23:07 -0000)]
hush: support "break N" and "continue N"
fix non-detection of builtins and applets in "v=break; ...; $v; ..." case
add testsuite entries for the above
function old new delta
builtin_break 12 93 +81
run_list 1948 1971 +23
builtin_continue 12 21 +9
pseudo_exec_argv 132 138 +6
builtin_exec 23 25 +2
------------------------------------------------------------------------------
(add/remove: 0/0 grow/shrink: 5/0 up/down: 121/0) Total: 121 bytes
Denis Vlasenko [Mon, 28 Jul 2008 23:04:34 +0000 (23:04 -0000)]
hush: implement break and continue
function old new delta
bltins 252 276 +24
builtin_continue - 12 +12
builtin_break - 12 +12
static.version_str 18 17 -1
run_list 1984 1948 -36
------------------------------------------------------------------------------
(add/remove: 2/0 grow/shrink: 1/2 up/down: 48/-27) Total: 11 bytes
Denis Vlasenko [Mon, 28 Jul 2008 15:17:44 +0000 (15:17 -0000)]
hush: in run_list(), some loop_top ops seems to be superfluous.
comment them out. Also, use separate temp variable
for verification loop, helps gcc to optimize better.
function old new delta
run_list 2039 1984 -55
Denis Vlasenko [Mon, 28 Jul 2008 15:15:59 +0000 (15:15 -0000)]
hush: in run_list(), last_cond_code seems to be superfluous. comment it out
function old new delta
run_list 2055 2039 -16
------------------------------------------------------------------------------
(add/remove: 0/0 grow/shrink: 0/1 up/down: 0/-16) Total: -16 bytes
Denis Vlasenko [Mon, 28 Jul 2008 15:15:09 +0000 (15:15 -0000)]
hush: explain run_list() in detail; small optimizations
function old new delta
hush_main 785 786 +1
expand_variables 1447 1448 +1
builtin_exit 48 49 +1
builtin_eval 54 55 +1
run_list 2075 2055 -20
------------------------------------------------------------------------------
(add/remove: 0/0 grow/shrink: 4/1 up/down: 4/-20) Total: -16 bytes
Denis Vlasenko [Mon, 28 Jul 2008 00:06:02 +0000 (00:06 -0000)]
documentation fix
Denis Vlasenko [Mon, 28 Jul 2008 00:01:16 +0000 (00:01 -0000)]
hush: finish and enable optional case...esac support. Code size cost:
function old new delta
run_list 1891 2075 +184
parse_stream 1764 1847 +83
expand_strvec_to_string - 83 +83
done_word 647 715 +68
static.reserved_list 144 168 +24
static.reserved_match - 12 +12
done_pipe 95 105 +10
builtin_exit 48 46 -2
builtin_eval 127 54 -73
------------------------------------------------------------------------------
(add/remove: 2/0 grow/shrink: 5/2 up/down: 464/-75) Total: 389 bytes
Denis Vlasenko [Sun, 27 Jul 2008 21:16:30 +0000 (21:16 -0000)]
fbset: shrink code a bit more
Denis Vlasenko [Sun, 27 Jul 2008 20:25:29 +0000 (20:25 -0000)]
fbset: code shrink
function old new delta
ss - 33 +33
fbset_main 1968 1844 -124
------------------------------------------------------------------------------
(add/remove: 1/0 grow/shrink: 0/1 up/down: 33/-124) Total: -91 bytes
Denis Vlasenko [Sun, 27 Jul 2008 17:24:19 +0000 (17:24 -0000)]
netstat: code shrink
function old new delta
print_inet_line - 193 +193
scan_inet_proc_line - 130 +130
unix_do_one 519 503 -16
do_info 145 97 -48
netstat_main 601 548 -53
tcp_do_one 462 61 -401
raw_do_one 513 107 -406
udp_do_one 533 119 -414
------------------------------------------------------------------------------
(add/remove: 2/0 grow/shrink: 0/6 up/down: 323/-1338) Total: -1015 bytes
Denis Vlasenko [Sun, 27 Jul 2008 14:15:42 +0000 (14:15 -0000)]
style fix, no code changes
Denis Vlasenko [Sun, 27 Jul 2008 12:10:07 +0000 (12:10 -0000)]
netstat: optional -p support by L. Gabriel Somlo <somlo AT cmu.edu>
Without FEATURE_NETSTAT_PRG:
function old new delta
recursive_action 416 425 +9
tcp_do_one 420 428 +8
udp_do_one 492 499 +7
raw_do_one 472 479 +7
expand 1697 1701 +4
netstat_main 489 492 +3
unix_do_one 486 488 +2
flags 1 - -1
qgravechar 109 106 -3
net_conn_line 4 - -4
bbunpack 391 383 -8
------------------------------------------------------------------------------
(add/remove: 0/2 grow/shrink: 7/2 up/down: 40/-16) Total: 24 bytes
With FEATURE_NETSTAT_PRG:
file_act - 213 +213
dir_act - 192 +192
netstat_main 489 601 +112
prg_cache_get - 50 +50
tcp_do_one 420 462 +42
udp_do_one 492 533 +41
raw_do_one 472 513 +41
unix_do_one 486 519 +33
recursive_action 416 425 +9
expand 1697 1701 +4
flags 1 - -1
qgravechar 109 106 -3
net_conn_line 4 - -4
bbunpack 391 383 -8
packed_usage 24586 24572 -14
------------------------------------------------------------------------------
(add/remove: 3/2 grow/shrink: 7/3 up/down: 737/-30) Total: 707 bytes
Denis Vlasenko [Sat, 26 Jul 2008 23:16:33 +0000 (23:16 -0000)]
whitespace fix
Denis Vlasenko [Sat, 26 Jul 2008 23:14:23 +0000 (23:14 -0000)]
man: a forgotten chunk of lask commit (config file parser fixes)
Denis Vlasenko [Sat, 26 Jul 2008 23:08:31 +0000 (23:08 -0000)]
fix several problems with config parser:
a bug where it underflows the string
a bug where it never frees parser_t struct
make read_config() return 0 if parser is NULL,
make config_close() accept and ignore NULL parser -
eliminates many if() blocks
reverse the sense of parser bit flags - negative flags
are harder to grok.
hexdump: revert the change to use config parser, it is BIGGER
and also requires additional quirks in parser
*: explicitly use PARSER_NORMAL instead of 0
function old new delta
login_main 1575 1596 +21
config_close 18 29 +11
bbunpack 383 391 +8
qgravechar 106 109 +3
rtnl_tab_initialize 121 117 -4
expand 1697 1693 -4
man_main 717 712 -5
nameif_main 674 668 -6
hexdump_main 597 591 -6
read_config 217 209 -8
dnsd_main 1478 1470 -8
sysctl_main 203 189 -14
config_open2 44 25 -19
make_device 1177 1141 -36
config_read 597 549 -48
------------------------------------------------------------------------------
(add/remove: 0/0 grow/shrink: 4/11 up/down: 43/-158) Total: -115 bytes
Denis Vlasenko [Sat, 26 Jul 2008 19:44:53 +0000 (19:44 -0000)]
man: ignore (not complain) lines with less than 2 tokens
in config file
Denis Vlasenko [Sat, 26 Jul 2008 19:34:00 +0000 (19:34 -0000)]
tr: fix "access past the end of a string" bug 4354