xref: /xnu-11417.121.6/tests/ptrauth_data_tests.c (revision a1e26a70f38d1d7daa7b49b258e2f8538ad81650)
1*a1e26a70SApple OSS Distributions #include <darwintest.h>
2*a1e26a70SApple OSS Distributions #include <sys/sysctl.h>
3*a1e26a70SApple OSS Distributions 
4*a1e26a70SApple OSS Distributions T_GLOBAL_META(
5*a1e26a70SApple OSS Distributions 	T_META_NAMESPACE("xnu.arm"),
6*a1e26a70SApple OSS Distributions 	T_META_RADAR_COMPONENT_NAME("xnu"),
7*a1e26a70SApple OSS Distributions 	T_META_RADAR_COMPONENT_VERSION("arm"),
8*a1e26a70SApple OSS Distributions 	T_META_OWNER("mwm")
9*a1e26a70SApple OSS Distributions 	);
10*a1e26a70SApple OSS Distributions 
11*a1e26a70SApple OSS Distributions T_DECL(ptrauth_data_tests, "invoke the PAC unit tests", T_META_ASROOT(true))
12*a1e26a70SApple OSS Distributions {
13*a1e26a70SApple OSS Distributions #if __has_feature(ptrauth_calls)
14*a1e26a70SApple OSS Distributions 	int ret, dummy = 1;
15*a1e26a70SApple OSS Distributions 	ret = sysctlbyname("kern.run_ptrauth_data_tests", NULL, NULL, &dummy, sizeof(dummy));
16*a1e26a70SApple OSS Distributions 	T_ASSERT_POSIX_SUCCESS(ret, "run ptrauth data tests");
17*a1e26a70SApple OSS Distributions #else
18*a1e26a70SApple OSS Distributions 	T_SKIP("Running on non-ptrauth system. Skipping...");
19*a1e26a70SApple OSS Distributions #endif //__has_feature(ptrauth_calls)
20*a1e26a70SApple OSS Distributions }
21