busybox/libbb
Denys Vlasenko bc9bbeb2b8 libarchive: do not extract unsafe symlinks unless $EXTRACT_UNSAFE_SYMLINKS=1
function                                             old     new   delta
unsafe_symlink_target                                  -     147    +147
unzip_main                                          2711    2732     +21
copy_file                                           1657    1678     +21
tar_main                                             999     971     -28
data_extract_all                                    1038     984     -54
------------------------------------------------------------------------------
(add/remove: 2/0 grow/shrink: 2/2 up/down: 189/-82)           Total: 107 bytes

Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2017-08-10 11:52:42 +02:00
..
appletlib.c libbb: simplify NOFORK/NOEXEC defines, move set_task_comm to libbb 2017-08-08 14:09:23 +02:00
ask_confirmation.c
auto_string.c libbb: auto_string() for efficient handling of temporary malloced stirngs 2015-10-09 17:59:56 +02:00
bb_askpass.c use auto_string() where appropriate to kill a few statics 2015-10-09 18:16:40 +02:00
bb_bswap_64.c
bb_cat.c fix errors found with make_single_applets.sh 2017-04-12 15:48:19 +02:00
bb_do_delay.c
bb_getgroups.c libbb: new function bb_getgroups() - allocating wrapper around getgroups() 2017-07-04 18:56:45 +02:00
bb_pwd.c new NOFORKs: pwdx,kill[all5],ttysize,realpath,readlink NOEXECs: date,resize 2017-08-03 19:03:32 +02:00
bb_qsort.c
bb_strtod.c
bb_strtonum.c
bbunit.c unit-tests: remove code depending on WANT_TIMING 2015-08-17 17:01:49 +02:00
change_identity.c do not use `a' quoting style in comments 2017-08-02 14:26:33 +02:00
chomp.c
common_bufsiz.c config: deindent all help texts 2017-07-21 09:50:55 +02:00
compare_string_array.c libbb: another unit test for is_suffixed_with 2015-09-15 23:38:01 +02:00
concat_path_file.c
concat_subpath_file.c
Config.src config: trim/improve item names and help texts. 2017-07-27 02:59:13 +02:00
copy_file.c libarchive: do not extract unsafe symlinks unless $EXTRACT_UNSAFE_SYMLINKS=1 2017-08-10 11:52:42 +02:00
copyfd.c copyfd: guard use of munmap() with #if (windows builds need this) 2017-07-15 11:44:13 +02:00
correct_password.c do not use `a' quoting style in comments 2017-08-02 14:26:33 +02:00
crc32.c Replace int -> uint to avoid signed integer overflow 2017-02-04 23:10:22 +01:00
default_error_retval.c
device_open.c
die_if_bad_username.c
dump.c do not use `a' quoting style in comments 2017-08-02 14:26:33 +02:00
endofname.c
executable.c su: expand help; simplify passing of -c CMD to run_shell() 2016-11-03 22:13:08 +01:00
fclose_nonstdin.c sed: open input files sequentially to avoid EMFILE 2013-11-28 03:14:16 +01:00
fflush_stdout_and_exit.c remove global "jmp_buf die_jmp" from !FEATURE_PREFER_APPLETS builds 2015-10-09 16:42:57 +02:00
fgets_str.c
find_mount_point.c
find_pid_by_name.c
find_root_device.c
full_write.c
get_console.c kbd_mode: try harder to find console device if -C TTY is not given 2017-08-06 12:17:46 +02:00
get_cpu_count.c
get_last_path_component.c
get_line_from_file.c
get_shell_name.c
get_volsize.c
getopt32.c getopt32: remove opt_complementary 2017-08-08 21:55:02 +02:00
getopt_allopts.c getopt32: factor out code to treat all args as options 2017-08-04 16:33:23 +02:00
getpty.c script: make it work even if fd 0 is closed 2014-03-16 12:34:53 +01:00
hash_md5_sha.c tls: add 2nd cipher_id, TLS_RSA_WITH_AES_128_CBC_SHA, so far it doesn't work 2017-01-24 16:00:54 +01:00
hash_md5prime.c tls: add 2nd cipher_id, TLS_RSA_WITH_AES_128_CBC_SHA, so far it doesn't work 2017-01-24 16:00:54 +01:00
herror_msg.c
human_readable.c du: extra compat: with -k and -m, round sizes up 2015-10-15 21:33:34 +02:00
in_ether.c Removes stray empty line from code 2015-07-13 03:25:46 +02:00
inet_cksum.c
inet_common.c libbb: hide getnetbyaddr() inside "#if ENABLE_FEATURE_ETC_NETWORKS" block 2017-07-14 20:17:17 +02:00
inode_hash.c du, copy_file: fix file matching on cramfs. Closes 5456 2014-02-25 15:27:58 +01:00
isdirectory.c
isqrt.c libbb: move isqrt from factor, use it in diff too 2017-04-11 07:34:56 +02:00
Kbuild.src getopt32: factor out code to treat all args as options 2017-08-04 16:33:23 +02:00
kernel_version.c tidy up strtok use 2015-10-23 18:43:16 +02:00
last_char_is.c
lineedit_ptr_hack.c
lineedit.c line editing: make read_line_input() not take timeout param 2017-08-02 17:27:28 +02:00
llist.c
logenv.c zcip: Add environment variable for overriding log functionality 2014-11-04 12:19:04 +01:00
login.c libbb: handle \S in /etc/issue 2016-09-24 23:50:43 +02:00
loop.c mount: create loop devices with LO_FLAGS_AUTOCLEAR flag 2017-03-16 16:55:47 +01:00
make_directory.c fix musl problem with dirname, now for all users of bb_make_directory() 2016-12-04 10:42:07 +01:00
makedev.c
match_fstype.c libbb: match_fstype() is unreadable in the extreme, fixing it 2017-01-30 00:45:05 +01:00
messages.c Change BB_EXTRA_VERSION: now it needs to contain any spaces/parenthesis 2017-07-04 16:01:12 +02:00
missing_syscalls.c Resolve linker issues with Android API 21 (dprintf, tcdrain) 2015-12-17 16:42:41 +01:00
mode_string.c *: slap on a few ALIGN1/2s where appropriate 2016-04-22 18:09:21 +02:00
mtab.c
nuke_str.c fix failures found by randomconfig builds 2013-12-31 23:22:36 +01:00
obscure.c unit-tests: implement the unit-testing framework 2014-06-22 16:30:41 +02:00
parse_config.c getopt32: remove opt_complementary 2017-08-08 21:55:02 +02:00
parse_mode.c libbb: more compact API for bb_parse_mode() 2015-10-07 17:55:33 +02:00
percent_decode.c
perror_msg.c
perror_nomsg_and_die.c
perror_nomsg.c
pidfile.c
platform.c Bionic lacks ttyname_r; provide a workaround 2015-04-25 21:32:48 +02:00
print_flags.c
print_numbered_lines.c cat: fix "cat -An" ignoring -n; make numbering go througn all files 2017-07-14 10:47:18 +02:00
printable_string.c libbb: auto_string() for efficient handling of temporary malloced stirngs 2015-10-09 17:59:56 +02:00
printable.c
process_escape_sequence.c
procps.c ps: avoid -o stat to contain spaces. Closes 9631 2017-02-02 13:04:30 +01:00
progress.c do not use `a' quoting style in comments 2017-08-02 14:26:33 +02:00
ptr_to_globals.c
pw_encrypt_des.c do not use `a' quoting style in comments 2017-08-02 14:26:33 +02:00
pw_encrypt_md5.c fix assorted unused code and wrong format specs found by cppchekc (bug 6716) 2013-11-29 16:43:33 +01:00
pw_encrypt_sha.c tls: add 2nd cipher_id, TLS_RSA_WITH_AES_128_CBC_SHA, so far it doesn't work 2017-01-24 16:00:54 +01:00
pw_encrypt.c Replace int -> uint to avoid signed integer overflow 2017-02-04 23:10:22 +01:00
read_key.c lineedit: fix handling of repeating Alt-b, Alt-f, Alt-d, Alt-Backspace 2016-11-24 15:04:00 +01:00
read_printf.c libbb: remove unnecessary argument to nonblock_immune_read 2015-04-20 13:41:32 +02:00
read.c
README
recursive_action.c modprobe: do not descend into /etc/modprobe.d/DIR/. Closes 8686 2017-04-06 15:23:26 +02:00
remove_file.c Add conditional support for -v / --verbose 2014-05-19 16:23:50 +02:00
replace.c xargs: add support for -I and -i. Closes 493 2014-02-27 11:17:06 +01:00
rtc.c libbb: introduce and use is_prefixed_with() 2015-03-12 17:48:34 +01:00
run_shell.c do not use `a' quoting style in comments 2017-08-02 14:26:33 +02:00
safe_gethostname.c
safe_poll.c
safe_strncpy.c
safe_write.c libbb: safe_write should not return EINTR 2017-07-14 14:22:09 +02:00
securetty.c libbb: fix "error: redefinition of 'is_tty_secure'" 2017-04-13 17:55:05 +02:00
selinux_common.c
setup_environment.c do not use `a' quoting style in comments 2017-08-02 14:26:33 +02:00
signals.c
simplify_path.c
single_argv.c
skip_whitespace.c libbb: introduce and use is_prefixed_with() 2015-03-12 17:48:34 +01:00
speed_table.c libbb/speed_table.c: expand comments 2016-09-26 14:37:12 +02:00
str_tolower.c
strrstr.c unit-tests: implement the unit-testing framework 2014-06-22 16:30:41 +02:00
sysconf.c libbb: add sanity check in bb_arg_max() 2014-12-24 01:46:29 +01:00
time.c libbb: fix time parsing of [[CC]YY]MMDDhhmm[.SS]. Closes 8951 2016-05-31 02:50:54 +02:00
trim.c libbb: make trim() return pointer to terminating NUL 2017-08-05 17:50:35 +02:00
u_signal_names.c ash: allow "trap NUM [SIG]..." syntax 2017-07-25 20:06:17 +02:00
ubi.c ubi tools: ubiupdatevol supports "-" input and actually respects -s SIZE 2017-08-07 16:00:25 +02:00
udp_io.c libbb:/send_to_from: do not require that "to" should have the same AF. Closes 9146 2016-09-15 13:20:51 +02:00
unicode.c lineedit: improve Unicode handling (still buggy though) 2013-08-19 16:44:05 +02:00
update_passwd.c fix breakage found by mass one-applet builds 2016-12-23 02:42:26 +01:00
utmp.c *: Switch to POSIX utmpx API 2015-04-02 23:03:46 +02:00
uuencode.c
verror_msg.c libbb: speed up error_msg functions 2016-04-03 16:55:03 +02:00
vfork_daemon_rexec.c getopt32: remove opt_complementary 2017-08-08 21:55:02 +02:00
warn_ignoring_args.c
wfopen_input.c
wfopen.c
write.c
xatonum_template.c
xatonum.c df: implement -B n<suff> and -B <suff> formats of -B option 2016-12-12 19:56:31 +01:00
xconnect.c libbb: make xmalloc_sockaddr2dotted use NI_NUMERICSCOPE 2016-09-26 19:53:04 +02:00
xfunc_die.c remove global "jmp_buf die_jmp" from !FEATURE_PREFER_APPLETS builds 2015-10-09 16:42:57 +02:00
xfuncs_printf.c libbb: avoid malloc/free in bb_unsetenv() 2017-07-22 02:15:17 +02:00
xfuncs.c slattach: code shrink, better --help text 2017-08-06 17:14:09 +02:00
xgetcwd.c
xgethostbyname.c
xreadlink.c libbb: fix a bad check for uclibc >= 0.9.31 2014-03-16 20:53:40 +01:00
xrealloc_vector.c
xregcomp.c

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
	<andersen@codepoet.org>