diff options
Diffstat (limited to 'contrib/netjail/netjail_stop.sh')
-rwxr-xr-x | contrib/netjail/netjail_stop.sh | 65 |
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 | |||
5 | set -eu | ||
6 | set -x | ||
7 | |||
8 | export PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin" | ||
9 | |||
10 | filename=$1 | ||
11 | PREFIX=$2 | ||
12 | readfile=$3 | ||
13 | |||
14 | if [ $readfile -eq 0 ] | ||
15 | then | ||
16 | read_topology_string $filename | ||
17 | else | ||
18 | read_topology $filename | ||
19 | fi | ||
20 | |||
21 | declare -A NODES | ||
22 | declare -A NODE_LINKS | ||
23 | |||
24 | netjail_bridge_name | ||
25 | NETWORK_NET=$RESULT | ||
26 | |||
27 | for 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]} | ||
34 | done | ||
35 | |||
36 | for 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]} | ||
61 | done | ||
62 | |||
63 | netjail_bridge_clear $NETWORK_NET | ||
64 | |||
65 | echo "Done" | ||