Denys Vlasenko 00b5051cd2 libbb: code shrink in des encryption, in setup_salt() %!s(int64=3) %!d(string=hai) anos
..
Config.src 94c78aa0b9 config system: move some options closer to relevalnt tool subdirectories %!s(int64=3) %!d(string=hai) anos
Kbuild.src 5156b24553 Make const ptr assign as function call in clang %!s(int64=3) %!d(string=hai) anos
README ba2dcccd79 *: trailing empty lines removed %!s(int64=14) %!d(string=hai) anos
appletlib.c 5acf5e1f87 shell: fix script's comm field if ENABLE_FEATURE_PREFER_APPLETS=y %!s(int64=3) %!d(string=hai) anos
ask_confirmation.c bae8fc4436 xargs: use bb_ask_y_confirmation_FILE() instead of homegrown copy %!s(int64=6) %!d(string=hai) anos
auto_string.c e52da5570e libbb: auto_string() for efficient handling of temporary malloced stirngs %!s(int64=9) %!d(string=hai) anos
bb_askpass.c cad3fc743a libbb: introduce and use fputs_stdout %!s(int64=3) %!d(string=hai) anos
bb_bswap_64.c 9ff50b8697 *: deinline SWAP_xE64 on 32-bit CPUs. Wins !90 bytes both on 32 and 64 bits %!s(int64=14) %!d(string=hai) anos
bb_cat.c d9eb40c185 fix errors found with make_single_applets.sh %!s(int64=7) %!d(string=hai) anos
bb_do_delay.c 030fe31760 libbb: make msleep() result in only one syscall instead of looping %!s(int64=4) %!d(string=hai) anos
bb_getgroups.c 6937487be7 libbb: reduce the overhead of single parameter bb_error_msg() calls %!s(int64=5) %!d(string=hai) anos
bb_getsockname.c ba3b9dbf06 libbb: introduce and use bb_getsockname() %!s(int64=6) %!d(string=hai) anos
bb_pwd.c ebe6d9d875 whitespace and comment format fixes, no code changes %!s(int64=7) %!d(string=hai) anos
bb_qsort.c ebe6d9d875 whitespace and comment format fixes, no code changes %!s(int64=7) %!d(string=hai) anos
bb_strtod.c ebe6d9d875 whitespace and comment format fixes, no code changes %!s(int64=7) %!d(string=hai) anos
bb_strtonum.c 93ef5dd640 printf: fix printf "%u\n" +18446744073709551614 %!s(int64=6) %!d(string=hai) anos
bbunit.c 6937487be7 libbb: reduce the overhead of single parameter bb_error_msg() calls %!s(int64=5) %!d(string=hai) anos
capability.c 965b795b87 decrease paddign: gcc-9.3.1 slaps 32-byte alignment on arrays willy-nilly %!s(int64=4) %!d(string=hai) anos
change_identity.c 6937487be7 libbb: reduce the overhead of single parameter bb_error_msg() calls %!s(int64=5) %!d(string=hai) anos
chomp.c ebe6d9d875 whitespace and comment format fixes, no code changes %!s(int64=7) %!d(string=hai) anos
common_bufsiz.c 72089cf6b4 config: deindent all help texts %!s(int64=7) %!d(string=hai) anos
compare_string_array.c bcf91d2760 libbb: code shrink and speed up index_in_strings() %!s(int64=3) %!d(string=hai) anos
concat_path_file.c ebe6d9d875 whitespace and comment format fixes, no code changes %!s(int64=7) %!d(string=hai) anos
concat_subpath_file.c ebe6d9d875 whitespace and comment format fixes, no code changes %!s(int64=7) %!d(string=hai) anos
const_hack.c 5156b24553 Make const ptr assign as function call in clang %!s(int64=3) %!d(string=hai) anos
copy_file.c 56bbbfae7d cp: implement -n %!s(int64=3) %!d(string=hai) anos
copyfd.c fd3c512f88 libbb: create and use mmap() helpers %!s(int64=4) %!d(string=hai) anos
correct_password.c 77cb6b99a4 libbb: rename bb_ask -> bb_ask_noecho, bb_ask_confirmation -> bb_ask_y_confirmation %!s(int64=6) %!d(string=hai) anos
crc32.c ddacb03e87 libbb: commonalize a bit of little-endian CRC32 table generation code %!s(int64=6) %!d(string=hai) anos
default_error_retval.c ebe6d9d875 whitespace and comment format fixes, no code changes %!s(int64=7) %!d(string=hai) anos
device_open.c ebe6d9d875 whitespace and comment format fixes, no code changes %!s(int64=7) %!d(string=hai) anos
die_if_bad_username.c 0723131628 Fixes for Hurd build %!s(int64=4) %!d(string=hai) anos
dump.c 53b2fdcdba *: add NOINLINEs where code noticeably shrinks %!s(int64=3) %!d(string=hai) anos
duration.c c2bd0b6806 timeout,top,watch,ping: parse NN.N fractional duration in locales with other separators %!s(int64=3) %!d(string=hai) anos
endofname.c 1961aea305 move endofname() to libbb %!s(int64=11) %!d(string=hai) anos
executable.c 2075aa93e0 libbb: rename run_shell() to exec_shell() %!s(int64=4) %!d(string=hai) anos
fclose_nonstdin.c ebe6d9d875 whitespace and comment format fixes, no code changes %!s(int64=7) %!d(string=hai) anos
fflush_stdout_and_exit.c 6937487be7 libbb: reduce the overhead of single parameter bb_error_msg() calls %!s(int64=5) %!d(string=hai) anos
fgets_str.c 6ad38d66d0 libbb: code shrink fgets_str %!s(int64=3) %!d(string=hai) anos
find_mount_point.c f3a064f495 libbbb: find_mount_point() too eager to stat mounted devices %!s(int64=5) %!d(string=hai) anos
find_pid_by_name.c 3a0eea0887 pidof: support "pidof /path/to/binary" case %!s(int64=5) %!d(string=hai) anos
find_root_device.c ebe6d9d875 whitespace and comment format fixes, no code changes %!s(int64=7) %!d(string=hai) anos
full_write.c 875ce094cf dd: fix handling of short result of full_write(), closes 11711 %!s(int64=5) %!d(string=hai) anos
get_console.c 6937487be7 libbb: reduce the overhead of single parameter bb_error_msg() calls %!s(int64=5) %!d(string=hai) anos
get_cpu_count.c 0ef64bdb40 *: make GNU licensing statement forms more regular %!s(int64=14) %!d(string=hai) anos
get_last_path_component.c b24ef035bd find: cater for libc w/o FNM_CASEFOLD %!s(int64=13) %!d(string=hai) anos
get_line_from_file.c 22a9951620 libbb: in xmalloc_fgets(), use size_t for bb_get_chunk_from_file() %!s(int64=6) %!d(string=hai) anos
get_shell_name.c fd77ea505e mark get_shell_name FAST_FUNC %!s(int64=12) %!d(string=hai) anos
get_volsize.c 6937487be7 libbb: reduce the overhead of single parameter bb_error_msg() calls %!s(int64=5) %!d(string=hai) anos
getopt32.c 457825f77a shells: do not allow bare "read" in non-bash compat configs %!s(int64=3) %!d(string=hai) anos
getopt_allopts.c 727948e585 getopt32: factor out code to treat all args as options %!s(int64=7) %!d(string=hai) anos
getpty.c 6937487be7 libbb: reduce the overhead of single parameter bb_error_msg() calls %!s(int64=5) %!d(string=hai) anos
hash_md5_sha.c 965b795b87 decrease paddign: gcc-9.3.1 slaps 32-byte alignment on arrays willy-nilly %!s(int64=4) %!d(string=hai) anos
hash_md5prime.c 49ecee098d tls: add 2nd cipher_id, TLS_RSA_WITH_AES_128_CBC_SHA, so far it doesn't work %!s(int64=7) %!d(string=hai) anos
herror_msg.c 6937487be7 libbb: reduce the overhead of single parameter bb_error_msg() calls %!s(int64=5) %!d(string=hai) anos
human_readable.c ebe6d9d875 whitespace and comment format fixes, no code changes %!s(int64=7) %!d(string=hai) anos
in_ether.c ebe6d9d875 whitespace and comment format fixes, no code changes %!s(int64=7) %!d(string=hai) anos
inet_cksum.c 4a0eb0370c gcc-9.x warning fixes %!s(int64=4) %!d(string=hai) anos
inet_common.c ebe6d9d875 whitespace and comment format fixes, no code changes %!s(int64=7) %!d(string=hai) anos
inode_hash.c e563f9e851 du: don't count duplicate arguments. Closes 5288 %!s(int64=5) %!d(string=hai) anos
isdirectory.c 416899fca6 do not include <sys/stat.h> just before "libbb.h", it's there already %!s(int64=7) %!d(string=hai) anos
isqrt.c 8a134ec680 libbb: move isqrt from factor, use it in diff too %!s(int64=7) %!d(string=hai) anos
iterate_on_dir.c 1746218bee move iterate_on_dir() from e2fsprogs to libbb %!s(int64=3) %!d(string=hai) anos
kernel_version.c 2496616b0a avoid using strok - eliminates use of hidden global variable %!s(int64=4) %!d(string=hai) anos
last_char_is.c 79a4032eef libbb: shrink last_char_is(), no longer allow NULL string argument %!s(int64=4) %!d(string=hai) anos
lineedit.c f4fcd74a6e shell: do not read user database for every prompt - only for those which need it %!s(int64=3) %!d(string=hai) anos
lineedit_ptr_hack.c 0ef64bdb40 *: make GNU licensing statement forms more regular %!s(int64=14) %!d(string=hai) anos
llist.c ebe6d9d875 whitespace and comment format fixes, no code changes %!s(int64=7) %!d(string=hai) anos
logenv.c d3fabf89d7 zcip: Add environment variable for overriding log functionality %!s(int64=10) %!d(string=hai) anos
login.c cad3fc743a libbb: introduce and use fputs_stdout %!s(int64=3) %!d(string=hai) anos
loop.c 15733cb48e mount: if we race with other loop mount, we forget to close loop dev %!s(int64=4) %!d(string=hai) anos
make_directory.c 1267770a9d fix compile failure in previous commit %!s(int64=6) %!d(string=hai) anos
makedev.c 975c714183 nicer looking ifdef in libbb/makedev.c %!s(int64=14) %!d(string=hai) anos
match_fstype.c ebe6d9d875 whitespace and comment format fixes, no code changes %!s(int64=7) %!d(string=hai) anos
messages.c cca7c611f2 which: fix TODO with NOFORK+malloc_failure misbehaving %!s(int64=6) %!d(string=hai) anos
missing_syscalls.c d3539be8f2 Remove stime() function calls %!s(int64=5) %!d(string=hai) anos
mode_string.c 6279aec03d libbb: clarify what bb_mode_string() generates %!s(int64=3) %!d(string=hai) anos
mtab.c 6937487be7 libbb: reduce the overhead of single parameter bb_error_msg() calls %!s(int64=5) %!d(string=hai) anos
nuke_str.c 4c201c00a3 whitespace fixes %!s(int64=6) %!d(string=hai) anos
obscure.c 3ed81cf052 unit-tests: implement the unit-testing framework %!s(int64=10) %!d(string=hai) anos
parse_config.c 22542eca18 getopt32: remove opt_complementary %!s(int64=7) %!d(string=hai) anos
parse_mode.c 4958c18134 libbb: code shrink bb_parse_mode %!s(int64=3) %!d(string=hai) anos
percent_decode.c ebe6d9d875 whitespace and comment format fixes, no code changes %!s(int64=7) %!d(string=hai) anos
perror_msg.c 0ef64bdb40 *: make GNU licensing statement forms more regular %!s(int64=14) %!d(string=hai) anos
perror_nomsg.c 6937487be7 libbb: reduce the overhead of single parameter bb_error_msg() calls %!s(int64=5) %!d(string=hai) anos
perror_nomsg_and_die.c 6937487be7 libbb: reduce the overhead of single parameter bb_error_msg() calls %!s(int64=5) %!d(string=hai) anos
pidfile.c 5059653882 do not duplicate CONFIG_PID_FILE_PATH and ".pid" strings %!s(int64=5) %!d(string=hai) anos
platform.c 33745b1fc8 ash: placate -Werror=format-security %!s(int64=3) %!d(string=hai) anos
print_flags.c 2ab9403119 whitespace and comment format fixes, no code changes %!s(int64=7) %!d(string=hai) anos
print_numbered_lines.c cad3fc743a libbb: introduce and use fputs_stdout %!s(int64=3) %!d(string=hai) anos
printable.c ebe6d9d875 whitespace and comment format fixes, no code changes %!s(int64=7) %!d(string=hai) anos
printable_string.c 349d72c19c unzip: use printable_string() for printing filenames %!s(int64=6) %!d(string=hai) anos
process_escape_sequence.c 9a2b6dcc2d libbb: do not misinterpret 0x10-0x19 chars in "\xNNN" too %!s(int64=6) %!d(string=hai) anos
procps.c 89a55972fd libbb/procps: smaller global data for username/groupname cache %!s(int64=3) %!d(string=hai) anos
progress.c 26602b85a3 wget: print the final newline only for non-tty output %!s(int64=6) %!d(string=hai) anos
ptr_to_globals.c b1c7a66ca6 libbb: extend "errno pointer" trick to other than __GLIBC__ %!s(int64=4) %!d(string=hai) anos
pw_encrypt.c 09aba8bac4 Fix missing "crypt.h" compilation error on the FreeBSD %!s(int64=3) %!d(string=hai) anos
pw_encrypt_des.c 00b5051cd2 libbb: code shrink in des encryption, in setup_salt() %!s(int64=3) %!d(string=hai) anos
pw_encrypt_md5.c 9b2a9f0210 fix assorted unused code and wrong format specs found by cppchekc (bug 6716) %!s(int64=11) %!d(string=hai) anos
pw_encrypt_sha.c 49ecee098d tls: add 2nd cipher_id, TLS_RSA_WITH_AES_128_CBC_SHA, so far it doesn't work %!s(int64=7) %!d(string=hai) anos
read.c dd46861282 libbb: Converted safe_read to safe_write format %!s(int64=5) %!d(string=hai) anos
read_key.c f39a71817e read_key(): placate "warning: shifting a negative signed value is undefined" %!s(int64=5) %!d(string=hai) anos
read_printf.c 6937487be7 libbb: reduce the overhead of single parameter bb_error_msg() calls %!s(int64=5) %!d(string=hai) anos
recursive_action.c 689d0650ab libbb: shrink recursive_action() by reducing memory pressure %!s(int64=4) %!d(string=hai) anos
remove_file.c 4a68697521 libbb: do not check closedir() in remove_file() %!s(int64=3) %!d(string=hai) anos
replace.c 7011eca83a replace: count_strstr - Handle an edge case where sub is empty %!s(int64=5) %!d(string=hai) anos
rtc.c 251e08ffa6 move ADJTIME_PATH define to header files %!s(int64=4) %!d(string=hai) anos
run_shell.c f4f6e5144b libbb: exec_login_shell() - new function %!s(int64=4) %!d(string=hai) anos
safe_gethostname.c ebe6d9d875 whitespace and comment format fixes, no code changes %!s(int64=7) %!d(string=hai) anos
safe_poll.c 6937487be7 libbb: reduce the overhead of single parameter bb_error_msg() calls %!s(int64=5) %!d(string=hai) anos
safe_strncpy.c ebe6d9d875 whitespace and comment format fixes, no code changes %!s(int64=7) %!d(string=hai) anos
safe_write.c ebe6d9d875 whitespace and comment format fixes, no code changes %!s(int64=7) %!d(string=hai) anos
securetty.c 44c0ab4102 libbb: fix "error: redefinition of 'is_tty_secure'" %!s(int64=7) %!d(string=hai) anos
selinux_common.c 6937487be7 libbb: reduce the overhead of single parameter bb_error_msg() calls %!s(int64=5) %!d(string=hai) anos
setup_environment.c ebe6d9d875 whitespace and comment format fixes, no code changes %!s(int64=7) %!d(string=hai) anos
signals.c 5dadd497ff runsv: robustify signal handling - SIGTERM to child between vfork and exec could mess things up %!s(int64=3) %!d(string=hai) anos
simplify_path.c fb132e4737 whitespace cleanup %!s(int64=14) %!d(string=hai) anos
single_argv.c c13ee8c0f3 basename,dirname,freeramdisk,rx,raidautorun,runsv,chvt: skip "--" argument %!s(int64=13) %!d(string=hai) anos
skip_whitespace.c cc222747ae libbb: Use return value from is_prefixed_with() %!s(int64=6) %!d(string=hai) anos
speed_table.c 965b795b87 decrease paddign: gcc-9.3.1 slaps 32-byte alignment on arrays willy-nilly %!s(int64=4) %!d(string=hai) anos
str_tolower.c 0ef64bdb40 *: make GNU licensing statement forms more regular %!s(int64=14) %!d(string=hai) anos
strrstr.c ebe6d9d875 whitespace and comment format fixes, no code changes %!s(int64=7) %!d(string=hai) anos
sysconf.c ca9c4653a9 libbb: add sanity check in bb_arg_max() %!s(int64=10) %!d(string=hai) anos
time.c f27a6a94a7 libbb: code shrink parse_datestr (again) %!s(int64=3) %!d(string=hai) anos
trim.c ebe6d9d875 whitespace and comment format fixes, no code changes %!s(int64=7) %!d(string=hai) anos
u_signal_names.c 656ca7bdd9 libbb/u_signal_names.c: don't check errno after bb_strtou %!s(int64=6) %!d(string=hai) anos
ubi.c 798b94518e ubi tools: ubiupdatevol supports "-" input and actually respects -s SIZE %!s(int64=7) %!d(string=hai) anos
udp_io.c 518fb3ba19 udp_io, traceroute: Standardise IPv6 PKTINFO handling to be portable %!s(int64=7) %!d(string=hai) anos
unicode.c 2fba2f5bb9 unicode: relax array alignment for tables %!s(int64=4) %!d(string=hai) anos
update_passwd.c 808d93c0ec update_passwd: fix context variable %!s(int64=3) %!d(string=hai) anos
utmp.c 86a7f18f21 *: Switch to POSIX utmpx API %!s(int64=9) %!d(string=hai) anos
uuencode.c ae04ce82cf base32/64: "truncated base64 input" -> "truncated input" %!s(int64=4) %!d(string=hai) anos
verror_msg.c 6937487be7 libbb: reduce the overhead of single parameter bb_error_msg() calls %!s(int64=5) %!d(string=hai) anos
vfork_daemon_rexec.c 5acf5e1f87 shell: fix script's comm field if ENABLE_FEATURE_PREFER_APPLETS=y %!s(int64=3) %!d(string=hai) anos
warn_ignoring_args.c 6937487be7 libbb: reduce the overhead of single parameter bb_error_msg() calls %!s(int64=5) %!d(string=hai) anos
wfopen.c 899ae5337a libbb: new function bb_die_memory_exhausted %!s(int64=6) %!d(string=hai) anos
wfopen_input.c ebe6d9d875 whitespace and comment format fixes, no code changes %!s(int64=7) %!d(string=hai) anos
write.c ebe6d9d875 whitespace and comment format fixes, no code changes %!s(int64=7) %!d(string=hai) anos
xatonum.c 965b795b87 decrease paddign: gcc-9.3.1 slaps 32-byte alignment on arrays willy-nilly %!s(int64=4) %!d(string=hai) anos
xatonum_template.c 6830ade6aa whitespace fixes. no code changes %!s(int64=12) %!d(string=hai) anos
xconnect.c c00bcf2d2c libbb: reuse "bad port" error message string %!s(int64=3) %!d(string=hai) anos
xfunc_die.c ebe6d9d875 whitespace and comment format fixes, no code changes %!s(int64=7) %!d(string=hai) anos
xfuncs.c df0383c624 libbb: correct the name of is_TERM_dumb() %!s(int64=3) %!d(string=hai) anos
xfuncs_printf.c fe2d8065e3 fix gcc-11.0 warnings %!s(int64=3) %!d(string=hai) anos
xgetcwd.c 6937487be7 libbb: reduce the overhead of single parameter bb_error_msg() calls %!s(int64=5) %!d(string=hai) anos
xgethostbyname.c 6937487be7 libbb: reduce the overhead of single parameter bb_error_msg() calls %!s(int64=5) %!d(string=hai) anos
xreadlink.c 94eb1c4dc6 libbb: better coreutils compatibility for realpath %!s(int64=3) %!d(string=hai) anos
xrealloc_vector.c ebe6d9d875 whitespace and comment format fixes, no code changes %!s(int64=7) %!d(string=hai) anos
xregcomp.c ebe6d9d875 whitespace and comment format fixes, no code changes %!s(int64=7) %!d(string=hai) anos

README

Please see the LICENSE file for copyright information (GPLv2)

libbb is BusyBox's utility library. All of this stuff used to be stuffed into
a single file named utility.c. When I split utility.c to create libbb, some of
the very oldest stuff ended up without their original copyright and licensing
information (which is now lost in the mists of time). If you see something
that you wrote that is mis-attributed, do let me know so we can fix that up.

Erik Andersen