netdev.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [patch] RDS: fix an integer overflow check
@ 2012-10-12  7:31 Dan Carpenter
  2012-10-13 13:25 ` Jeff Liu
  0 siblings, 1 reply; 3+ messages in thread
From: Dan Carpenter @ 2012-10-12  7:31 UTC (permalink / raw)
  To: Venkat Venkatsubra; +Cc: David S. Miller, rds-devel, netdev, kernel-janitors

"len" is an int.  We verified that len was postive already.  Since
PAGE_SIZE is specified as an unsigned long, the type it promoted to
unsigned and the condition is never true.

I'm not sure this check is actually needed.  It might be that we could
just remove it?

Signed-off-by: Dan Carpenter <dan.carpenter@oracle.com>

diff --git a/net/rds/info.c b/net/rds/info.c
index 9a6b4f6..4d62618 100644
--- a/net/rds/info.c
+++ b/net/rds/info.c
@@ -176,7 +176,7 @@ int rds_info_getsockopt(struct socket *sock, int optname, char __user *optval,
 
 	/* check for all kinds of wrapping and the like */
 	start = (unsigned long)optval;
-	if (len < 0 || len + PAGE_SIZE - 1 < len || start + len < start) {
+	if (len < 0 || len > INT_MAX - (PAGE_SIZE - 1) || start + len < start) {
 		ret = -EINVAL;
 		goto out;
 	}

^ permalink raw reply related	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2012-10-13 13:46 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2012-10-12  7:31 [patch] RDS: fix an integer overflow check Dan Carpenter
2012-10-13 13:25 ` Jeff Liu
2012-10-13 13:45   ` [rds-devel] " Jeff Liu

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).