aboutsummaryrefslogtreecommitdiff
path: root/scripts/netjail/netjail_stop.sh
diff options
context:
space:
mode:
Diffstat (limited to 'scripts/netjail/netjail_stop.sh')
-rwxr-xr-xscripts/netjail/netjail_stop.sh74
1 files changed, 74 insertions, 0 deletions
diff --git a/scripts/netjail/netjail_stop.sh b/scripts/netjail/netjail_stop.sh
new file mode 100755
index 000000000..8f6c07f50
--- /dev/null
+++ b/scripts/netjail/netjail_stop.sh
@@ -0,0 +1,74 @@
1#!/bin/bash
2. "$(dirname $0)/netjail_core.sh"
3. "$(dirname $0)/topo.sh"
4
5set -eu
6set -x
7
8export PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin"
9
10filename=$1
11PREFIX=$2
12readfile=$3
13
14if [ $readfile -eq 0 ]
15then
16 read_topology_string $filename
17else
18 read_topology $filename
19fi
20
21declare -A NODES
22declare -A NODE_LINKS
23
24netjail_bridge_name
25NETWORK_NET=$RESULT
26
27for X in $(seq $KNOWN); do
28 netjail_node_name
29 KNOWN_NODES[$X]=$RESULT
30 netjail_node_link_bridge_name
31 KNOWN_LINKS[$X]=$RESULT
32 netjail_node_unlink_bridge ${KNOWN_LINKS[$X]}
33 netjail_node_clear ${KNOWN_NODES[$X]}
34done
35
36for N in $(seq $GLOBAL_N); do
37 netjail_node_name
38 ROUTERS[$N]=$RESULT
39 netjail_node_link_bridge_name
40 NETWORK_LINKS[$N]=$RESULT
41 netjail_bridge_name
42 ROUTER_NETS[$N]=$RESULT
43 netjail_node_link_bridge_name
44 ROUTER_LINKS[$N]=$RESULT
45
46 if [ -d /tmp/netjail_scripts ]
47 then
48 if [ "" != "${R_SCRIPT[$N]}" ]
49 then
50 ip netns exec ${ROUTERS[$N]} ./${R_SCRIPT[$N]} ${ROUTERS[$N]} 0 $PREFIX
51 fi
52 rm -rf /tmp/netjail_scripts
53 fi
54
55 netjail_node_unlink_bridge ${ROUTER_LINKS[$N]}
56
57 for M in $(seq $LOCAL_M); do
58 netjail_node_name
59 NODES[$N,$M]=$RESULT
60 netjail_node_link_bridge_name
61 NODE_LINKS[$N,$M]=$RESULT
62 netjail_node_unlink_bridge ${NODE_LINKS[$N,$M]}
63 netjail_node_clear ${NODES[$N,$M]}
64 done
65
66
67 netjail_bridge_clear ${ROUTER_NETS[$N]}
68 netjail_node_unlink_bridge ${NETWORK_LINKS[$N]}
69 netjail_node_clear ${ROUTERS[$N]}
70done
71
72netjail_bridge_clear $NETWORK_NET
73
74echo "Done"