diff options
author | Martin KaFai Lau <kafai@fb.com> | 2016-12-07 15:53:14 -0800 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2016-12-08 14:25:13 -0500 |
commit | 12d8bb64e3f65f5287ff17c084d076a28daa8096 (patch) | |
tree | e772f55d041956a3e07a487b48b42df8a0b830bf /samples/bpf/bpf_helpers.h | |
parent | ea3349a03519dcd4f32d949cd80ab995623dc5ac (diff) | |
download | linux-12d8bb64e3f65f5287ff17c084d076a28daa8096.tar.gz linux-12d8bb64e3f65f5287ff17c084d076a28daa8096.tar.bz2 linux-12d8bb64e3f65f5287ff17c084d076a28daa8096.zip |
bpf: xdp: Add XDP example for head adjustment
The XDP prog checks if the incoming packet matches any VIP:PORT
combination in the BPF hashmap. If it is, it will encapsulate
the packet with a IPv4/v6 header as instructed by the value of
the BPF hashmap and then XDP_TX it out.
The VIP:PORT -> IP-Encap-Info can be specified by the cmd args
of the user prog.
Acked-by: Alexei Starovoitov <ast@kernel.org>
Signed-off-by: Martin KaFai Lau <kafai@fb.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'samples/bpf/bpf_helpers.h')
-rw-r--r-- | samples/bpf/bpf_helpers.h | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/samples/bpf/bpf_helpers.h b/samples/bpf/bpf_helpers.h index 8370a6e3839d..faaffe2e139a 100644 --- a/samples/bpf/bpf_helpers.h +++ b/samples/bpf/bpf_helpers.h @@ -57,6 +57,8 @@ static int (*bpf_skb_set_tunnel_opt)(void *ctx, void *md, int size) = (void *) BPF_FUNC_skb_set_tunnel_opt; static unsigned long long (*bpf_get_prandom_u32)(void) = (void *) BPF_FUNC_get_prandom_u32; +static int (*bpf_xdp_adjust_head)(void *ctx, int offset) = + (void *) BPF_FUNC_xdp_adjust_head; /* llvm builtin functions that eBPF C program may use to * emit BPF_LD_ABS and BPF_LD_IND instructions |