aboutsummaryrefslogtreecommitdiffstats
path: root/sysconfig/network-scripts/ifdown-sit
blob: 4a9335a5d0325879751494ab247967c652228a0b (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
#!/bin/bash
#
# ifdown-sit
#
#
# Taken from:
# (P) & (C) 2000-2003 by Peter Bieringer <pb@bieringer.de>
#
#  You will find more information on the initscripts-ipv6 homepage at
#   http://www.deepspace6.net/projects/initscripts-ipv6.html
#
# RHL integration assistance by Pekka Savola <pekkas@netcore.fi>
#
# Version 2002-11-01
#
# Uses following information from /etc/sysconfig/network-scripts/ifcfg-$1:
#  DEVICE=<device>
#


. /etc/sysconfig/network

cd /etc/sysconfig/network-scripts
. ./network-functions

CONFIG=$1
[ -f "$CONFIG" ] || CONFIG=ifcfg-$CONFIG
source_config

# IPv6 don't need aliases anymore, config is skipped
REALDEVICE=${DEVICE%%:*}
[ "$DEVICE" != "$REALDEVICE" ] && exit 0

[ -f /etc/sysconfig/network-scripts/network-functions-ipv6 ] || exit 1
. /etc/sysconfig/network-scripts/network-functions-ipv6


# Generic tunnel device sit0 is not supported here
if [ "$DEVICE" = "sit0" ]; then
    net_log $"Device '$DEVICE' isn't supported here, use IPV6_AUTOTUNNEL setting and restart (IPv6) networking"
    exit 1
fi

# IPv6 test, no module loaded, exit if system is not IPv6-ready
ipv6_test testonly || exit 0

# Test device status
ipv6_test_device_status $DEVICE
if [ $? != 0 -a $? != 11 ]; then
    # device doesn't exist or other problem occurs
    exit 0
fi

# Cleanup additional static routes
/etc/sysconfig/network-scripts/ifdown-routes ${REALDEVICE}

# Cleanup and shut down IPv6-in-IPv4 tunnel device
ipv6_del_tunnel_device $DEVICE