Denys Vlasenko ca26f1c238 hush: fix a bug with "stdio rewind on exit". Closes 9186 %!s(int64=8) %!d(string=hai) anos
..
Config.src 30a8652fbf sha3: make size/speed optimization decision configurable %!s(int64=12) %!d(string=hai) anos
Kbuild.src 11775edbfc randomconfig fixes %!s(int64=10) %!d(string=hai) anos
README ba2dcccd79 *: trailing empty lines removed %!s(int64=14) %!d(string=hai) anos
appletlib.c ca26f1c238 hush: fix a bug with "stdio rewind on exit". Closes 9186 %!s(int64=8) %!d(string=hai) anos
ask_confirmation.c 0ef64bdb40 *: make GNU licensing statement forms more regular %!s(int64=14) %!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 02859aaeb2 use auto_string() where appropriate to kill a few statics %!s(int64=9) %!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_do_delay.c 0ef64bdb40 *: make GNU licensing statement forms more regular %!s(int64=14) %!d(string=hai) anos
bb_pwd.c 1da09cfacf libpwdgrp: rewritten to use malloced implementation %!s(int64=10) %!d(string=hai) anos
bb_qsort.c 0ef64bdb40 *: make GNU licensing statement forms more regular %!s(int64=14) %!d(string=hai) anos
bb_strtod.c 0ef64bdb40 *: make GNU licensing statement forms more regular %!s(int64=14) %!d(string=hai) anos
bb_strtonum.c ba65872950 libbb/bb_strtonum: always set end ptr, even on error return %!s(int64=13) %!d(string=hai) anos
bbunit.c 718e228adc unit-tests: remove code depending on WANT_TIMING %!s(int64=9) %!d(string=hai) anos
change_identity.c a818777d42 libbb: Enable support for !CONFIG_MULTIUSER %!s(int64=9) %!d(string=hai) anos
chomp.c 0ef64bdb40 *: make GNU licensing statement forms more regular %!s(int64=14) %!d(string=hai) anos
compare_string_array.c f085344d5c libbb: another unit test for is_suffixed_with %!s(int64=9) %!d(string=hai) anos
concat_path_file.c 0ef64bdb40 *: make GNU licensing statement forms more regular %!s(int64=14) %!d(string=hai) anos
concat_subpath_file.c 0ef64bdb40 *: make GNU licensing statement forms more regular %!s(int64=14) %!d(string=hai) anos
copy_file.c 17f8418ea7 Add conditional support for -v / --verbose %!s(int64=10) %!d(string=hai) anos
copyfd.c 8d75d794ea libbb: use sendfile() to copy data between file descriptors %!s(int64=10) %!d(string=hai) anos
correct_password.c feac9b607d ftpd: add optional support for authentication %!s(int64=10) %!d(string=hai) anos
crc32.c b7c9fb27cb whitespace fixes %!s(int64=14) %!d(string=hai) anos
default_error_retval.c 7aa63042d0 libbb: xfunc_error_retval can be a byte %!s(int64=14) %!d(string=hai) anos
device_open.c 0ef64bdb40 *: make GNU licensing statement forms more regular %!s(int64=14) %!d(string=hai) anos
die_if_bad_username.c 7485086f1e die_if_bad_username: tighten up a bit %!s(int64=13) %!d(string=hai) anos
dump.c ef6747e290 hexdump: don't unconditionally limit the usable address range %!s(int64=11) %!d(string=hai) anos
endofname.c 1961aea305 move endofname() to libbb %!s(int64=12) %!d(string=hai) anos
executable.c e765b5ac34 libbb: rename execable -> executable. No code changes %!s(int64=10) %!d(string=hai) anos
fclose_nonstdin.c 259b3c047a sed: open input files sequentially to avoid EMFILE %!s(int64=11) %!d(string=hai) anos
fflush_stdout_and_exit.c 550bf5b4a4 remove global "jmp_buf die_jmp" from !FEATURE_PREFER_APPLETS builds %!s(int64=9) %!d(string=hai) anos
fgets_str.c 0ef64bdb40 *: make GNU licensing statement forms more regular %!s(int64=14) %!d(string=hai) anos
find_mount_point.c ce4f39ac7c find_mount_point: fix find_mount_point for char devices %!s(int64=13) %!d(string=hai) anos
find_pid_by_name.c 0ef64bdb40 *: make GNU licensing statement forms more regular %!s(int64=14) %!d(string=hai) anos
find_root_device.c 2272129a93 plug a DIR* leak on error path %!s(int64=14) %!d(string=hai) anos
full_write.c e4dcba1c10 *: whitespace fixes %!s(int64=14) %!d(string=hai) anos
get_console.c 0ef64bdb40 *: make GNU licensing statement forms more regular %!s(int64=14) %!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 a1a448347e libbb: split bb_get_chunk_from_file and bb_get_chunk_with_continuation %!s(int64=13) %!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 0ef64bdb40 *: make GNU licensing statement forms more regular %!s(int64=14) %!d(string=hai) anos
getopt32.c b47b3ce1bd randomconfig fixes %!s(int64=13) %!d(string=hai) anos
getpty.c 438b4ac286 script: make it work even if fd 0 is closed %!s(int64=10) %!d(string=hai) anos
hash_md5_sha.c 305958dbd4 md5sum: code shrink %!s(int64=9) %!d(string=hai) anos
hash_md5prime.c 522041ee7b regularize options which control size/speed trade %!s(int64=13) %!d(string=hai) anos
herror_msg.c 0ef64bdb40 *: make GNU licensing statement forms more regular %!s(int64=14) %!d(string=hai) anos
human_readable.c 02859aaeb2 use auto_string() where appropriate to kill a few statics %!s(int64=9) %!d(string=hai) anos
in_ether.c 97f2f7ca7f Removes stray empty line from code %!s(int64=9) %!d(string=hai) anos
inet_cksum.c 0d0260fd1e inet_cksum: big-endian fix %!s(int64=13) %!d(string=hai) anos
inet_common.c 8e74adab01 libbb: make INET[6]_rresolve use sockaddr2{host,dotted}_noport %!s(int64=10) %!d(string=hai) anos
info_msg.c 0ef64bdb40 *: make GNU licensing statement forms more regular %!s(int64=14) %!d(string=hai) anos
inode_hash.c 83bc4332e7 du, copy_file: fix file matching on cramfs. Closes 5456 %!s(int64=10) %!d(string=hai) anos
isdirectory.c f282c6b657 libbb: remove is_directory's argument which is always NULL %!s(int64=13) %!d(string=hai) anos
kernel_version.c 556ac3633c get_linux_version_code: don't fail on Linux version strints like "3.0-foo" %!s(int64=12) %!d(string=hai) anos
last_char_is.c 0ef64bdb40 *: make GNU licensing statement forms more regular %!s(int64=14) %!d(string=hai) anos
lineedit.c 8dff01d06a libbb: introduce and use is_prefixed_with() %!s(int64=9) %!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 9be4702a30 main: free suid_config list after use %!s(int64=13) %!d(string=hai) anos
logenv.c d3fabf89d7 zcip: Add environment variable for overriding log functionality %!s(int64=10) %!d(string=hai) anos
login.c 8f2cb7ab26 libbb: introduce and use strftime_[YYYYMMDD]HHMMSS() %!s(int64=11) %!d(string=hai) anos
loop.c 782ee2aa0e libbb/loop: don't try to re-use existing loop device %!s(int64=10) %!d(string=hai) anos
make_directory.c 17f8418ea7 Add conditional support for -v / --verbose %!s(int64=10) %!d(string=hai) anos
makedev.c 975c714183 nicer looking ifdef in libbb/makedev.c %!s(int64=14) %!d(string=hai) anos
match_fstype.c 8dff01d06a libbb: introduce and use is_prefixed_with() %!s(int64=9) %!d(string=hai) anos
messages.c c52cbea2bb libbb: add setsockopt_foo helpers %!s(int64=9) %!d(string=hai) anos
missing_syscalls.c 93b98ff572 Bionic lacks tcdrain; provide a workaround %!s(int64=9) %!d(string=hai) anos
mode_string.c 0ef64bdb40 *: make GNU licensing statement forms more regular %!s(int64=14) %!d(string=hai) anos
mtab.c 0ef64bdb40 *: make GNU licensing statement forms more regular %!s(int64=14) %!d(string=hai) anos
nuke_str.c 198b02f7dd fix failures found by randomconfig builds %!s(int64=11) %!d(string=hai) anos
obscure.c 3ed81cf052 unit-tests: implement the unit-testing framework %!s(int64=10) %!d(string=hai) anos
parse_config.c 499597d6ef mdev: do not treat non-leading '#' chars as start of comment. Closes 4676 %!s(int64=13) %!d(string=hai) anos
parse_mode.c 5711a2a4ad libbb: more compact API for bb_parse_mode() %!s(int64=9) %!d(string=hai) anos
percent_decode.c dd1061b6a7 wget: URL-decode user:password before base64-encoding it into auth hdr. Closes 3625. %!s(int64=13) %!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 0ef64bdb40 *: make GNU licensing statement forms more regular %!s(int64=14) %!d(string=hai) anos
perror_nomsg_and_die.c 0ef64bdb40 *: make GNU licensing statement forms more regular %!s(int64=14) %!d(string=hai) anos
pidfile.c 0ef64bdb40 *: make GNU licensing statement forms more regular %!s(int64=14) %!d(string=hai) anos
platform.c cee59053dc Bionic lacks ttyname_r; provide a workaround %!s(int64=9) %!d(string=hai) anos
print_flags.c 0ef64bdb40 *: make GNU licensing statement forms more regular %!s(int64=14) %!d(string=hai) anos
printable.c 79c618c411 Refactor catv. Move visible() from stty to libbb. %!s(int64=11) %!d(string=hai) anos
printable_string.c e52da5570e libbb: auto_string() for efficient handling of temporary malloced stirngs %!s(int64=9) %!d(string=hai) anos
process_escape_sequence.c a2d27a1919 libbb/process_escape_sequence.c: fix recently broken handling of \\ %!s(int64=14) %!d(string=hai) anos
procps.c d840c5d139 libbb: add a function to make a copy of a region of memory %!s(int64=9) %!d(string=hai) anos
progress.c 8345b2bd5e libbb: make warning go away %!s(int64=13) %!d(string=hai) anos
ptr_to_globals.c 0ef64bdb40 *: make GNU licensing statement forms more regular %!s(int64=14) %!d(string=hai) anos
pw_encrypt.c 8ed9672660 libbb: don't die if crypt() returns NULL %!s(int64=11) %!d(string=hai) anos
pw_encrypt_des.c 44d1989997 des encrypt: fix goof with NUL byte added at the end as '.' %!s(int64=15) %!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 5dcc6606cb libbb/pw_encrypt_sha: forgot to move &ctx to 1st param here in sha hash rework %!s(int64=14) %!d(string=hai) anos
read.c 0ef64bdb40 *: make GNU licensing statement forms more regular %!s(int64=14) %!d(string=hai) anos
read_key.c 0ccae4d8b3 Add comments in keyboard escape sequences table %!s(int64=12) %!d(string=hai) anos
read_printf.c 61d6ae244a libbb: remove unnecessary argument to nonblock_immune_read %!s(int64=9) %!d(string=hai) anos
recursive_action.c 0ef64bdb40 *: make GNU licensing statement forms more regular %!s(int64=14) %!d(string=hai) anos
remove_file.c 17f8418ea7 Add conditional support for -v / --verbose %!s(int64=10) %!d(string=hai) anos
replace.c 6f068904dc xargs: add support for -I and -i. Closes 493 %!s(int64=10) %!d(string=hai) anos
rtc.c 8dff01d06a libbb: introduce and use is_prefixed_with() %!s(int64=9) %!d(string=hai) anos
run_shell.c a73b87e934 *: s/"/bin/sh"/DEFAULT_SHELL, run_shell() API fix, remove unneeded strdup %!s(int64=14) %!d(string=hai) anos
safe_gethostname.c 576b1d3c41 sendmail: use host rather than NIS domain name for HELO %!s(int64=12) %!d(string=hai) anos
safe_poll.c 0ef64bdb40 *: make GNU licensing statement forms more regular %!s(int64=14) %!d(string=hai) anos
safe_strncpy.c 0016bcee37 klogd: do not log partial lines %!s(int64=14) %!d(string=hai) anos
safe_write.c 0ef64bdb40 *: make GNU licensing statement forms more regular %!s(int64=14) %!d(string=hai) anos
selinux_common.c 60cb48ca50 whitespace cleanup. no code changes %!s(int64=12) %!d(string=hai) anos
setup_environment.c 70fc8c17e2 su: do not change to home dir unless -l %!s(int64=12) %!d(string=hai) anos
signals.c c4f2d997a4 libbb: correctness/size tweaks in signal-related helpers %!s(int64=12) %!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 8dff01d06a libbb: introduce and use is_prefixed_with() %!s(int64=9) %!d(string=hai) anos
speed_table.c 96f92a1afa libbb: FreeBSD fix for B<num> baud rate constants not fitting into a short. %!s(int64=11) %!d(string=hai) anos
str_tolower.c 0ef64bdb40 *: make GNU licensing statement forms more regular %!s(int64=14) %!d(string=hai) anos
strrstr.c 3ed81cf052 unit-tests: implement the unit-testing framework %!s(int64=10) %!d(string=hai) anos
sysconf.c ca9c4653a9 libbb: add sanity check in bb_arg_max() %!s(int64=10) %!d(string=hai) anos
systemd_support.c 0b8a7723c7 typo fix %!s(int64=14) %!d(string=hai) anos
time.c 3b394781b5 libbb: fix parsing of "10101010" date/time form %!s(int64=11) %!d(string=hai) anos
trim.c 0ef64bdb40 *: make GNU licensing statement forms more regular %!s(int64=14) %!d(string=hai) anos
u_signal_names.c 327d2885ec kill[all[5]],pkill: make signal list show signal numbers, and show RTMIN/MAX %!s(int64=14) %!d(string=hai) anos
udp_io.c c52cbea2bb libbb: add setsockopt_foo helpers %!s(int64=9) %!d(string=hai) anos
unicode.c 7a18043a96 lineedit: improve Unicode handling (still buggy though) %!s(int64=11) %!d(string=hai) anos
update_passwd.c 8dff01d06a libbb: introduce and use is_prefixed_with() %!s(int64=9) %!d(string=hai) anos
utmp.c 86a7f18f21 *: Switch to POSIX utmpx API %!s(int64=9) %!d(string=hai) anos
uuencode.c e6094d95b5 libbb: shrink base64 decoding a bit %!s(int64=13) %!d(string=hai) anos
vdprintf.c ec447c7f01 libbb.h: remove unused defines %!s(int64=13) %!d(string=hai) anos
verror_msg.c fe33683c8b Fix compile failures %!s(int64=10) %!d(string=hai) anos
vfork_daemon_rexec.c 550bf5b4a4 remove global "jmp_buf die_jmp" from !FEATURE_PREFER_APPLETS builds %!s(int64=9) %!d(string=hai) anos
warn_ignoring_args.c 0ef64bdb40 *: make GNU licensing statement forms more regular %!s(int64=14) %!d(string=hai) anos
wfopen.c 0ef64bdb40 *: make GNU licensing statement forms more regular %!s(int64=14) %!d(string=hai) anos
wfopen_input.c e4dcba1c10 *: whitespace fixes %!s(int64=14) %!d(string=hai) anos
write.c 0ef64bdb40 *: make GNU licensing statement forms more regular %!s(int64=14) %!d(string=hai) anos
xatonum.c 911db16229 truncate: new applet %!s(int64=9) %!d(string=hai) anos
xatonum_template.c 6830ade6aa whitespace fixes. no code changes %!s(int64=12) %!d(string=hai) anos
xconnect.c c52cbea2bb libbb: add setsockopt_foo helpers %!s(int64=9) %!d(string=hai) anos
xfunc_die.c 550bf5b4a4 remove global "jmp_buf die_jmp" from !FEATURE_PREFER_APPLETS builds %!s(int64=9) %!d(string=hai) anos
xfuncs.c 97f2f7ca7f Removes stray empty line from code %!s(int64=9) %!d(string=hai) anos
xfuncs_printf.c d840c5d139 libbb: add a function to make a copy of a region of memory %!s(int64=9) %!d(string=hai) anos
xgetcwd.c e4dcba1c10 *: whitespace fixes %!s(int64=14) %!d(string=hai) anos
xgethostbyname.c 0ef64bdb40 *: make GNU licensing statement forms more regular %!s(int64=14) %!d(string=hai) anos
xreadlink.c c50493854a libbb: fix a bad check for uclibc >= 0.9.31 %!s(int64=10) %!d(string=hai) anos
xrealloc_vector.c 0ef64bdb40 *: make GNU licensing statement forms more regular %!s(int64=14) %!d(string=hai) anos
xregcomp.c 0ef64bdb40 *: make GNU licensing statement forms more regular %!s(int64=14) %!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