Commit Graph

192 Commits

Author SHA1 Message Date
Glenn L McGrath
0177ce1256 Patch from Mike Snitzer to fix return codes.
"I have a need to _really_ know if the interface was properly configured
via ifup so I made busybox's ifupdown pass the return codes through rather
than dropping them on the floor."

"All the functions in ifupdown.c return 1 on success and 0 on failure
(which happens to the opposite of standard practices but whatever).
So it is important for all these functions to not blindly return 1."

"The problem with blindly returning ret, even if it is != 1, is the
callers expect a 0 or 1 and accumulate the return codes.  So a function that
makes 3 calls to execute will have a value of 3 accumulated.  That value
of 1 (success) was almost always returned even if 1 of the commands in the
command sequence failed.  The attached patch fixes the lack of checking
to verify thar result == expected_reult."
2004-07-21 23:56:31 +00:00
Glenn L McGrath
469a1ead53 Patch from Mike Snitzer, bring down dhclient using its correct pid, fix
a grammatical error.
2004-07-21 12:21:39 +00:00
Eric Andersen
5e136f269b Prevent "bootp_down' was declared implicitly extern' and later `static'" warning 2004-07-20 06:35:54 +00:00
Eric Andersen
fe9b9cdfa5 Paul Fox writes:
hi --

working with ifupdown, i've found a couple of buglets --
the wrong string is passed to an error message.

paul
2004-06-29 00:48:30 +00:00
Glenn L McGrath
c6992feee3 Update my email address, document some of my tasks in the AUTHORS file 2004-04-25 05:11:19 +00:00
Eric Andersen
238e354b58 Eric Spakman noticed that ifdown' will attempt to run 'ifconfig'
even if built with CONFIG_FEATURE_IFUPDOWN_IP when shutting down
a dhcp connection.
2004-04-12 20:57:17 +00:00
Eric Andersen
c7bda1ce65 Remove trailing whitespace. Update copyright to include 2004. 2004-03-15 08:29:22 +00:00
Eric Andersen
658f8b1d1a Manousaridis Angelos writes:
Hello,

I have been using busybox for some time now, for an ARM based platform.
I was very pleased when I tried the 1.00preX series, with all the new
utilities and daemons.

I found out that the ifupdown in busybox does not behave exaclty like
the debian version. Then the pre-up script fails, the interface is
getting up. Also when the post-up script fails the return value is
ignored. Actually everything is always run and the return value is
always true. I looked at the original implementation from debian and
fixed the busybox version to do the same. A patch is attached if anyone
is interested.
2003-12-19 10:46:00 +00:00
Eric Andersen
eb213bd2a2 As vodz just pointed out, I screwup up the call to bb_xasprintf! 2003-09-12 08:39:05 +00:00
Eric Andersen
51ed242ad6 Invoke run-parts on /etc/network/if-*.d per the behavior of
the upstream ifupdown code...
2003-09-12 05:59:53 +00:00
Glenn L McGrath
dc4e75ef7c move all "-/bin/sh" "/bin/sh" and "sh" to libbb/messages.c file as one
constant.
Vodz last_patch_107
2003-09-02 02:36:18 +00:00
Glenn L McGrath
62b031fb82 label's dont work in v4 tunnels, patch by Eric Spakman 2003-08-29 07:47:52 +00:00
Eric Andersen
fdd2a0f318 Eric Spakman writes:
The attached patch adds "mtu" and "hwaddress" to the inet6 method and
"mtu", "hwaddr" and "pointopoint" to the inet4 method (just like in
the ifupdown part).
Note: "hwaddress" can't be used with the busybox ip applet (this
function isn't implemented in bb ip yet), but it can be of use with
an external "full blown" ip package.

The patch also removes "label" from the loopback configuration,
labels (subinterfaces) aren't used with loopback interfaces.

It further solves a problem in the bootp method, "ifconfig down
%interface%" should be "ifconfig %interface% down" and it's now also
possible to use ip with bootp.

The patch is fully tested with both busybox ip and "stand-alone" ip
and I didn't saw any problems.
2003-08-06 09:23:44 +00:00
Eric Andersen
76097edc0e Eric Spakman writes:
The recent changes in ifupdown where all calls to 'ip link set' and
'ip addr set' are swapped give some problems with v4tunnels.
For plain ipv4 and ipv6 interfaces it works correct, other methods
not tried. The patch below change the behaviour back for v4tunnels
only.

Without the patch the following errors are shown:
RTNETLINK answers: Network is down
RTNETLINK answers: No route to host
and the tunnel is not fully brought up

With this patch all works as expected.
2003-07-30 08:22:53 +00:00
Eric Andersen
c663ab0c6b Match up interfaces 2003-07-29 07:37:39 +00:00
Eric Andersen
2a186890ee Bruno Randolf writes:
this patch fixes run_parts when it's called by ifupdown. 1) argv has to be a
NULL terminated char* array, not just a string. 2) run_parts now explicitly
sets the environment. this environment is populated from the
/etc/network/interfaces config file and is needed by the scripts in
/etc/network/if-pre-up.d/. when run-parts is called from the command line the
environment is taken from the current process.


Vladimir Oleynik then wrote:

You can simplify this if use:

+       bb_xasprintf(&buf[0], "/etc/network/if-%s.d", opt);
+       buf[1] = NULL;
+
+       run_parts(&buf, 2, environ);
+       free(buf[0]);

--w
vodz
2003-07-29 07:05:40 +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
3c8bca364d Fixup whitespace handing, fixing some annoying behavior and
a couple of segfaults
2003-06-20 10:02:29 +00:00
Eric Andersen
233b170a85 Patch from Lars Kellogg-Stedman, lars at larsshack.org, to
make ifupdown's mapping function work as documented.
2003-06-05 19:37:01 +00:00
Eric Andersen
2894266f12 Patch from David Updegraff to avoid corrupting memory while parsing the
networks/iterfaces file with next_word routine.  Without this, next_word
increments one beyond the end of the string.
2003-04-19 23:15:06 +00:00
Eric Andersen
8320b425a3 Yet another rather large face lift. It now works for me as expected.
-Erik
2003-04-02 10:13:26 +00:00
Manuel Novoa III
cad5364599 Major coreutils update. 2003-03-19 09:13:01 +00:00
Eric Andersen
46c203a6ce Fix a couple more ifupdown bugs 2003-02-03 12:44:59 +00:00
Eric Andersen
66a3af9d7c This seems sufficient for ifup and ifdown to actually work
as advertised.  Works for me (at least with glibc)
2003-01-27 17:41:19 +00:00
Glenn L McGrath
2e51a14d57 New test mode that allows run_parts to fail silently if the directory
is not found. Patch from Bastian Blank
2003-01-20 23:50:59 +00:00
Glenn L McGrath
8573704097 Fix leading spaces bug, free line buffer, redo next_word, save some
space.
2003-01-14 23:26:57 +00:00
Glenn L McGrath
d66370cd73 Option to allow ifupdown use ip commands instead of ifconfig, add flush
command to ipaddr, patch by Bastian Blank
2003-01-13 21:40:38 +00:00
Glenn L McGrath
8e49caa54f Start to cleanup handling of the state file, save some space and uses linked lists. 2002-12-08 01:23:39 +00:00
Glenn L McGrath
0325a1c9e3 Differentiate struct and type names 2002-12-07 07:45:42 +00:00
Glenn L McGrath
1d658263e8 Fix command that brings down loopback 2002-12-07 00:48:54 +00:00
Glenn L McGrath
398ff9d981 Use libbb/get_line_from_file, change default state file location 2002-12-06 11:51:46 +00:00
Glenn L McGrath
cdbe5e5d4c Make mapping a config option again to save space, turn off file locking, do we really need it ? 2002-12-06 08:35:55 +00:00
Glenn L McGrath
9227371b71 Fix bug that stoped -a working 2002-12-06 08:10:40 +00:00
Glenn L McGrath
2801eb925d Fix simple syntax error 2002-11-26 02:23:41 +00:00
Glenn L McGrath
d1431073d1 Dont use xargs 2002-11-19 09:58:56 +00:00
Glenn L McGrath
83bcba26c0 dont use the -i option of xargs 2002-11-19 09:23:13 +00:00
Glenn L McGrath
29d801b834 Remove mapping option, its should always be used 2002-11-17 21:48:11 +00:00
Glenn L McGrath
9af8a72f10 Make ifupdown use internal run_parts 2002-11-11 07:03:02 +00:00
Glenn L McGrath
545106f8db Move awk from textutils to editors. Cleanup run-parts, saves 200 bytes, moves the guts of run_parts to libbb to be used by ifupdown. 2002-11-11 06:21:00 +00:00
Glenn L McGrath
eebe31d997 Fixup a previous define 2002-11-10 13:20:35 +00:00
Glenn L McGrath
49a28b3b5e Make mapping support a definable feature, saves 1.6kB 2002-11-10 13:17:08 +00:00
Glenn L McGrath
021fa7db91 debian compatable ifup and ifdown commands 2002-11-09 09:34:15 +00:00