Rob Landley [Fri, 15 Sep 2006 04:10:05 +0000 (04:10 -0000)]
Unbreak allbareconfig.
Rob Landley [Fri, 15 Sep 2006 04:08:25 +0000 (04:08 -0000)]
So, in the cornucopia of superfulous warning directives I didn't add to the
tree, we have the warning about failed inlines (which with our inline
limit set to zero means any usage of the "inline" keyword at all). Note
that setting the inline limit to zero, and using -Werror, both predated
adding the warning about inlines to the tree. So whatever checkin added
that did nothing but break the tree. But oh well.
The second category of superfluous warnings is warning about functions with
no previous declaration. Apparently, if you add ALWAYS_INLINE to an empty
function definition, it considers the sucker undeclared as far as the
warning is concerned. (I.E. it's a buggy warning. I try not to ask the
compiler to generate warnings it can't competently generate.)
This is why I removed "inline" (unbreak allbareconfig), and couldn't replace it
with "ALWAYS_INLINE" (still broke allbareconfig).
Rob Landley [Fri, 15 Sep 2006 04:01:03 +0000 (04:01 -0000)]
Unbreak allbareconfig.
We've had -Werror in the tree for quite a while, so adding #warning
somewhat counterproductve way to make comments on the code that belong on the
mailing list anyway.
Rob Landley [Thu, 14 Sep 2006 19:52:07 +0000 (19:52 -0000)]
Strangely, using // in the comments I added was not a persistent accident.
Denis Vlasenko [Thu, 14 Sep 2006 17:03:18 +0000 (17:03 -0000)]
login: eliminate forward decls and #ifdefs
Denis Vlasenko [Thu, 14 Sep 2006 16:40:46 +0000 (16:40 -0000)]
umount: do not try to close FILE* which is NULL.
Denis Vlasenko [Thu, 14 Sep 2006 16:09:27 +0000 (16:09 -0000)]
mount: -o remount should not add lines to /etc/mtab
Denis Vlasenko [Thu, 14 Sep 2006 15:46:33 +0000 (15:46 -0000)]
mount: move code from nfsmount.c into mount.c
Bernhard Reutner-Fischer [Thu, 14 Sep 2006 15:07:48 +0000 (15:07 -0000)]
- make sure that the 'build' dir exists even if we are about to build just one applet.
Bernhard Reutner-Fischer [Thu, 14 Sep 2006 15:04:31 +0000 (15:04 -0000)]
- do away with silly comment and do the Right Thing wrt building the archives.
You have to provide the absolute path to the objdir/target.ext you want to build, as can be seen in the respective makefiles..
Denis Vlasenko [Thu, 14 Sep 2006 13:19:19 +0000 (13:19 -0000)]
mount: fix mtab support (but it is still rather buggy)
Rob Landley [Thu, 14 Sep 2006 05:59:32 +0000 (05:59 -0000)]
svn 15355 replaced "BusyBox is licensed under the GNU General Public Public
License" with "BusyBox is licensed under the GNU General Public
License version 2 or later... (This is the same license the Linux kernel
is under...)" Except that the Linux kernel isn't under GPLv2 or later,
it's just under GPLv2.
Now they match again.
Rob Landley [Thu, 14 Sep 2006 05:27:28 +0000 (05:27 -0000)]
More code from kernel developers, and therefore licensed under GPLv2 only.
Clarify the license boilerplate.
On an unrelated note, this could use busyboxification. check_mount() looks
reusable and ask() is generic...
Rob Landley [Wed, 13 Sep 2006 19:54:36 +0000 (19:54 -0000)]
Add Larry Doolittle's ntpclient, plus some formatting tweaks.
Bernhard Reutner-Fischer [Wed, 13 Sep 2006 16:39:19 +0000 (16:39 -0000)]
- fix copy'n paste errors that got introduced when switching to the shorter boilerplate.
No object code changes.
Bernhard Reutner-Fischer [Wed, 13 Sep 2006 15:42:47 +0000 (15:42 -0000)]
- r16075 broke for de-selected FEATURE_UTMP; Partial fix that wants some more cleanup (see FIXME in the patch).
Rob Landley [Tue, 12 Sep 2006 22:42:03 +0000 (22:42 -0000)]
Revert duplicate patch.
I don't know why patch decided to apply this even though it was already in
the tree. I thought the other hunks failed because they were totally
unrelated leakage from Bernhard's tree (which they are; was the a reason
for bundling them in with this fix? Do they have something to do with
the GCC 2.95 fix? I suspect they prevent me from backporting this
patch to 1.2.2 because the header consolidation into libbb.h hadn't
been done yet, and no I'm not fixing it up: if that's the case then
this patch won't be in 1.2.2 due to extraneous changes bundled with it that
prevent a clean backport without rolling a new patch).
Rob Landley [Tue, 12 Sep 2006 21:42:17 +0000 (21:42 -0000)]
Remove pointless "const". Bloatcheck says 0 bytes difference.
Rob Landley [Tue, 12 Sep 2006 20:29:22 +0000 (20:29 -0000)]
Fix from Bernhard for somebody trying to limp along with gcc 2.95.4.
Rob Landley [Tue, 12 Sep 2006 20:28:34 +0000 (20:28 -0000)]
Random cleanup hanging around my tree.
Bernhard Reutner-Fischer [Tue, 12 Sep 2006 13:27:55 +0000 (13:27 -0000)]
- small trivia to be gentle to gcc-2.95.x which had no va_copy but only __va_copy.
Bernhard Reutner-Fischer [Tue, 12 Sep 2006 13:25:16 +0000 (13:25 -0000)]
- fix warning about discarding qualifiers in initialization
Denis Vlasenko [Mon, 11 Sep 2006 17:42:44 +0000 (17:42 -0000)]
nfsmount: sanitize it. It had a rather peculiar idea of implementing "bg"
option - it was going to return a special flag back to caller and
expecting caller to call it again with special parameter! Also
caller was charged with calling mount() syscall...
mount: mtab support was non-functional. Enabling it revealed serious bug
which is not fixed yet.
Bernhard Reutner-Fischer [Mon, 11 Sep 2006 16:01:40 +0000 (16:01 -0000)]
- convert a few xopen3(,,0) into xopen(,). Also peruse the fact that xopen defaults to 0777 on it's own, so we don't need to xopen3(,,0777).
Saves a few bytes:
$ size busybox.old busybox text data bss dec hex filename
839676 8780 243592
1092048 10a9d0 busybox.old
839660 8780 243592
1092032 10a9c0 busybox
$ make CC=gcc-4.2-HEAD bloatcheck
function old new delta
static.vconfig_main 281 279 -2
static.rx_main 1076 1074 -2
static.mt_main 294 292 -2
static.gzip_main 753 751 -2
static.mkfs_minix_main 4034 4030 -4
static.unzip_main 1771 1766 -5
static.crontab_main 1513 1507 -6
------------------------------------------------------------------------------
(add/remove: 0/0 grow/shrink: 0/7 up/down: 0/-23) Total: -23 bytes
Bernhard Reutner-Fischer [Mon, 11 Sep 2006 09:18:09 +0000 (09:18 -0000)]
- merge xstat.c into xfuncs.c
Bernhard Reutner-Fischer [Mon, 11 Sep 2006 09:16:12 +0000 (09:16 -0000)]
- Tito pointed out that Rob forgot to add e2fsprogs/blkid/list.c
Rob Landley [Mon, 11 Sep 2006 01:34:21 +0000 (01:34 -0000)]
Build fixes for gcc 4.0 with -Werror, from Tito.
Rob Landley [Mon, 11 Sep 2006 00:34:01 +0000 (00:34 -0000)]
Error reporting fix for sulogin, plus remove help entries for options we never
implemented. (Plus a bit more of bbsh leaking in from my tree, but it
shouldn't hurt anything and I'm lazy...)
Denis Vlasenko [Sun, 10 Sep 2006 18:48:16 +0000 (18:48 -0000)]
nfsmount: remove some really old code (for kernels 1.x!) + small cleanups.
Denis Vlasenko [Sun, 10 Sep 2006 18:40:18 +0000 (18:40 -0000)]
nfsmount: delete nfsmount.h
Denis Vlasenko [Sun, 10 Sep 2006 18:38:17 +0000 (18:38 -0000)]
nfsmount: nfsmount.h merged into nfsmount.c
Denis Vlasenko [Sun, 10 Sep 2006 18:28:23 +0000 (18:28 -0000)]
nfsmount: style fix
Denis Vlasenko [Sun, 10 Sep 2006 18:26:51 +0000 (18:26 -0000)]
ipcs: silly trick with strings. saves ~200 bytes.
Rob Landley [Sun, 10 Sep 2006 03:20:37 +0000 (03:20 -0000)]
Cleanup headers and replace the zero padding with an even smaller version.
One of the pads turned out to be unnecessary: sizeof(struct TarHeader) is
TAR_BLOCK_SIZE, the padding's in the struct. The others could be done inline
with bb_common_bufsiz1.
This is a cleanup I did to Denis' patch long ago, but got sidetracked by
what turned into svn 15660.
Denis Vlasenko [Sat, 9 Sep 2006 14:00:58 +0000 (14:00 -0000)]
sulogin: minor cleanup.
Denis Vlasenko [Sat, 9 Sep 2006 13:23:04 +0000 (13:23 -0000)]
setkeycodes: something horrible happened here
to indentation... fixed now
Denis Vlasenko [Sat, 9 Sep 2006 12:55:02 +0000 (12:55 -0000)]
top: fixed wrong comment, made error message more clear
Denis Vlasenko [Sat, 9 Sep 2006 12:49:03 +0000 (12:49 -0000)]
tar: fix "xopen with O_CREAT" warning, improve zero padding write
(was doing zillions of 1-byte write syscalls)
Denis Vlasenko [Sat, 9 Sep 2006 12:25:20 +0000 (12:25 -0000)]
xopen3(O_RDONLY) -> xopen(O_RDONLY).
Denis Vlasenko [Sat, 9 Sep 2006 12:24:19 +0000 (12:24 -0000)]
using [xa]sprintf for string concatenation is neat and saves
~100 bytes according to bloatcheck. Also this fixes bug in rpm
Denis Vlasenko [Sat, 9 Sep 2006 12:20:57 +0000 (12:20 -0000)]
wget: wrap one atrociously long line (around 200 chars long!).
Denis Vlasenko [Sat, 9 Sep 2006 12:18:46 +0000 (12:18 -0000)]
udhcp: FEATURE_UDHCP_SYSLOG should be selected only if
udhcp[cd] really are going to use it.
Denis Vlasenko [Fri, 8 Sep 2006 17:56:52 +0000 (17:56 -0000)]
login: use some ideas from util-linux's login.
O_NONBLOCKing output on login timeout.
fchmod instead of chmod (latter is racy).
is_my_tty() is not needed anymore after race is fixed
(is_my_tty() was racy too anyway...).
Denis Vlasenko [Fri, 8 Sep 2006 17:31:55 +0000 (17:31 -0000)]
few random readability enhansements. No code changes
Denis Vlasenko [Fri, 8 Sep 2006 17:29:53 +0000 (17:29 -0000)]
login: make it saner and smaller by ~0.5k.
Denis Vlasenko [Fri, 8 Sep 2006 17:26:20 +0000 (17:26 -0000)]
login: small fixes like \n removal, bb_error_msg'ification, etc.
Denis Vlasenko [Fri, 8 Sep 2006 17:25:04 +0000 (17:25 -0000)]
login: previous commit comment was wrong :)
That commit added login script support.
Now _this commit_ is a style fix. Sorry....
Denis Vlasenko [Fri, 8 Sep 2006 17:22:45 +0000 (17:22 -0000)]
login: style fixes
Rob Landley [Fri, 8 Sep 2006 17:22:05 +0000 (17:22 -0000)]
Shrinkage/cleanup from Tito.
Rob Landley [Fri, 8 Sep 2006 17:21:19 +0000 (17:21 -0000)]
Fix warnings.
Rob Landley [Fri, 8 Sep 2006 16:59:08 +0000 (16:59 -0000)]
Second drop. More infrastructure in place, especially for parsing pipelines.
The minimal version got a couple hundred bytes bigger, partly because it's
broken into more functions but mostly because it now dynamically reallocates
and frees everything with no hard-coded limits. (I thought about making
that optional, but there's a limit to what I can debug and maintain. It
should still be reasonably NOMMU friendly, the allocations are small and
short lived, and shouldn't contribute noticeably to long-term memory
fragmentation.)
Rob Landley [Fri, 8 Sep 2006 00:41:48 +0000 (00:41 -0000)]
A quick cleanup pass of some low-hanging mess.
Rob Landley [Fri, 8 Sep 2006 00:01:02 +0000 (00:01 -0000)]
Bugfix for: echo '
123456789' | sed 's/./|&/5'
Denis Vlasenko [Thu, 7 Sep 2006 17:05:44 +0000 (17:05 -0000)]
Fix (hopefully) bug 976. Need more thorough audit.
Restore erroneously removed FEATURE_UDHCP_SYSLOG.
Denis Vlasenko [Thu, 7 Sep 2006 16:20:03 +0000 (16:20 -0000)]
getty, sulogin: convert to using bb_msg for syslog output
Denis Vlasenko [Thu, 7 Sep 2006 16:03:45 +0000 (16:03 -0000)]
fix if (ENABLE_FEATURE_SYSLOG & (...)) - should be &&
Denis Vlasenko [Thu, 7 Sep 2006 06:02:39 +0000 (06:02 -0000)]
Add CONFIG_FEATURE_SYSLOG which controls whether
bb_xx_msg will ever try to send output to syslog.
Add "select CONFIG_FEATURE_SYSLOG" to relevant applets.
This allows to omit syslog code if we do not have
any syslog-capable applets in the build.
Denis Vlasenko [Thu, 7 Sep 2006 05:43:38 +0000 (05:43 -0000)]
CONFIG_FEATURE_COMPRESS_USAGE was impossible to turn on
if !CONFIG_NITPICK
Denis Vlasenko [Thu, 7 Sep 2006 05:09:22 +0000 (05:09 -0000)]
adding files missed in prev updates (forgot about svn add)
Rob Landley [Wed, 6 Sep 2006 22:56:38 +0000 (22:56 -0000)]
Denis Vlasenko has started to put stuff on his BusyBox home page, so index it.
Denis Vlasenko [Wed, 6 Sep 2006 19:02:46 +0000 (19:02 -0000)]
removed a lot of trailing \n in bb_msg() calls. It is added
automatically by function itself.
Denis Vlasenko [Wed, 6 Sep 2006 18:36:50 +0000 (18:36 -0000)]
Implement optional syslog logging using ordinary
bb_xx_msg calls, and convert networking/* to it.
The rest of bbox will be converted gradually.
Bernhard Reutner-Fischer [Wed, 6 Sep 2006 15:28:32 +0000 (15:28 -0000)]
- strip 399424 off the bss by making decompress_uncompress buffers config buffers.
Compile tested (too lazy to look for a small .Z on the net).
$ size busybox.old busybox
text data bss dec hex filename
859555 10232 645732
1515519 171fff busybox.old
859683 10232 246308
1116223 11083f busybox
$ make bloatcheck
function old new delta
uncompress 1036 1160 +124
inbuf 2116 4 -2112
outbuf 4100 4 -4096
htab 131072 - -131072
codetab 262144 - -262144
------------------------------------------------------------------------------
(add/remove: 0/2 grow/shrink: 1/2 up/down: 124/-399424) Total: -399300 bytes
Bernhard Reutner-Fischer [Wed, 6 Sep 2006 13:24:39 +0000 (13:24 -0000)]
- mdev and grep use xregcomp. Closes bug #1021
Rob Landley [Tue, 5 Sep 2006 14:00:21 +0000 (14:00 -0000)]
Vladimir Dronnikov (ybrnj80 at yandex dot ru) pointed out that my cleanup of
his code introduced a bug (an extra backslash in the CIFS mount string).
Rob Landley [Tue, 5 Sep 2006 13:48:21 +0000 (13:48 -0000)]
The bb_ prefixes were removed from xasprintf() and xopen() a month ago (in
svn 15767).
Denis Vlasenko [Tue, 5 Sep 2006 09:45:30 +0000 (09:45 -0000)]
run_shell.c: style fix
Denis Vlasenko [Tue, 5 Sep 2006 09:36:19 +0000 (09:36 -0000)]
xfunc: fix: && -> &. Also nuked two double semicolons...
Rob Landley [Tue, 5 Sep 2006 03:22:19 +0000 (03:22 -0000)]
Might as well commit this to have the history. It's not linked in to the
applet list yet (and won't be until it can replace lash, I'm not having five
shells in menuconfig at once), but you can build it with scripts/individual
and mostly this is checked in so I can bloatcheck future versions against it
easily....
This is about as small as a shell can get and still be a shell.
Rob Landley [Mon, 4 Sep 2006 19:43:26 +0000 (19:43 -0000)]
Thinko.
Rob Landley [Mon, 4 Sep 2006 18:59:39 +0000 (18:59 -0000)]
Patch from Natanael Copa to make start-stop-daemon just use readlink and
strcmp to check if a program is already running.
Denis Vlasenko [Sun, 3 Sep 2006 17:11:34 +0000 (17:11 -0000)]
sulogin: fix bug: -tNNN didn't work
Denis Vlasenko [Sun, 3 Sep 2006 16:33:58 +0000 (16:33 -0000)]
dpkg: fix buffer overflow (bug 983)
Denis Vlasenko [Sun, 3 Sep 2006 15:49:40 +0000 (15:49 -0000)]
uuencode: common implementation for wget and uuencode (closing bug 694)
Denis Vlasenko [Sun, 3 Sep 2006 14:23:29 +0000 (14:23 -0000)]
archival: added O_TRUNC so that when we overwrite files on unpack,
we truncate them. Also spotted & fixed hard to trigger bug
with extension handling.
Denis Vlasenko [Sun, 3 Sep 2006 14:04:33 +0000 (14:04 -0000)]
tar: revert older fix (non-portable), added new one.
testsuite tar-extracts-all-subdirs now passes.
Denis Vlasenko [Sun, 3 Sep 2006 12:31:59 +0000 (12:31 -0000)]
zcip: bb_error_msg had stray newlines; small optimization in opt parsing
Denis Vlasenko [Sun, 3 Sep 2006 12:29:53 +0000 (12:29 -0000)]
zcip: minor fixes
Denis Vlasenko [Sun, 3 Sep 2006 12:28:32 +0000 (12:28 -0000)]
zcip: fix stdout/err versus syslog output.
Incomplete: xfunc() would not respect this. TODO.
Denis Vlasenko [Sun, 3 Sep 2006 12:27:25 +0000 (12:27 -0000)]
zcip: getopt -> bb_getopt_ulflags
Denis Vlasenko [Sun, 3 Sep 2006 12:26:06 +0000 (12:26 -0000)]
zcip: convert lots of zero-initialized locals
in zcip_main() to statics in bss.
Denis Vlasenko [Sun, 3 Sep 2006 12:23:56 +0000 (12:23 -0000)]
zcip: use xfunc() where appropriate
Denis Vlasenko [Sun, 3 Sep 2006 12:21:59 +0000 (12:21 -0000)]
replacing func() with xfunc() where appropriate
Denis Vlasenko [Sun, 3 Sep 2006 12:20:36 +0000 (12:20 -0000)]
zcip: apply patch from
http://bugs.busybox.net/view.php?id=1005
zcip does not claim another IP after defending
Denis Vlasenko [Sat, 2 Sep 2006 18:40:10 +0000 (18:40 -0000)]
tar: tar xf foo.tar dir/dir did not extract all subdirs.
Added testsuite entry for this
Denis Vlasenko [Sat, 2 Sep 2006 17:53:16 +0000 (17:53 -0000)]
ping: bind -> xbind
Denis Vlasenko [Sat, 2 Sep 2006 16:57:59 +0000 (16:57 -0000)]
ping(6): use htons instead of SWAP_BE.
Denis Vlasenko [Sat, 2 Sep 2006 16:17:30 +0000 (16:17 -0000)]
ping: implement -I option
Denis Vlasenko [Sat, 2 Sep 2006 16:16:23 +0000 (16:16 -0000)]
ping6: resolve interface name to number early.
gcc is more efficient at truncating int to int16
via cast, use that instead of &.
Denis Vlasenko [Sat, 2 Sep 2006 16:13:36 +0000 (16:13 -0000)]
Sync ping and ping6 a bit, fix style and indentation.
Denis Vlasenko [Sat, 2 Sep 2006 16:11:44 +0000 (16:11 -0000)]
Fix endianness issue in ping6
Bernhard Reutner-Fischer [Sat, 2 Sep 2006 15:30:26 +0000 (15:30 -0000)]
- patch from Csaba Henk to make the "User-Agent" header field configurable.
Rob Landley [Fri, 1 Sep 2006 17:38:23 +0000 (17:38 -0000)]
Walter Harms contributed a section on scripting languages. (I trimmed it
a bit.)
Rob Landley [Fri, 1 Sep 2006 08:10:44 +0000 (08:10 -0000)]
Vladimir Dronnikov also submitted a CIFS support patch to mount, which I
heavily reworked here and probably broke. Tomorrow I need to set up a
copy of samba to test against. (This compiles, I make no promises beyond that.)
Rob Landley [Wed, 30 Aug 2006 16:50:00 +0000 (16:50 -0000)]
Bernhard Fischer complained about moving --sort-common.
Rob Landley [Tue, 29 Aug 2006 21:46:10 +0000 (21:46 -0000)]
There's some strange bug in glibc that triggers if you combine the
--gc-sections linker flag with static linking. If this happens, then
the "stdout" variable (used by printf() and such) will only work if stdout
is _not_ redirected. I.E "./busybox" prints stuff, but "./busybox | cat"
does not produce any output. (But even when redirected, "write(1,"blah",4);"
continues to work just fine.)
This is clearly a glibc bug, but to avoid triggering it I've moved the
--gc-sections flag so it only gets added when we're not statically linking.
If somebody would like to go poke Ulrich Drepper, you can trivially reproduce
this with a "hello world" program, ala:
gcc -static -Wl,--gc-sections hello.c && (./a.out | cat)
Bernhard Reutner-Fischer [Tue, 29 Aug 2006 20:21:33 +0000 (20:21 -0000)]
- set version back to 1.2.0 like it was before. Add at least -svn to the Extraversion to be able to distinguish it from the now old 1.2.0 release
Rob Landley [Tue, 29 Aug 2006 19:41:06 +0000 (19:41 -0000)]
Svn 16007 broke the build under gcc 4.0.3. This fixes up some of the damage
(the e2fsprogs directory is too twisty and evil to easily fix, but I plan
to rewrite it anyway so I'll just bump that up in priority a bit).
Bernhard Reutner-Fischer [Mon, 28 Aug 2006 23:39:36 +0000 (23:39 -0000)]
- it's a mistake to remove lib-specific prefixes from libraries; still the removal should be complete.
Bernhard Reutner-Fischer [Mon, 28 Aug 2006 23:31:54 +0000 (23:31 -0000)]
- pull from busybox_scratch: r15829:15850
Various fixes, cleanups and shrinkage:
saves 952 Bytes:
text data bss dec hex filename
1087742 15853 790632
1894227 1ce753 ../busybox/busybox.old
1086790 15853 790632
1893275 1ce39b busybox
via:
# scripts/bloat-o-meter ../busybox/busybox_unstripped.old busybox_unstripped
function old new delta
ipcrm_main 756 822 +66
getval - 61 +61
maybe_set_utc - 40 +40
udhcpc_main 2896 2912 +16
md5_hash_block 428 437 +9
opt 8 16 +8
qgravechar 106 110 +4
make_bitmap 292 295 +3
inflate_unzip 2056 2059 +3
add_partition 1412 1414 +2
__parsespent 156 158 +2
qrealloc 41 42 +1
format - 1 +1
catv_main 313 314 +1
watch_main 293 292 -1
varunset 81 80 -1
part 1 - -1
check_if_skip 837 836 -1
start_stop_daemon_main 840 837 -3
create_lost_and_found 175 172 -3
supress_non_delimited_lines 4 - -4
static.l 4 - -4
static.c 5 1 -4
bsd_sum_file 237 233 -4
eval2 338 332 -6
arithmetic_common 166 158 -8
cmpfunc 22 5 -17
cksum_main 294 275 -19
cmp_main 465 439 -26
dd_main 1535 1508 -27
rmmod_main 376 333 -43
cut_file 727 644 -83
ipcs_main 3809 3721 -88
cut_main 722 614 -108
date_main 1443 1263 -180
remove_ids 222 - -222
------------------------------------------------------------------------------
(add/remove: 3/4 grow/shrink: 11/18 up/down: 217/-853) Total: -636 bytes