[prev in list] [next in list] [prev in thread] [next in thread] 

List:       busybox
Subject:    [BusyBox] ifupdown improvements
From:       "Eric Spakman" <E.Spakman () inter ! nl ! net>
Date:       2003-07-30 20:56:31
[Download RAW message or body]

Hello,

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.

Regards,
Eric Spakman



--- ./busybox.old/networking/ifupdown.c	Wed Jul 30 10:22:53 2003
+++ ./busybox/networking/ifupdown.c	Wed Jul 30 14:39:22 2003
@@ -388,7 +388,7 @@
 {
 #ifdef CONFIG_FEATURE_IFUPDOWN_IP
 	int result;
-	result =execute("ip addr add ::1 dev %iface% label %label%", ifd, exec);
+	result =execute("ip addr add ::1 dev %iface%", ifd, exec);
 	result += execute("ip link set %iface% up", ifd, exec);
 	return( result);
 #else
@@ -409,8 +409,8 @@
 {
 	int result;
 #ifdef CONFIG_FEATURE_IFUPDOWN_IP
-	result = execute("ip addr add %address%/%netmask% dev %iface% label %label%", ifd, exec);
-	result += execute("ip link set %iface% up", ifd, exec);
+	result = execute("ip addr add %address%/%netmask% dev %iface% [[label %label%]]", ifd, exec);
+	result += execute("ip link set [[mtu %mtu%]] [[address %hwaddress%]] %iface% up", ifd, exec);
 	result += execute("[[ ip route add ::/0 via %gateway% ]]", ifd, exec);
 #else
 	result = execute("ifconfig %iface% [[media %media%]] [[hw %hwaddress%]] [[mtu %mtu%]] up", ifd, exec);
@@ -467,7 +467,7 @@
 {
 #ifdef CONFIG_FEATURE_IFUPDOWN_IP
 	int result;
-	result = execute("ip addr add 127.0.0.1/8 dev %iface% label %label%", ifd, exec);
+	result = execute("ip addr add 127.0.0.1/8 dev %iface%", ifd, exec);
 	result += execute("ip link set %iface% up", ifd, exec);
 	return(result);
 #else
@@ -492,8 +492,8 @@
 	int result;
 #ifdef CONFIG_FEATURE_IFUPDOWN_IP
 	result = execute("ip addr add %address%/%bnmask% [[broadcast %broadcast%]] "
-			"dev %iface% label %label%", ifd, exec);
-	result += execute("ip link set %iface% up", ifd, exec);
+			"dev %iface% [[peer %pointopoint%]] [[label %label%]]", ifd, exec);
+	result += execute("ip link set [[mtu %mtu%]] [[address %hwaddress%]] %iface% up", ifd, exec);
 	result += execute("[[ ip route add default via %gateway% dev %iface% ]]", ifd, exec);
 #else
 	result = execute("ifconfig %iface% %address% netmask %netmask% "
@@ -569,7 +569,11 @@
 
 static int bootp_down(struct interface_defn_t *ifd, execfn *exec)
 {
-	return( execute("ifconfig down %iface%", ifd, exec));
+#ifdef CONFIG_FEATURE_IFUPDOWN_IP
+	return(execute("ip link set %iface% down", ifd, exec));
+#else
+	return(execute("ifconfig %iface% down", ifd, exec));
+#endif
 }
 
 static int ppp_up(struct interface_defn_t *ifd, execfn *exec)


[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic