Home
last modified time | relevance | path

Searched full:verdict (Results 1 – 25 of 61) sorted by relevance

123

/linux/tools/testing/selftests/bpf/progs/
H A Dtest_sockmap_listen.c66 int verdict; in prog_stream_verdict() local
69 verdict = bpf_sk_redirect_map(skb, &sock_map, zero, 0); in prog_stream_verdict()
71 verdict = bpf_sk_redirect_hash(skb, &sock_hash, &zero, 0); in prog_stream_verdict()
73 count = bpf_map_lookup_elem(&verdict_map, &verdict); in prog_stream_verdict()
77 return verdict; in prog_stream_verdict()
85 int verdict; in prog_skb_verdict() local
88 verdict = bpf_sk_redirect_map(skb, &sock_map, zero, in prog_skb_verdict()
91 verdict = bpf_sk_redirect_hash(skb, &sock_hash, &zero, in prog_skb_verdict()
94 count = bpf_map_lookup_elem(&verdict_map, &verdict); in prog_skb_verdict()
98 return verdict; in prog_skb_verdict()
[all …]
H A Dtest_skmsg_load_helpers.c30 int verdict = SK_PASS; in prog_msg_verdict_common() local
41 verdict = SK_DROP; in prog_msg_verdict_common()
43 return verdict; in prog_msg_verdict_common()
H A Dtest_sockmap_ktls.c
H A Dtest_sockmap_skb_verdict_attach.c12 SEC("sk_skb/verdict")
/linux/drivers/net/ethernet/amazon/ena/
H A Dena_xdp.h84 u32 verdict = ENA_XDP_PASS; in ena_xdp_execute() local
92 verdict = bpf_prog_run_xdp(xdp_prog, xdp); in ena_xdp_execute()
94 switch (verdict) { in ena_xdp_execute()
98 trace_xdp_exception(rx_ring->netdev, xdp_prog, verdict); in ena_xdp_execute()
100 verdict = ENA_XDP_DROP; in ena_xdp_execute()
116 verdict = ENA_XDP_TX; in ena_xdp_execute()
121 verdict = ENA_XDP_REDIRECT; in ena_xdp_execute()
124 trace_xdp_exception(rx_ring->netdev, xdp_prog, verdict); in ena_xdp_execute()
126 verdict = ENA_XDP_DROP; in ena_xdp_execute()
129 trace_xdp_exception(rx_ring->netdev, xdp_prog, verdict); in ena_xdp_execute()
[all …]
/linux/Documentation/bpf/
H A Dmap_sockmap.rst14 the result of a BPF (verdict) program with the help of the BPF helpers
29 and a verdict program. The parser program determines how much data has been
30 parsed and therefore how much data needs to be queued to come to a verdict. The
31 verdict program is essentially the redirect program and can return a verdict
39 parse or verdict program. If adding a sock object to a map would result
64 There are additional helpers available to use with the parser and verdict
67 bytes the given verdict should apply to. The helper ``bpf_msg_cork_bytes()``
68 handles a different case where a BPF program cannot reach a verdict on a msg
90 the message ``msg`` is allowed to pass (i.e., if the verdict BPF program
136 If the ``map`` has BPF programs (parser and verdict), those will be inherited
[all …]
/linux/tools/testing/selftests/net/netfilter/
H A Dnf_queue.c27 uint32_t verdict; member
174 .verdict = htonl(verd), in nfq_build_verdict()
315 /* bogus verdict mode will generate ENOENT error messages */ in mainloop()
329 opts.queue_num, opts.verdict); in mainloop()
339 opts.queue_num, opts.verdict); in mainloop()
350 nlh = nfq_build_verdict(buf, id, opts.queue_num, opts.verdict); in mainloop()
382 opts.verdict = atoi(optarg); in parse_opts()
383 if (opts.verdict > 0xffff) { in parse_opts()
388 opts.verdict <<= 16; in parse_opts()
389 opts.verdict |= NF_QUEUE; in parse_opts()
[all …]
/linux/net/netfilter/
H A Dnfnetlink_queue.c265 unsigned int verdict, i = *index; in nf_iterate() local
270 verdict = nf_hook_entry_hookfn(hook, skb, state); in nf_iterate()
271 if (verdict != NF_ACCEPT) { in nf_iterate()
273 if (verdict != NF_REPEAT) in nf_iterate()
274 return verdict; in nf_iterate()
355 static void nf_reinject(struct nf_queue_entry *entry, unsigned int verdict) in nf_reinject() argument
380 if (verdict == NF_REPEAT) in nf_reinject()
381 verdict = nf_hook_entry_hookfn(hook_entry, skb, &entry->state); in nf_reinject()
383 if (verdict == NF_ACCEPT) { in nf_reinject()
385 verdict = NF_DROP; in nf_reinject()
[all …]
H A Dnft_osf.c32 regs->verdict.code = NFT_BREAK; in nft_osf_eval()
37 regs->verdict.code = NFT_BREAK; in nft_osf_eval()
44 regs->verdict.code = NFT_BREAK; in nft_osf_eval()
48 regs->verdict.code = NFT_BREAK; in nft_osf_eval()
H A Dnft_tproxy.c35 regs->verdict.code = NFT_BREAK; in nft_tproxy_eval_v4()
41 regs->verdict.code = NFT_BREAK; in nft_tproxy_eval_v4()
80 regs->verdict.code = NFT_BREAK; in nft_tproxy_eval_v4()
102 regs->verdict.code = NFT_BREAK; in nft_tproxy_eval_v6()
109 regs->verdict.code = NFT_BREAK; in nft_tproxy_eval_v6()
153 regs->verdict.code = NFT_BREAK; in nft_tproxy_eval_v6()
182 regs->verdict.code = NFT_BREAK; in nft_tproxy_eval()
/linux/net/ipv4/netfilter/
H A Diptable_mangle.c39 unsigned int ret, verdict; in ipt_mangle_out() local
54 verdict = ret & NF_VERDICT_MASK; in ipt_mangle_out()
56 if (verdict != NF_DROP && verdict != NF_STOLEN) { in ipt_mangle_out()
/linux/net/ipv6/netfilter/
H A Dip6table_mangle.c35 unsigned int ret, verdict; in ip6t_mangle_out() local
50 verdict = ret & NF_VERDICT_MASK; in ip6t_mangle_out()
52 if (verdict != NF_DROP && verdict != NF_STOLEN && in ip6t_mangle_out()
/linux/tools/testing/selftests/bpf/prog_tests/
H A Dsockmap_basic.c159 int err, map, verdict; in test_skmsg_helpers()
165 verdict = bpf_program__fd(skel->progs.prog_msg_verdict); in test_skmsg_helpers()
168 err = bpf_prog_attach(verdict, map, BPF_SK_MSG_VERDICT, 0); in test_skmsg_helpers()
172 err = bpf_prog_detach2(verdict, map, BPF_SK_MSG_VERDICT); in test_skmsg_helpers()
382 int err, map, verdict; in test_sockmap_skb_verdict_attach()
388 verdict = bpf_program__fd(skel->progs.prog_skb_verdict); in test_sockmap_skb_verdict_attach()
391 err = bpf_prog_attach(verdict, map, first, 0); in test_sockmap_skb_verdict_attach()
395 err = bpf_prog_attach(verdict, map, second, 0); in test_sockmap_skb_verdict_attach()
398 err = bpf_prog_detach2(verdict, map, first); in test_sockmap_skb_verdict_attach()
499 int n, err, map, verdict, c in test_sockmap_skb_verdict_shutdown()
158 int err, map, verdict; test_skmsg_helpers() local
381 int err, map, verdict; test_sockmap_skb_verdict_attach() local
498 int n, err, map, verdict, c1 = -1, p1 = -1; test_sockmap_skb_verdict_shutdown() local
551 int err, map, verdict, c0 = -1, c1 = -1, p0 = -1, p1 = -1; do_test_sockmap_skb_verdict_fionread() local
624 int err, map, verdict; test_sockmap_skb_verdict_change_tail() local
704 int err, map, verdict; test_sockmap_skb_verdict_peek() local
[all...]
H A Dsockmap_strp.c50 int verdict, parser; in sockmap_strp_init() local
62 verdict = bpf_program__fd(strp->progs.prog_skb_verdict_pass); in sockmap_strp_init()
64 verdict = bpf_program__fd(strp->progs.prog_skb_verdict); in sockmap_strp_init()
70 err = bpf_prog_attach(verdict, *out_map, BPF_SK_SKB_STREAM_VERDICT, 0); in sockmap_strp_init()
71 if (!ASSERT_OK(err, "bpf_prog_attach stream verdict")) in sockmap_strp_init()
367 /* Test strparser with verdict mode */
444 if (test__start_subtest("sockmap strp tcp verdict")) in test_sockmap_strp()
446 if (test__start_subtest("sockmap strp tcp v6 verdict")) in test_sockmap_strp()
H A Dsockmap_listen.c728 int verdict = bpf_program__fd(skel->progs.prog_stream_verdict); in test_skb_redir_to_connected() local
737 err = xbpf_prog_attach(verdict, sock_map, BPF_SK_SKB_STREAM_VERDICT, 0); in test_skb_redir_to_connected()
744 xbpf_prog_detach2(verdict, sock_map, BPF_SK_SKB_STREAM_VERDICT); in test_skb_redir_to_connected()
753 int verdict = bpf_program__fd(skel->progs.prog_msg_verdict); in test_msg_redir_to_connected() local
758 err = xbpf_prog_attach(verdict, sock_map, BPF_SK_MSG_VERDICT, 0); in test_msg_redir_to_connected()
764 xbpf_prog_detach2(verdict, sock_map, BPF_SK_MSG_VERDICT); in test_msg_redir_to_connected()
848 int verdict = bpf_program__fd(skel->progs.prog_stream_verdict); in test_skb_redir_to_listening() local
857 err = xbpf_prog_attach(verdict, sock_map, BPF_SK_SKB_STREAM_VERDICT, 0); in test_skb_redir_to_listening()
864 xbpf_prog_detach2(verdict, sock_map, BPF_SK_SKB_STREAM_VERDICT); in test_skb_redir_to_listening()
873 int verdict = bpf_program__fd(skel->progs.prog_msg_verdict); in test_msg_redir_to_listening() local
[all …]
H A Dcgroup_attach_override.c13 static int prog_load(int verdict) in prog_load() argument
16 BPF_MOV64_IMM(BPF_REG_0, verdict), /* r0 = verdict */ in prog_load()
H A Dns_current_pid_tgid.c124 int verdict, map, server_fd = -1, client_fd = -1; in test_current_pid_tgid_sk_msg() local
145 verdict = bpf_program__fd(skel->progs.sk_msg); in test_current_pid_tgid_sk_msg()
147 err = bpf_prog_attach(verdict, map, BPF_SK_MSG_VERDICT, 0); in test_current_pid_tgid_sk_msg()
H A Dcgroup_attach_multi.c13 static int prog_load_cnt(int verdict, int val) in prog_load_cnt() argument
63 BPF_MOV64_IMM(BPF_REG_0, verdict), /* r0 = verdict */ in prog_load_cnt()
/linux/drivers/net/ethernet/intel/libeth/
H A Dxsk.c88 * @act: verdict to process
92 * ``XDP_REDIRECT`` is the most common and hottest verdict on XSk, thus
96 * Return: libeth_xdp XDP prog verdict.
122 * @act: verdict returned by the prog
128 * Return: libeth_xdp's XDP prog verdict.
/linux/include/uapi/linux/netfilter/
H A Dx_tables.h67 int verdict; member
82 /* CONTINUE verdict for targets */
102 /* Standard return verdict, or do jump. */
104 /* Error verdict. */
H A Dnfnetlink_queue.h10 NFQNL_MSG_VERDICT, /* verdict from userspace to kernel */
72 __be32 verdict; member
/linux/net/netfilter/ipvs/
H A Dip_vs_proto_udp.c33 int *verdict, struct ip_vs_conn **cpp, in udp_conn_schedule() argument
51 *verdict = NF_DROP; in udp_conn_schedule()
70 *verdict = NF_DROP; in udp_conn_schedule()
81 *verdict = ip_vs_leave(svc, skb, pd, iph); in udp_conn_schedule()
83 *verdict = NF_DROP; in udp_conn_schedule()
H A Dip_vs_core.c1041 unsigned int verdict = NF_DROP; in handle_response_icmp() local
1079 verdict = NF_ACCEPT; in handle_response_icmp()
1084 return verdict; in handle_response_icmp()
1539 int verdict = ip_vs_out_icmp_v6(ipvs, skb, &related, in ip_vs_out_hook() local
1543 return verdict; in ip_vs_out_hook()
1549 int verdict = ip_vs_out_icmp(ipvs, skb, &related, hooknum); in ip_vs_out_hook() local
1552 return verdict; in ip_vs_out_hook()
1646 int *verdict, struct ip_vs_conn **cpp, in ip_vs_try_to_schedule() argument
1657 if (!pp->conn_schedule(ipvs, af, skb, pd, verdict, cpp, iph)) in ip_vs_try_to_schedule()
1671 *verdict = NF_ACCEPT; in ip_vs_try_to_schedule()
[all …]
H A Dip_vs_proto_sctp.c19 int *verdict, struct ip_vs_conn **cpp, in sctp_conn_schedule() argument
46 *verdict = NF_DROP; in sctp_conn_schedule()
64 *verdict = NF_DROP; in sctp_conn_schedule()
74 *verdict = ip_vs_leave(svc, skb, pd, iph); in sctp_conn_schedule()
76 *verdict = NF_DROP; in sctp_conn_schedule()
/linux/include/uapi/linux/netfilter_bridge/
H A Debtables.h31 /* ebtables target modules store the verdict inside an int. We can
33 * The 4 lsb are more than enough to store the verdict. */
164 int verdict; member

123