busybox/libbb
Denys Vlasenko dd5a40246b getopt32: move support for "always treat first arg as option" to users (tar/ar)
Now getopt() never leaks (and never performs) any xmalloc's.

function                                             old     new   delta
ar_main                                              522     556     +34
tar_main                                             986    1014     +28
getopt32                                            1458    1350    -108
------------------------------------------------------------------------------
(add/remove: 0/0 grow/shrink: 2/1 up/down: 62/-108)           Total: -46 bytes

Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2017-08-04 16:46:17 +02:00
..
appletlib.c standalone shell / prefer_applets: fix "exe" in comm fields 2017-07-29 02:19:01 +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 cp: fix -i for POSIX mode. Closes 9106 2016-08-13 23:23:48 +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 move endofname() to libbb 2013-02-26 00:36:53 +01:00
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
get_cpu_count.c
get_last_path_component.c
get_line_from_file.c
get_shell_name.c
get_volsize.c
getopt32.c getopt32: move support for "always treat first arg as option" to users (tar/ar) 2017-08-04 16:46:17 +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 config: deindent all help texts 2017-07-21 09:50:55 +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 Refactor catv. Move visible() from stty to libbb. 2013-07-30 06:29:42 +02:00
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 whitespace cleanup. no code changes 2013-01-14 15:57:44 +01:00
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
u_signal_names.c ash: allow "trap NUM [SIG]..." syntax 2017-07-25 20:06:17 +02:00
ubi.c whitespace and namespace cleanups 2016-04-03 22:24:51 +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 nofork: fix a bug uncovered by hush testsuite (forgotten fflush) 2017-08-03 19:52:47 +02:00
warn_ignoring_args.c
wfopen_input.c
wfopen.c
write.c
xatonum_template.c whitespace fixes. no code changes 2013-01-15 13:58:01 +01:00
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 libbb: consolidate the code to set termios unbuffered mode 2017-01-11 16:17:59 +01: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>