1 // SPDX-License-Identifier: GPL-2.0
2 #include <test_progs.h>
3 
4 void test_pkt_access(void)
5 {
6 	const char *file = "./test_pkt_access.o";
7 	struct bpf_object *obj;
8 	__u32 duration, retval;
9 	int err, prog_fd;
10 
11 	err = bpf_prog_load(file, BPF_PROG_TYPE_SCHED_CLS, &obj, &prog_fd);
12 	if (CHECK_FAIL(err))
13 		return;
14 
15 	err = bpf_prog_test_run(prog_fd, 100000, &pkt_v4, sizeof(pkt_v4),
16 				NULL, NULL, &retval, &duration);
17 	CHECK(err || retval, "ipv4",
18 	      "err %d errno %d retval %d duration %d\n",
19 	      err, errno, retval, duration);
20 
21 	err = bpf_prog_test_run(prog_fd, 100000, &pkt_v6, sizeof(pkt_v6),
22 				NULL, NULL, &retval, &duration);
23 	CHECK(err || retval, "ipv6",
24 	      "err %d errno %d retval %d duration %d\n",
25 	      err, errno, retval, duration);
26 	bpf_object__close(obj);
27 }
28