summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2007-07-17vi: multiple fixes by Natanael Copa <natanael.copa@gmail.com>Denis Vlasenko
* 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
2007-07-17ifconfig: make it work with ifaces with ifnames > 255Denis Vlasenko
2007-07-17remove accumulated stray trailing whitespaceDenis Vlasenko
2007-07-17Modify method of linking against libs. Now we fisrt try allDenis Vlasenko
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.
2007-07-16fix discrepancy in GPL version number. Pointed out by "Marsh David" ↵Denis Vlasenko
<dmarsh@bigw.com.au>
2007-07-15top: nested function allows us to reuse some codeDenis Vlasenko
(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
2007-07-15top: make "100%" case less ugly, and shrink code while at itDenis Vlasenko
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
2007-07-15top: simpler loadavg processingDenis Vlasenko
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
2007-07-15top: truncate usernames to 8 charsDenis Vlasenko
2007-07-15grep: implement -m MAX_MATCHES; fix help textDenis Vlasenko
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
2007-07-15grep: fix buglets with context printingDenis Vlasenko
print_line 152 170 +18 did_print_line - 1 +1 grep_file 788 771 -17 ------------------------------------------------------------------------------ (add/remove: 1/0 grow/shrink: 1/1 up/down: 19/-17) Total: 2 bytes text data bss dec hex filename 673368 2740 13968 690076 a879c busybox_old 673368 2740 13968 690076 a879c busybox_unstripped
2007-07-15ash: make "jobs | cat" work like in bash (was giving empty output)Denis Vlasenko
2007-07-14adduser: close /etc/{passwd,shadow} before calling passwd etc.Denis Vlasenko
Spotted by Natanael Copa <natanael.copa@gmail.com>
2007-07-14vi: make status line less confusing when we open non-readable files,Denis Vlasenko
require rood to use w! when saving non-writable files. Patch by Natanael Copa <natanael.copa@gmail.com> update_ro_status - 73 +73 edit_file 819 822 +3 colon 3440 3425 -15 .rodata 128090 128058 -32 file_insert 288 235 -53 ------------------------------------------------------------------------------ (add/remove: 1/0 grow/shrink: 1/3 up/down: 76/-100) Total: -24 bytes text data bss dec hex filename 673344 2740 13968 690052 a8784 busybox_old 673320 2740 13968 690028 a876c busybox_unstripped
2007-07-14xioctl and friends by Tito <farmatito@tiscali.it>Denis Vlasenko
function old new delta do_iptunnel 203 977 +774 process_dev 5328 5494 +166 ioctl_or_perror - 54 +54 ioctl_or_perror_and_die - 51 +51 ioctl_alt_func - 49 +49 bb_ioctl_or_warn - 47 +47 do_add_ioctl 102 145 +43 bb_xioctl - 39 +39 print_value_on_off - 31 +31 get_lcm 105 123 +18 arp_main 2155 2167 +12 .................. zcip_main 1576 1566 -10 setlogcons_main 92 82 -10 dumpkmap_main 263 253 -10 do_get_ioctl 85 75 -10 setkeycodes_main 165 154 -11 write_table 244 232 -12 vconfig_main 318 306 -12 do_del_ioctl 93 81 -12 set_address 75 62 -13 maybe_set_utc 30 16 -14 loadfont_main 495 479 -16 slattach_main 712 695 -17 do_loadfont 191 174 -17 do_iplink 1155 1136 -19 getty_main 2583 2562 -21 fbset_main 2058 2035 -23 do_time 588 565 -23 xioctl 25 - -25 read_rtc 186 160 -26 parse_conf 1299 1270 -29 udhcp_read_interface 269 239 -30 bb_ioctl 45 - -45 bb_ioctl_alt 70 - -70 bb_ioctl_on_off 78 - -78 .rodata 129370 129018 -352 do_show 799 - -799 ------------------------------------------------------------------------------ (add/remove: 6/5 grow/shrink: 13/49 up/down: 1316/-1864) Total: -548 bytes text data bss dec hex filename 675352 2740 13968 692060 a8f5c busybox_old 674804 2740 13968 691512 a8d38 busybox_unstripped
2007-07-14ash: small size optimizationDenis Vlasenko
function old new delta makejob 263 270 +7 setjobctl 328 332 +4 jobscmd 96 94 -2 stoppedjobs 53 50 -3 jobctl 4 1 -3 job_warning 4 1 -3 forkshell 644 641 -3 cmdloop 422 409 -13 ------------------------------------------------------------------------------ (add/remove: 0/0 grow/shrink: 2/6 up/down: 11/-27) Total: -16 bytes text data bss dec hex filename 675392 2740 13968 692100 a8f84 busybox_old 675380 2740 13968 692088 a8f78 busybox_unstripped
2007-07-14ash: recognize -l as --login equivalent; do not recognize +-loginDenis Vlasenko
2007-07-14ash: fix for buglet in DEBUG code (Nguyen Thai Ngoc Duy <pclouds@gmail.com>)Denis Vlasenko
2007-07-13FAQ: add timezone QDenis Vlasenko
2007-07-13nc: minor code shrinkDenis Vlasenko
function old new delta dolisten 731 737 +6 tmtravel 32 21 -11 catch 75 64 -11 oprint 272 229 -43 ------------------------------------------------------------------------------ (add/remove: 0/0 grow/shrink: 1/3 up/down: 6/-65) Total: -59 bytes text data bss dec hex filename 676698 3340 13936 693974 a96d6 busybox_old 676650 3340 13936 693926 a96a6 busybox_unstripped
2007-07-13remove last source idMike Frysinger
2007-07-13add support for --symbol-prefix/-PMike Frysinger
2007-07-06fix applet order errorDenis Vlasenko
2007-07-05md5_sha1_sum: fix mishandling when run as /bin/md5sum (with path)Denis Vlasenko
chown/chgrp: completely match coreutils 6.8 wrt symlink handling function old new delta recursive_action 411 422 +11 arith 2033 2042 +9 collect_blk 467 474 +7 dhcprelay_main 1122 1125 +3 fsck_main 1909 1911 +2 singlemount 4555 4547 -8 xmalloc_realpath 14 - -14 get_lcm 123 105 -18 ed_main 3111 3084 -27 chown_main 217 183 -34 ------------------------------------------------------------------------------ (add/remove: 0/1 grow/shrink: 5/4 up/down: 32/-101) Total: -69 bytes text data bss dec hex filename 684132 2744 14000 700876 ab1cc busybox_old 684060 2744 14000 700804 ab184 busybox_unstripped
2007-07-03udhcp: many small fixes:Denis Vlasenko
* arpping(): smaller and even probably fixed * lots of variables/params converted: ulong -> uint32_t * uptime() nuked in favor of monotonic_sec() * udhcp_get_packet(): only one "bad vendor", simplify function old new delta reservedIp 36 35 -1 udhcpc_main 2462 2460 -2 addStaticLease 64 62 -2 static.broken_vendors 16 - -16 uptime 19 - -19 udhcpd_main 1273 1238 -35 udhcp_get_packet 223 184 -39 .rodata 144162 144106 -56 arpping 690 609 -81 ------------------------------------------------------------------------------ (add/remove: 0/2 grow/shrink: 0/7 up/down: 0/-251) Total: -251 bytes text data bss dec hex filename 734241 3028 14400 751669 b7835 busybox_old 734005 3028 14400 751433 b7749 busybox_unstripped
2007-07-03correct_password: if password is 'x' or '*' and there is no shadow, useDenis Vlasenko
fake encrypted password 'aa' (which is guaranteed to fail password check).
2007-07-03ifupdown: kill -TERM is default, so drop -TERMDenis Vlasenko
ifupdown: ferror() does not set errno, don't use perror ifupdown: make netmask parsing smaller and more strict (was accepting 255.0.255.0, 255.1234.0.0 etc...) function old new delta count_bits 36 - -36 execute 2573 2535 -38 ------------------------------------------------------------------------------ (add/remove: 0/1 grow/shrink: 0/1 up/down: 0/-74) Total: -74 bytes text data bss dec hex filename 684204 2744 14000 700948 ab214 busybox_old 684132 2744 14000 700876 ab1cc busybox_unstripped
2007-07-03correct_password: do not print "no shadow passwd..." messageDenis Vlasenko
function old new delta correct_password 204 191 -13 .rodata 129530 129466 -64 ------------------------------------------------------------------------------ (add/remove: 0/0 grow/shrink: 0/2 up/down: 0/-77) Total: -77 bytes text data bss dec hex filename 675984 2744 13968 692696 a91d8 busybox_old 675908 2744 13968 692620 a918c busybox_unstripped
2007-07-02ping: fix non-fancy ping6Denis Vlasenko
2007-07-01devfsd: futher sanitization by Tito <farmatito@tiscali.it>Denis Vlasenko
2007-07-01expr: small code shrinkDenis Vlasenko
2007-07-01devfsd: indentation fixesDenis Vlasenko
2007-07-01find: fix build failure on certain configsDenis Vlasenko
(found by Cristian Ionescu-Idbohrn <cristian.ionescu-idbohrn@axis.com>)
2007-07-01find: style fixDenis Vlasenko
2007-07-01ps: revert wrong "optimization": (i & 1) -> iDenis Vlasenko
2007-07-01fix comment placement (no code changes)Denis Vlasenko
2007-07-01udhcp: new config option "Rewrite the lease file at every new acknowledge"Denis Vlasenko
(Mats Erik Andersson <mats@blue2net.com> (Blue2Net AB)) udhcp: consistently treat server_config.start/end IPs as host-order fix IP parsing for 64bit machines fix unsafe hton macro usage in read_opt() do not chdir("/") when daemonizing fix help text
2007-07-01ps: fix "unused variable" warning; fix integer variable declared as char.Denis Vlasenko
2007-06-30web site: announce 1.6.1Denis Vlasenko
2007-06-30top,ps: improve /proc/PID/cmdinfo reading codeDenis Vlasenko
function old new delta display_status - 1231 +1231 read_cmdline - 101 +101 parse_conf 1284 1303 +19 arith 2033 2042 +9 collect_blk 467 474 +7 fsck_main 1909 1911 +2 dhcprelay_main 1125 1122 -3 singlemount 4555 4547 -8 read_close 50 36 -14 get_lcm 123 105 -18 ed_main 3111 3084 -27 func_args 73 28 -45 procps_scan 732 658 -74 top_main 2187 899 -1288 ------------------------------------------------------------------------------ (add/remove: 2/0 grow/shrink: 4/8 up/down: 1369/-1477) Total: -108 bytes text data bss dec hex filename 676048 2744 13968 692760 a9218 busybox_old 675940 2744 13968 692652 a91ac busybox_unstripped
2007-06-30add bb_basename.cDenis Vlasenko
2007-06-30introduce and use bb_basename()Denis Vlasenko
function old new delta bb_basename - 26 +26 sv_main 1226 1225 -1 passwd_main 1985 1983 -2 showdirs 482 478 -4 sendCgi 1811 1807 -4 make_device 1354 1350 -4 handleIncoming 2443 2439 -4 func_name 82 78 -4 service_name 2292 2285 -7 main 909 901 -8 cmp_main 555 547 -8 test_main 434 422 -12 act 228 216 -12 find_pair 180 164 -16 rmmod_main 298 280 -18 find_pid_by_name 156 134 -22 modprobe_main 1606 1576 -30 ------------------------------------------------------------------------------ (add/remove: 1/0 grow/shrink: 0/16 up/down: 26/-156) Total: -130 bytes text data bss dec hex filename 734933 3028 14400 752361 b7ae9 busybox_old 734801 3028 14400 752229 b7a65 busybox_unstripped
2007-06-30killall, pidof: use argv0 for process matching tooDenis Vlasenko
top: show cmdline, not comm field (fixes problems with re-execed applets showing as processes with name "exe", and not being found by pidof/killall by applet name) function old new delta find_pid_by_name 98 156 +58 procps_scan 692 732 +40 top_main 2724 2762 +38 find_pair 164 180 +16 collect_int 114 123 +9 cmp_main 547 555 +8 collect_fork 112 119 +7 collect_ctx 112 119 +7 read_package_field 253 257 +4 passwd_main 1983 1985 +2 process_stdin 435 433 -2 xstrtoul_range_sfx 229 226 -3 get_next_block 1852 1849 -3 arith 2042 2033 -9 sv_main 1236 1226 -10 singlemount 4690 4672 -18 ------------------------------------------------------------------------------ (add/remove: 0/0 grow/shrink: 10/6 up/down: 189/-45) Total: 144 bytes text data bss dec hex filename 734789 3028 14400 752217 b7a59 busybox_old 734933 3028 14400 752361 b7ae9 busybox_unstripped
2007-06-30procps: shrink /proc scanning code a bitDenis Vlasenko
function old new delta skip_fields 16 15 -1 .rodata 144266 144258 -8 procps_scan 739 692 -47 ------------------------------------------------------------------------------ (add/remove: 0/0 grow/shrink: 0/3 up/down: 0/-56) Total: -56 bytes text data bss dec hex filename 734845 3028 14400 752273 b7a91 busybox_old 734789 3028 14400 752217 b7a59 busybox_unstripped
2007-06-28document firmware supportMike Frysinger
2007-06-27wget: fix bug in base64 encoding (bug 1404). +10 bytes.Denis Vlasenko
2007-06-27devfsd: style cleanup; size reduction (Tito <farmatito@tiscali.it>)Denis Vlasenko
traceroute: suppress warning
2007-06-26uuencode: shrinkDenis Vlasenko
function old new delta uuencode_main 427 337 -90 ------------------------------------------------------------------------------ (add/remove: 0/0 grow/shrink: 0/1 up/down: 0/-90) Total: -90 bytes text data bss dec hex filename 734981 3028 14400 752409 b7b19 busybox_old 734889 3028 14400 752317 b7abd busybox_unstripped
2007-06-25devfsd: fix formatting (Tito <farmatito@tiscali.it>)Denis Vlasenko
ash: fix SEGV if type has zero parameters
2007-06-25Consolidate ARRAY_SIZE macro; remove one unneeded global var (walter harms ↵Denis Vlasenko
<wharms@bfs.de>)