Matt Kraai [Wed, 9 May 2001 19:15:46 +0000 (19:15 -0000)]
Make stdio functions which can be interrupted by the progressmeter timer
recover gracefully from EINTR.
Eric Andersen [Wed, 9 May 2001 17:31:27 +0000 (17:31 -0000)]
Bump version to 0.52pre
Eric Andersen [Tue, 8 May 2001 05:11:54 +0000 (05:11 -0000)]
A few more structural updates for job control.
-Erik
Eric Andersen [Tue, 8 May 2001 04:25:46 +0000 (04:25 -0000)]
Fix a stupid segfault caused by dereferencing a NULL ptr.
-Erik
Eric Andersen [Mon, 7 May 2001 23:53:09 +0000 (23:53 -0000)]
This patch from Evin Robertson <nitfol@my-deja.com> fixes export so it works.
This way leaks memory, but oh well. We will probably fix that when we get
around to doing local variables.
Eric Andersen [Mon, 7 May 2001 23:11:23 +0000 (23:11 -0000)]
This syncs things with Vladimir's latest patches. Also gets
rid of useless 'const int' declarations.
-Erik
Eric Andersen [Mon, 7 May 2001 23:10:16 +0000 (23:10 -0000)]
This is Vladimir's update to last_char_is(). Since 'char *' is
the least common denominator, I modified it to use that (not const),
which will minimize the need for casting elsewhere.
Eric Andersen [Mon, 7 May 2001 23:07:17 +0000 (23:07 -0000)]
Silence cut so it doesn't whine during compilation
Eric Andersen [Mon, 7 May 2001 23:02:39 +0000 (23:02 -0000)]
A patch from Vladimir to simplify chomp()
Eric Andersen [Mon, 7 May 2001 23:01:32 +0000 (23:01 -0000)]
A patch from Vladimir to simplify concat_path_file() and
make it less likely to break.
Eric Andersen [Mon, 7 May 2001 22:57:47 +0000 (22:57 -0000)]
A patch from Vladimir to use last_char_is(), and a patch from
Larry to fix a silly bug when BB_FEATURE_VI_OPTIMIZE_CURSOR
is not defined.
Eric Andersen [Mon, 7 May 2001 22:49:43 +0000 (22:49 -0000)]
Patch from Vladimir to use last_char_is to simplify du.c
Eric Andersen [Mon, 7 May 2001 22:47:45 +0000 (22:47 -0000)]
Patch from Vladimir to remove testing stuff from stty
Eric Andersen [Mon, 7 May 2001 22:45:06 +0000 (22:45 -0000)]
A bug fix from Vladimir for a memory leak I stupidly
added to which.c.
Eric Andersen [Mon, 7 May 2001 17:59:25 +0000 (17:59 -0000)]
More hush updates from Larry:
Update some comments. Generate partial placeholders for the missing
builtins. Write builtin_umask. Properly treat exec without arguments
as a means to open/close files within the running script. Implement
"4<&-" that encodes for file descriptor closure.
Eric Andersen [Mon, 7 May 2001 17:57:45 +0000 (17:57 -0000)]
Patch from Jim McQuillan to pass the terminal type to the remote host.
Eric Andersen [Mon, 7 May 2001 17:55:05 +0000 (17:55 -0000)]
Per comment from Jim McQuillan <jam@mcquil.com>, don't log
syslogd startup/shutdown messages as KERN.EMERG, but use
SYSLOG.INFO instead.
Eric Andersen [Mon, 7 May 2001 17:51:34 +0000 (17:51 -0000)]
Update comment re USE_SYSTEM_PWD_GRP
-Erik
Eric Andersen [Mon, 7 May 2001 17:48:28 +0000 (17:48 -0000)]
Per some comments from Lars Kellogg-Stedman <lars@larsshack.org>,
make xreadlink() return NULL on failure, and make sure everyone
uses the interface correctly.
-Erik
Eric Andersen [Mon, 7 May 2001 17:37:43 +0000 (17:37 -0000)]
Another vi update from Sterling Huxley:
- All of the ESC sequences are now in variables. This should make
re-targeting for other terminals easier.
- The initial screen draw does not force out every single column.
Should be faster.
- The place_cursor() routine trys to be smarter about moving the
cursor. This is optional based on BB_FEATURE_VI_OPTIMIZE_CURSOR.
- The 't' and 'f' intra-line positioning commands were added.
They can now be used as targets in 'c' and 'd' commands, i.e.,
dfx - delete from dot to next 'x'
dtx - delete from dot to the char before next 'x'
- show_status_line() uses a static int checksum to remember what
is currently displayed on the screen and not re-draw the status
line unless it has changed.
- Some of the code in refresh() was moved out to format_line().
refresh() trys to send out the smallest segment containing
the changed chars rather than the whole line.
- Added "flash" to the :set command to specify if error indication
should be by flashing the screen or ringing the bell.
- Changed the rawmode() routine so that it turns off the
NL -> CR NL translation. On output of a NL, the OS will not add
a CR.
- If vi was started as "view", with global read-only mode,
and another file is opened, the file is opened read-only
rather than read+write.
Glenn L McGrath [Mon, 7 May 2001 12:06:37 +0000 (12:06 -0000)]
woops, forgot the break statment
Glenn L McGrath [Mon, 7 May 2001 12:01:58 +0000 (12:01 -0000)]
Tolerate -q argument, if -q is passed give a warning and continue rather than just fail
Glenn L McGrath [Mon, 7 May 2001 01:51:24 +0000 (01:51 -0000)]
Actually we dont need to check if the device is nfs as it wont be stat'ed
Glenn L McGrath [Mon, 7 May 2001 01:40:59 +0000 (01:40 -0000)]
woops, i shouldnt be so presumtuous? about what the error will be
Glenn L McGrath [Mon, 7 May 2001 01:38:03 +0000 (01:38 -0000)]
Device may not be a real filename
Matt Kraai [Sat, 5 May 2001 16:19:13 +0000 (16:19 -0000)]
Rewrite -c and -b processing to shrink code and eliminate buffer overrun.
Glenn L McGrath [Sat, 5 May 2001 03:19:12 +0000 (03:19 -0000)]
include libbb.h after other includes
Eric Andersen [Fri, 4 May 2001 22:13:37 +0000 (22:13 -0000)]
Larry's variant on Evin Robertson's fix to what I messed up
trying to make job control work. This fix makes it so that
hush doesn't error out when init hasn't set up job control,
as in when init=/bin/sh
Eric Andersen [Fri, 4 May 2001 22:04:24 +0000 (22:04 -0000)]
Larry suggested using concat_path_file() would be an even safer bet
for 'which'. I ageed, so I whipped this up -- which revealed a bug in
concat_path_file. It turns out that that a '/' can be appended from
either the path _or_ the filename, but only the former was checked.
-Erik
Mark Whitley [Fri, 4 May 2001 21:46:00 +0000 (21:46 -0000)]
Wrote documentation and scripts for creating a busybox boot floppy. Initial revision.
Matt Kraai [Fri, 4 May 2001 21:20:20 +0000 (21:20 -0000)]
Don't reset parents context when we encounter an terminator. Fixes
if true; then if true; then true; fi; fi
Eric Andersen [Fri, 4 May 2001 20:47:33 +0000 (20:47 -0000)]
Fix a buffer overflow. Which accounted for the size of the path, plus the the
'/', plus the size of the test command. It did not account for the terminating
NULL, which overwrote the end of the string.
-Erik
Eric Andersen [Fri, 4 May 2001 16:30:29 +0000 (16:30 -0000)]
If it fails to run a builtin, let it fall through to
exec the real thing.
-Erik
Matt Kraai [Fri, 4 May 2001 14:49:58 +0000 (14:49 -0000)]
Fix two bugs reported by Ralph Jones.
Eric Andersen [Thu, 3 May 2001 17:35:48 +0000 (17:35 -0000)]
A todo update from larry to acknowledge the existance of hush
Eric Andersen [Thu, 3 May 2001 07:01:41 +0000 (07:01 -0000)]
devfs does not support creation of regular files. So change the
test a bit so as to not possibly create a regular file.
-Erik
Matt Kraai [Thu, 3 May 2001 04:45:40 +0000 (04:45 -0000)]
Remove summary header. Not present in GNU or SUSv2.
Matt Kraai [Wed, 2 May 2001 21:48:17 +0000 (21:48 -0000)]
Move up waitpid error check so that errno isn't clobbered by tcsetpgrp.
Matt Kraai [Wed, 2 May 2001 21:24:51 +0000 (21:24 -0000)]
Canonicalize path before trying to unmount it.
Matt Kraai [Wed, 2 May 2001 21:17:38 +0000 (21:17 -0000)]
Fix bug #1108 by always canonicalizing arguments.
Eric Andersen [Wed, 2 May 2001 20:12:03 +0000 (20:12 -0000)]
Some more job control updates. It will now sucessfully background
stuff. Good luck getting things back into the foreground though...
-Erik
Matt Kraai [Wed, 2 May 2001 17:52:49 +0000 (17:52 -0000)]
Don't treat newline as pipe separator when processing substitutions.
Eric Andersen [Wed, 2 May 2001 17:19:25 +0000 (17:19 -0000)]
Use .png for images (removing all .gifs) and make them all 90x36
-Erik
Matt Kraai [Wed, 2 May 2001 16:26:12 +0000 (16:26 -0000)]
Fix $(...) construction. Noted and patched by Larry Doolittle
<ldoolitt@recycle.lbl.gov>. I'm just a patch whore. :)
Eric Andersen [Wed, 2 May 2001 16:11:59 +0000 (16:11 -0000)]
First pass at getting job control working. This gets the infrastructure
in place, but something is still missing/wrong in there. Testing with
'grep foo &' seems to put _hush_ into the background. Pondering...
-Erik
Matt Kraai [Wed, 2 May 2001 15:37:09 +0000 (15:37 -0000)]
Use the current pgrp, not pid, when resetting the foreground process group.
Fixes bizarre suspension when executing `echo`.
Matt Kraai [Wed, 2 May 2001 14:48:48 +0000 (14:48 -0000)]
Don't segfault if the first word is the empty string.
Eric Andersen [Wed, 2 May 2001 02:09:36 +0000 (02:09 -0000)]
Another update from Larry:
Makes hush return code equal to that of the last command executed.
Fixes the mode where input comes from a file.
Matt Kraai [Tue, 1 May 2001 21:12:31 +0000 (21:12 -0000)]
Skip headers with empty filenames, rather than stopping.
Eric Andersen [Tue, 1 May 2001 16:24:32 +0000 (16:24 -0000)]
Another refinement, this time from Larry.
Eric Andersen [Tue, 1 May 2001 14:54:35 +0000 (14:54 -0000)]
Argh. Now we break non-pristine builds. Check a bit more carefully.
-Erik
Eric Andersen [Tue, 1 May 2001 14:37:03 +0000 (14:37 -0000)]
Oops. The dangers of applying patches by hand...
Eric Andersen [Tue, 1 May 2001 01:49:50 +0000 (01:49 -0000)]
Another hush update from Larry:
Minor improvements. Something is still broken with running
scripts via "hush filename". All the following are now handled
acceptably (matches ash, not bash).
if true; then echo foo1; fi
if
true; then echo foo2; fi
if true; false; then echo bar; else echo foo3; fi
if true || false; then echo foo4; fi
- Larry
Eric Andersen [Tue, 1 May 2001 01:40:34 +0000 (01:40 -0000)]
A patch from Larry to fix pristine source builds (again).
I just can't seem to _not_ break it. Sigh.
Eric Andersen [Mon, 30 Apr 2001 18:18:45 +0000 (18:18 -0000)]
Some more hush.c updates from Larry Doolittle.
Eric Andersen [Mon, 30 Apr 2001 18:18:02 +0000 (18:18 -0000)]
Oops. I was a bit too hasty and also changed applet_name.
Mark Whitley [Mon, 30 Apr 2001 18:17:00 +0000 (18:17 -0000)]
Made new xreadlink function for libbb and changed applets to use it instead of
readlink(2).
Eric Andersen [Mon, 30 Apr 2001 18:08:03 +0000 (18:08 -0000)]
These messages can be .rodata, so make them even more const.
-Erik
Eric Andersen [Mon, 30 Apr 2001 18:07:24 +0000 (18:07 -0000)]
These do not need initial values. Let them live in the bss.
-Erik
Eric Andersen [Mon, 30 Apr 2001 17:52:36 +0000 (17:52 -0000)]
Per suggestion by Matt, make sh.c a real target. There is no
need for the useless sh_link dummy target -- use the real thing.
-Erik
Matt Kraai [Mon, 30 Apr 2001 17:32:43 +0000 (17:32 -0000)]
Fix user permissions of copied directories.
Matt Kraai [Mon, 30 Apr 2001 16:43:21 +0000 (16:43 -0000)]
Simplify permission handling for FIFOs.
Matt Kraai [Mon, 30 Apr 2001 16:37:04 +0000 (16:37 -0000)]
Fix exit status when there is an error copying a file.
Glenn L McGrath [Sun, 29 Apr 2001 00:50:33 +0000 (00:50 -0000)]
Logic reversal for last_char_is
David Kimdon [Sat, 28 Apr 2001 16:37:23 +0000 (16:37 -0000)]
fix to applet_source_list rule so Debian package continues to build
Eric Andersen [Fri, 27 Apr 2001 18:36:43 +0000 (18:36 -0000)]
Matt was complaining. Hopefully this helps the sh.c link situation
Matt Kraai [Fri, 27 Apr 2001 15:40:27 +0000 (15:40 -0000)]
Terminate source correctly when copying symlink. Report and patch by
Brian Webb <webbb@desertscenes.net>.
Eric Andersen [Fri, 27 Apr 2001 07:49:41 +0000 (07:49 -0000)]
Use BUFSIZ for the_command to match size used in cmdedit
Eric Andersen [Fri, 27 Apr 2001 07:26:12 +0000 (07:26 -0000)]
An update to hush from Larry:
It should recover more smoothly from syntax errors, and it now
has a decent guess when the reserved word construct is over
(or not) to control execution and prompting. I took out all the
redundant standalone test copies of libbb routines, but left in a
hook so I can include those for my testing. I'll post that include
file on my web site.
- Larry
Eric Andersen [Thu, 26 Apr 2001 23:29:10 +0000 (23:29 -0000)]
Be a bit more sneaky about the sh.c symlink so you don't need to
do a mke clean for it to happen.
-Erik
Eric Andersen [Thu, 26 Apr 2001 23:23:04 +0000 (23:23 -0000)]
Ignore some generated files
Eric Andersen [Thu, 26 Apr 2001 23:22:31 +0000 (23:22 -0000)]
This is the initial checkin of Larry Doolittle's hush.c, using his
April 25, 2001 snapshot, adjusted a bit by me so it has cmdedit support.
This checkin also removes sh.c. In the future sh.c will be a symlink to
your shell of choice. For now, this symlink will default to pointing to
lash.c (as in the past). If you change the symlink to point to hush.c,
then thats what you will get. This symlink business is a temporary situation,
which will be cleaned up Real Soon Now(tm).
-Erik
Eric Andersen [Thu, 26 Apr 2001 23:10:22 +0000 (23:10 -0000)]
Disable lash
-Erik
Eric Andersen [Thu, 26 Apr 2001 23:06:39 +0000 (23:06 -0000)]
These days busybox.pod is autogenerated, so it should be removed
from CVS.
Eric Andersen [Thu, 26 Apr 2001 19:29:58 +0000 (19:29 -0000)]
A fix from Larry for a corner case where insmod could end up
doing an xrealloc(0).
Matt Kraai [Thu, 26 Apr 2001 18:55:29 +0000 (18:55 -0000)]
Fix handling of permission addition and removal (e.g., o-r).
Eric Andersen [Thu, 26 Apr 2001 18:43:36 +0000 (18:43 -0000)]
Doh. I never allocated storate for the struct stat I am using.
There was just a never initialized pointer.
-Erik
Matt Kraai [Thu, 26 Apr 2001 18:27:47 +0000 (18:27 -0000)]
Fix handling of -R flag.
Eric Andersen [Thu, 26 Apr 2001 15:56:47 +0000 (15:56 -0000)]
Another nice cleanup from Larry. This adds a new last_char_is() function and
uses it to avoid possible buffer underruns whn strlen is zero, and avoid the
possible space-hogging inline of strlen() in several cases.
-Erik
Eric Andersen [Thu, 26 Apr 2001 15:41:51 +0000 (15:41 -0000)]
As Larry pointed out, this the off by one canbe fixed much more elegantly.
Eric Andersen [Thu, 26 Apr 2001 14:56:45 +0000 (14:56 -0000)]
Fix a silly off-by-one error noticed by Santiago Garcia Mantinan <manty@debian.org>
-Erik
Mark Whitley [Wed, 25 Apr 2001 23:49:43 +0000 (23:49 -0000)]
Applied patch from Larry Doolittle to fix pristine build breakage.
Mark Whitley [Wed, 25 Apr 2001 22:08:56 +0000 (22:08 -0000)]
Removed obsoleted BB_FEATURE_RM_INTERACTIVE
Mark Whitley [Wed, 25 Apr 2001 20:41:02 +0000 (20:41 -0000)]
Applied patch from I.Q. to add -s to cmp.
Mark Whitley [Wed, 25 Apr 2001 18:06:21 +0000 (18:06 -0000)]
libbb.h now includes ../busybox.h. This way, files in libbb that have
BB_[FEATURE] #defines won't be ignored. Credit to Magnus Damm for spotting
this.
Eric Andersen [Wed, 25 Apr 2001 17:22:32 +0000 (17:22 -0000)]
Some more cleanups for insmod from Larry.
-Erik
Eric Andersen [Wed, 25 Apr 2001 17:12:33 +0000 (17:12 -0000)]
Larry noticed that chown and chgrp has the version numbers off a bit
for glibc's lchown support. Thanks Larry.
Mark Whitley [Wed, 25 Apr 2001 17:10:30 +0000 (17:10 -0000)]
Moved some #ifdefs down below #include "busybox.h" where they belong.
Mark Whitley [Wed, 25 Apr 2001 17:05:51 +0000 (17:05 -0000)]
Sync'ed up the olympus section between this and stock Config.h
Mark Whitley [Wed, 25 Apr 2001 17:03:40 +0000 (17:03 -0000)]
Fixed a BB_MTAB #define buglet reported by Magnus Damm.
Eric Andersen [Wed, 25 Apr 2001 05:39:18 +0000 (05:39 -0000)]
Move messages.c to libbb. Make each string in messages.c be its own .o file.
This way, we can new get rid of all that tedious #define rubbish we used to
need to enable specific messages. This way is enormously simpler, and as a
bonus also ends up saving us 96 bytes.
-Erik
Eric Andersen [Tue, 24 Apr 2001 21:46:07 +0000 (21:46 -0000)]
Cleanup more carefully after pod2html
Eric Andersen [Tue, 24 Apr 2001 21:41:41 +0000 (21:41 -0000)]
Several cleanups from Larry.
Matt Kraai [Tue, 24 Apr 2001 20:04:18 +0000 (20:04 -0000)]
Rewrote rm.
Eric Andersen [Tue, 24 Apr 2001 18:07:19 +0000 (18:07 -0000)]
Split up chmod_chown_chgrp.c into 3 separate apps. This unfortunately
adds 384 bytes to the overall size. But having each app be standalone
is the Right Thing(tm) so we will just have to live with it.
-Erik
Matt Kraai [Tue, 24 Apr 2001 15:19:04 +0000 (15:19 -0000)]
Update applet define from BB_CP_MV to BB_CP and BB_MV.
Matt Kraai [Tue, 24 Apr 2001 01:30:02 +0000 (01:30 -0000)]
Use generic flag names.
Matt Kraai [Tue, 24 Apr 2001 01:12:33 +0000 (01:12 -0000)]
Move applet_name declaration from busybox.h to libbb.h.
Mark Whitley [Mon, 23 Apr 2001 23:16:20 +0000 (23:16 -0000)]
Applied patch from Larry Doolittle to remove some strlen calls, and add one
paranoia check to avoid buffer underrun. Saves 120 text bytes.
Matt Kraai [Mon, 23 Apr 2001 19:48:26 +0000 (19:48 -0000)]
Remove file obsoleted by cp/mv rewrite.