aboutsummaryrefslogtreecommitdiff
path: root/contrib/scripts/netjail
diff options
context:
space:
mode:
Diffstat (limited to 'contrib/scripts/netjail')
-rwxr-xr-xcontrib/scripts/netjail/netjail_core.sh9
-rwxr-xr-xcontrib/scripts/netjail/netjail_setup_internet.sh2
2 files changed, 10 insertions, 1 deletions
diff --git a/contrib/scripts/netjail/netjail_core.sh b/contrib/scripts/netjail/netjail_core.sh
index 8dbbeacf1..a3271a3e4 100755
--- a/contrib/scripts/netjail/netjail_core.sh
+++ b/contrib/scripts/netjail/netjail_core.sh
@@ -126,4 +126,13 @@ netjail_node_exec() {
126 unshare -fp --kill-child -- ip netns exec $NODE sudo -u $JAILOR -- $@ 1>& $FD_OUT 0<& $FD_IN 126 unshare -fp --kill-child -- ip netns exec $NODE sudo -u $JAILOR -- $@ 1>& $FD_OUT 0<& $FD_IN
127} 127}
128 128
129netjail_kill() {
130 PID=$1
131
132 for CHILD in $(ps -o pid,ppid -ax | awk "{ if ( \$2 == $PID ) { print \$1 } }"); do
133 netjail_kill $CHILD
134 done
135
136 kill $PID
137}
129 138
diff --git a/contrib/scripts/netjail/netjail_setup_internet.sh b/contrib/scripts/netjail/netjail_setup_internet.sh
index 2d448168a..94aec007e 100755
--- a/contrib/scripts/netjail/netjail_setup_internet.sh
+++ b/contrib/scripts/netjail/netjail_setup_internet.sh
@@ -86,7 +86,7 @@ for N in $(seq $GLOBAL_N); do
86done 86done
87 87
88for PID in $WAITING; do wait $PID; done 88for PID in $WAITING; do wait $PID; done
89for PID in $KILLING; do kill $PID; done 89for PID in $KILLING; do netjail_kill $PID; done
90wait 90wait
91 91
92if [ $STUN -gt 0 ]; then 92if [ $STUN -gt 0 ]; then