summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--sbin/fsck_ffs/pass1.c5
1 files changed, 5 insertions, 0 deletions
diff --git a/sbin/fsck_ffs/pass1.c b/sbin/fsck_ffs/pass1.c
index 2772ec1..3d09bd0 100644
--- a/sbin/fsck_ffs/pass1.c
+++ b/sbin/fsck_ffs/pass1.c
@@ -228,6 +228,11 @@ checkinode(inumber, idesc)
printf("bad special-file size %qu:", dp->di_size);
goto unknown;
}
+ if ((mode == IFBLK || mode == IFCHR) && (dev_t)dp->di_rdev == NODEV) {
+ if (debug)
+ printf("bad special-file rdev NODEV:");
+ goto unknown;
+ }
ndb = howmany(dp->di_size, sblock.fs_bsize);
if (ndb < 0) {
if (debug)
OpenPOWER on IntegriCloud