f6ad6accaa
So far, all BPF tc tunnel testcases encapsulate in the same network protocol. Add an encap testcase that requires updating skb->protocol. The 6in4 tunnel encapsulates an IPv6 packet inside an IPv4 tunnel. Verify that bpf_skb_net_grow correctly updates skb->protocol to select the right protocol handler in __netif_receive_skb_core. The BPF program should also manually update the link layer header to encode the right network protocol. Changes v1->v2 - improve documentation of non-obvious logic Signed-off-by: Willem de Bruijn <willemb@google.com> Tested-by: Alan Maguire <alan.maguire@oracle.com> Acked-by: Yonghong Song <yhs@fb.com> Signed-off-by: Daniel Borkmann <daniel@iogearbox.net> |
||
---|---|---|
.. | ||
bpf_flow.c | ||
connect4_prog.c | ||
connect6_prog.c | ||
dev_cgroup.c | ||
get_cgroup_id_kern.c | ||
netcnt_prog.c | ||
sample_map_ret0.c | ||
sample_ret0.c | ||
sendmsg4_prog.c | ||
sendmsg6_prog.c | ||
socket_cookie_prog.c | ||
sockmap_parse_prog.c | ||
sockmap_tcp_msg_prog.c | ||
sockmap_verdict_prog.c | ||
test_adjust_tail.c | ||
test_btf_haskv.c | ||
test_btf_nokv.c | ||
test_get_stack_rawtp.c | ||
test_global_data.c | ||
test_jhash.h | ||
test_l4lb_noinline.c | ||
test_l4lb.c | ||
test_lirc_mode2_kern.c | ||
test_lwt_ip_encap.c | ||
test_lwt_seg6local.c | ||
test_map_in_map.c | ||
test_map_lock.c | ||
test_obj_id.c | ||
test_pkt_access.c | ||
test_pkt_md_access.c | ||
test_queue_map.c | ||
test_select_reuseport_kern.c | ||
test_sk_lookup_kern.c | ||
test_skb_cgroup_id_kern.c | ||
test_skb_ctx.c | ||
test_sock_fields_kern.c | ||
test_sockhash_kern.c | ||
test_sockmap_kern.c | ||
test_spin_lock.c | ||
test_stack_map.c | ||
test_stacktrace_build_id.c | ||
test_stacktrace_map.c | ||
test_sysctl_prog.c | ||
test_tc_edt.c | ||
test_tc_tunnel.c | ||
test_tcp_check_syncookie_kern.c | ||
test_tcp_estats.c | ||
test_tcpbpf_kern.c | ||
test_tcpnotify_kern.c | ||
test_tracepoint.c | ||
test_tunnel_kern.c | ||
test_verif_scale1.c | ||
test_verif_scale2.c | ||
test_verif_scale3.c | ||
test_xdp_meta.c | ||
test_xdp_noinline.c | ||
test_xdp_redirect.c | ||
test_xdp_vlan.c | ||
test_xdp.c | ||
xdp_dummy.c |