File: dnet-common.init.d

package info (click to toggle)
dnprogs 2.43.2
  • links: PTS
  • area: main
  • in suites: lenny
  • size: 2,936 kB
  • ctags: 3,872
  • sloc: ansic: 24,686; cpp: 10,608; makefile: 769; sh: 551; awk: 13
file content (111 lines) | stat: -rw-r--r-- 2,405 bytes parent folder | download | duplicates (2)
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
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
#!/bin/sh
#
# decnet.sh 
#
# Sets up the ethernet interface(s).
#
# This script MUST be run before TCP/IP is started.
#
### BEGIN INIT INFO
# Provides:          decnet
# Required-Start:    $network
# Required-Stop:     $network
# Default-Start:     2 3 4 5
# Default-Stop:      0 1 6
# Short-Description: Set up ethernet interface(s) for DECnet
# Description:       Sets the MAC address of the ethernet card(s) for DECnet
#                    operation, and enables routing if requested.
### END INIT INFO
# ---------------------------------------------------------------------------
#
FLAGS="start 39 S .  stop 11 1 ."

#
# Interfaces to set the MAC address of are specified in /etc/default/decnet
# The variable DNET_INTERFACES should be either set to a list of interfaces
# or "all". If it is empty then no interfaces will be modified.
#
# The MAC address *must* be set for DECnet to work so if you do not use this
# program you must do it some other way.
#
# ROUTING specifies whether we should be a endnode (0), level 1 router (1)
# or aread router (2)
#
# PRIORITY specifies the routing priority. Defaults to 32. Note VMS defaults
# to 64, max is 127.

[ ! -f /sbin/setether ] && exit 0


. /etc/default/decnet

interfaces="$DNET_INTERFACES"

ADDR="`grep executor /etc/decnet.conf | cut -f2`"

setether="/sbin/setether $ADDR $interfaces"


set_routing()
{

# Enable routing if required
if [ -n "$ROUTING" ]
then

# Set a default priority lower than VMS
    if [ -z "$PRIORITY" ]
    then
	PRIORITY=32
    fi

    for i in /proc/sys/net/decnet/conf/eth[0-9]*
    do
      echo "$1"        > $i/forwarding
      echo "$PRIORITY" > $i/priority
    done 
fi

}



case $1 in
   start)
     if [ ! -f /etc/decnet.conf ]
     then
       echo "DECnet not started as it is not configured."
       exit 0
     fi

     # If there is no DECnet in the kernel then try to load it.
     if [ ! -f /proc/net/decnet ]
     then
       modprobe decnet
       if [ ! -f /proc/net/decnet ]
       then
         echo "DECnet not started as it is not in the kernel."
	 exit 0
       fi
     fi

     echo -n "Starting DECnet..."
     $setether
     echo "$ADDR" > /proc/sys/net/decnet/node_address
     set_routing $ROUTING
     echo "done."
     ;;

   stop)
     set_routing 0
     ;;

   restart|reload|force-reload)
     ;;

   *)
     echo "Usage $0 {start|stop|restart|reload|force-reload}"
     ;;
esac

exit 0