summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--sbin/fsck/inode.c2
-rw-r--r--sbin/fsck_ffs/inode.c2
-rw-r--r--sbin/fsck_ifs/inode.c2
3 files changed, 3 insertions, 3 deletions
diff --git a/sbin/fsck/inode.c b/sbin/fsck/inode.c
index c16571c..429dd3b 100644
--- a/sbin/fsck/inode.c
+++ b/sbin/fsck/inode.c
@@ -235,7 +235,7 @@ chkrange(blk, cnt)
{
register int c;
- if ((unsigned)(blk + cnt) > maxfsblock)
+ if (blk < 0 || blk >= maxfsblock || cnt < 0 || cnt > maxfsblock - blk)
return (1);
c = dtog(&sblock, blk);
if (blk < cgdmin(&sblock, c)) {
diff --git a/sbin/fsck_ffs/inode.c b/sbin/fsck_ffs/inode.c
index c16571c..429dd3b 100644
--- a/sbin/fsck_ffs/inode.c
+++ b/sbin/fsck_ffs/inode.c
@@ -235,7 +235,7 @@ chkrange(blk, cnt)
{
register int c;
- if ((unsigned)(blk + cnt) > maxfsblock)
+ if (blk < 0 || blk >= maxfsblock || cnt < 0 || cnt > maxfsblock - blk)
return (1);
c = dtog(&sblock, blk);
if (blk < cgdmin(&sblock, c)) {
diff --git a/sbin/fsck_ifs/inode.c b/sbin/fsck_ifs/inode.c
index c16571c..429dd3b 100644
--- a/sbin/fsck_ifs/inode.c
+++ b/sbin/fsck_ifs/inode.c
@@ -235,7 +235,7 @@ chkrange(blk, cnt)
{
register int c;
- if ((unsigned)(blk + cnt) > maxfsblock)
+ if (blk < 0 || blk >= maxfsblock || cnt < 0 || cnt > maxfsblock - blk)
return (1);
c = dtog(&sblock, blk);
if (blk < cgdmin(&sblock, c)) {
OpenPOWER on IntegriCloud