aboutsummaryrefslogtreecommitdiff
path: root/lib/memory-notifier-error-inject.c
diff options
context:
space:
mode:
authorDaniel Borkmann <[email protected]>2015-07-07 00:07:52 +0200
committerDavid S. Miller <[email protected]>2015-07-08 16:01:52 -0700
commit4f7d2cdfdde71ffe962399b7020c674050329423 (patch)
tree94520a5451c736427a2b9dbf089ace29cb33332c /lib/memory-notifier-error-inject.c
parent6c3e921b18edca290099adfddde8a50236bf2d80 (diff)
rtnetlink: verify IFLA_VF_INFO attributes before passing them to driver
Jason Gunthorpe reported that since commit c02db8c6290b ("rtnetlink: make SR-IOV VF interface symmetric"), we don't verify IFLA_VF_INFO attributes anymore with respect to their policy, that is, ifla_vfinfo_policy[]. Before, they were part of ifla_policy[], but they have been nested since placed under IFLA_VFINFO_LIST, that contains the attribute IFLA_VF_INFO, which is another nested attribute for the actual VF attributes such as IFLA_VF_MAC, IFLA_VF_VLAN, etc. Despite the policy being split out from ifla_policy[] in this commit, it's never applied anywhere. nla_for_each_nested() only does basic nla_ok() testing for struct nlattr, but it doesn't know about the data context and their requirements. Fix, on top of Jason's initial work, does 1) parsing of the attributes with the right policy, and 2) using the resulting parsed attribute table from 1) instead of the nla_for_each_nested() loop (just like we used to do when still part of ifla_policy[]). Reference: http://thread.gmane.org/gmane.linux.network/368913 Fixes: c02db8c6290b ("rtnetlink: make SR-IOV VF interface symmetric") Reported-by: Jason Gunthorpe <[email protected]> Cc: Chris Wright <[email protected]> Cc: Sucheta Chakraborty <[email protected]> Cc: Greg Rose <[email protected]> Cc: Jeff Kirsher <[email protected]> Cc: Rony Efraim <[email protected]> Cc: Vlad Zolotarov <[email protected]> Cc: Nicolas Dichtel <[email protected]> Cc: Thomas Graf <[email protected]> Signed-off-by: Jason Gunthorpe <[email protected]> Signed-off-by: Daniel Borkmann <[email protected]> Acked-by: Vlad Zolotarov <[email protected]> Signed-off-by: David S. Miller <[email protected]>
Diffstat (limited to 'lib/memory-notifier-error-inject.c')
0 files changed, 0 insertions, 0 deletions