aboutsummaryrefslogtreecommitdiff
path: root/contrib/netjail/netjail_stop.sh
diff options
context:
space:
mode:
Diffstat (limited to 'contrib/netjail/netjail_stop.sh')
-rwxr-xr-xcontrib/netjail/netjail_stop.sh65
1 files changed, 65 insertions, 0 deletions
diff --git a/contrib/netjail/netjail_stop.sh b/contrib/netjail/netjail_stop.sh
new file mode 100755
index 000000000..c8739dc94
--- /dev/null
+++ b/contrib/netjail/netjail_stop.sh
@@ -0,0 +1,65 @@
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 netjail_node_unlink_bridge ${ROUTER_LINKS[$N]}
47
48 for M in $(seq $LOCAL_M); do
49 netjail_node_name
50 NODES[$N,$M]=$RESULT
51 netjail_node_link_bridge_name
52 NODE_LINKS[$N,$M]=$RESULT
53 netjail_node_unlink_bridge ${NODE_LINKS[$N,$M]}
54 netjail_node_clear ${NODES[$N,$M]}
55 done
56
57
58 netjail_bridge_clear ${ROUTER_NETS[$N]}
59 netjail_node_unlink_bridge ${NETWORK_LINKS[$N]}
60 netjail_node_clear ${ROUTERS[$N]}
61done
62
63netjail_bridge_clear $NETWORK_NET
64
65echo "Done"