1 // SPDX-License-Identifier: GPL-2.0 2 /* Copyright (c) 2021 Facebook */ 3 4 #include <test_progs.h> 5 #include <network_helpers.h> 6 #include "test_ksyms_module.lskel.h" 7 8 void test_ksyms_module(void) 9 { 10 struct test_ksyms_module *skel; 11 int retval; 12 int err; 13 14 if (!env.has_testmod) { 15 test__skip(); 16 return; 17 } 18 19 skel = test_ksyms_module__open_and_load(); 20 if (!ASSERT_OK_PTR(skel, "test_ksyms_module__open_and_load")) 21 return; 22 err = bpf_prog_test_run(skel->progs.load.prog_fd, 1, &pkt_v4, sizeof(pkt_v4), 23 NULL, NULL, (__u32 *)&retval, NULL); 24 if (!ASSERT_OK(err, "bpf_prog_test_run")) 25 goto cleanup; 26 ASSERT_EQ(retval, 0, "retval"); 27 ASSERT_EQ(skel->bss->out_bpf_testmod_ksym, 42, "bpf_testmod_ksym"); 28 cleanup: 29 test_ksyms_module__destroy(skel); 30 } 31