From 8671f5558ebb5f3cf5530a364675afd9ab4fc869 Mon Sep 17 00:00:00 2001
From: Daniel Mierswa <impulze@impulze.org>
Date: Mon, 31 Aug 2009 00:46:12 +0200
Subject: [PATCH] use iproute2 if available
Signed-off-by: Daniel Mierswa <impulze@impulze.org>
---
init.d/network.in | 37 ++++++++++++++++++++++++++++---------
1 files changed, 28 insertions(+), 9 deletions(-)
diff --git a/init.d/network.in b/init.d/network.in
index 8b02ac4..13d0ffb 100644
a
|
b
|
sys_interfaces() |
46 | 46 | i=${w%%:*} |
47 | 47 | [ "$i" != "$w" ] || continue |
48 | 48 | if [ "$cmd" = u ]; then |
49 | | ifconfig "$i" | grep -q "[ ]*UP" || continue |
| 49 | if [ -x /sbin/ip ] ; then |
| 50 | ip link show "$i" | grep -q "[<,]UP[,>]" || continue |
| 51 | else |
| 52 | ifconfig "$i" | grep -q "[ ]*UP" || continue |
| 53 | fi |
50 | 54 | fi |
51 | 55 | printf "%s " "$i" |
52 | 56 | done </proc/net/dev |
… |
… |
start() |
168 | 172 | einfo "Starting network" |
169 | 173 | routeflush |
170 | 174 | if [ "$RC_UNAME" = "Linux" ]; then |
171 | | ifconfig lo 127.0.0.1 netmask 255.0.0.0 || cr=1 |
172 | | route add -net 127.0.0.0 netmask 255.0.0.0 \ |
173 | | gw 127.0.0.1 2>/dev/null |
174 | | route add -net 127.0.0.0 netmask 255.0.0.0 \ |
175 | | gw 127.0.0.1 reject 2>/dev/null |
| 175 | if [ -x /sbin/ip ] ; then |
| 176 | ip address add 127.0.0.1/8 dev lo broadcast + && \ |
| 177 | ip link set lo up && \ |
| 178 | ip route append prohibit 127.0.0.0/8 && \ |
| 179 | ip route append 127.0.0.0/8 via 127.0.0.1 || cr=1 |
| 180 | else |
| 181 | ifconfig lo 127.0.0.1 netmask 255.0.0.0 && \ |
| 182 | route add -net 127.0.0.0 netmask 255.0.0.0 \ |
| 183 | gw 127.0.0.1 2>/dev/null && \ |
| 184 | route add -net 127.0.0.0 netmask 255.0.0.0 \ |
| 185 | gw 127.0.0.1 reject 2>/dev/null || cr=1 |
| 186 | fi |
176 | 187 | else |
177 | 188 | ifconfig lo0 127.0.0.1 netmask 255.0.0.0 || cr=1 |
178 | 189 | route -q add -inet 127.0.0.0 -netmask 255.0.0.0 \ |
… |
… |
start() |
226 | 237 | if [ -n "$defaultroute" ]; then |
227 | 238 | ebegin "Setting default route $defaultroute" |
228 | 239 | if [ "$RC_UNAME" = Linux ]; then |
229 | | route add default gw $defaultroute |
| 240 | if [ -x /sbin/ip ] ; then |
| 241 | ip route add default via $defaultroute |
| 242 | else |
| 243 | route add default gw $defaultroute |
| 244 | fi |
230 | 245 | else |
231 | 246 | route add default $defaultroute |
232 | 247 | fi |
… |
… |
stop() |
258 | 273 | then |
259 | 274 | veinfo "$int" |
260 | 275 | runargs /etc/ifdown."$int" "$downcmd" |
261 | | ifconfig "$int" down 2>/dev/null |
262 | | ifconfig "$int" destroy 2>/dev/null |
| 276 | if [ -x /sbin/ip ] ; then |
| 277 | ip link set "$int" down |
| 278 | else |
| 279 | ifconfig "$int" down 2>/dev/null |
| 280 | ifconfig "$int" destroy 2>/dev/null |
| 281 | fi |
263 | 282 | fi |
264 | 283 | done |
265 | 284 | eoutdent |