Commit Graph

226 Commits (e0bf91d7c612619526772605890538f0c3e44c05)

Author SHA1 Message Date
Matt Kraai 0dab829977 Add missing newlines to error messages. 2000-12-18 03:08:29 +00:00
Matt Kraai bfa7967c4a Rewrite nc to be simpler, smaller, and to check syscalls for errors. 2000-12-15 22:34:34 +00:00
Glenn L McGrath e699b9f0fb Remove defines for ar that arent needed 2000-12-15 06:50:54 +00:00
Eric Andersen bd193a42a5 Fix from Matt Kraai -- a better way to NULL terminate strings for the
my_* passwd and group routines.  I should have thought of doing it
this way...
2000-12-13 01:52:39 +00:00
Eric Andersen 69a6b2d4ae Fix from Matt Kraai so basename / will work as expected. 2000-12-12 23:13:54 +00:00
Eric Andersen a2d61e761e Some compile fixes found by Larry Doolittle 2000-12-12 16:55:56 +00:00
Eric Andersen 2d6282bb37 Matt Kraai pointed out that we can rely on strncpy to NULL
terminate shorter cases, so we can save a few cycles...
2000-12-11 20:33:46 +00:00
Eric Andersen 5c365da884 Fix non-NULL terminated strings. 2000-12-11 19:37:19 +00:00
Eric Andersen f3b2b52b58 Patch from Matt Kraai to enable proxy support. 2000-12-07 22:42:11 +00:00
Mark Whitley f57c944e09 Changed names of functions in utility.c and all affected files, to make
compliant with the style guide. Everybody rebuild your tags file!
2000-12-07 19:56:48 +00:00
Mark Whitley 26a3adb244 Changed some #define strings to static const char [] variables. Tested ls
after changing, it worked.
2000-12-05 20:10:27 +00:00
Mark Whitley 4758368505 Fixed the comments to match the code and renamed the function to a (hopefully)
more descriptive name, and as per the style guide.
2000-12-05 20:03:17 +00:00
Mark Whitley cf61fe14ae Applied patch from Matt Kraai to add v*error functions for handling vararg
lists in a safe 'n sane fashion.
2000-12-05 19:27:13 +00:00
Matt Kraai d27753afd9 Use perrorMsg instead of perror and keep removing files if we encounter
an error.
2000-12-05 05:11:41 +00:00
Matt Kraai cabafae7b0 Note new dependency. 2000-11-30 04:55:40 +00:00
Eric Andersen 9bd71e8323 Add "\r" to utility.c:process_escape_sequence() (from email about
"echo vs. optarg" from Larry Doolittle Tue, 28 Nov 2000 10:36:04 -0800)
 -Erik
2000-11-29 23:07:57 +00:00
Eric Andersen e5aef92e22 Fix up builtin overrides, and hack in the binary search for finding
matching applets into the shell.
2000-11-17 18:25:26 +00:00
Eric Andersen e790ddb2e1 Add BB_CMP to xfopen 2000-11-17 06:50:42 +00:00
Eric Andersen ef936da7c5 Fix uname problem that was breaking poweroff. 2000-10-30 17:22:04 +00:00
Matt Kraai ef5529b278 Added a new perrorMsg function, cleanup up error handling, fixed TRUE/FALSE
uses, and other minor fixes.
2000-10-25 17:00:36 +00:00
Matt Kraai 324a778f31 Added a fatalPerror function to simplify error handling. 2000-10-25 15:10:08 +00:00
Matt Kraai 4f94e826cf Remove broken error test found by Bryan Rittmeyer <bryan@ixiacom.com>. 2000-10-16 16:22:27 +00:00
Eric Andersen 7a86e61a54 Patch from Matt Kraai so wc will return a proper error code
when failing to open a file, and will not use file when it
didn't open the file.
 -Erik
2000-10-09 18:21:44 +00:00
Eric Andersen ba1ff9b4eb Apply patch from Giulio Orsero <giulioo@pobox.com> to ensure
get_last_path_component is defined under all configurations,
 -Erik
2000-10-01 17:01:36 +00:00
Matt Kraai c0321f9bc6 Rewrote head to perservere when it can't open a file, and share code
with cat.
2000-09-27 04:09:22 +00:00
Matt Kraai e7c1af1e0d Continue concatenating files even if we can't open one. 2000-09-27 03:01:40 +00:00
Matt Kraai bbaef66b3f Consolidate handling of some fopen failures. 2000-09-27 02:43:35 +00:00
Matt Kraai e0bcce09ba Rewrote uniq to be less than a third of the size, and fixed some other
minor problems.
2000-09-27 02:29:39 +00:00
Eric Andersen 3570a34de4 Renamed "internal.h" to the more sensible "busybox.h".
-Erik
2000-09-25 21:45:58 +00:00
Eric Andersen 944be90b21 Remove a now unneeded check 2000-09-25 16:58:39 +00:00
Eric Andersen 285b446d17 Fix potential memory overrun... 2000-09-23 19:56:46 +00:00
Eric Andersen 624cc771da More portable handling of loop header files, as done in util-linux 2000-09-21 02:04:51 +00:00
Eric Andersen 31e6829bd8 Fix the halt/reboot/poweroff segfault when used from within an initrd...
-Erik
2000-09-14 21:12:20 +00:00
Matt Kraai 322ae93a5e Fix calls to {m,c,re}alloc so that they use x{m,c,re}alloc instead of
segfaulting or handling errors the same way themselves.
2000-09-13 02:46:14 +00:00
Glenn L McGrath ac19b7e032 Extra defines for ar 2000-09-11 05:06:13 +00:00
Eric Andersen 11c655295c New ls sorting patch, as written by Sterling Huxley, and then updated
by kent robotti.  I then updated it to use my_getpwuid and my_getgrgid
(per busybox policy).
 -Erik
2000-09-07 17:24:47 +00:00
Eric Andersen ebee301c8b Fixed for when BB_CP_MV is enabled. 2000-09-05 22:17:22 +00:00
Eric Andersen d13ebff163 Add BB_SH to get_last_path_component()... Fix thanks to
Bj�rn Eriksson.
2000-09-05 21:50:52 +00:00
Eric Andersen 4e61db2284 Add an extra sanity check in parse_mode
-Erik
2000-09-01 00:06:17 +00:00
Matt Kraai ab60f6987a Removed dead regular expression code. 2000-08-28 03:12:30 +00:00
Matt Kraai 88cc3057fd Compile xstrdup and xstrndup iff they are needed. 2000-08-26 16:52:28 +00:00
Glenn L McGrath 06aeb6c417 ar.c now uses a linked list to process headers, uses getopt, new internal function extractAr(srcFD, dstFd, filename) to make it easily accessable to other busybox functions.
moved copySubFile from ar.c to utilities.c

modified dd.c to use fullWrite

modified copyFile in utilities.c to use copySubFile
2000-08-25 03:50:10 +00:00
Eric Andersen 202995c612 Yet another patch to fixup lsmod
-Erik
2000-08-21 19:40:42 +00:00
Eric Andersen c86e5e6145 Some leftover stuff I forgot to commit for the lsmod change.
-Erik
2000-08-21 19:38:49 +00:00
Eric Andersen f9ca653faa Added fix from David Vrabel <dvrabel@arcom.co.uk> for a
buffer overrun in find_real_root_device(), fixing bug #1019
 -Erik
2000-08-11 17:45:02 +00:00
Eric Andersen 88f50b6bf5 Some #include updates.
-Erik
2000-08-10 17:59:11 +00:00
Eric Andersen fdd5103348 Merge in two patches from Dave Cinege:
the first is a cleanup of tar --exclude
    the second changes mount so mtab works more as it should, and
    also allows mount to use the traditional short form (i.e.
    'mount / -o remount,rw' now works.

While inside tar, I changed it to use getopt...
 -Erik
2000-08-02 18:48:26 +00:00
Matt Kraai 0f8f7b8a35 Fix bug 1017, which reports that insmod segfaults when /lib/modules doesn't
exist.  Also allow early search termination (per the comments).
2000-08-01 18:16:56 +00:00
Eric Andersen 501c88b245 More sh updates (with related changes to everything else). Switched
to using getopt and cleaned up the resulting mess.  if-then-else-fi
is now basically working (given a bunch of constraints).
 -Erik
2000-07-28 15:14:45 +00:00
Eric Andersen ae6eae02dd Moved some code and add a coupld #defines to support use of dmalloc.
-Erik
2000-07-19 17:35:54 +00:00
Pavel Roskin 9c5fcc3408 New message added to messages.c: full_version
Used where possible
2000-07-17 23:45:12 +00:00
Pavel Roskin cc8a66b113 Moved functions used by "lsmod" from cat.c to utility.c
Adjusted to make lsmod and sh compilable as standalone apps.
Comment fixes
2000-07-17 20:18:42 +00:00
Pavel Roskin 21ddb38fcf Now it's possible to compile Busybox with only one app defined
(unless it's lsmod, to be fixed by the next commit)
2000-07-17 19:31:54 +00:00
Eric Andersen fad04fdd12 More cleanups.
-Erik
2000-07-14 06:49:52 +00:00
Matt Kraai d537a95fdb Use errorMsg rather than fprintf. 2000-07-14 01:51:25 +00:00
Mark Whitley c41e8c840f Changed bb_regcomp to xregcomp and #if 0'ed out destroy_cmd_strs in sed.c
(maybe I'll remove it later).
2000-07-12 23:35:21 +00:00
Matt Kraai be84cd4ef6 Always report the applet name when doing error reporting. 2000-07-12 17:02:35 +00:00
Eric Andersen be909b1cd5 Forgot to commit these cleanups it seems.
-Erik
2000-07-11 17:52:22 +00:00
Mark Whitley df5f6ba115 Applied patch from Matt Kraai which does the following:
- adds case-insensitive matching in sed s/// epxressions
 - consolodates common regcomp code in grep & sed into bb_regcomp and put in
   utility.c
 - cleans up a bunch of cruft
2000-07-11 16:53:56 +00:00
Eric Andersen da1d1e763d Fixed NFS so it supports 2.4.x kernels and NFSv3. Should close bug #1009.
-Erik
2000-07-10 23:39:44 +00:00
Eric Andersen c674d70699 Comment on kernel stuff
-Erik
2000-07-10 22:57:14 +00:00
Eric Andersen 9b2297a34e Remove yet more kernel header dependancies.
-Erik
2000-07-10 20:08:44 +00:00
Mark Whitley 9a8243aa1e Put the GROWBY variable inside the get_line_from_file function, as that is the
only function where it's used and it's always good to keep the namespace
clean. :-)
2000-07-10 19:31:31 +00:00
Eric Andersen 0b4551faf5 From Matt Kraai <kraai@alumni.carnegiemellon.edu>:
Howdy,

Bug #1006 reports that

ln -s /tmp/foo .

does not work correctly.  In fact, it appears that any instantiation of

ln -s FILE... DIRECTORY

does not work.  The following patch adds support for this form, which
then fixes the particular instance noted in the bug report.

In the process, I needed the basename function.  This appears in the
string.h provided by glibc, but not uC-libc.  So I wrote my own to go in
utility.c, called get_last_path_component.  I also modified the basename
utility to use this function.

At some point it might be desirous to use the basename from the library
if it exists, and otherwise compile our own.  But I don't know how to do
this.

Matt
2000-07-10 16:44:03 +00:00
Eric Andersen 161cf93404 Fix a bug in get_line_from_file. If the length of the line is (GROWBY * n) +
GROWBY - 1, then it writes the null character just after the buffer.  Yipe.
Fix thanks to Matt Kraai <kraai@alumni.carnegiemellon.edu> Thanks Matt!
 -Erik
2000-07-09 02:38:01 +00:00
Eric Andersen a57ba4db64 Argh. More cross libc cleanup. Should be ok now...
-Erik
2000-07-08 19:20:49 +00:00
Eric Andersen bd22ed8067 Update files to reduce dependance on kernel version...
-Erik
2000-07-08 18:55:24 +00:00
Eric Andersen f86aee74ce setkeycodes needs get_console_fd(), so if you disable chvt and deallocvt, but
leave setkeycodes active, busybox will not link.  Also fix a trivial
use-before-initialize warning.  Both fixes from Jon McClintock
<jonm@bluemug.com>.

 -Erik
2000-07-06 17:20:46 +00:00
Eric Andersen 89bc256c94 Remove misguided klude around for 2.4.x-test* brokenness. Al Viro
will be removing this stuff from /proc/mounts real soon now I am assured.
 -Erik
2000-07-05 19:29:59 +00:00
Eric Andersen f7cf2f7ef9 * Fix to tr so it recognizes standard escape sequences. Merged common
escape seq. code from tr and echo into utility.c.  Fix thanks to
    Matt Kraai <kraai@alumni.carnegiemellon.edu>.
* This should close Bug #1015.  Please test.
 -Erik
2000-07-05 17:26:35 +00:00
Mark Whitley 1ca41775bb Yanked out the cstring_alloc() and cstring_lineFromFile() functions from
utility.c and replaced them with get_line_from_file() from the new grep.c.
Also changed declaration in internal.h and replaced instances of
cstring_lineFromFile() in dc.c and sort.c with get_line_from_file(). Tested
them and they worked fine.
2000-06-28 22:15:26 +00:00
Eric Andersen a44790f539 Better cross libc support.
-Erik
2000-06-28 20:11:28 +00:00
Eric Andersen 10dc9d4d17 Updates to handle Linux 2.4.0 kernels (kludged around the "none" entries in
/proc/mounts, added a hack to make sysinfo work with both old and new kernels).
 -Erik
2000-06-26 10:45:52 +00:00
John Beppu c7ccfc99fc + utility.c
CSTRING_BUFFER_LENGTH = 1024 /* so it recurses less often */
+ grep.c
  uses cstring_lineFromFile(), and doesn't ever say
  Line is too long, anymore
2000-06-12 23:39:04 +00:00
Eric Andersen 9f16d61408 Added a slightly modified version of Ron Alder's insmod patch.
Very cool stuff.
 -Erik
2000-06-12 23:11:16 +00:00
Eric Andersen 3199bda52e Fix /etc/passwd misspelling.
-Erik
2000-06-02 17:38:18 +00:00
Eric Andersen 86ab8a32bd A number of additional fixed from Pavel Roskin, note some more bugs in the
TODO list.  Add Glenn to the Authors list for writing a mini ar for BusyBox,
which is now included.
 -Erik
2000-06-02 03:21:42 +00:00
Erik Andersen 330fd2b576 More libc portability updates, add in the website (which has not been
archived previously).  Wrote 'which' during the meeting today.
 -Erik
2000-05-19 05:35:19 +00:00
Erik Andersen 5b46d792f1 Some more portability updates
-Erik
2000-05-17 05:24:24 +00:00
Erik Andersen 23dea9b712 So much for my evil optimization. Doesn't seem to work. Will test
more on it later.
 -Erik
2000-05-13 00:28:25 +00:00
Erik Andersen 7ab9c7ee52 Lots of updates. Finished implementing BB_FEATURE_TRIVIAL_HELP
which lets you compile out most of the "--help" output, saving
up to 17k.

Renamed mnc to nc.
 -Erik
2000-05-12 19:41:47 +00:00
Erik Andersen 59b9e87024 * cp -fa now works as expected for symlinks (it didn't before)
* zcat works again (wasn't working since option parsing was broken)
* more doc updates/more support for BB_FEATURE_SIMPLE_HELP
 -Erik
2000-05-10 05:05:45 +00:00
Erik Andersen 691f49d3c1 Fix umount dependency on find_real_root_device_name
-Erik
2000-05-08 17:56:25 +00:00
Erik Andersen 5afc864422 More stuff
-Erik
2000-05-02 00:07:56 +00:00
Erik Andersen 94f5e0ba7c Some accrued fixes/updates.
* cp/mv now accepts (and ignores) the -f flag, since it always
	does force anyway
    * tail can now accept -<num> commands (e.g. -10) for better
	compatibility with the standard tail command
    * added a simple id implementation; doesn't support supp. groups yet
2000-05-01 19:10:52 +00:00
Erik Andersen 4f3f757d56 Latest and greatest. Some effort at libc5 (aiming towards newlib)
compatability.
 -Erik
2000-04-28 00:18:56 +00:00
Erik Andersen 9a8195cc03 Fix creation of /linuxrc
-Erik
2000-04-18 23:32:10 +00:00
Erik Andersen b9167cb67f Really fix the killall segfault this time.
-Erik
2000-04-18 22:41:30 +00:00
Erik Andersen 632bb57135 Fix symlink following bug in chmod -R and friends. Allow SYSV style
'chown foo:bar' in addition to 'chown foo.bar', and fix a bug in the
busybox globbing routine such that 'find /dir -name [i]' no longer
segfaults.
 -Erik
2000-04-18 22:09:06 +00:00
Erik Andersen c366050a23 Fix stupid bug (wrong variable)
-Erik
2000-04-18 21:18:57 +00:00
Erik Andersen 0a64de9b4f More little stuff.
-Erik
2000-04-18 20:00:03 +00:00
Erik Andersen 229dd2b905 Fix killall
-Erik
2000-04-18 18:38:29 +00:00
Erik Andersen a6c752201e Updates
-Erik
2000-04-18 00:00:52 +00:00
John Beppu 5a728cfdfe + in the interest of robustness, I added
utility.c :: cstring_alloc()
  utility.c :: cstring_lineFromFile()	/* they're at the bottom */
  so that I could read in lines of arbitrary length from FILE*s
  (instead of using fgets(huge_ass_buffer,...)).
+ I tested it out on sort, and it seems to be fine.
2000-04-17 04:22:09 +00:00
Erik Andersen 825aead68b Patch to make killall actually kill all PIDs with the specified name,
rather then busylooping trying to kill the first one until it dies.
Should be more efficient now, and will only send one signal to each
specified process.
 -Erik
2000-04-07 06:00:07 +00:00
Erik Andersen 5661fe078e Tar now works perfectly. It behaves much better now then it
used to.  Only thing left to do is add in exclude (-X) option.
 -Erik
2000-04-05 01:00:52 +00:00
Erik Andersen 3364d78b18 Yet another installment in the ongoing tar saga
-Erik
2000-03-28 00:58:14 +00:00
Erik Andersen 1ad302ac90 The new tar for busybox is now done, and works just fine
for extracting files.  Creation of tarballs is next...
 -Erik
2000-03-24 00:54:46 +00:00
Erik Andersen 298854f029 My latest ramblings.
-Erik
2000-03-23 01:09:18 +00:00
Erik Andersen ec5bd90916 Use the nice new find_real_root_device function to find the
name of the root device, instead of having libc read whatever
lies happen to be in /etc/mtab.
 -Erik
2000-03-22 07:12:05 +00:00