Commit Graph

3336 Commits

Author SHA1 Message Date
Eric Andersen
341170b012 Remove all the llseek junk and just use regular old lseek. When DOLFS is
enabled, regular lseek is transparently promoted to lseek64 anyways, rendering
the llseek stuff pointless.
 -Erik
2003-07-14 19:03:14 +00:00
Eric Andersen
feb283a437 On second thought, this is a better way to fix things 2003-07-14 08:49:43 +00:00
Eric Andersen
9059e3a37b Don't use Linux kernel headers
-Erik
2003-07-14 08:46:30 +00:00
Eric Andersen
f890f9dd16 This declaration no longer needs to hide when using dmalloc 2003-07-07 06:10:31 +00:00
Eric Andersen
e3393513c5 Be certain to not abort prematurely when reading stuff from pipes. 2003-07-05 23:10:27 +00:00
Eric Andersen
9f894f4062 Fixup compile problem with dmalloc 2003-07-05 22:15:43 +00:00
Eric Andersen
3c5a83c567 As noted by Thomas Eckert:
bb-tar "cjf" does not create a valid tbz2-archive -- if fact the result is a
    plain tar-file (no compression) -- but does not warn about the unrecognized
    parameter combination "cj" (bb does not have bzip2-compression yet, right?).

to fix this I have added an error message stating this does not work.

He also reported

    cosmetic: versose "-v" does not show any output when used with "create"

which I have now fixed as well.

 -Erik
2003-07-05 21:56:55 +00:00
Eric Andersen
d5a2780aa2 oops 2003-07-05 08:39:47 +00:00
Eric Andersen
3c8064ff69 Daniel writes:
I've found a problem with job control when the init process is restarted.

If the system boots for the first time, I get job control on a serial terminal -
no problems. However, when I restart init by issuing "init -q", then the shell
no longer has job control.

I traced this a problem in console_init in the file init.c. What was happening
after the restart is that the first compare

    if (ioctl(0, TIOCGSERIAL, &sr) == 0) {
	...
    } else if (ioctl(0, VT_GETSTATE, &vt) == 0) {
	...
    } else {
	... // assume /dev/console
    }

returned error and subsequently the code assumes /dev/console as the console,
which does not support job control.

Checking the errno after the first call showed that the system was complaining
about the file descriptor. This is probably because the previous init process
had closed all its file descriptors which the new init process had inherited.
2003-07-05 08:29:01 +00:00
Eric Andersen
40ea66cd9d Patch from Lars Kellogg-Stedman:
Glibc 2.1.3 (used by the Hardhat Linux SDK distributed by Cyclades)
    does not define IF_NAMESIZE in net/if.h.
2003-07-05 08:00:17 +00:00
Eric Andersen
7207b88d06 Patch from Lars Kellogg-Stedman:
This patch fixes endian problems with get_netmask().  I don't know if
    this is the cleanest solution, but it makes 'ipcalc -n' work on both
    an i386 system and a ppc system.
2003-07-05 07:59:30 +00:00
Eric Andersen
65e20a33c2 Patch from Kent Robotti adding a bunch of needed docs!
-Erik
2003-07-05 07:52:35 +00:00
Eric Andersen
01c3d40f3c Add the fdformat utility, based on a patch from Kent Robotti,
but I then completely reworked the fdformat utility to comply
with the current busybox way of doing things.
2003-07-05 07:51:31 +00:00
Eric Andersen
a21f4e018a Glenn McGrath (bug1) isaway from my email till the 17th, but caught me on IRC.
He took a look into the recent reports of tar problems, and found an obvious
typo in last_patch91 from vodz which converted tar to use bb_getopt_ulflags.
2003-07-05 06:38:41 +00:00
Eric Andersen
e968ee3f70 Patch from Vladimir N. Oleynik (vodz):
Last patch have changed for "ipcalc" applet with usage new get_ulflags()
    function.
2003-07-03 10:28:07 +00:00
Eric Andersen
8a93179c14 Patch from Lars Kellogg-Stedman:
Erik, et al.

    The attached patch makes the following changes to networking/ifupdown.c:

    (1) It swaps all calls to 'ip link set' and 'ip addr set'.  This solves
    two problems:

      (a) Calling 'ip link set <dev> up' before assigning an address
      generates an error message, and

      (b) Under User Mode Linux, running in with ethernet interfaces
      in daemon mode, the MAC address for an interface is selected
      based on the IP address assigned to that interface.  If the
      interface is brought up before being assigned an IP address,
      it gets a null MAC.

    (2) It further cleans up run_mapping().

    This patch is against ifupdown.c revision 1.25.

    -- Lars
2003-07-03 10:20:29 +00:00
Eric Andersen
bccb31533e Fix stupid unterminated parenthesis 2003-07-03 10:19:20 +00:00
Eric Andersen
9e48045e45 Patch from Russell Coker:
I've attached my latest SE Linux patch for busybox against the latest CVS
    version of busybox.
2003-07-03 10:07:04 +00:00
Eric Andersen
c48d49ad98 Patch from Kent Robotti updating fdisk to version v2.11z 2003-07-03 10:02:32 +00:00
Eric Andersen
e5920a2dc0 Patch from Kent Robotti adding a bunch of menuconfig help 2003-07-03 10:00:15 +00:00
Eric Andersen
a5c488449e Using safe_read seems, well, safer... 2003-07-03 09:48:07 +00:00
Eric Andersen
61f6db130e As implemented, sha1sum would sometimes give the wrong answer.
This fixes it and uses faster sha1 code from Dr. Gladman.
 -Erik
2003-07-03 09:41:41 +00:00
Eric Andersen
a63d09a517 Patch from Pavel Roskin to fixup toplevel help text 2003-06-30 18:14:36 +00:00
Eric Andersen
b01ed65ad2 Apply last_patch93 from vodz:
andersen@busybox.net wrote:
    >Message: 4
    >Modified Files:
    >       init.c
    >Log Message:
    >Remove code for unsupported kernel versions

    Hmm. Current init.c have check >= 2.2.0 kernel one time too.
    Ok. Last patch removed this point and move common init code to new file for
    /init dir
2003-06-27 17:08:15 +00:00
Eric Andersen
0b0d393347 Remove bdflush garbage, which is only relevant to unsupported
kernel versions
2003-06-27 05:46:29 +00:00
Eric Andersen
4a2dcd904c oops. make this actually work as intended.... 2003-06-26 23:55:55 +00:00
Eric Andersen
7c512439b2 Make sure we end up with a unix2dos link to busybox 2003-06-26 21:53:51 +00:00
Eric Andersen
f60d4b491a Oops. 2003-06-26 18:01:43 +00:00
Eric Andersen
27cb6846d7 last_patch91 from vodz to convert tar to use bb_getopt_ulflags 2003-06-26 09:07:59 +00:00
Eric Andersen
a3bb3e6e0b Geir Thomassen wrote, regarding networking/httpd.c line 1358
Hello, I think the test for an unconfigured httpd is wrong in
    the CVS (busybox-unstable-20030620.tar.bz2)

    flg_deny_all is default 0

vodz then wrote:

    Oops. You are right.
    Also, this mistake haved from two place.
    Last patch rewroted to my new get_ularg() function for overcompensate size
    from this error found ;-)
2003-06-26 09:05:32 +00:00
Eric Andersen
fd10c70521 Per patch from Nick Fedchik, use SHADOW_FILE, not "/etc/shadow".
Change fopen to bb_xfopen
2003-06-26 08:53:49 +00:00
Eric Andersen
1c25ba9de1 Oops. As Andrew Dennison just noticed, I left a stray
space in the Makefile, thereby totally breaking it.
2003-06-25 05:18:48 +00:00
Eric Andersen
b6071ea5cb Regenerate the busybox.links file when the .config changes 2003-06-25 03:26:04 +00:00
Glenn L McGrath
655d814d75 New applet: patch, applies a unified diff 2003-06-22 15:32:41 +00:00
Glenn L McGrath
a0b3705fa1 Save a few bytes by using bb_getopt_ulflags and a few other minor
improvments
2003-06-22 06:59:34 +00:00
Eric Andersen
f0f754aeaf Based on a tinylogin patch from Philip Blundell, add several
additional options to adduser.
 -Erik
2003-06-21 20:03:07 +00:00
Eric Andersen
9d9cecfd63 Fix a silly bug I introduced yesterday 2003-06-21 09:05:49 +00:00
Eric Andersen
3c8bca364d Fixup whitespace handing, fixing some annoying behavior and
a couple of segfaults
2003-06-20 10:02:29 +00:00
Eric Andersen
25ea42de9b Fall back to looking in /lib/modules/modules.dep if
/lib/modules/<kernel version>/modules.dep is missing
2003-06-20 09:57:30 +00:00
Eric Andersen
908e362133 Patch from Andrew Dennison:
I've had some issues with modprobe which I reported a few months ago. This
is still an issue so I decided to sort it out.

The attached diff includes the changes against the unstable cvs tree that
work for me.

Changes are:
mod_process() will report success if the module at the head of the list
loads successfully. It will also report success if any module unloads
successfully.
The net result being that modprobe will succeed in the cases outlined below.
I've also added error reporting to modprobe -r. Previously it would silently
fail (but report success) if the module could not be unloaded.

Andrew
2003-06-20 09:56:37 +00:00
Eric Andersen
9d7f0f0fe8 Somewhere in the 2.4.x kernel series, /proc/mounts was changed to display a
"rootfs" entry as well as the traditional "/dev/root" entry.  This caused
applets such as mount and df to display two root filesystem entries....

This teaches the relevant utilities to ignore the "rootfs" entry.
 -Erik
2003-06-20 09:36:49 +00:00
Eric Andersen
dd92c77bb0 Don't shadow a paramater 2003-06-20 09:25:34 +00:00
Eric Andersen
0cc7e6236a Fix a couple vars that could be used uninitialized 2003-06-20 09:23:34 +00:00
Eric Andersen
2a41ec6c63 use an explicit cast on some types that change size when
large file support is enabled.
2003-06-20 09:22:12 +00:00
Eric Andersen
1b2e7c3b2a Make gcc not whine about "deprecated use of label at end of compound statement" 2003-06-20 09:20:28 +00:00
Eric Andersen
c9e7024924 Add prototype update missing from last_patch89. Fix screwy
formatting in cut.
2003-06-20 09:16:00 +00:00
Eric Andersen
0f08e53535 Patch from Lars Kellogg-Stedman:
I'm building BusyBox using a development kit for MontaVista Hardhat Linux
(PPC) -- which, at least in this instance, is based around kernel 2.2.14.
I've had to massage a few files in networking/libiproute/ to make it
compile.  Specifically:

  (1) Added a #include <sys/uio.h> for the iovec structure in
      libnetlink.c,

  (2) Put ifdefs in ll_types.c and ll_proto.c around various
      constants (ETH_P_xxx and ARPHRD_xxx) that weren't defined,

  (3) Make do_changename() in iplink.c require a kernel >=
      2.4.0 -- the ifr structure in my environment doesn't
      have the ifr_name attribute.  I've assumed this is
      a kernel dependency -- let me know if I ought to be
      checking something else.

      In the absence of the correct kernel, do_changename()
      always returns 0.

Attached is a patch against the current CVS that will make these changes.

-- Lars
2003-06-20 09:05:00 +00:00
Eric Andersen
8876fb2f59 last_patch89 from vodz:
Manuel,

    I rewrite bb_getopt_ulflags() function for more universal usage.
    My version support now:
    - options with arguments (optional arg as GNU extension also)
    - complementaly and/or incomplementaly and/or incongruously and/or list
    options
    - long_opt (all applets may have long option, add supporting is trivial)
    This realisation full compatibile from your version.
    Code size grow 480 bytes, but only coreutils/* over compensate this size
    after using new function. Last patch reduced over 800 bytes and not full
    applied to all. "mkdir" and "mv" applets have long_opt now for demonstrate
    trivial addition support long_opt with usage new bb_getopt_ulflags().
    Complementaly and/or incomplementaly and/or incongruously and/or list options
    logic is not trivial, but new "cut" and "grep" applets using this logic
    for examples with full demostrating. New "grep" applet reduced over 300
    bytes.

    Mark,
    Also. I removed bug from "grep" applet.
    $ echo a b | busybox grep -e a b
    a b
    a b
    But right is printing one only.

    --w
    vodz
2003-06-20 09:01:58 +00:00
Eric Andersen
dfce3536ac Fix rpm usage msg 2003-06-15 07:00:54 +00:00
Eric Andersen
a8da17acef Add missing pieces from vodz' last_patch88 2003-06-14 02:57:53 +00:00