Commit Graph

944 Commits

Author SHA1 Message Date
Mark Whitley
34623db618 It dawned on me that I would need to grow a char buffer one extra char bigger
to accomodate a trailing '\n'ewline that I append to it later one. This is
only necessary for the case of one inserted, appended, or changed line, but
it's still necessary.
2000-07-14 00:49:59 +00:00
Mark Whitley
02008346c0 Added error checking for edit commands; only a beginning address can be
specified.
2000-07-14 00:13:52 +00:00
Mark Whitley
94074a980c Added support for (a)ppend, (i)nsert, and (c)hange commands to sed. 2000-07-14 00:00:15 +00:00
Mark Whitley
496e33feeb Fixed bug where sed '/foo/p' was printing "invalid command". 2000-07-13 22:52:02 +00:00
Mark Whitley
4f7fe77d07 (Something I should have done in the previous checkin...) Also broke out
substitution command execution from do_sed_command() and put it in it's own
do_subst_command() function.
2000-07-13 20:01:58 +00:00
Mark Whitley
06f3529ada Minor code reorg: Changed the interface to index_of_next_unescaped_slash to an
interface that seems a little more sensible to me. Also broke out s///
expression parsing into it's own subroutine.
2000-07-13 19:58:04 +00:00
Eric Andersen
156959ea93 Fix uninitialized variable.
-Erik
2000-07-13 19:49:12 +00:00
Eric Andersen
f4c022649b Patch from Marc Nijdam <marc_nijdam@hp.com>
> First (of many more) patch of cp_mv to getopt use. I'm using the most
> simplistic approach, just get getopt used,  then worry about a cleaner
> option parsing style using getopt later.
>
> Marc
2000-07-13 18:42:58 +00:00
Mark Whitley
55380700d8 Added a smallish TODO comment. 2000-07-13 17:20:23 +00:00
Eric Andersen
00143ba921 From Matt Kraai <kraai@alumni.carnegiemellon.edu>
> Here is a patch so that tr can handle NULL characters as well.  Give it
> a shot and let me know what you think.  It is against the latest CVS
> version.
>
> In my tests, the following now works as expected.
>
> tr '\0' '\n'
>
> Later,
> Matt
2000-07-13 16:40:41 +00:00
Matt Kraai
ac48461da9 Correct argument parsing and other minor cleanups. 2000-07-13 06:33:12 +00:00
Mark Whitley
37653aaf9c Added some smallish comments to help folks understand why we have two tables
of builtins and the reasoning behind it.
2000-07-12 23:36:17 +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
Eric Andersen
6f96e674b9 Patch from Jon McClintock <jonm@bluemug.com>
>The attached patch adds the ability to parse the actual mode specifier in
>fbset. So now
>
>    fbset -n 640x480-72
>
>Will actually work. I don't know if I've reinvented the wheel though...

 -Erik
2000-07-12 23:01:04 +00:00
Matt Kraai
be84cd4ef6 Always report the applet name when doing error reporting. 2000-07-12 17:02:35 +00:00
Matt Kraai
e58771e73c Use global applet_name instead of local versions. 2000-07-12 15:38:49 +00:00
Matt Kraai
e714bce003 Use global applet_name instead of local versions. 2000-07-12 00:53:06 +00:00
Matt Kraai
3ecbe9f4dc The applet name isn't constant. 2000-07-12 00:43:28 +00:00
Eric Andersen
97426e082a Changed verbiage.
-Erik
2000-07-11 23:06:48 +00:00
Eric Andersen
8fbaeece53 Replaced projects with products/projects.
-Erik
2000-07-11 23:05:38 +00:00
Eric Andersen
68fda241d2 Added the Kerbango Internet Radio to projects/products using BusyBox.
-Erik
2000-07-11 23:03:40 +00:00
Mark Whitley
858c1adf2b Applied patch from Matt Kraai to call destroy_cmd_strs in atexit(), rather
than peppering it throughout the code.
2000-07-11 21:38:47 +00:00
Matt Kraai
7719008a85 Added applet_name to contain the applet name. 2000-07-11 20:03:24 +00:00
Eric Andersen
aec27bca98 Final updates for release.
-Erik
2000-07-11 18:18:40 +00:00
Eric Andersen
960be79964 Final update for the release. 2000-07-11 18:06:01 +00:00
Eric Andersen
be909b1cd5 Forgot to commit these cleanups it seems.
-Erik
2000-07-11 17:52:22 +00:00
Eric Andersen
d006c9e630 More changelog updates
-Erik
2000-07-11 17:45:42 +00:00
Mark Whitley
9ebccb2891 Added changelog entries for grep/sed/regex changes. 2000-07-11 17:43:42 +00:00
Eric Andersen
f1f6d58598 Some changelog updates.
-Erik
2000-07-11 17:42:56 +00:00
Eric Andersen
0c838af50b Re-enable ln -n in the help.
-Erik
2000-07-11 17:38:27 +00:00
Eric Andersen
195fa15caf Another patch from Matt Kraai <kraai@alumni.carnegiemellon.edu>:
>
> The following patch allows ln -n to function like GNU.  It also fixes a
> typo with my previous patch to add support for ln FILE DIRECTORY.  And
> it removes some code that checks the maximum length of the filenames.  I
> can't figure out why that code is necessary.  Anyone know?
>
> Matt
2000-07-11 17:35:32 +00:00
Eric Andersen
61dc057183 Added 'dumpkmap' to allow people to dump a binary keymap, which can then be
loaded in by 'loadkmap' -- submitted by Arne Bernin <arne@matrix.loopback.org>
 -Erik
2000-07-11 17:29:36 +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
Matt Kraai
da9841efc1 Fix dead link.
-Matt
2000-07-11 16:09:01 +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
Mark Whitley
cc54d12ef7 Removed all trace of hand-tooled regexp routines. Bye bye, baby. 2000-07-10 23:07:54 +00:00
Mark Whitley
dd23b8bb43 Added a rule to make tags files for vi(m). 2000-07-10 23:00:47 +00:00
Eric Andersen
c674d70699 Comment on kernel stuff
-Erik
2000-07-10 22:57:14 +00:00
Mark Whitley
6315ce603b Brand, new sed that uses libc regex routines.
There is some common code used by both sed & grep that should be put into
utility.c as per Mat Kraai's suggestions/patch on the mailing list.
Specifically, a common regex_compile() and a regex_subst() function need to be
made.
2000-07-10 22:55:51 +00:00
Eric Andersen
85c552035e More linux kernel header file removal.
-Erik
2000-07-10 22:46:55 +00:00
Eric Andersen
9b2297a34e Remove yet more kernel header dependancies.
-Erik
2000-07-10 20:08:44 +00:00
Eric Andersen
a0053735dc Remove unused variable.
-Erik
2000-07-10 20:08:09 +00:00
Eric Andersen
3849f9bfcc Remove the problematic CTRLCHAR macro.
-Erik
2000-07-10 19:56:47 +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
Mark Whitley
928faac503 Removed unnecessary #include "regexp.h" line from find.c as per Matt Kraai's
suggestion on the mailing list.
2000-07-10 19:29:09 +00:00
Eric Andersen
34e1941c32 Function name cleanup.
-Erik
2000-07-10 18:47:24 +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
a03d86cf54 Patch from Matt Kraai <kraai@alumni.carnegiemellon.edu>:
GNU tr complains on the following:

$ tr a ''
tr: when not truncating set1, string2 must be non-empty

BusyBox tr does not complain:

$ tr a ''
a
^D
0

It should result in an error, not in some spurious output.  The attached
patch generates an error.

Matt
2000-07-10 16:38:50 +00:00
Mark Whitley
44735f8744 Applied patch from Matt Kraai as per his email:
However, the case of

	grep foo$ file

didn't work, due to a problem with the flags used in regular expression
compilation.  The attached patch fixes this problem.

---patch-------
Index: grep.c
===================================================================
RCS file: /var/cvs/busybox/grep.c,v
retrieving revision 1.30
diff -u -r1.30 grep.c
--- grep.c      2000/07/04 22:17:01     1.30
+++ grep.c      2000/07/10 08:57:04
@@ -141,8 +141,10 @@
        if (argv[optind] == NULL)
                usage(grep_usage);

-       /* compile the regular expression */
-       reflags = REG_NOSUB; /* we're not going to mess with sub-expressions
        */
+       /* compile the regular expression
+        * we're not going to mess with sub-expressions, and we need to
+        * treat newlines right. */
+       reflags = REG_NOSUB | REG_NEWLINE;
        if (ignore_case)
                reflags |= REG_ICASE;
        if ((ret = regcomp(&regex, argv[optind], reflags)) != 0) {
---patch-------

Thanks, Matt, it works great.
2000-07-10 15:50:26 +00:00
Eric Andersen
999bf72f49 More portability updates. Now compiles cleanly vs glibc, libc5, and uclibc
(except for mkfs_minix and fsck_minix -- and it doesn't yet link vs uclibc due
to missing stuff in the library).
 -Erik
2000-07-09 06:59:58 +00:00