1*6e4a39ccSPatrick Mooney /* 2*6e4a39ccSPatrick Mooney * This file and its contents are supplied under the terms of the 3*6e4a39ccSPatrick Mooney * Common Development and Distribution License ("CDDL"), version 1.0. 4*6e4a39ccSPatrick Mooney * You may only use this file in accordance with the terms of version 5*6e4a39ccSPatrick Mooney * 1.0 of the CDDL. 6*6e4a39ccSPatrick Mooney * 7*6e4a39ccSPatrick Mooney * A full copy of the text of the CDDL should have accompanied this 8*6e4a39ccSPatrick Mooney * source. A copy of the CDDL is also available via the Internet at 9*6e4a39ccSPatrick Mooney * http://www.illumos.org/license/CDDL. 10*6e4a39ccSPatrick Mooney */ 11*6e4a39ccSPatrick Mooney 12*6e4a39ccSPatrick Mooney /* 13*6e4a39ccSPatrick Mooney * Copyright 2025 Oxide Computer Company 14*6e4a39ccSPatrick Mooney */ 15*6e4a39ccSPatrick Mooney 16*6e4a39ccSPatrick Mooney #ifndef _LIBKTEST_IMPL_H 17*6e4a39ccSPatrick Mooney #define _LIBKTEST_IMPL_H 18*6e4a39ccSPatrick Mooney 19*6e4a39ccSPatrick Mooney #include <sys/ktest.h> 20*6e4a39ccSPatrick Mooney #include <libktest.h> 21*6e4a39ccSPatrick Mooney #include <sys/debug.h> 22*6e4a39ccSPatrick Mooney 23*6e4a39ccSPatrick Mooney #ifdef __cplusplus 24*6e4a39ccSPatrick Mooney extern "C" { 25*6e4a39ccSPatrick Mooney #endif 26*6e4a39ccSPatrick Mooney 27*6e4a39ccSPatrick Mooney #define KTEST_DEV_PATH "/dev/ktest" 28*6e4a39ccSPatrick Mooney 29*6e4a39ccSPatrick Mooney struct ktest_hdl { 30*6e4a39ccSPatrick Mooney int kt_fd; 31*6e4a39ccSPatrick Mooney }; 32*6e4a39ccSPatrick Mooney 33*6e4a39ccSPatrick Mooney struct ktest_list_iter { 34*6e4a39ccSPatrick Mooney ktest_hdl_t *kli_hdl; 35*6e4a39ccSPatrick Mooney 36*6e4a39ccSPatrick Mooney nvlist_t *kli_modules; 37*6e4a39ccSPatrick Mooney nvpair_t *kli_module; 38*6e4a39ccSPatrick Mooney nvlist_t *kli_suites; 39*6e4a39ccSPatrick Mooney nvpair_t *kli_suite; 40*6e4a39ccSPatrick Mooney nvlist_t *kli_tests; 41*6e4a39ccSPatrick Mooney nvpair_t *kli_test; 42*6e4a39ccSPatrick Mooney boolean_t kli_req_input; 43*6e4a39ccSPatrick Mooney }; 44*6e4a39ccSPatrick Mooney 45*6e4a39ccSPatrick Mooney CTASSERT((int)KTEST_CODE_NONE == (int)KTEST_RESULT_NONE); 46*6e4a39ccSPatrick Mooney CTASSERT((int)KTEST_CODE_PASS == (int)KTEST_RESULT_PASS); 47*6e4a39ccSPatrick Mooney CTASSERT((int)KTEST_CODE_FAIL == (int)KTEST_RESULT_FAIL); 48*6e4a39ccSPatrick Mooney CTASSERT((int)KTEST_CODE_SKIP == (int)KTEST_RESULT_SKIP); 49*6e4a39ccSPatrick Mooney CTASSERT((int)KTEST_CODE_ERROR == (int)KTEST_RESULT_ERROR); 50*6e4a39ccSPatrick Mooney 51*6e4a39ccSPatrick Mooney 52*6e4a39ccSPatrick Mooney #ifdef __cplusplus 53*6e4a39ccSPatrick Mooney } 54*6e4a39ccSPatrick Mooney #endif 55*6e4a39ccSPatrick Mooney 56*6e4a39ccSPatrick Mooney #endif /* _LIBKTEST_IMPL_H */ 57