ndk-busybox/libbb
Denis Vlasenko 5df955fce2 Do not fail password check if shadow password does not exist -
fall back to ordinary one

Reduced usage of functions returning datain static buffers.
(mostly passwd/group/shadow related):

function                                             old     new   delta
correct_password                                     143     193     +50
sulogin_main                                         490     533     +43
adduser_main                                         732     774     +42
passwd_main                                         1875    1915     +40
addgroup_main                                        330     365     +35
bb_internal_getspnam                                  38       -     -38
bb_internal_fgetpwent                                 38       -     -38
bb_internal_fgetgrent                                 38       -     -38
static.resultbuf                                     168      88     -80
static.buffer                                       1872    1104    -768
------------------------------------------------------------------------------
(add/remove: 0/3 grow/shrink: 5/2 up/down: 210/-962)         Total: -752 bytes
2007-03-13 13:01:14 +00:00
..
ask_confirmation.c Replace current verbose GPL stuff in libbb/*.c with one-line GPL boilerplate. 2006-07-10 11:41:19 +00:00
bb_askpass.c passwd: rework: 2006-11-30 16:41:15 +00:00
bb_do_delay.c - remove emacs layout block as suggested by Robert P.J. Day 2006-05-19 19:29:19 +00:00
bb_pwd.c bb_xget[pw/gr]nam were horribly misnamed - fixed. 2006-12-28 05:44:47 +00:00
bb_strtonum.c merge post-1.3.0 fixes 2006-12-26 18:17:42 +00:00
change_identity.c login: re-enable Ctrl-^C before execing shell. 2006-10-31 17:34:44 +00:00
chomp.c wget: fix error message. 2006-11-10 23:25:53 +00:00
compare_string_array.c rename: compare_string_array -> index_in_str_array 2006-11-05 18:05:09 +00:00
concat_path_file.c ls: cleanup part 1 2006-10-28 12:37:16 +00:00
concat_subpath_file.c chattr: bugfixes and size reduction 2006-12-26 03:36:28 +00:00
Config.in cmdedit is not a 'command' editing anymore, it's just editing (generic), 2007-01-22 09:03:07 +00:00
copy_file.c introduce and use setfscreatecon_or_die 2007-03-12 18:22:55 +00:00
copyfd.c Trailing whitespace removal over entire tree 2007-01-11 17:20:00 +00:00
correct_password.c Do not fail password check if shadow password does not exist - 2007-03-13 13:01:14 +00:00
crc32.c whitespace cleanup 2006-09-17 16:28:10 +00:00
create_icmp6_socket.c ping: don't measure times if ping payload is less than 8 bytes; 2007-03-03 00:36:35 +00:00
create_icmp_socket.c clean up accumulated whitespace damage 2007-03-07 09:35:43 +00:00
default_error_retval.c rename bb_default_error_retval -> xfunc_error_retval 2006-10-03 20:28:06 +00:00
device_open.c small stupid changes. no code changes 2006-12-24 07:30:09 +00:00
dump.c preparatory patch for -Wwrite-strings #2 2007-01-29 22:51:25 +00:00
error_msg_and_die.c convert calloc to xzalloc 2007-01-03 02:56:00 +00:00
error_msg.c Implement optional syslog logging using ordinary 2006-09-06 18:36:50 +00:00
execable.c fix #ifdef ENABLE_xxx -> #if 2007-02-07 20:27:03 +00:00
fclose_nonstdin.c hunt down improper include <>, make mkswap output 4Gb+ friendly 2006-11-24 15:38:03 +00:00
fflush_stdout_and_exit.c convert calloc to xzalloc 2007-01-03 02:56:00 +00:00
fgets_str.c rename functions to more understandable names 2006-10-26 23:25:17 +00:00
find_mount_point.c cut 0.5k off mkfs.minix 2006-11-29 18:15:52 +00:00
find_pid_by_name.c replace /proc scanning code by more versatile one. 2006-11-05 00:43:51 +00:00
find_root_device.c preparatory patch for -Wwrite-strings #1 2007-01-29 22:51:00 +00:00
full_write.c httpd: a little bit more correct handling of CGI "HTTP/xxx" output 2007-02-13 23:42:54 +00:00
get_console.c init: code readability enhancements; very small code changes 2007-02-17 15:52:02 +00:00
get_last_path_component.c preparatory patch for -Wwrite-strings #2 2007-01-29 22:51:25 +00:00
get_line_from_file.c sed,get_line_from_file: improve comments 2007-01-17 23:16:16 +00:00
getopt32.c clean up accumulated whitespace damage 2007-03-07 09:35:43 +00:00
herror_msg_and_die.c convert calloc to xzalloc 2007-01-03 02:56:00 +00:00
herror_msg.c - remove emacs layout block as suggested by Robert P.J. Day 2006-05-19 19:29:19 +00:00
human_readable.c reshuffle libbb.h contents so that order of decls makes sense 2006-10-27 09:05:02 +00:00
inet_common.c - sed -i -e "/\$Id:/d;" 2007-01-22 17:04:53 +00:00
info_msg.c adding files missed in prev updates (forgot about svn add) 2006-09-07 05:09:22 +00:00
inode_hash.c - remove emacs layout block as suggested by Robert P.J. Day 2006-05-19 19:29:19 +00:00
isdirectory.c - remove emacs layout block as suggested by Robert P.J. Day 2006-05-19 19:29:19 +00:00
Kbuild next portion of selinux updates: chcon, runcon. From 2007-03-11 22:16:02 +00:00
kernel_version.c modprobe: reformat to match bbox style 2006-10-27 15:12:50 +00:00
last_char_is.c diff: fix -q exit code 2006-12-16 22:18:44 +00:00
lineedit.c Do not fail password check if shadow password does not exist - 2007-03-13 13:01:14 +00:00
llist.c ifupdown: code to deconstruct the state_list gracefully 2007-03-06 22:53:10 +00:00
login.c login: re-enable Ctrl-^C before execing shell. 2006-10-31 17:34:44 +00:00
loop.c strdup -> xstrdup 2007-01-19 21:33:19 +00:00
make_directory.c message string changes, mostly for consistency, also -32 bytes in .rodata 2006-10-20 13:28:22 +00:00
makedev.c fix warning from needlessly-global functions 2007-01-22 23:04:27 +00:00
md5.c #if CONFIG_xxx -> #if ENABLE_xxx 2006-11-01 09:13:26 +00:00
messages.c cleanups: unnecessary casts, unified const_1, eliminate cross-.c file 2007-01-22 14:12:08 +00:00
mode_string.c - the archivers expect mode to be a mode_t, so do not trip signed/unsigned conversion purposefully 2007-01-22 17:48:08 +00:00
mtab_file.c tar: sanitize option handling 2006-11-24 21:54:44 +00:00
mtab.c erase_mtab: do not limit ourself to 40 mtab entries 2006-11-27 17:29:09 +00:00
obscure.c passwd: rework: 2006-11-30 16:41:15 +00:00
parse_mode.c bb_parse_mode: do not do umask() needlessly. 2007-01-26 22:54:01 +00:00
perror_msg_and_die.c convert calloc to xzalloc 2007-01-03 02:56:00 +00:00
perror_msg.c - remove emacs layout block as suggested by Robert P.J. Day 2006-05-19 19:29:19 +00:00
perror_nomsg_and_die.c fix warning from needlessly-global functions 2007-01-22 23:04:27 +00:00
perror_nomsg.c fix warning from needlessly-global functions 2007-01-22 23:04:27 +00:00
process_escape_sequence.c - remove emacs layout block as suggested by Robert P.J. Day 2006-05-19 19:29:19 +00:00
procps.c make sure ps/top output what they claim: vsz, not rss ... down the line we should make the output controllable either at runtime or buildtime as both statistics are quite useful 2007-02-08 08:21:58 +00:00
pw_encrypt.c passwd: small size optimization. salt generation improved 2006-11-30 20:41:28 +00:00
read.c clean up accumulated whitespace damage 2007-03-07 09:35:43 +00:00
README Remove trailing whitespace. Update copyright to include 2004. 2004-03-15 08:29:22 +00:00
recursive_action.c Trailing whitespace removal over entire tree 2007-01-11 17:20:00 +00:00
remove_file.c rodata cleanup. "unable to" == "cannot". -300 bytes 2006-11-18 22:04:09 +00:00
restricted_shell.c su: make /etc/shells check configurable 2006-12-19 00:20:20 +00:00
run_shell.c run_shell.c: style fix 2006-09-05 09:45:30 +00:00
safe_strncpy.c httpd: add -u user[:grp] support 2006-10-05 22:50:22 +00:00
safe_write.c - remove emacs layout block as suggested by Robert P.J. Day 2006-05-19 19:29:19 +00:00
selinux_common.c introduce and use setfscreatecon_or_die 2007-03-12 18:22:55 +00:00
setup_environment.c runit/chpst: "change process state" utility 2006-10-03 15:57:40 +00:00
sha1.c style fixes 2006-12-26 10:42:51 +00:00
simplify_path.c syslogd: fix "readpath bug" by using readlink instead 2007-02-11 16:19:28 +00:00
skip_whitespace.c leftover of e2fsck surgery 2006-12-26 02:51:29 +00:00
speed_table.c The type changed too. 2006-06-20 16:43:05 +00:00
trim.c - remove emacs layout block as suggested by Robert P.J. Day 2006-05-19 19:29:19 +00:00
u_signal_names.c fix recognitions of -SIGname signals 2006-12-23 01:06:21 +00:00
uuencode.c uuencode: common implementation for wget and uuencode (closing bug 694) 2006-09-03 15:49:40 +00:00
vdprintf.c accumulated post-1.4.0 fixes 2007-01-24 22:02:01 +00:00
verror_msg.c bb_applet_name -> applet_name 2006-10-03 21:00:43 +00:00
vfork_daemon_rexec.c openvt,getty,vfork_daemon_rexec,mount: tighten up fd cleanup code 2007-01-19 21:19:35 +00:00
vherror_msg.c - small trivia to be gentle to gcc-2.95.x which had no va_copy but only __va_copy. 2006-09-12 13:27:55 +00:00
vinfo_msg.c - small trivia to be gentle to gcc-2.95.x which had no va_copy but only __va_copy. 2006-09-12 13:27:55 +00:00
vperror_msg.c - small trivia to be gentle to gcc-2.95.x which had no va_copy but only __va_copy. 2006-09-12 13:27:55 +00:00
warn_ignoring_args.c hunt down improper include <>, make mkswap output 4Gb+ friendly 2006-11-24 15:38:03 +00:00
wfopen_input.c inline strcmp(s, "-") [actually macro-ize it for now - gcc is too stupid] 2006-12-16 23:49:13 +00:00
wfopen.c rename functions to more understandable names 2006-10-26 23:25:17 +00:00
xatonum_template.c s/extern inline/static ATTRIBUTE_ALWAYS_INLINE/g 2006-12-16 23:48:13 +00:00
xatonum.c s/extern inline/static ATTRIBUTE_ALWAYS_INLINE/g 2006-12-16 23:48:13 +00:00
xconnect.c ping: support -I addr in family neutral manner; reuse a bit of common code 2007-02-09 17:32:16 +00:00
xfuncs.c clean up accumulated whitespace damage 2007-03-07 09:35:43 +00:00
xgetcwd.c syslogd: fix "readpath bug" by using readlink instead 2007-02-11 16:19:28 +00:00
xgethostbyname.c xgethostbyname: more readable 2006-11-21 20:35:22 +00:00
xreadlink.c syslogd: fix "readpath bug" by using readlink instead 2007-02-11 16:19:28 +00:00
xregcomp.c less: stop dying on bad regexps, quietly pipe data w/o 2006-12-21 13:24:58 +00:00

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>