• Johannes Berg's avatar
    netlink: export policy in extended ACK · 44f3625b
    Johannes Berg authored
    Add a new attribute NLMSGERR_ATTR_POLICY to the extended ACK
    to advertise the policy, e.g. if an attribute was out of range,
    you'll know the range that's permissible.
    
    Add new NL_SET_ERR_MSG_ATTR_POL() and NL_SET_ERR_MSG_ATTR_POL()
    macros to set this, since realistically it's only useful to do
    this when the bad attribute (offset) is also returned.
    
    Use it in lib/nlattr.c which practically does all the policy
    validation.
    
    v2:
     - add and use netlink_policy_dump_attr_size_estimate()
    v3:
     - remove redundant break
    v4:
     - really remove redundant break ... sorry
    Reviewed-by: default avatarJakub Kicinski <kuba@kernel.org>
    Signed-off-by: default avatarJohannes Berg <johannes.berg@intel.com>
    Signed-off-by: default avatarJakub Kicinski <kuba@kernel.org>
    44f3625b
policy.c 11.2 KB