// SPDX-License-Identifier: GPL-2.0 #include <vmlinux.h> #include <bpf/bpf_helpers.h> #include "bpf_experimental.h" SEC("?fentry") int pfentry(void *ctx) { return 0; } SEC("?fentry") int throwing_fentry(void *ctx) { bpf_throw(0); return 0; } __noinline int exception_cb(u64 cookie) { return cookie + 64; } SEC("?freplace") int extension(struct __sk_buff *ctx) { return 0; } SEC("?freplace") __exception_cb(exception_cb) int throwing_exception_cb_extension(u64 cookie) { bpf_throw(32); return 0; } SEC("?freplace") __exception_cb(exception_cb) int throwing_extension(struct __sk_buff *ctx) { bpf_throw(64); return 0; } SEC("?fexit") int pfexit(void *ctx) { return 0; } SEC("?fexit") int throwing_fexit(void *ctx) { bpf_throw(0); return 0; } SEC("?fmod_ret") int pfmod_ret(void *ctx) { return 0; } SEC("?fmod_ret") int throwing_fmod_ret(void *ctx) { bpf_throw(0); return 0; } char _license[] SEC("license") = "GPL";