1// SPDX-License-Identifier: GPL-2.0
2
3#include "vmlinux.h"
4#include <bpf/bpf_tracing.h>
5#include <bpf/bpf_helpers.h>
6
7#include "bpf_misc.h"
8
9char _license[] SEC("license") = "GPL";
10
11int bpf_sock_destroy(struct sock_common *sk) __ksym;
12
13SEC("tp_btf/tcp_destroy_sock")
14__failure __msg("calling kernel function bpf_sock_destroy is not allowed")
15int BPF_PROG(trace_tcp_destroy_sock, struct sock *sk)
16{
17 /* should not load */
18 bpf_sock_destroy((struct sock_common *)sk);
19
20 return 0;
21}
22
23

source code of linux/tools/testing/selftests/bpf/progs/sock_destroy_prog_fail.c