xref: /xnu-12377.81.4/tests/readonly_proc_tests.c (revision 043036a2b3718f7f0be807e2870f8f47d3fa0796)
1*043036a2SApple OSS Distributions #include <darwintest.h>
2*043036a2SApple OSS Distributions #include <sys/sysctl.h>
3*043036a2SApple OSS Distributions 
4*043036a2SApple OSS Distributions T_GLOBAL_META(
5*043036a2SApple OSS Distributions 	T_META_NAMESPACE("xnu.bsd"),
6*043036a2SApple OSS Distributions 	T_META_RADAR_COMPONENT_NAME("xnu"),
7*043036a2SApple OSS Distributions 	T_META_RADAR_COMPONENT_VERSION("bsd"),
8*043036a2SApple OSS Distributions 	T_META_OWNER("chrisjd")
9*043036a2SApple OSS Distributions 	);
10*043036a2SApple OSS Distributions 
11*043036a2SApple OSS Distributions T_DECL(readonly_proc_tests, "invoke the read-only proc unit test",
12*043036a2SApple OSS Distributions     T_META_ASROOT(true), T_META_REQUIRES_SYSCTL_EQ("kern.development", 1))
13*043036a2SApple OSS Distributions {
14*043036a2SApple OSS Distributions 	int64_t result = 0;
15*043036a2SApple OSS Distributions 	int64_t value = 0;
16*043036a2SApple OSS Distributions 	size_t s = sizeof(value);
17*043036a2SApple OSS Distributions 	int ret;
18*043036a2SApple OSS Distributions 	ret = sysctlbyname("debug.test.readonly_proc_test", &result, &s, &value, sizeof(value));
19*043036a2SApple OSS Distributions 	T_ASSERT_POSIX_SUCCESS(ret, "sysctlbyname(\"debug.test.readonly_proc_test\"");
20*043036a2SApple OSS Distributions 	T_EXPECT_EQ(1ull, result, "run readonly proc test");
21*043036a2SApple OSS Distributions }
22