Denis Vlasenko [Thu, 16 Aug 2007 10:41:24 +0000 (10:41 -0000)]
find: fix SELinux-related warning
Denis Vlasenko [Thu, 16 Aug 2007 10:40:06 +0000 (10:40 -0000)]
modprobe: add scanning of /lib/modules/`uname -r`/modules.symbols
(by Yann E. MORIN)
Denis Vlasenko [Thu, 16 Aug 2007 10:37:49 +0000 (10:37 -0000)]
hdparm: shrink rodata by ~250 bytes
Denis Vlasenko [Thu, 16 Aug 2007 10:35:17 +0000 (10:35 -0000)]
whitespace fixes, no code changes
Denis Vlasenko [Wed, 15 Aug 2007 20:42:52 +0000 (20:42 -0000)]
more: by Tristan Schmelcher <tpkschme@engmail.uwaterloo.ca>:
- Fixed a number of deficiencies in the line wrapping.
- Fixed a bug where the page could scroll multiple times per keypress.
- Re-read terminal dimensions after user input, in case they
resized the terminal while we were waiting.
- Added an 'R' key to print the rest of the file without prompting.
- Crudely support tabs in the line-wrapping code by converting
them to 8 spaces.
Denis Vlasenko [Wed, 15 Aug 2007 20:07:53 +0000 (20:07 -0000)]
v[hp]error_msg have 2-3 callsites only -> incorporate there.
Denis Vlasenko [Wed, 15 Aug 2007 20:05:37 +0000 (20:05 -0000)]
if pidfile turned out to be !regular file, do not unlink it.
It's most probably the /dev/null.
Denis Vlasenko [Wed, 15 Aug 2007 20:03:36 +0000 (20:03 -0000)]
dhcpd: make -S and -f actually work
Denis Vlasenko [Tue, 14 Aug 2007 16:55:01 +0000 (16:55 -0000)]
httpd: add -v[v]: prints client addresses, HTTP codes returned [and URLs]
get_line - 70 +70
packed_usage 22811 22863 +52
handle_incoming_and_exit 2246 2277 +31
httpd_main 1141 1155 +14
sendHeaders 489 482 -7
getLine 77 - -77
------------------------------------------------------------------------------
(add/remove: 1/1 grow/shrink: 3/1 up/down: 167/-84) Total: 83 bytes
text data bss dec hex filename
774335 1058 11092 786485 c0035 busybox_old
774447 1058 11092 786597 c00a5 busybox_unstripped
Denis Vlasenko [Tue, 14 Aug 2007 16:50:01 +0000 (16:50 -0000)]
httpd: extend -p PORT to -p [IP[v6]:]PORT
httpd: comment out strange code which "closes connection properly"
(isnt exit(0) good enough?)
handle_incoming_and_exit - 2246 +2246
httpd_main 1116 1141 +25
getLine 75 77 +2
packed_usage 22827 22811 -16
parse_conf 1303 1284 -19
shutdown 32 - -32
handleIncoming 2578 - -2578
------------------------------------------------------------------------------
(add/remove: 1/2 grow/shrink: 2/2 up/down: 2273/-2645) Total: -372 bytes
text data bss dec hex filename
774704 1058 11092 786854 c01a6 busybox_old
774335 1058 11092 786485 c0035 busybox_unstripped
Denis Vlasenko [Tue, 14 Aug 2007 16:45:29 +0000 (16:45 -0000)]
udhcpd: add -f "foreground" and -S "syslog" options
udhcpc: add -S "syslog" options
remove CONFIG_FEATURE_UDHCP_SYSLOG
function old new delta
udhcpd_main 1168 1201 +33
udhcpc_main 2414 2425 +11
static.udhcpc_longopts 191 200 +9
qgravechar 112 108 -4
packed_usage 22843 22827 -16
------------------------------------------------------------------------------
(add/remove: 0/0 grow/shrink: 3/2 up/down: 53/-20) Total: 33 bytes
Denis Vlasenko [Tue, 14 Aug 2007 16:43:01 +0000 (16:43 -0000)]
trylink: automatically use custom link script if user provides one
vinfo_msg: one user (info_msg), incorporate in it
*: style fixes
Denis Vlasenko [Tue, 14 Aug 2007 10:27:56 +0000 (10:27 -0000)]
syslogd: set syslog IPC buffer to mode 0644
Denis Vlasenko [Mon, 13 Aug 2007 14:10:24 +0000 (14:10 -0000)]
expand, unexpand: new applets from Tito <farmatito@tiscali.it>
Denis Vlasenko [Mon, 13 Aug 2007 12:27:49 +0000 (12:27 -0000)]
df: match coreutils behavior of wrapping lines if filesystem name is too long.
df: trim help text
Denis Vlasenko [Mon, 13 Aug 2007 11:09:30 +0000 (11:09 -0000)]
httpd: round down sendfile byte count to 64k
*: style fixes
Denis Vlasenko [Mon, 13 Aug 2007 10:48:33 +0000 (10:48 -0000)]
usage.h: style cleanup
Denis Vlasenko [Mon, 13 Aug 2007 10:36:25 +0000 (10:36 -0000)]
s/#ifdef CONFIG_/#if ENABLE_/g
Denis Vlasenko [Sun, 12 Aug 2007 21:33:06 +0000 (21:33 -0000)]
syslogd,logread: get rid of head pointer, fix logread bug in the process
function old new delta
logread_main 450 462 +12
syslogd_main 1246 1252 +6
shbuf - 4 +4
buf 34 30 -4
packed_usage 22729 22724 -5
log_locally 957 767 -190
------------------------------------------------------------------------------
(add/remove: 1/0 grow/shrink: 2/3 up/down: 22/-199) Total: -177 bytes
text data bss dec hex filename
773886 1116 11316 786318 bff8e busybox_old
773714 1116 11316 786146 bfee2 busybox_unstripped
Denis Vlasenko [Sun, 12 Aug 2007 21:05:49 +0000 (21:05 -0000)]
httpd: sendfile support
Denis Vlasenko [Sun, 12 Aug 2007 20:59:07 +0000 (20:59 -0000)]
fix out-of-source-tree build
Denis Vlasenko [Sun, 12 Aug 2007 20:58:27 +0000 (20:58 -0000)]
trylink: produce even more info about final link stage
trylink: explain how to modify link and drastically decrease amount
of padding (unfortunately, needs hand editing ATM).
*: add ALIGN1 / ALIGN2 to global strings and arrays of bytes and shorts
size saving: 0.5k
Denis Vlasenko [Sat, 11 Aug 2007 20:26:02 +0000 (20:26 -0000)]
httpd: CGI Status: header fix
Denis Vlasenko [Sat, 11 Aug 2007 20:20:43 +0000 (20:20 -0000)]
httpd: add support for Status: CGI header
Denis Vlasenko [Sat, 11 Aug 2007 20:20:02 +0000 (20:20 -0000)]
httpd: fix CGI handling bug (we were closing wrong fd).
Denis Vlasenko [Thu, 9 Aug 2007 08:27:24 +0000 (08:27 -0000)]
ls,ps,watch: measure terminal width on fd 0, not 1
Denis Vlasenko [Thu, 9 Aug 2007 08:10:13 +0000 (08:10 -0000)]
stat: fix option -Z segv (bug 1454)
Denis Vlasenko [Thu, 9 Aug 2007 08:04:05 +0000 (08:04 -0000)]
udhcpd: fix bug: s/memcmp() != 0/memcmp() == 0/
(by David Updegraff <dave@cray.com>)
Denis Vlasenko [Mon, 6 Aug 2007 15:49:12 +0000 (15:49 -0000)]
bb_uudecode: now this is the more thorough fix... I hope...
Denis Vlasenko [Mon, 6 Aug 2007 15:43:17 +0000 (15:43 -0000)]
bb_uuencode: fix obscure case where we were using data past last byte of source
(fixes testsuite failure)
bb_uuencode 154 160 +6
------------------------------------------------------------------------------
(add/remove: 0/0 grow/shrink: 1/0 up/down: 6/0) Total: 6 bytes
text data bss dec hex filename
770284 1096 11228 782608 bf110 busybox_old
770288 1096 11228 782612 bf114 busybox_unstripped
Denis Vlasenko [Mon, 6 Aug 2007 13:34:10 +0000 (13:34 -0000)]
patch: fix -p -1 handling
checkstack.pl: add blackfin (by Alex Landau <landau_alex@yahoo.com>)
Denis Vlasenko [Mon, 6 Aug 2007 12:28:24 +0000 (12:28 -0000)]
catv: catv without arguments was trying to use environ as argv.
(Alex Landau <landau_alex@yahoo.com>)
Denis Vlasenko [Mon, 6 Aug 2007 12:18:01 +0000 (12:18 -0000)]
trylink: s/&& exit 1/|| exit 1/ (spotted by Alex Landau <landau_alex@yahoo.com>)
Denis Vlasenko [Mon, 6 Aug 2007 03:41:08 +0000 (03:41 -0000)]
sed: fix 'q' command handling ("Nguyen Thai Ngoc Duy" <pclouds@gmail.com>)
add testsuite entry for it. Fix applet order checker. Fix cmp yelling.
trylink: fix error file and map file generation
applets: fix applet order
Denis Vlasenko [Mon, 6 Aug 2007 02:55:41 +0000 (02:55 -0000)]
env: micro-optimization
printenv: fix "printenv VAR1 VAR2" bug (wasn't printing VAR2)
(spotted by kalyanatejaswi balabhadrapatruni <kalyanatejaswi@yahoo.co.in>)
env_main 267 260 -7
printenv_main 147 75 -72
------------------------------------------------------------------------------
(add/remove: 0/0 grow/shrink: 0/2 up/down: 0/-79) Total: -79 bytes
text data bss dec hex filename
770336 1096 11228 782660 bf144 busybox_old
770256 1096 11228 782580 bf0f4 busybox_unstripped
Denis Vlasenko [Mon, 6 Aug 2007 02:36:35 +0000 (02:36 -0000)]
setfiles:
* Bug fix: -f option did not work.
* Using bb_simplify_path to remove extra slash for smaller code.
(by Yuichi Nakamura <ynakam@hitachisoft.jp>)
Denis Vlasenko [Fri, 3 Aug 2007 14:17:21 +0000 (14:17 -0000)]
less: add a bit more robustness in keyboard reading code
Denis Vlasenko [Fri, 3 Aug 2007 14:16:24 +0000 (14:16 -0000)]
mount: print errno on NFS error (again)
Denis Vlasenko [Fri, 3 Aug 2007 10:58:12 +0000 (10:58 -0000)]
svlogd: fix timestamping; do not warn if config is missing
sv: extend help text
Denis Vlasenko [Fri, 3 Aug 2007 08:48:44 +0000 (08:48 -0000)]
ttysize: update copyright
Denis Vlasenko [Thu, 2 Aug 2007 22:31:05 +0000 (22:31 -0000)]
udhcp: slight shrink
udhcpd_main 1171 1208 +37
udhcpc_main 2363 2387 +24
dhcprelay_main 1145 1146 +1
dhcprelay_stopflag 4 1 -3
dhcprelay_signal_handler 11 8 -3
client_background 46 42 -4
udhcp_read_interface 230 211 -19
udhcp_make_pidfile 76 - -76
------------------------------------------------------------------------------
(add/remove: 0/1 grow/shrink: 3/4 up/down: 62/-105) Total: -43 bytes
text data bss dec hex filename
770052 1096 11228 782376 bf028 busybox_old
769980 1096 11228 782304 befe0 busybox_unstripped
Denis Vlasenko [Thu, 2 Aug 2007 22:23:47 +0000 (22:23 -0000)]
ttysize: new applet. +200 bytes
Denis Vlasenko [Thu, 2 Aug 2007 10:14:29 +0000 (10:14 -0000)]
start_stop_daemon: NOMMU fixes, round 2 by Alex Landau <landau_alex@yahoo.com>
dhcpc: fixed "ifupdown + udhcpc_without_pidpile_creation" bug
Denis Vlasenko [Wed, 1 Aug 2007 23:30:54 +0000 (23:30 -0000)]
patch: fix bad line ending handling ("Nguyen Thai Ngoc Duy" <pclouds@gmail.com>)
Denis Vlasenko [Tue, 31 Jul 2007 17:09:44 +0000 (17:09 -0000)]
start_stop_daemon: NOMMU fix; smaller fixes
Denis Vlasenko [Mon, 30 Jul 2007 12:32:37 +0000 (12:32 -0000)]
addgroup: "disallow addgroup -g num user group"; make -g 0 work
(Tito <farmatito@tiscali.it>)
Denis Vlasenko [Mon, 30 Jul 2007 10:58:09 +0000 (10:58 -0000)]
dd: use unsigned printf specifier for # of blocks
Denis Vlasenko [Sun, 29 Jul 2007 14:59:06 +0000 (14:59 -0000)]
dd: fix newly introduced bug (introduced by me)
Denis Vlasenko [Sun, 29 Jul 2007 14:17:48 +0000 (14:17 -0000)]
interface.c: code shrink (IIRC ~30 bytes)
Denis Vlasenko [Sun, 29 Jul 2007 14:05:27 +0000 (14:05 -0000)]
ash: comment non-obvious code part
Denis Vlasenko [Fri, 27 Jul 2007 15:30:39 +0000 (15:30 -0000)]
fix for suffix optimization (which was in previous commit)
Denis Vlasenko [Fri, 27 Jul 2007 15:06:25 +0000 (15:06 -0000)]
multiplier suffixes are short, store them directly in struct suffix_mult
function old new delta
xstrtoul_range_sfx 226 217 -9
xstrtoull_range_sfx 291 280 -11
------------------------------------------------------------------------------
(add/remove: 0/0 grow/shrink: 0/2 up/down: 0/-20) Total: -20 bytes
text data bss dec hex filename
669128 2668 13616 685412 a7564 busybox_old
669108 2668 13616 685392 a7550 busybox_unstripped
Denis Vlasenko [Fri, 27 Jul 2007 15:02:00 +0000 (15:02 -0000)]
dd: fix bug where we assume count=INT_MAX when count is unspecified;
shrink dd while at it
function old new delta
dd_main 1453 1368 -85
------------------------------------------------------------------------------
(add/remove: 0/0 grow/shrink: 0/1 up/down: 0/-85) Total: -85 bytes
text data bss dec hex filename
669216 2668 13616 685500 a75bc busybox_old
669128 2668 13616 685412 a7564 busybox_unstripped
Denis Vlasenko [Fri, 27 Jul 2007 11:22:34 +0000 (11:22 -0000)]
passwd: fix bug: we are trying to update shadow even if user's record is in passwd!
getspnam is guilty, it lies that user record exists in shadow.
Denis Vlasenko [Fri, 27 Jul 2007 11:20:10 +0000 (11:20 -0000)]
bb_getpwuid, bb_getgrgid: change order of arguments to more intuitive one;
comment thoroughly when they die and when they dont.
Denis Vlasenko [Thu, 26 Jul 2007 11:12:51 +0000 (11:12 -0000)]
cal: small code shrink
Denis Vlasenko [Wed, 25 Jul 2007 17:39:46 +0000 (17:39 -0000)]
setfiles: small code size reduction (Yuichi Nakamura <ynakam@hitachisoft.jp>)
Denis Vlasenko [Wed, 25 Jul 2007 17:27:58 +0000 (17:27 -0000)]
ps: fix non-desktop ps -ww -- thanks rockeychu
Denis Vlasenko [Wed, 25 Jul 2007 17:18:06 +0000 (17:18 -0000)]
getopt32: fix getopt32 breakage (forgot to memset(0) it) -- thanks rockeychu
Denis Vlasenko [Tue, 24 Jul 2007 15:54:42 +0000 (15:54 -0000)]
Replace index_in_[sub]str_array with index_in_[sub]strings,
which scans thru "abc\0def\0123\0\0" type strings. Saves 250 bytes.
text data bss dec hex filename
781266 1328 11844 794438 c1f46 busybox_old
781010 1328 11844 794182 c1e46 busybox_unstripped
Denis Vlasenko [Tue, 24 Jul 2007 12:28:03 +0000 (12:28 -0000)]
od: shrink a bit
verbose 12 13 +1
open_next_file 102 99 -3
limit_bytes_to_format 4 1 -3
ioerror 4 1 -3
flag_pseudo_start 4 1 -3
flag_dump_strings 4 1 -3
abbreviate_duplicate_blocks 4 - -4
check_and_close 96 90 -6
od_main 2988 2955 -33
------------------------------------------------------------------------------
(add/remove: 0/1 grow/shrink: 1/7 up/down: 1/-58) Total: -57 bytes
text data bss dec hex filename
781314 1328 11876 794518 c1f96 busybox_old
781266 1328 11844 794438 c1f46 busybox_unstripped
Denis Vlasenko [Tue, 24 Jul 2007 06:17:43 +0000 (06:17 -0000)]
setfiles: small tweaks to usage text and code
Denis Vlasenko [Mon, 23 Jul 2007 22:44:15 +0000 (22:44 -0000)]
zcip: remove stray seed48. It's the only thing which was pulling in
rand48 machinery:
zcip_main 1552 1537 -15
seed48 22 - -22
__libc_drand48_data 24 - -24
seed48_r 78 - -78
__GI_seed48_r 78 - -78
------------------------------------------------------------------------------
(add/remove: 0/4 grow/shrink: 0/1 up/down: 0/-217) Total: -217 bytes
Denis Vlasenko [Mon, 23 Jul 2007 21:05:06 +0000 (21:05 -0000)]
add comment why preferred stack boundary is 4 on i386
Denis Vlasenko [Mon, 23 Jul 2007 18:49:16 +0000 (18:49 -0000)]
chpasswd: rename long options definition to match other applets. no code changes
Denis Vlasenko [Mon, 23 Jul 2007 17:40:35 +0000 (17:40 -0000)]
getopt32 must remain NOFORK-safe (no mallocs!). Using alloca and pretending
stack is infinite. Unfortunately, +79 bytes.
Denis Vlasenko [Mon, 23 Jul 2007 17:14:14 +0000 (17:14 -0000)]
rework long option handling. saves ~1.2k
function old new delta
tar_longopts - 222 +222
static.udhcpc_longopts - 192 +192
start_stop_daemon_longopts - 150 +150
getopt32 1045 1185 +140
static.wget_longopts - 111 +111
static.od_longopts - 105 +105
getopt_longopts - 96 +96
install_longopts - 67 +67
ipcalc_longopts - 63 +63
static.hwclock_longopts - 54 +54
ftpgetput_longopts - 52 +52
static.dumpleases_longopts - 32 +32
env_longopts - 31 +31
runparts_longopts - 30 +30
mv_longopts - 24 +24
mkdir_longopts - 19 +19
find_pair 164 180 +16
bb_null_long_options - 16 +16
setconsole_longopts - 10 +10
display_speed 91 98 +7
collect_blk 467 474 +7
show_color 4 1 -3
ls_main 913 904 -9
bb_default_long_options 16 - -16
ls_color_opt 32 10 -22
setconsole_long_options 32 - -32
arith 2077 2030 -47
mv_long_options 48 - -48
mkdir_long_options 48 - -48
env_long_options 48 - -48
static.options 248 184 -64
runparts_long_options 80 - -80
ftpgetput_long_options 96 - -96
static.hwclock_long_options 112 - -112
install_long_options 112 - -112
static.long_options 144 - -144
static.wget_long_options 160 - -160
longopts 160 - -160
static.arg_options 304 - -304
tar_long_options 320 - -320
long_options 384 - -384
------------------------------------------------------------------------------
(add/remove: 17/15 grow/shrink: 4/5 up/down: 1444/-2209) Total: -765 bytes
text data bss dec hex filename
782618 1328 11900 795846 c24c6 busybox_old
781354 1328 11900 794582 c1fd6 busybox_unstripped
Denis Vlasenko [Mon, 23 Jul 2007 14:05:02 +0000 (14:05 -0000)]
setiles: cosmetics, no real code changes
Denis Vlasenko [Mon, 23 Jul 2007 14:03:30 +0000 (14:03 -0000)]
setfiles,restorecon: new SELinux applets by Yuichi Nakamura <ynakam@hitachisoft.jp>
Denis Vlasenko [Sat, 21 Jul 2007 22:29:26 +0000 (22:29 -0000)]
chpasswd: fix indentation
Denis Vlasenko [Sat, 21 Jul 2007 15:08:09 +0000 (15:08 -0000)]
style fix (stray space before ';')
Denis Vlasenko [Sat, 21 Jul 2007 15:07:22 +0000 (15:07 -0000)]
fix typo in last commit
Denis Vlasenko [Sat, 21 Jul 2007 14:57:54 +0000 (14:57 -0000)]
Three patches from FreeWRT people
Denis Vlasenko [Sat, 21 Jul 2007 13:54:26 +0000 (13:54 -0000)]
chpasswd: fixes for shadow password handling
Denis Vlasenko [Sat, 21 Jul 2007 13:27:44 +0000 (13:27 -0000)]
libbb: nuke BB_GETOPT_ERROR, always die if there are mutually exclusive options
find_pair 164 180 +16
passwd_main 1222 1230 +8
display_speed 91 96 +5
msh_main 1335 1339 +4
qrealloc 38 36 -2
refresh 1190 1182 -8
cut_main 543 532 -11
sendCgi 1807 1794 -13
getopt32 1063 1045 -18
arith 2077 2030 -47
------------------------------------------------------------------------------
(add/remove: 0/0 grow/shrink: 4/6 up/down: 33/-99) Total: -66 bytes
text data bss dec hex filename
781548 1168 11900 794616 c1ff8 busybox_old
781452 1168 11900 794520 c1f98 busybox_unstripped
Denis Vlasenko [Sat, 21 Jul 2007 13:25:28 +0000 (13:25 -0000)]
chpasswd: fixes and code shrink
update_passwd 732 734 +2
chpasswd_main 318 292 -26
------------------------------------------------------------------------------
(add/remove: 0/0 grow/shrink: 1/1 up/down: 2/-26) Total: -24 bytes
text data bss dec hex filename
781564 1168 11900 794632 c2008 busybox_old
781548 1168 11900 794616 c1ff8 busybox_unstripped
Denis Vlasenko [Fri, 20 Jul 2007 21:29:49 +0000 (21:29 -0000)]
chpasswd: now with svn add
Denis Vlasenko [Fri, 20 Jul 2007 21:28:41 +0000 (21:28 -0000)]
chpasswd: new applet by Alexander Shishkin <virtuoso@slind.org>
Denis Vlasenko [Thu, 19 Jul 2007 22:50:47 +0000 (22:50 -0000)]
stray trailing tabs removed
Denis Vlasenko [Thu, 19 Jul 2007 21:49:30 +0000 (21:49 -0000)]
ifup/ifdown: make location of ifstate configurable
Denis Vlasenko [Wed, 18 Jul 2007 22:03:40 +0000 (22:03 -0000)]
vi: comment out dead code
Denis Vlasenko [Wed, 18 Jul 2007 21:57:24 +0000 (21:57 -0000)]
Trim help text. With compressed help: -143 bytes
text data bss dec hex filename
772572 1168 22680 796420 c2704 busybox_old
772444 1168 22680 796292 c2684 busybox_unstripped
Denis Vlasenko [Wed, 18 Jul 2007 21:35:43 +0000 (21:35 -0000)]
ash: fix SEGV in forkchild (jp can be NULL). here documents were affected.
Denis Vlasenko [Wed, 18 Jul 2007 18:47:13 +0000 (18:47 -0000)]
fix unpacker testsuite to match actual output
Denis Vlasenko [Wed, 18 Jul 2007 18:33:18 +0000 (18:33 -0000)]
awk: actually do "svn add" for testsuite
Denis Vlasenko [Wed, 18 Jul 2007 18:32:25 +0000 (18:32 -0000)]
awk: fix -F 'regex' bug (miscounted fields if last field is empty)
Denis Vlasenko [Wed, 18 Jul 2007 18:31:11 +0000 (18:31 -0000)]
awk: style fixes; remove one xstrdup/free pair; testsuite
Denis Vlasenko [Tue, 17 Jul 2007 23:22:49 +0000 (23:22 -0000)]
vi: style fixlet
Denis Vlasenko [Tue, 17 Jul 2007 23:19:28 +0000 (23:19 -0000)]
fix typo in prev commit :(
Denis Vlasenko [Tue, 17 Jul 2007 23:18:26 +0000 (23:18 -0000)]
vi: s/argv[0]/applet_name/
Denis Vlasenko [Tue, 17 Jul 2007 23:14:07 +0000 (23:14 -0000)]
vi: multiple fixes by Natanael Copa <natanael.copa@gmail.com>
* the puzzling message on error is replaced with strerror(errno)
so it should be even more detailed and smaller at the same time.
* merged code in edit_file() and code for ':edit <file>' in colon() into
new func init_text_buffer(). Was horribly duplicate. Moved most of
error/sanity checking to file_insert(). Result is that you get a proper
validation (prevent reading /dev/*) and error messages for ':r <file>'
* renamed 'cfn' to 'current_filename' for improved readability
* merged smallint vi_readonly and readonly into bitfields into
readonly_mode to save space.
* added text_size variable to keep track how big the text buffer is.
This is used to fix a buffer overflow. To reproduce bug:
./busybox vi TODO
:r Makefile
vi segfaults due to no buffer checking is done at all. som redesign is
needed here but i added a check in text_hole_make() to aviod the
segfault at least.
* removed isblnk() and use isblank(3) instead.
* fixed compiler warning by displaying the return code for :!<command>
This makes things bigger than needed but since the patch reduces the
overall size... (see below)
* new func next_tabstop(int) merges some duplicate code. There are more
cuplicode here but i couldnt find a good way to merge them.
* Fix *ANNOYING* placement of cursor on '\t' characters. To reproduce:
echo -e "\thello" > file1
./busybox vi file1
Try to insert some text at the beginning of line. Text will be inserted
but cursor is blinking somewhere else. The patch should make busybox vi
behave more like original vi(m). Costs a few bytes but its worth it
imho.
* new_text() is moved into init_text_buffer()
* the previously added update_ro_status() was moved info file_insert due
to duplication removal mentioned above.
function old new delta
init_text_buffer - 245 +245
file_insert 312 420 +108
next_tabstop - 82 +82
text_hole_make 154 171 +17
do_cmd 5093 5100 +7
static.cmd_mode_indicator - 5 +5
refresh 1248 1253 +5
current_filename - 4 +4
yank_delete 161 164 +3
what_reg 96 99 +3
end_cmd_q 78 81 +3
char_insert 440 442 +2
readonly_mode - 1 +1
vi_readonly 1 - -1
setops 154 153 -1
readonly 1 - -1
vi_setops 4 1 -3
string_insert 161 158 -3
cfn 4 - -4
show_status_line 532 514 -18
readit 519 500 -19
move_to_col 161 138 -23
vi_main 495 433 -62
isblnk 75 - -75
.rodata 4751 4655 -96
edit_file 892 787 -105
new_text 125 - -125
update_ro_status 131 - -131
colon 3848 3667 -181
------------------------------------------------------------------------------
(add/remove: 5/6 grow/shrink: 8/10 up/down: 485/-848) Total: -363
bytes
text data bss dec hex filename
34751 873 4260 39884 9bcc busybox_old
34439 877 4260 39576 9a98 busybox_unstripped
Denis Vlasenko [Tue, 17 Jul 2007 22:53:05 +0000 (22:53 -0000)]
ifconfig: make it work with ifaces with ifnames > 255
Denis Vlasenko [Tue, 17 Jul 2007 21:42:59 +0000 (21:42 -0000)]
remove accumulated stray trailing whitespace
Denis Vlasenko [Tue, 17 Jul 2007 20:39:27 +0000 (20:39 -0000)]
Modify method of linking against libs. Now we fisrt try all
specified libs, and if it succeeds, we try to remove them
one-by-one. If link succeeds, then library is thrown out.
Should solve the problem with SELinux linking in libsepol
even when not needed.
Denis Vlasenko [Mon, 16 Jul 2007 22:21:15 +0000 (22:21 -0000)]
fix discrepancy in GPL version number. Pointed out by "Marsh David" <dmarsh@bigw.com.au>
Denis Vlasenko [Sun, 15 Jul 2007 19:27:48 +0000 (19:27 -0000)]
top: nested function allows us to reuse some code
(not everyone likes them - but code does get smaller).
display_generic - 761 +761
static.fmt_100percent_8 - 111 +111
fmt_100percent_8 101 - -101
display_status 1489 581 -908
------------------------------------------------------------------------------
(add/remove: 2/1 grow/shrink: 0/1 up/down: 872/-1009) Total: -137 bytes
text data bss dec hex filename
677020 3344 13936 694300 a981c busybox_old
676876 3344 13936 694156 a978c busybox_unstripped
Denis Vlasenko [Sun, 15 Jul 2007 19:25:01 +0000 (19:25 -0000)]
top: make "100%" case less ugly, and shrink code while at it
fmt_100percent_8 - 101 +101
.rodata 129185 129153 -32
display_status 1726 1489 -237
------------------------------------------------------------------------------
(add/remove: 1/0 grow/shrink: 0/2 up/down: 101/-269) Total: -168 bytes
text data bss dec hex filename
677180 3344 13936 694460 a98bc busybox_old
677020 3344 13936 694300 a981c busybox_unstripped
Denis Vlasenko [Sun, 15 Jul 2007 19:23:38 +0000 (19:23 -0000)]
top: simpler loadavg processing
display_status 1787 1726 -61
------------------------------------------------------------------------------
(add/remove: 0/0 grow/shrink: 0/1 up/down: 0/-61) Total: -61 bytes
text data bss dec hex filename
677244 3344 13936 694524 a98fc busybox_old
677180 3344 13936 694460 a98bc busybox_unstripped
Denis Vlasenko [Sun, 15 Jul 2007 17:07:58 +0000 (17:07 -0000)]
top: truncate usernames to 8 chars
Denis Vlasenko [Sun, 15 Jul 2007 12:39:08 +0000 (12:39 -0000)]
grep: implement -m MAX_MATCHES; fix help text
grep_file 771 822 +51
packed_usage 22573 22610 +37
.rodata 128058 128090 +32
grep_main 842 853 +11
max_matches - 4 +4
------------------------------------------------------------------------------
(add/remove: 1/0 grow/shrink: 4/0 up/down: 135/0) Total: 135 bytes