diff mbox

[net-next,mlxsw,1/2] selftests: forwarding: lib: Add sysctl_set(), sysctl_restore()

Message ID ed944b5ea43e20cf4773994d3fe95e4bf9e4dfde.1525277166.git.petrm@mellanox.com (mailing list archive)
State Not Applicable
Headers show

Commit Message

Petr Machata May 2, 2018, 4:11 p.m. UTC
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 <petrm@mellanox.com>
---
 tools/testing/selftests/net/forwarding/lib.sh | 17 +++++++++++++++++
 1 file changed, 17 insertions(+)

Comments

Ido Schimmel May 3, 2018, 6:40 a.m. UTC | #1
On Wed, May 02, 2018 at 06:11:41PM +0200, Petr Machata wrote:
> 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 <petrm@mellanox.com>

Reviewed-by: Ido Schimmel <idosch@mellanox.com>
diff mbox

Patch

diff --git a/tools/testing/selftests/net/forwarding/lib.sh b/tools/testing/selftests/net/forwarding/lib.sh
index 7fe6d27..426b294 100644
--- a/tools/testing/selftests/net/forwarding/lib.sh
+++ b/tools/testing/selftests/net/forwarding/lib.sh
@@ -401,6 +401,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)