summaryrefslogtreecommitdiff
path: root/net
diff options
context:
space:
mode:
authorEric Van Hensbergen <ericvh@gmail.com>2011-07-13 19:12:18 -0500
committerEric Van Hensbergen <ericvh@gmail.com>2011-07-23 09:32:29 -0500
commitb85f7d92d7bd7e3298159e8b1eed8cb8cbbb0348 (patch)
tree3abd3117770a4cca95e442d248d4da187ad8aa7d /net
parentbbd9d6f7fbb0305c9a592bf05a32e87eb364a4ff (diff)
downloadlinux-stable-b85f7d92d7bd7e3298159e8b1eed8cb8cbbb0348.tar.gz
linux-stable-b85f7d92d7bd7e3298159e8b1eed8cb8cbbb0348.tar.bz2
linux-stable-b85f7d92d7bd7e3298159e8b1eed8cb8cbbb0348.zip
net/9p: fix client code to fail more gracefully on protocol error
There was a BUG_ON to protect against a bad id which could be dealt with more gracefully. Reported-by: Natalie Orlin <norlin@us.ibm.com> Signed-off-by: Eric Van Hensbergen <ericvh@gmail.com>
Diffstat (limited to 'net')
-rw-r--r--net/9p/client.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/net/9p/client.c b/net/9p/client.c
index 9e3b0e640da1..81e667b6bbbd 100644
--- a/net/9p/client.c
+++ b/net/9p/client.c
@@ -280,7 +280,8 @@ struct p9_req_t *p9_tag_lookup(struct p9_client *c, u16 tag)
* buffer to read the data into */
tag++;
- BUG_ON(tag >= c->max_tag);
+ if(tag >= c->max_tag)
+ return NULL;
row = tag / P9_ROW_MAXTAG;
col = tag % P9_ROW_MAXTAG;