Commit 416c5728 authored by Ilya Leoshkevich's avatar Ilya Leoshkevich Committed by Daniel Borkmann
Browse files

selftests/bpf: improve unexpected success reporting in test_syctl



When tests fail because sysctl() unexpectedly succeeds, they print an
inappropriate "Unexpected failure" message and a random errno. Zero
out errno before calling sysctl() and replace the message with
"Unexpected success".

Fixes: 1f5fa9ab ("selftests/bpf: Test BPF_CGROUP_SYSCTL")
Signed-off-by: default avatarIlya Leoshkevich <iii@linux.ibm.com>
Signed-off-by: default avatarDaniel Borkmann <daniel@iogearbox.net>
parent 3404ddf2
Loading
Loading
Loading
Loading
+2 −1
Original line number Original line Diff line number Diff line
@@ -1499,6 +1499,7 @@ static int run_test_case(int cgfd, struct sysctl_test *test)
			goto err;
			goto err;
	}
	}


	errno = 0;
	if (access_sysctl(sysctl_path, test) == -1) {
	if (access_sysctl(sysctl_path, test) == -1) {
		if (test->result == OP_EPERM && errno == EPERM)
		if (test->result == OP_EPERM && errno == EPERM)
			goto out;
			goto out;
@@ -1507,7 +1508,7 @@ static int run_test_case(int cgfd, struct sysctl_test *test)
	}
	}


	if (test->result != SUCCESS) {
	if (test->result != SUCCESS) {
		log_err("Unexpected failure");
		log_err("Unexpected success");
		goto err;
		goto err;
	}
	}