Since we have a skb_pkt_type_ok() helper for checking the type before
mangling, make use of it instead of open coding. Follow-up to commit
8b10cab64c13 ("net: simplify and make pkt_type_ok() available for other
users") that came in after d2485c4242a8 ("bpf: add bpf_skb_change_type
helper").

Signed-off-by: Daniel Borkmann <dan...@iogearbox.net>
Acked-by: Alexei Starovoitov <a...@kernel.org>
---
 net/core/filter.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/net/core/filter.c b/net/core/filter.c
index cb06ace..58b5e6d 100644
--- a/net/core/filter.c
+++ b/net/core/filter.c
@@ -1976,8 +1976,8 @@ static u64 bpf_skb_change_type(u64 r1, u64 r2, u64 r3, 
u64 r4, u64 r5)
        u32 pkt_type = r2;
 
        /* We only allow a restricted subset to be changed for now. */
-       if (unlikely(skb->pkt_type > PACKET_OTHERHOST ||
-                    pkt_type > PACKET_OTHERHOST))
+       if (unlikely(!skb_pkt_type_ok(skb->pkt_type) ||
+                    !skb_pkt_type_ok(pkt_type)))
                return -EINVAL;
 
        skb->pkt_type = pkt_type;
-- 
1.9.3

Reply via email to