Contents of /trunk/openslp/multicast_route_set.sh
Parent Directory | Revision Log
Revision 1444 -
(show annotations)
(download)
(as text)
Wed Jul 27 16:33:44 2011 UTC (13 years, 2 months ago) by niro
File MIME type: application/x-sh
File size: 1276 byte(s)
Wed Jul 27 16:33:44 2011 UTC (13 years, 2 months ago) by niro
File MIME type: application/x-sh
File size: 1276 byte(s)
-systemd service and helper files
1 | PING_OPTIONS_1='-c1 -w1' |
2 | PING_OPTIONS_2='-c1 -i1' |
3 | MULTICAST_ADDRESS='239.255.255.253' |
4 | TMP_FILE=/tmp/route.check |
5 | PING_ERROR_NO_ROUTE='unreachable' |
6 | |
7 | MSG_FAILED_TO_FIND='Failed to Detect Multicast Route' |
8 | MSG_SUCCESS_ON_FIND='Multicast Route Enabled' |
9 | MSG_ADDING_ROUTE='Attempting to Add Multicast Route ...' |
10 | MSG_FAILED_TO_ADD=' FAILED - Route NOT Added.' |
11 | MSG_SUCCES_ON_ADD=' SUCCESS - Route Added.' |
12 | |
13 | CMD_GET_INTERFACE="netstat -i | awk 'BEGIN{}(NR>2)&&(!/^lo*/){print \$1}'" |
14 | CMD_ADD_ROUTE="route add -net 224.0.0.0 netmask 240.0.0.0" |
15 | |
16 | ping $PING_OPTIONS_1 $MULTICAST_ADDRESS 2> $TMP_FILE 1> /dev/null |
17 | if [ $? = 2 ]; then |
18 | ping $PING_OPTIONS_2 $MULTICAST_ADDRESS 2> $TMP_FILE 1> /dev/null |
19 | fi |
20 | |
21 | grep $PING_ERROR_NO_ROUTE $TMP_FILE > /dev/null 2>&1 |
22 | err_unreachable_found=$? |
23 | |
24 | #If errors, add route. Otherwise, do nothing |
25 | if [ -s $TMP_FILE ] && [ $err_unreachable_found = 0 ]; then |
26 | |
27 | if [ $1 != 0 ]; then |
28 | rc_echo $MSG_FAILED_TO_FIND |
29 | rc_echo $MSG_ADDING_ROUTE |
30 | fi |
31 | |
32 | $CMD_ADD_ROUTE `eval $CMD_GET_INTERFACE` > /dev/null 2>&1 |
33 | retval=$? |
34 | if [ $1 != 0 ]; then |
35 | |
36 | if [ $retval = 0 ]; then |
37 | rc_echo $MSG_SUCCES_ON_ADD |
38 | else |
39 | rc_echo $MSG_FAILED_TO_ADD |
40 | fi |
41 | fi |
42 | else |
43 | if [ $1 != 0 ]; then |
44 | rc_echo -n $MSG_SUCCESS_ON_FIND |
45 | fi |
46 | retval=0 |
47 | fi |
48 | |
49 | rm -f $TMP_FILE # Clean up |
50 | exit $retval |