403e9f39a0796ec8353f94e4544a582f59342c3b
[feed/routing.git] / files / etc / init.d / batmand
1 #!/bin/sh /etc/rc.common
2 START=90
3
4 start () {
5 interface=$(uci get batmand.general.interface)
6 if [ "$interface" = "" ]; then
7 echo $1 Error, you must specify at least a network interface
8 exit
9 fi
10 hnas=$(uci get batmand.general.hna)
11 gateway_class=$(uci get batmand.general.gateway_class)
12 originator_interval=$(uci get batmand.general.originator_interval)
13 preferred_gateway=$(uci get batmand.general.preferred_gateway)
14 routing_class=$(uci get batmand.general.routing_class)
15 visualisation_srv=$(uci get batmand.general.visualisation_srv)
16 policy_routing_script=$(uci get batmand.general.policy_routing_script)
17 disable_client_nat=$(uci get batmand.general.disable_client_nat)
18 disable_aggregation=$(uci get batmand.general.disable_aggregation)
19 batman_args=""
20
21 for hna in $hnas
22 do
23 batman_args=${batman_args}'-a '$hna' '
24 done
25
26 if [ $gateway_class ]; then
27 batman_args=${batman_args}'-g '$gateway_class' '
28 fi
29
30 if [ $originator_interval ]; then
31 batman_args=${batman_args}'-o '$originator_interval' '
32 fi
33
34 if [ $preferred_gateway ]; then
35 batman_args=${batman_args}'-p '$preferred_gateway' '
36 fi
37
38 if [ $routing_class ]; then
39 batman_args=${batman_args}'-r '$routing_class' '
40 fi
41
42 if [ $visualisation_srv ]; then
43 batman_args=${batman_args}'-s '$visualisation_srv' '
44 fi
45
46 if [ $policy_routing_script ]; then
47 batman_args=${batman_args}'--policy-routing-script '$policy_routing_script' '
48 fi
49
50 if [ $disable_client_nat ]; then
51 batman_args=${batman_args}'--disable-client-nat '
52 fi
53
54 if [ $disable_aggregation ]; then
55 batman_args=${batman_args}'--disable-aggregation '
56 fi
57
58 batman_args=${batman_args}$interface
59 batmand $batman_args >/dev/null 2>&1
60 }
61
62 stop () {
63 killall batmand
64 }
65
66