summaryrefslogtreecommitdiff
path: root/include/libbb.h
AgeCommit message (Collapse)Author
2007-09-24*: kill bb_get_last_path_component, replace with two functionsDenis Vlasenko
(one which strips trailing slash and one which does not) wget: straighten out as a result of above change text data bss dec hex filename 5056 1 0 5057 13c1 busybox.t4/networking/wget.o 5022 0 0 5022 139e busybox.t5/networking/wget.o
2007-09-10setup_environment: code shrinkDenis Vlasenko
run_shell: mark as NORETURN setup_environment, run_shell: add usage comments login: add FIXME :( function old new delta UNSPEC_print 64 66 +2 sulogin_main 509 506 -3 mkfs_minix_main 3070 3067 -3 login_main 1615 1612 -3 su_main 461 448 -13 setup_environment 261 206 -55 ------------------------------------------------------------------------------ (add/remove: 0/0 grow/shrink: 1/5 up/down: 2/-77) Total: -75 bytes text data bss dec hex filename 772578 1051 10724 784353 bf7e1 busybox_old 772502 1051 10724 784277 bf795 busybox_unstripped
2007-09-08top: TOPMEM feature - 's(how sizes)' command. +2.5k when enabled,Denis Vlasenko
+80 bytes when disabled (mainly because of text wrapping fixes in display_process_list).
2007-09-05busybox --install -s: prevent puzzling "/bin/busybox: Invalid argument" messageDenis Vlasenko
libbb: comment out realpath, add readlink which doesn't warn
2007-09-04tar: conditionally don't wait for vforked child to exec, as it alwaysDenis Vlasenko
works right on Linux, and anyway mayresult only on less-than-clear error message only, it will not cause tar to misbehave. function old new delta open_transformer 98 80 -18 writeTarFile 714 547 -167 ------------------------------------------------------------------------------ (add/remove: 0/0 grow/shrink: 0/2 up/down: 0/-185) Total: -185 bytes text data bss dec hex filename 770651 1051 10764 782466 bf082 busybox_old 770463 1051 10764 782278 befc6 busybox_unstripped
2007-08-29vsz and rss are unsigned longs (ulong ~= width of void* =>Denis Vlasenko
suitable for expressing total RAM in system). We account for "32 bit in 64 bit" systems by storing kbytes, not bytes there. Should allow for up to ~2000 Gb RAM on 32 bits.
2007-08-28top: use poll instead of select for waiting on one descriptorDenis Vlasenko
smart_ulltoa5: make it more cryptic. -50 bytes. function old new delta passwd_main 1095 1103 +8 getNum 557 565 +8 buffer_fill_and_print 73 76 +3 udhcpc_main 2393 2395 +2 mkfs_minix_main 3071 3070 -1 dname_enc 377 373 -4 expmeta 480 472 -8 smart_ulltoa5 334 283 -51 top_main 911 815 -96 ------------------------------------------------------------------------------ (add/remove: 0/0 grow/shrink: 4/5 up/down: 21/-160) Total: -139 bytes text data bss dec hex filename 770872 1063 10788 782723 bf183 busybox_old 770732 1063 10788 782583 bf0f7 busybox_unstripped
2007-08-26ps: fix RSS parsing (rss field in /proc/PID/stat is in pages, not bytes)Denis Vlasenko
2007-08-19libbb,crond,lash: fix getopt32 (don't know how it managed to slip through)Denis Vlasenko
*: fcntl(fd, F_GETFL) doesn't require third parameter at all.
2007-08-18make standalone httpd work on NOMMU machinesDenis Vlasenko
2007-08-18introduce and use xdup2(int, int)Denis Vlasenko
stop checking whether setsockopt_reuseaddr(int fd) was successful (it always is) remove second parameter (sockllen) from xmalloc_sockaddr2xxxxx functions sockaddr2str 142 156 +14 collect_blk 467 474 +7 xdup2 28 33 +5 singlemount 4456 4454 -2 print_host 214 212 -2 nslookup_main 139 137 -2 ftpgetput_main 414 412 -2 udhcpd_main 1258 1255 -3 udhcpc_main 2405 2402 -3 traceroute_main 4125 4122 -3 nc_main 1072 1069 -3 buffer_fill_and_print 76 73 -3 xmalloc_sockaddr2hostonly_noport 18 14 -4 xmalloc_sockaddr2host_noport 18 14 -4 xmalloc_sockaddr2host 15 11 -4 xmalloc_sockaddr2dotted_noport 18 14 -4 xmalloc_sockaddr2dotted 18 14 -4 wget_main 2618 2614 -4 ping_main 393 389 -4 ip_port_str 120 115 -5 dhcprelay_main 1146 1141 -5 dnsd_main 1531 1525 -6 passwd_main 1110 1102 -8 udhcp_kernel_packet 206 197 -9 udhcp_listen_socket 154 144 -10 getty_main 2576 2566 -10 setup 655 640 -15 xmove_fd 51 34 -17 dolisten 759 742 -17 tcpudpsvd_main 1866 1836 -30 startservice 339 299 -40
2007-08-17httpd shring and logging update, part 1 or 7Denis Vlasenko
text data bss dec hex filename 9836 0 0 9836 266c busybox.t1/networking/httpd.o.orig 9724 0 0 9724 25fc busybox.t2/networking/httpd.o 9657 0 0 9657 25b9 busybox.t3/networking/httpd.o 9342 0 0 9342 247e busybox.t4/networking/httpd.o 9342 0 0 9342 247e busybox.t5/networking/httpd.o 9262 0 0 9262 242e busybox.t6/networking/httpd.o 9283 0 0 9283 2443 busybox.t7/networking/httpd.o 9334 0 0 9334 2476 busybox.t8/networking/httpd.o
2007-08-16add comments regarding SO_REUSEADDRDenis Vlasenko
2007-08-16Comment out "#include <strings.h>" everywhereDenis Vlasenko
2007-08-15v[hp]error_msg have 2-3 callsites only -> incorporate there.Denis Vlasenko
2007-08-15if pidfile turned out to be !regular file, do not unlink it.Denis Vlasenko
It's most probably the /dev/null.
2007-08-14trylink: automatically use custom link script if user provides oneDenis Vlasenko
vinfo_msg: one user (info_msg), incorporate in it *: style fixes
2007-08-13s/#ifdef CONFIG_/#if ENABLE_/gDenis Vlasenko
2007-08-09ls,ps,watch: measure terminal width on fd 0, not 1Denis Vlasenko
2007-08-03mount: print errno on NFS error (again)Denis Vlasenko
2007-08-02udhcp: slight shrinkDenis Vlasenko
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
2007-08-02start_stop_daemon: NOMMU fixes, round 2 by Alex Landau <landau_alex@yahoo.com>Denis Vlasenko
dhcpc: fixed "ifupdown + udhcpc_without_pidpile_creation" bug
2007-07-31start_stop_daemon: NOMMU fix; smaller fixesDenis Vlasenko
2007-07-27fix for suffix optimization (which was in previous commit)Denis Vlasenko
2007-07-27multiplier suffixes are short, store them directly in struct suffix_multDenis Vlasenko
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
2007-07-27passwd: fix bug: we are trying to update shadow even if user's record is in ↵Denis Vlasenko
passwd! getspnam is guilty, it lies that user record exists in shadow.
2007-07-27bb_getpwuid, bb_getgrgid: change order of arguments to more intuitive one;Denis Vlasenko
comment thoroughly when they die and when they dont.
2007-07-24Replace index_in_[sub]str_array with index_in_[sub]strings,Denis Vlasenko
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
2007-07-23rework long option handling. saves ~1.2kDenis Vlasenko
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
2007-07-21libbb: nuke BB_GETOPT_ERROR, always die if there are mutually exclusive optionsDenis Vlasenko
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
2007-07-20chpasswd: new applet by Alexander Shishkin <virtuoso@slind.org>Denis Vlasenko
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-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-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-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-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-25Consolidate ARRAY_SIZE macro; remove one unneeded global var (walter harms ↵Denis Vlasenko
<wharms@bfs.de>)
2007-06-21test: shrink a bitDenis Vlasenko
function old new delta test_main 5 434 +429 bb_test 473 - -473 ------------------------------------------------------------------------------ (add/remove: 0/1 grow/shrink: 1/0 up/down: 429/-473) Total: -44 bytes text data bss dec hex filename 735073 3028 14408 752509 b7b7d busybox_old 735029 3028 14408 752465 b7b51 busybox_unstripped
2007-06-19top,ps: 'stringify' tty only when needed. -60 bytes.Denis Vlasenko
2007-06-19networking/interface.c: reduce bss usageDenis Vlasenko
function old new delta .rodata 158918 158950 +32 display_interfaces 133 153 +20 UNSPEC_print 56 68 +12 pr_ether 59 65 +6 static.proc_read 4 1 -3 interface_opt_a 4 1 -3 in_ether 139 136 -3 ifconfig_main 1296 1293 -3 if_readlist_proc 686 680 -6 ife_print 1350 1338 -12 do_if_print 46 - -46 static.buff 369 264 -105 ------------------------------------------------------------------------------ (add/remove: 0/1 grow/shrink: 4/7 up/down: 70/-181) Total: -111 bytes # size busybox_old busybox_unstripped text data bss dec hex filename 751073 3080 14800 768953 bbbb9 busybox_old 751073 3048 14688 768809 bbb29 busybox_unstripped
2007-06-17wget: use monotonic_sec instead of gettimeofdayDenis Vlasenko
zcip: use monotonic_us instead of gettimeofday udhcpcd: simpler, shorter random_xid() function old new delta monotonic_sec - 41 +41 find_pair 164 180 +16 run_list_real 2018 2028 +10 cmp_main 547 555 +8 collect_ctx 112 119 +7 singlemount 4544 4549 +5 time_main 1124 1128 +4 static.start_sec - 4 +4 static.lastupdate_sec - 4 +4 sock - 4 +4 read_package_field 253 257 +4 pick 38 40 +2 get_next_line 145 147 +2 count_lines 59 61 +2 process_stdin 435 433 -2 xstrtoul_range_sfx 229 226 -3 static.initialized 4 1 -3 dhcprelay_main 1125 1122 -3 catcher 380 377 -3 arping_main 1969 1966 -3 s 8 4 -4 cfg 4 - -4 static.lastupdate 8 - -8 start 8 - -8 random_xid 95 33 -62 .rodata 129114 129050 -64 zcip_main 1731 1576 -155 progressmeter 1035 867 -168 ------------------------------------------------------------------------------ (add/remove: 4/3 grow/shrink: 10/11 up/down: 113/-490) Total: -377 bytes
2007-06-17hwclock: size optimizationsDenis Vlasenko
libbb/time.c: new file, introducing monotonic_us() pscan, traceroute, arping: use it instead of gettimeofday ping, zcip: TODO function old new delta monotonic_us - 89 +89 find_pair 164 180 +16 .rodata 129747 129763 +16 refresh 1144 1152 +8 ............ timeout 8 4 -4 static.start 8 4 -4 last 8 4 -4 parse_conf 1303 1284 -19 time_main 1149 1124 -25 gettimeofday_us 39 - -39 arping_main 2042 1969 -73 hwclock_main 594 501 -93 catcher 485 380 -105 traceroute_main 4300 4117 -183 ------------------------------------------------------------------------------ (add/remove: 2/1 grow/shrink: 8/11 up/down: 157/-562) Total: -405 bytes
2007-06-13*: BB_BANNER -> bb_banner (it is not a const or #define)!Denis Vlasenko
correct_password: explain in detail why it is ok to use bb_banner fsck_minix: make it print bb version, not it's own (outdated/irrelevant) one Marginal size difference: text data bss dec hex filename 679119 2700 15632 697451 aa46b busybox_old 679091 2700 15632 697423 aa44f busybox_unstripped
2007-06-13hush: fix read builtin to not read ahead past eol and to not useDenis Vlasenko
insane amounts of stack. Testsuite updated.
2007-06-12remove nearly-duplicate PATHs in several placesDenis Vlasenko
function old new delta bb_PATH_root_path - 35 +35 varunset 60 58 -2 arith 2042 2033 -9 bb_default_root_login_path 30 - -30 .rodata 128794 128762 -32 which_main 152 117 -35 defpathvar 40 - -40 ------------------------------------------------------------------------------ (add/remove: 1/2 grow/shrink: 0/4 up/down: 35/-148) Total: -113 bytes
2007-06-12login: make /etc/nologin support configurable. -240 bytes if not selected.Denis Vlasenko
2007-06-12diff: shrink code (-85 bytes):Denis Vlasenko
function old new delta fiddle_sum 8 - -8 diffreg 2717 2690 -27 prepare 334 284 -50 ------------------------------------------------------------------------------ (add/remove: 0/1 grow/shrink: 0/2 up/down: 0/-85) Total: -85 bytes s/ATTRIBUTE_ALWAYS_INLINE/ALWAYS_INLINE/g
2007-06-12A few more string duplicates found & eliminatedDenis Vlasenko
# size busybox_old busybox_unstripped text data bss dec hex filename 679693 2700 15632 698025 aa6a9 busybox_old 679523 2700 15632 697855 aa5ff busybox_unstripped
2007-06-08make busybox --install work even if /proc/self/exe doesn't existDenis Vlasenko
# size busybox_old busybox_unstripped text data bss dec hex filename 680095 2704 15648 698447 aa84f busybox_old 680099 2704 15648 698451 aa853 busybox_unstripped