summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2021-06-25awk: move locals deeper into scopes where they are used, no logic changesDenys Vlasenko
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2021-06-25awk: more efficient -f FILE, document what "some trick in next_token" isDenys Vlasenko
function old new delta awk_main 890 898 +8 Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2021-06-25ash: parser: Fix VSLENGTH parsing with trailing garbageDenys Vlasenko
Let's adopt Herbert Xu's patch, not waiting for it to reach dash git: hush already has a similar fix. Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2021-06-25ash: revert accidental change (should have been separate)Denys Vlasenko
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2021-06-25fdisk: commonalize stringsDenys Vlasenko
function old new delta .rodata 103674 103667 -7 Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2021-06-25cp,mv: fix -t DIR optionRon Yorston
When the '-t DIR' option is used the loop over the remaining arguments should terminate when a NULL pointer is reached. function old new delta mv_main 585 590 +5 cp_main 492 496 +4 ------------------------------------------------------------------------------ (add/remove: 0/0 grow/shrink: 2/0 up/down: 9/0) Total: 9 bytes Signed-off-by: Ron Yorston <rmy@pobox.com> Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2021-06-25xxd: compat tweak for -iDenys Vlasenko
function old new delta xxd_main 888 893 +5 .rodata 103669 103674 +5 ------------------------------------------------------------------------------ (add/remove: 0/0 grow/shrink: 2/0 up/down: 10/0) Total: 10 bytes Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2021-06-24uniq: really support -zRon Yorston
Commit 894466cc5 (uniq: support -z) added support for NUL delimited output. Unfortunately nobody told getopt32(). Signed-off-by: Ron Yorston <rmy@pobox.com> Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2021-06-24switch_root: code shrink - use iterate_on_dir()Denys Vlasenko
function old new delta rmrf - 46 +46 delete_contents 181 99 -82 ------------------------------------------------------------------------------ (add/remove: 1/0 grow/shrink: 0/1 up/down: 46/-82) Total: -36 bytes Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2021-06-24libbb: do not check closedir() in remove_file()Denys Vlasenko
If it's needed, there has to be a comment why. There isn't. function old new delta .rodata 103686 103669 -17 remove_file 598 571 -27 ------------------------------------------------------------------------------ (add/remove: 0/0 grow/shrink: 0/2 up/down: 0/-44) Total: -44 bytes Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2021-06-24nproc: code shrinkDenys Vlasenko
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2021-06-24ls: code shrinkDenys Vlasenko
function old new delta scan_and_display_dirs_recur 576 574 -2 Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2021-06-24taskset: use iterate_on_dir()Denys Vlasenko
function old new delta iter - 27 +27 process_pid_str 854 856 +2 taskset_main 181 135 -46 ------------------------------------------------------------------------------ (add/remove: 1/0 grow/shrink: 1/1 up/down: 29/-46) Total: -17 bytes Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2021-06-24move iterate_on_dir() from e2fsprogs to libbbDenys Vlasenko
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2021-06-24e2fsprogs: code shrinkDenys Vlasenko
function old new delta print_e2flags_long - 109 +109 list_attributes 248 232 -16 print_e2flags 169 47 -122 ------------------------------------------------------------------------------ (add/remove: 1/0 grow/shrink: 0/2 up/down: 109/-138) Total: -29 bytes Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2021-06-24lsattr,chattr: do not open e.g. device files unless asked directly; do not ↵Denys Vlasenko
follow links Add O_NOFOLLOW (and O_NOCTTY for good measure) to open calls like e2fsprogs does. In lsattr, when recursing, operate only on regular files, symlinks, and directories. (Otherwise, "lsattr /dev" can e.g. open a watchdog device... not good). At this time, looks like chattr/lsattr can't operate on symlink inodes - ioctls do not work on open(O_PATH | O_NOFOLLOW) fds. function old new delta lsattr_dir_proc 168 203 +35 change_attributes 410 408 -2 ------------------------------------------------------------------------------ (add/remove: 0/0 grow/shrink: 1/1 up/down: 35/-2) Total: 33 bytes Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2021-06-23chattr: if IOC_FSGETXATTR fails, do not try IOC_FSSETXATTRDenys Vlasenko
function old new delta change_attributes 416 410 -6 Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2021-06-23vi: fix read outside of text buffer during insertS Harris
Signed-off-by: S Harris <S.E.Harris@kent.ac.uk> Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2021-06-23cpio: fix sscanf on unterminated bufferS Harris
Signed-off-by: S Harris <S.E.Harris@kent.ac.uk> Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2021-06-23chattr: fix "chattr =ae -R FILE"Denys Vlasenko
-R is not an "unset these flags" argument, thus no conflict with "=". function old new delta .rodata 103684 103686 +2 Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2021-06-23chattr,lsattr: share stat error messageDenys Vlasenko
function old new delta .rodata 103692 103684 -8 Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2021-06-23e2fsprogs/*: remove ioctl calling obfuscationDenys Vlasenko
function old new delta change_attributes 326 416 +90 list_attributes 222 248 +26 close_silently 22 - -22 .rodata 103722 103692 -30 fgetsetversion 74 - -74 fgetsetprojid 107 - -107 fgetsetflags 148 - -148 ------------------------------------------------------------------------------ (add/remove: 0/4 grow/shrink: 2/1 up/down: 116/-381) Total: -265 bytes Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2021-06-23chattr: update list of attributes in --helpDenys Vlasenko
function old new delta packed_usage 33717 33823 +106 Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2021-06-22cp: implement -nDenys Vlasenko
function old new delta .rodata 103681 103722 +41 packed_usage 33698 33717 +19 copy_file 1678 1696 +18 cp_main 500 492 -8 ------------------------------------------------------------------------------ (add/remove: 0/0 grow/shrink: 3/1 up/down: 78/-8) Total: 70 bytes Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2021-06-22crc32: code shrink for !CKSUM configDenys Vlasenko
function old new delta cksum_main 215 203 -12 Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2021-06-22cksum: fix handling of read errorsDenys Vlasenko
function old new delta cksum_main 377 399 +22 Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2021-06-22crc32: new appletDenys Vlasenko
function old new delta cksum_main 258 377 +119 .rodata 103672 103681 +9 applet_names 2745 2751 +6 applet_main 1588 1592 +4 packed_usage 33734 33698 -36 ------------------------------------------------------------------------------ (add/remove: 0/0 grow/shrink: 4/1 up/down: 138/-36) Total: 102 bytes Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2021-06-21cp: implement -t DIRDenys Vlasenko
function old new delta packed_usage 33713 33734 +21 .rodata 103670 103672 +2 cp_main 506 500 -6 ------------------------------------------------------------------------------ (add/remove: 0/0 grow/shrink: 2/1 up/down: 23/-6) Total: 17 bytes Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2021-06-21cp: preparatory indenting of code block, no code changesDenys Vlasenko
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2021-06-21ascii: new appletDenys Vlasenko
function old new delta .rodata 103397 103670 +273 ascii_main - 177 +177 applet_names 2739 2745 +6 applet_main 1584 1588 +4 applet_suid 99 100 +1 applet_install_loc 198 199 +1 packed_usage 33716 33713 -3 ------------------------------------------------------------------------------ (add/remove: 2/0 grow/shrink: 5/1 up/down: 462/-3) Total: 459 bytes Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2021-06-21vi: fix backward search with GNU regexRon Yorston
With FEATURE_VI_REGEX_SEARCH enabled backward searches don't work. This is problematic on distros that enable regexes, such as Tiny Core Linux and Fedora. When calling GNU re_search() with a negative range parameter (indicating a backward search) the start offset must be set to the end of the area being searched. The return value of re_search() is the offset of the matched pattern from the start of the area being searched. For a successful search (positive return value) char_search() can return the pointer to the start of the area plus the offset. FEATURE_VI_REGEX_SEARCH isn't enabled by default but when it is: function old new delta char_search 256 247 -9 ------------------------------------------------------------------------------ (add/remove: 0/0 grow/shrink: 0/1 up/down: 0/-9) Total: -9 bytes Signed-off-by: Andrey Dobrovolsky <andrey.dobrovolsky.odessa@gmail.com> Signed-off-by: Ron Yorston <rmy@pobox.com> Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2021-06-20qwk: make code clearer, no actual code changesDenys Vlasenko
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2021-06-20df: support -t TYPEDenys Vlasenko
function old new delta packed_usage 33656 33716 +60 df_main 1029 1065 +36 .rodata 103395 103397 +2 ------------------------------------------------------------------------------ (add/remove: 0/0 grow/shrink: 3/0 up/down: 98/0) Total: 98 bytes Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2021-06-20df: POSIXLY_CORRECT sets _default_ scale, -m/-h overrides itDenys Vlasenko
function old new delta df_main 1034 1029 -5 Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2021-06-20shred: with -u, unlink file even if it is zero lengthDenys Vlasenko
function old new delta shred_main 391 387 -4 Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2021-06-20shred: implement -s SIZEDenys Vlasenko
function old new delta shred_main 337 391 +54 .rodata 103393 103395 +2 packed_usage 33666 33656 -10 ------------------------------------------------------------------------------ (add/remove: 0/0 grow/shrink: 2/1 up/down: 56/-10) Total: 46 bytes Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2021-06-20lsattr: support more ext2 flagsDenys Vlasenko
function old new delta e2attr_flags_lname 214 285 +71 e2attr_flags_value 52 80 +28 e2attr_flags_sname 14 21 +7 ------------------------------------------------------------------------------ (add/remove: 0/0 grow/shrink: 3/0 up/down: 106/0) Total: 106 bytes Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2021-06-20lsattr,chattr: support -pDenys Vlasenko
function old new delta fgetsetprojid - 107 +107 list_attributes 169 222 +53 change_attributes 277 326 +49 chattr_main 272 307 +35 close_silently - 22 +22 .rodata 103378 103393 +15 packed_usage 33658 33666 +8 fgetsetversion 88 74 -14 fgetsetflags 162 148 -14 ------------------------------------------------------------------------------ (add/remove: 2/0 grow/shrink: 5/2 up/down: 289/-28) Total: 261 bytes Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2021-06-20taskset: fix for PID longer than 12 charsDenys Vlasenko
Should we validate that PID is a number for "taskset -ap PID"? We don't actually need it, and pathological input like "../../DIR_WITH_LOTS_OF_PIDS" can only cause "taskset"ing of many pids. Which is something user can do anyway. function old new delta taskset_main 190 181 -9 Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2021-06-19taskset: implement -aDenys Vlasenko
function old new delta process_pid_str - 854 +854 .rodata 103363 103378 +15 packed_usage 33654 33658 +4 taskset_main 936 190 -746 ------------------------------------------------------------------------------ (add/remove: 1/0 grow/shrink: 2/1 up/down: 873/-746) Total: 127 bytes Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2021-06-19hush: fix bkslash+newline handling and number validation in ${NN} and ${#NN}Denys Vlasenko
Entering "${1a}" into interactive shell was making it exit. function old new delta parse_dollar 824 958 +134 i_getch_and_eat_bkslash_nl - 44 +44 parse_expr 917 938 +21 ------------------------------------------------------------------------------ (add/remove: 1/0 grow/shrink: 2/0 up/down: 199/0) Total: 199 bytes Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2021-06-18awk: after preinc/dec, only allow variable, field ref, array ref, or another ↵Denys Vlasenko
preinc/dec Accepting nonsense like "--4", and even "-- -4" is confusing. function old new delta parse_expr 917 938 +21 Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2021-06-18free: implement -hDenys Vlasenko
function old new delta .rodata 103331 103363 +32 packed_usage 33652 33654 +2 free_main 657 588 -69 ------------------------------------------------------------------------------ (add/remove: 0/0 grow/shrink: 2/1 up/down: 34/-69) Total: -35 bytes Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2021-06-18xxd: implement -i "C style output"Denys Vlasenko
function old new delta xxd_main 710 888 +178 .rodata 103252 103331 +79 print_C_style - 78 +78 packed_usage 33639 33652 +13 next 276 278 +2 ------------------------------------------------------------------------------ (add/remove: 1/0 grow/shrink: 4/0 up/down: 350/0) Total: 350 bytes Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2021-06-18xxd: do not try reading from closed stdin when non-existent file is givenDenys Vlasenko
Was: xxd: FILE: No such file or directory xxd: FILE: Bad file descriptor function old new delta next 276 278 +2 Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2021-06-17xxd: implement -o DISPLAYOFFSETDenys Vlasenko
function old new delta xxd_main 680 710 +30 xstrtoll - 30 +30 bb_dump_dump 1511 1531 +20 rewrite 941 951 +10 packed_usage 33629 33639 +10 .rodata 103250 103252 +2 ------------------------------------------------------------------------------ (add/remove: 1/0 grow/shrink: 5/0 up/down: 102/0) Total: 102 bytes Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2021-06-17hexdump: fix error messageDenys Vlasenko
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2021-06-17ionice: implement -tDenys Vlasenko
function old new delta packed_usage 33618 33629 +11 ionice_main 272 282 +10 .rodata 103250 103251 +1 ------------------------------------------------------------------------------ (add/remove: 0/0 grow/shrink: 3/0 up/down: 22/0) Total: 22 bytes Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2021-06-17env: implement -0Denys Vlasenko
function old new delta packed_usage 33590 33618 +28 env_main 187 209 +22 .rodata 103242 103250 +8 ------------------------------------------------------------------------------ (add/remove: 0/0 grow/shrink: 3/0 up/down: 58/0) Total: 58 bytes Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2021-06-17mv: implement -t and -TDenys Vlasenko
function old new delta mv_main 496 585 +89 .rodata 103188 103242 +54 packed_usage 33549 33590 +41 ------------------------------------------------------------------------------ (add/remove: 0/0 grow/shrink: 3/0 up/down: 184/0) Total: 184 bytes Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>