33 lines
875 B
C
33 lines
875 B
C
|
// SPDX-License-Identifier: GPL-2.0
|
||
|
#include <test_progs.h>
|
||
|
#include <network_helpers.h>
|
||
|
|
||
|
void test_pkt_access(void)
|
||
|
{
|
||
|
const char *file = "./test_pkt_access.bpf.o";
|
||
|
struct bpf_object *obj;
|
||
|
int err, prog_fd;
|
||
|
LIBBPF_OPTS(bpf_test_run_opts, topts,
|
||
|
.data_in = &pkt_v4,
|
||
|
.data_size_in = sizeof(pkt_v4),
|
||
|
.repeat = 100000,
|
||
|
);
|
||
|
|
||
|
err = bpf_prog_test_load(file, BPF_PROG_TYPE_SCHED_CLS, &obj, &prog_fd);
|
||
|
if (CHECK_FAIL(err))
|
||
|
return;
|
||
|
|
||
|
err = bpf_prog_test_run_opts(prog_fd, &topts);
|
||
|
ASSERT_OK(err, "ipv4 test_run_opts err");
|
||
|
ASSERT_OK(topts.retval, "ipv4 test_run_opts retval");
|
||
|
|
||
|
topts.data_in = &pkt_v6;
|
||
|
topts.data_size_in = sizeof(pkt_v6);
|
||
|
topts.data_size_out = 0; /* reset from last call */
|
||
|
err = bpf_prog_test_run_opts(prog_fd, &topts);
|
||
|
ASSERT_OK(err, "ipv6 test_run_opts err");
|
||
|
ASSERT_OK(topts.retval, "ipv6 test_run_opts retval");
|
||
|
|
||
|
bpf_object__close(obj);
|
||
|
}
|