summaryrefslogtreecommitdiffstats
path: root/sys
diff options
context:
space:
mode:
authorphk <phk@FreeBSD.org>1996-01-07 22:39:06 +0000
committerphk <phk@FreeBSD.org>1996-01-07 22:39:06 +0000
commitde80e40d71795a22837cd56c09ae22cf330461cf (patch)
tree84d8db688134dd1492719df998ad8d5f43dea3f8 /sys
parentba5752821ff9b2c60368064c525bcba0159619ef (diff)
downloadFreeBSD-src-de80e40d71795a22837cd56c09ae22cf330461cf.zip
FreeBSD-src-de80e40d71795a22837cd56c09ae22cf330461cf.tar.gz
It's bad if the blockno is negative.
Diffstat (limited to 'sys')
-rw-r--r--sys/kern/subr_diskslice.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/sys/kern/subr_diskslice.c b/sys/kern/subr_diskslice.c
index 5555a81..871d972 100644
--- a/sys/kern/subr_diskslice.c
+++ b/sys/kern/subr_diskslice.c
@@ -43,7 +43,7 @@
* from: wd.c,v 1.55 1994/10/22 01:57:12 phk Exp $
* from: @(#)ufs_disksubr.c 7.16 (Berkeley) 5/4/91
* from: ufs_disksubr.c,v 1.8 1994/06/07 01:21:39 phk Exp $
- * $Id: subr_diskslice.c,v 1.14 1995/05/30 08:05:51 rgrimes Exp $
+ * $Id: subr_diskslice.c,v 1.15 1995/09/16 17:03:49 bde Exp $
*/
#include <sys/param.h>
@@ -107,6 +107,9 @@ dscheck(bp, ssp)
struct diskslice *sp;
long sz;
+ if (bp->b_blkno < 0)
+ goto bad;
+
sp = &ssp->dss_slices[dkslice(bp->b_dev)];
lp = sp->ds_label;
sz = (bp->b_bcount + DEV_BSIZE - 1) >> DEV_BSHIFT;
OpenPOWER on IntegriCloud