diff mbox series

[iproute2-rc] rdma: Fix incorrectly handled NLA validation

Message ID 20181230133409.20446-1-leon@kernel.org
State Accepted, archived
Delegated to: stephen hemminger
Headers show
Series [iproute2-rc] rdma: Fix incorrectly handled NLA validation | expand

Commit Message

Leon Romanovsky Dec. 30, 2018, 1:34 p.m. UTC
From: Leon Romanovsky <leonro@mellanox.com>

mnl_attr_type_valid() receives maximum attribute type, which means that
we were supposed to supply the latest valid netlink attribute and not
the number of attributes. Such coding mistake caused to failures while
NLA attributes were extended.

Fixes: 74bd75c2b68d ("rdma: Add basic infrastructure for RDMA tool")
Signed-off-by: Leon Romanovsky <leonro@mellanox.com>
---
 rdma/utils.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

--
2.19.1
diff mbox series

Patch

diff --git a/rdma/utils.c b/rdma/utils.c
index 61f4aeb1..069d44fe 100644
--- a/rdma/utils.c
+++ b/rdma/utils.c
@@ -425,8 +425,8 @@  int rd_attr_cb(const struct nlattr *attr, void *data)
 	const struct nlattr **tb = data;
 	int type;

-	if (mnl_attr_type_valid(attr, RDMA_NLDEV_ATTR_MAX) < 0)
-		/* We received uknown attribute */
+	if (mnl_attr_type_valid(attr, RDMA_NLDEV_ATTR_MAX - 1) < 0)
+		/* We received unknown attribute */
 		return MNL_CB_OK;

 	type = mnl_attr_get_type(attr);