netlink: allow be16 and be32 types in all uint policy checks
authorFlorian Westphal <fw@strlen.de>
Tue, 18 Jul 2023 07:52:29 +0000 (09:52 +0200)
committerFlorian Westphal <fw@strlen.de>
Thu, 27 Jul 2023 11:45:51 +0000 (13:45 +0200)
commit5fac9b7c16c50c6c7699517f582b56e3743f453a
treedcfead2e72694a85eb7bb3f43de650bfafa7d2d8
parenta927d77778e380ffd6ffea1f2037c6bdb23af99a
netlink: allow be16 and be32 types in all uint policy checks

__NLA_IS_BEINT_TYPE(tp) isn't useful.  NLA_BE16/32 are identical to
NLA_U16/32, the only difference is that it tells the netlink validation
functions that byteorder conversion might be needed before comparing
the value to the policy min/max ones.

After this change all policy macros that can be used with UINT types,
such as NLA_POLICY_MASK() can also be used with NLA_BE16/32.

This will be used to validate nf_tables flag attributes which
are in bigendian byte order.

Signed-off-by: Florian Westphal <fw@strlen.de>
include/net/netlink.h
lib/nlattr.c