From: Petr Machata Date: Thu, 3 May 2018 10:36:59 +0000 (+0200) Subject: selftests: forwarding: lib: Add sysctl_set(), sysctl_restore() X-Git-Tag: v4.19~872^2~317^2~2 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=f5ae57784ba805d0e8b11db1a7b2c17c5a07dd70;p=platform%2Fkernel%2Flinux-rpi.git selftests: forwarding: lib: Add sysctl_set(), sysctl_restore() Add two helper functions: sysctl_set() to change the value of a given sysctl setting, and sysctl_restore() to change it back to what it was. Signed-off-by: Petr Machata Reviewed-by: Ido Schimmel Signed-off-by: David S. Miller --- diff --git a/tools/testing/selftests/net/forwarding/lib.sh b/tools/testing/selftests/net/forwarding/lib.sh index 061c87b..e49e78b 100644 --- a/tools/testing/selftests/net/forwarding/lib.sh +++ b/tools/testing/selftests/net/forwarding/lib.sh @@ -381,6 +381,23 @@ bridge_ageing_time_get() echo $((ageing_time / 100)) } +declare -A SYSCTL_ORIG +sysctl_set() +{ + local key=$1; shift + local value=$1; shift + + SYSCTL_ORIG[$key]=$(sysctl -n $key) + sysctl -qw $key=$value +} + +sysctl_restore() +{ + local key=$1; shift + + sysctl -qw $key=${SYSCTL_ORIG["$key"]} +} + forwarding_enable() { ipv4_fwd=$(sysctl -n net.ipv4.conf.all.forwarding)