diff options
author | phk <phk@FreeBSD.org> | 1996-01-07 22:39:06 +0000 |
---|---|---|
committer | phk <phk@FreeBSD.org> | 1996-01-07 22:39:06 +0000 |
commit | de80e40d71795a22837cd56c09ae22cf330461cf (patch) | |
tree | 84d8db688134dd1492719df998ad8d5f43dea3f8 /sys | |
parent | ba5752821ff9b2c60368064c525bcba0159619ef (diff) | |
download | FreeBSD-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.c | 5 |
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; |