[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-ID: <1398666009-1334-1-git-send-email-erik.hugne@ericsson.com>
Date: Mon, 28 Apr 2014 08:20:09 +0200
From: <erik.hugne@...csson.com>
To: <netdev@...r.kernel.org>, <tipc-discussion@...ts.sourceforge.net>,
<jon.maloy@...csson.com>, <maloy@...jonn.com>
CC: <ying.xue@...driver.com>, <paul.gortmaker@...driver.com>,
<richard.alpe@...csson.com>, Erik Hugne <erik.hugne@...csson.com>
Subject: [PATCH net-next] tipc: fix out of bounds indexing
From: Erik Hugne <erik.hugne@...csson.com>
Commit 78acb1f9b898e85fa2c1e28e700b54b66b288e8d ("tipc: add
ioctl to fetch link names") introduced a buffer overflow bug where
specially crafted ioctl requests could cause out-of-bounds indexing
of the node->links array. This was caused by an incorrect check vs
MAX_BEARERS, and the static code checker complaint is:
net/tipc/node.c:459 tipc_node_get_linkname() error: buffer overflow 'node->links' 2 <= 2
Signed-off-by: Erik Hugne <erik.hugne@...csson.com>
Reported-by: Dan Carpenter <dan.carpenter@...cle.com>
---
net/tipc/node.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/net/tipc/node.c b/net/tipc/node.c
index 1f938f3..6d6543e 100644
--- a/net/tipc/node.c
+++ b/net/tipc/node.c
@@ -453,7 +453,7 @@ int tipc_node_get_linkname(u32 bearer_id, u32 addr, char *linkname, size_t len)
struct tipc_link *link;
struct tipc_node *node = tipc_node_find(addr);
- if ((bearer_id > MAX_BEARERS) || !node)
+ if ((bearer_id >= MAX_BEARERS) || !node)
return -EINVAL;
tipc_node_lock(node);
link = node->links[bearer_id];
--
1.8.3.2
--
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Powered by blists - more mailing lists