bpf: Verify flags in bpf_fib_lookup
Subsystems (4)
PATCH 1/1 bpf: Verify flags in bpf_fib_lookup
From: David Ahern <[email protected]>
Verify flags argument contains only known flags. Allows programs to probe for support as more are added.
Signed-off-by David Ahern <[email protected]>
--- net/core/filter.c | 6 ++++++ 1 file changed, 6 insertions(+)
net/core/filter.c +6 -0
@@ -4270,6 +4270,9 @@ BPF_CALL_4(bpf_xdp_fib_lookup, struct xdp_buff *, ctx,if (plen <sizeof (*params))return -EINVAL ; +if (flags & ~(BPF_FIB_LOOKUP_DIRECT |BPF_FIB_LOOKUP_OUTPUT )) +return -EINVAL ; +switch (params->family) {#if IS_ENABLED (CONFIG_INET )case AF_INET :
@@ -4304,6 +4307,9 @@ BPF_CALL_4(bpf_skb_fib_lookup, struct sk_buff *, skb,if (plen <sizeof (*params))return -EINVAL ; +if (flags & ~(BPF_FIB_LOOKUP_DIRECT |BPF_FIB_LOOKUP_OUTPUT )) +return -EINVAL ; +switch (params->family) {#if IS_ENABLED (CONFIG_INET )case AF_INET :
Signature · 1 line
2.11.0
Quoted 6 lines · On 05/29/2018 08:59 PM, [email protected] wrote:
From: David Ahern <[email protected]>
Verify flags argument contains only known flags. Allows programs to probe for support as more are added.
Signed-off-by David Ahern <[email protected]>
Applied to bpf-next, thanks David!