busybox/libbb
Denis Vlasenko 459be35234 hwclock: size optimizations
libbb/time.c: new file, introducing monotonic_us()
pscan, traceroute, arping: use it instead of gettimeofday
ping, zcip: TODO

function                                             old     new   delta
monotonic_us                                           -      89     +89
find_pair                                            164     180     +16
.rodata                                           129747  129763     +16
refresh                                             1144    1152      +8
............
timeout                                                8       4      -4
static.start                                           8       4      -4
last                                                   8       4      -4
parse_conf                                          1303    1284     -19
time_main                                           1149    1124     -25
gettimeofday_us                                       39       -     -39
arping_main                                         2042    1969     -73
hwclock_main                                         594     501     -93
catcher                                              485     380    -105
traceroute_main                                     4300    4117    -183
------------------------------------------------------------------------------
(add/remove: 2/1 grow/shrink: 8/11 up/down: 157/-562)        Total: -405 bytes
2007-06-17 19:09:05 +00:00
..
ask_confirmation.c delete tons of extra #includes 2007-05-31 22:42:12 +00:00
bb_askpass.c delete tons of extra #includes 2007-05-31 22:42:12 +00:00
bb_do_delay.c delete tons of extra #includes 2007-05-31 22:42:12 +00:00
bb_pwd.c random style fixes (extra spaces deleted) 2007-03-24 15:40:16 +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 cryptpw: new applet (a bit less than 3k added) 2007-05-08 17:52:17 +00:00
compare_string_array.c - fix bug where we did not reject invalid classes like '[[:alpha' 2007-03-30 14:43:27 +00:00
concat_path_file.c ls: cleanup part 1 2006-10-28 12:37:16 +00:00
concat_subpath_file.c teach find_root_device to deal with /dev/ subdirs 2007-04-13 23:59:52 +00:00
Config.in hwclock: size optimizations 2007-06-17 19:09:05 +00:00
copy_file.c style fixes. No code changes 2007-04-12 00:32:05 +00:00
copyfd.c bb_full_fd_action: remove potential xmalloc from NOFORK path 2007-04-11 23:20:53 +00:00
correct_password.c remove obsolete comment 2007-06-16 14:16:30 +00:00
crc32.c make compressed help code NOMMU- and NOFORK-friendly - 2007-04-10 21:40:19 +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
crypt_make_salt.c cryptpw: forgot svn add... how typical of me :( 2007-05-08 23:23:35 +00:00
default_error_retval.c Rename two config options: 2007-04-10 23:03:30 +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 hush: fix handling of unmatched ${name (without closing '}') - 2007-05-24 12:18:16 +00:00
error_msg.c use "glibc errno" trick not only for ash, but for entire busybox 2007-05-31 22:16:38 +00:00
execable.c make busybox --install work even if /proc/self/exe doesn't exist 2007-06-08 15:02:55 +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 Rename two config options: 2007-04-10 23:03:30 +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 find_root_device: use lstat - don't follow links 2007-04-21 23:28:03 +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 delete tons of extra #includes 2007-05-31 22:42:12 +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 style fixes. No code changes 2007-04-12 00:32:05 +00:00
getopt32.c usage.c: remove reference to busybox.h 2007-05-26 19:00:18 +00:00
herror_msg_and_die.c make a few struct bb_applet members conditional 2007-04-10 21:38:30 +00:00
herror_msg.c delete tons of extra #includes 2007-05-31 22:42:12 +00:00
human_readable.c delete tons of extra #includes 2007-05-31 22:42:12 +00:00
inet_common.c - sed -i -e "/\$Id:/d;" 2007-01-22 17:04:53 +00:00
info_msg.c login: remove setpgrp call (makes it work from shell prompt again). 2007-04-12 12:31:02 +00:00
inode_hash.c delete tons of extra #includes 2007-05-31 22:42:12 +00:00
isdirectory.c
Kbuild hwclock: size optimizations 2007-06-17 19:09:05 +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 moved biggest stack buffers to malloc space, or made their size configurable 2007-06-10 15:08:44 +00:00
llist.c delete tons of extra #includes 2007-05-31 22:42:12 +00:00
login.c delete tons of extra #includes 2007-05-31 22:42:12 +00:00
loop.c loop device code: readability improvement 2007-04-19 00:09:34 +00:00
make_directory.c audit small applets and mark some of them as NOFORK. 2007-04-10 15:43:37 +00:00
makedev.c fix warning from needlessly-global functions 2007-01-22 23:04:27 +00:00
match_fstype.c whitespace fixes 2007-05-30 00:29:55 +00:00
md5.c #if CONFIG_xxx -> #if ENABLE_xxx 2006-11-01 09:13:26 +00:00
messages.c *: BB_BANNER -> bb_banner (it is not a const or #define)! 2007-06-13 12:27:17 +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 delete tons of extra #includes 2007-05-31 22:42:12 +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 audit small applets and mark some of them as NOFORK. 2007-04-10 15:43:37 +00:00
perror_msg_and_die.c make a few struct bb_applet members conditional 2007-04-10 21:38:30 +00:00
perror_msg.c use "glibc errno" trick not only for ash, but for entire busybox 2007-05-31 22:16:38 +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
pidfile.c pidfile creation mode set to 0666 (umask affects it as usual) 2007-03-27 22:05:34 +00:00
process_escape_sequence.c Implement first instance of NOFORK applet - echo 2007-04-09 13:04:50 +00:00
procps.c top: add config option and code for global CPU % display 2007-06-10 17:11:59 +00:00
pw_encrypt.c passwd: small size optimization. salt generation improved 2006-11-30 20:41:28 +00:00
read.c hush: fix read builtin to not read ahead past eol and to not use 2007-06-13 06:47:47 +00:00
README
recursive_action.c find: fix handling of -prune 2007-04-08 10:52:28 +00:00
remove_file.c audit small applets and mark some of them as NOFORK. 2007-04-10 15:43:37 +00:00
restricted_shell.c su: make /etc/shells check configurable 2006-12-19 00:20:20 +00:00
run_shell.c use "glibc errno" trick not only for ash, but for entire busybox 2007-05-31 22:16:38 +00:00
safe_strncpy.c delete tons of extra #includes 2007-05-31 22:42:12 +00:00
safe_write.c use "glibc errno" trick not only for ash, but for entire busybox 2007-05-31 22:16:38 +00:00
selinux_common.c usage.c: remove reference to busybox.h 2007-05-26 19:00:18 +00:00
setup_environment.c remove nearly-duplicate PATHs in several places 2007-06-12 22:35:19 +00:00
sha1.c delete tons of extra #includes 2007-05-31 22:42:12 +00:00
simplify_path.c teach find_root_device to deal with /dev/ subdirs 2007-04-13 23:59:52 +00:00
skip_whitespace.c leftover of e2fsck surgery 2006-12-26 02:51:29 +00:00
speed_table.c
str_tolower.c - add libbb function str_tolower to convert a string to lowercase. 2007-04-10 09:37:29 +00:00
time.c hwclock: size optimizations 2007-06-17 19:09:05 +00:00
trim.c style fixes. No code changes 2007-04-12 00:32:05 +00:00
u_signal_names.c test: code size saving, no logic changes 2007-05-01 20:07:29 +00:00
udp_io.c whitespace fixes 2007-05-30 00:29:55 +00:00
uuencode.c uudecode: nuke duplicate base64_table[]. saves 65 bytes 2007-06-12 07:24:11 +00:00
vdprintf.c accumulated post-1.4.0 fixes 2007-01-24 22:02:01 +00:00
verror_msg.c verror_msg: don't printf(NULL) 2007-05-29 21:41:28 +00:00
vfork_daemon_rexec.c init: make sure fd 0,1,2 are not closed, + related optimizations. 2007-06-14 07:53:06 +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 bb_full_fd_action: remove potential xmalloc from NOFORK path 2007-04-11 23:20:53 +00:00
wfopen.c rename functions to more understandable names 2006-10-26 23:25:17 +00:00
xatonum_template.c find: make -size match GNU find 2007-06-16 00:30:52 +00:00
xatonum.c diff: shrink code (-85 bytes): 2007-06-12 20:54:54 +00:00
xconnect.c nc: make connecting to IPv4 from IPv6-enabled hosts easier 2007-06-05 20:08:11 +00:00
xfuncs.c usage.c: remove reference to busybox.h 2007-05-26 19:00:18 +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>