aboutsummaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
...
* hush: fix build if !BASH_LINENO_VARDenys Vlasenko2018-01-191-8/+13
| | | | Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
* hush: implement $LINENO bashismDenys Vlasenko2018-01-193-2/+68
| | | | | | | | | | | | | | | | function old new delta run_pipe 1697 1774 +77 unset_local_var_len 258 301 +43 hush_main 1009 1051 +42 set_local_var 516 554 +38 parse_and_run_file 42 75 +33 i_getch 96 116 +20 .rodata 18858 18876 +18 done_command 106 122 +16 ------------------------------------------------------------------------------ (add/remove: 0/0 grow/shrink: 8/0 up/down: 287/0) Total: 287 bytes Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
* udhcpc[6]: remove overzealous timeout clamping codeDenys Vlasenko2018-01-172-13/+10
| | | | | | | | function old new delta udhcpc_main 2840 2826 -14 udhcpc6_main 2699 2670 -29 Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
* udhcpc6: --help fixesDenys Vlasenko2018-01-162-3/+3
| | | | Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
* udhcpc6: show only short opts in --help textDenys Vlasenko2018-01-161-37/+0
| | | | | | | function old new delta packed_usage 26028 25966 -62 Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
* udhcpc6: fix lease time staying very small because -d was not specifiedDenys Vlasenko2018-01-161-0/+4
| | | | Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
* udhcpc6: code shrinkDenys Vlasenko2018-01-161-19/+25
| | | | | | | | function old new delta udhcpc6_main 2723 2727 +4 .rodata 128695 128561 -134 Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
* udhcpc6: add support of prefix delegationDenys Vlasenko2018-01-162-22/+101
| | | | | | Based on patch by DannyAAM <danny@saru.moe> Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
* udhcpc6: preparatory patch, no code changesDenys Vlasenko2018-01-161-37/+37
| | | | Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
* udhcpc6: fix ipv6prefix[_lease] envvar value in script invocationDenys Vlasenko2018-01-161-4/+4
| | | | | | Based on a patch by DannyAAM <danny@saru.moe>. Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
* ash: a bit of NOFORK code should only be active if FEATURE_SH_STANDALONE=yDenys Vlasenko2018-01-151-1/+3
| | | | | | | function old new delta evalcommand 1546 1420 -126 Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
* popmaildir: tweak help textDenys Vlasenko2018-01-141-2/+2
| | | | Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
* renice: add comment about getpwnam/NOFORK interactionDenys Vlasenko2018-01-141-1/+1
| | | | Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
* renice: use BUILD_BUG_ON()Denys Vlasenko2018-01-141-10/+3
| | | | Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
* NOFORK_NOEXEC.sh: a script to find "interesting" appletsDenys Vlasenko2018-01-141-0/+34
| | | | Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
* mv: make it NOEXECDenys Vlasenko2018-01-143-3/+5
| | | | Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
* cal: make it NOEXECDenys Vlasenko2018-01-142-2/+3
| | | | Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
* nandwrite: cope with old headers which have no MTD_FILE_MODE_RAWDenys Vlasenko2018-01-141-0/+9
| | | | Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
* size_single_applets.sh: fix a bug which mishandles e.g. "udhcpc6" nameDenys Vlasenko2018-01-141-3/+3
| | | | Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
* config: add size estimations for a few appletsDenys Vlasenko2018-01-145-5/+5
| | | | Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
* tc: fix single-applet buildDenys Vlasenko2018-01-131-0/+6
| | | | Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
* shell: echo ${?:0} was fixed sometime ago, enable it in testsDenys Vlasenko2018-01-134-2/+4
| | | | Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
* hush: fix raw ^C handlisg in single-quoted stringsDenys Vlasenko2018-01-139-12/+15
| | | | | | | function old new delta parse_stream 2719 2754 +35 Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
* hush: add command2.tests from ash testsDenys Vlasenko2018-01-122-0/+8
| | | | Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
* hush: tweak command -vV printing code, no logic changesDenys Vlasenko2018-01-121-3/+5
| | | | Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
* hush: implement "command -v -V"Denys Vlasenko2018-01-121-31/+84
| | | | | | | | | | | function old new delta pseudo_exec_argv 231 374 +143 if_command_vV_print_and_exit - 127 +127 builtin_set 267 273 +6 ------------------------------------------------------------------------------ (add/remove: 1/0 grow/shrink: 2/0 up/down: 276/0) Total: 276 bytes Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
* which: fix TODO with NOFORK+malloc_failure misbehavingDenys Vlasenko2018-01-124-26/+28
| | | | | | | | | | | function old new delta find_executable 86 104 +18 which_main 202 194 -8 executable_exists 66 51 -15 ------------------------------------------------------------------------------ (add/remove: 0/0 grow/shrink: 1/2 up/down: 18/-23) Total: -5 bytes Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
* hush: implement "command" builtin (no options are supported yet)Denys Vlasenko2018-01-111-1/+16
| | | | | | | function old new delta pseudo_exec_argv 194 231 +37 Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
* hush: fix handling of ^C in evalDenys Vlasenko2018-01-115-4/+36
| | | | | | | | | | | function old new delta run_list 1044 1259 +215 builtin_eval 45 126 +81 expand_strvec_to_string 91 - -91 ------------------------------------------------------------------------------ (add/remove: 0/1 grow/shrink: 2/0 up/down: 296/-91) Total: 205 bytes Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
* hush: fix handling of raw ^C in scripts: "echo ^C"Denys Vlasenko2018-01-115-4/+27
| | | | | | | | function old new delta expand_vars_to_list 1133 1187 +54 parse_stream 2690 2719 +29 Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
* hush: remove dead codeDenys Vlasenko2018-01-111-15/+0
| | | | | | | function old new delta done_word 761 711 -50 Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
* ash: ALWAYS_INLINE grabstackblock()Denys Vlasenko2018-01-101-1/+1
| | | | | | | function old new delta grabstackblock 5 - -5 Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
* init: stop using static dataDenys Vlasenko2018-01-101-16/+24
| | | | | | | | | | | | | function old new delta init_action_list 4 - -4 new_init_action 148 142 -6 ------------------------------------------------------------------------------ (add/remove: 0/1 grow/shrink: 0/1 up/down: 0/-10) Total: -10 bytes text data bss dec hex filename 927839 481 6832 935152 e44f0 busybox_old 927833 481 6824 935138 e44e2 busybox_unstripped Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
* ash: make ${v:N:M} more robust for very large M by clamping to MIN/MAX_INTDenys Vlasenko2018-01-101-13/+25
| | | | | | | | | | | Before this patch, "${v:2:0x100000001}" = "${v:2:1}", and similarly, constructs like "${v:2:9999999999}" may give wrong result due to int overflows. function old new delta substr_atoi - 43 +43 Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
* dd: fixed partial count logicDenys Vlasenko2018-01-101-1/+3
| | | | | | | | | | | | | $ busybox dd if=/dev/zero of=/dev/loop0 bs=100M count=8; echo $? 8+0 records in 7+0 records out <=========== FIXED, was 7+1 805220352 bytes (767.9MB) copied, 0.464010 seconds, 1.6GB/s 1 function old new delta write_and_stats 97 99 +2 Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
* dd: exit with 1 if last write was incompleteDenys Vlasenko2018-01-101-5/+7
| | | | | | | | | | | | | $ busybox dd if=/dev/zero of=/dev/loop0 bs=100M count=8; echo $? 8+0 records in 7+1 records out 805220352 bytes (767.9MB) copied, 0.464010 seconds, 1.6GB/s 1 <=========== FIXED function old new delta write_and_stats 96 97 +1 Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
* ash: add comment explaining last changeDenys Vlasenko2018-01-091-6/+6
| | | | Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
* ash: fix var_bash5.tests - ${VAR/pattern/repl} constructDenys Vlasenko2018-01-091-25/+72
| | | | | | | | | | | | | | | function old new delta subevalvar 1198 1279 +81 rmescapes 308 330 +22 preglob 8 10 +2 parsefname 152 154 +2 expandarg 973 975 +2 argstr 1144 1146 +2 mklocal 290 288 -2 ------------------------------------------------------------------------------ (add/remove: 0/0 grow/shrink: 6/1 up/down: 111/-2) Total: 109 bytes Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
* umount: ignore -cShawn Landden2018-01-081-2/+2
| | | | | | | | | | | | "-c, --no-canonicalize: Do not canonicalize paths." As busybox doesn't canonicalize paths in the first place it is safe to ignore this option. See https://github.com/systemd/systemd/issues/7786 Signed-off-by: Shawn Landden <slandden@gmail.com> Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
* mknod: better --help, much clearer codeDenys Vlasenko2018-01-081-28/+28
| | | | | | | | function old new delta packed_usage 32066 32091 +25 mknod_main 173 174 +1 Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
* less: code shrinkDenys Vlasenko2018-01-081-3/+1
| | | | | | | function old new delta less_main 2471 2464 -7 Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
* dhcprelay: code shrinkDenys Vlasenko2018-01-081-4/+4
| | | | | | | function old new delta dhcprelay_main 961 958 -3 Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
* nice: code shrinkDenys Vlasenko2018-01-081-9/+12
| | | | | | | function old new delta nice_main 157 152 -5 Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
* *: make "argc UNUSED_PARAM" consistentDenys Vlasenko2018-01-082-2/+2
| | | | Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
* awk: code shrinkDenys Vlasenko2018-01-071-4/+3
| | | | | | | function old new delta awk_main 955 948 -7 Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
* ash: fail if 'shift' operand is out of rangeIngo van Lil2018-01-071-1/+1
| | | | | | | | | | | | | | | | If the numeric argument passed to ash's 'shift' built-in is greater than '$#' the command performs no operation and exits successfully. It should return a non-zero exit code instead: http://pubs.opengroup.org/onlinepubs/9699919799/utilities/V3_chap02.html#shift This is consistent with bash and hush. function old new delta shiftcmd 122 120 -2 Signed-off-by: Ingo van Lil <inguin@gmx.de> Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
* awk: fix 'delete array[var--]' decrementing var twiceDenys Vlasenko2018-01-072-23/+50
| | | | | | | function old new delta evaluate 3395 3390 -5 Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
* libbb: compile obscure() only if FEATURE_PASSWD_WEAK_CHECK=yDenys Vlasenko2018-01-041-1/+2
| | | | Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
* build system: add rule to install without cloberring existing utilitiesYann E. MORIN2018-01-041-0/+3
| | | | | Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr> Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
* applets/install: accept more than one install optionYann E. MORIN2018-01-041-12/+16
| | | | | | | | Currently, it is impossible to pass more than one option to the isntall script, so it totally prevents using --noclobber. Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr> Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>