Added tag 0.4.8 for changeset 8556669d3928
Release announcement for 0.4.8.
usage: is lower case (the help generator looks for that, might as well be consistent).
As long as uClibc's still around and requires you to jump through hoops to get iconv(), probe and build defconfig without it if it's not there.
Add example directory, move hello.c into it, add skeleton.c to demonstrate more complciated stuff (multiple commands per file, etc), and have genconfig.sh sort backwards so posix is first and example last in menuconfig.
Fix od bug reported by Samuel Holland ("od -v -b" was appending default output type even though an output type was specified).
Cosmetic tweak: spell out "Linux Standard Base" in menuconfig.
fold cleanup: whitespace and curly brackets.
Teach cpio to set uid/gid and timestamp. (Timestamp has year 2100 problem.)

Note that directory timestamps are still sometimes wrong because creating
things in a directory can update the timestamp. Also, cp -r has logic to
ensure we can write to a directory that doesn't have write permission,
cpio does not. This is fixable, but not what existing cpio does.
Attached is the patch for lsattr and chattr implementation.

This is the modified and better version from the last one I sent.
It is having the both the mains (lsattr_main() and chattr_main() )
in single file.

Also removed the dependency of additional file in lib, as common code is in the
same .c file.
In function readfile(), the buffer buf is free'd when readall() fails.  This free can cause a crash, if the buffer passed by user of function is not malloc'ed one.

names_to_pid() is one usecase example here.
Fix bug reported by Ashwini Sharma: rebound has to be at the end or toy_init() doesn't zero the rest of the struct.
Use compiler built-in macros to determine if argument parsing can use double or float for FLOAT arguments. (I.E. whether double fits in a long's memory.) Check in a way that the macros not being defined just gives us the shorter one.
Switch human_readable() to just outputing decimal kilo/mega/gigabytes, make du use it, move it from lib/pending.c to lib.c.
Catch duplicate command name (which breaks the build already, but doesn't identify the culprit).
Initial cleanup of last: mostly whitespace, move no record test to start of loop, don't bother to stat an empty file to report when an empty log was created (just report current time).
sizeof("string") treats it as a char array _including_ the null terminator, so strncmp(dest, "string", sizeof("string")) is just strcpy.
Add arp from Sandeep Sharma and Kyungwan Han.
Add sysctl by Bilal Qureshi.
First cleanup pass on sysctl.

Remove unnecessary typecasting of things that are already char * to char *,
and multiplying by sizeof(char *) which is 1. Rename do_process() do_flag_a()
since that's the only caller. Move read_key_values() down past trim_spaces()
and read_config_file() so it's next to its only two users. Replace some
euphemisms for 0 with 0.

replace_char() really sounds like something libc should already have one of,
but I'm blanking on it if so. (It doesn't need a temporary variable when the
argument variable is already a copy so changing it won't affect the caller.)