svn commit: r265931 - head/sys/kern
Don Lewis
truckman at FreeBSD.org
Mon May 12 20:22:43 UTC 2014
Author: truckman
Date: Mon May 12 20:22:42 2014
New Revision: 265931
URL: http://svnweb.freebsd.org/changeset/base/265931
Log:
Be even more paranoid about overflow.
Requested by: ache
Modified:
head/sys/kern/subr_rman.c
Modified: head/sys/kern/subr_rman.c
==============================================================================
--- head/sys/kern/subr_rman.c Mon May 12 20:19:40 2014 (r265930)
+++ head/sys/kern/subr_rman.c Mon May 12 20:22:42 2014 (r265931)
@@ -466,8 +466,8 @@ rman_reserve_resource_bound(struct rman
}
amask = (1ul << RF_ALIGNMENT(flags)) - 1;
- if (start + amask < start) {
- DPRINTF(("start+amask wrapped around\n"));
+ if (start > ULONG_MAX - amask) {
+ DPRINTF(("start+amask would wrap around\n"));
goto out;
}
@@ -487,8 +487,8 @@ rman_reserve_resource_bound(struct rman
s->r_start, end));
break;
}
- if (s->r_start + amask < s->r_start) {
- DPRINTF(("s->r_start (%#lx) + amask (%#lx) wrapped\n",
+ if (s->r_start > ULONG_MAX - amask) {
+ DPRINTF(("s->r_start (%#lx) + amask (%#lx) too large\n",
s->r_start, amask));
break;
}
More information about the svn-src-head
mailing list