Module Name: src Committed By: sborrill Date: Thu Sep 28 17:07:20 UTC 2017
Modified Files: src/sbin/resize_ffs: resize_ffs.c Log Message: Fix the most obvious integer overflow errors which can lead to superblock corruption. Thanks to riastradh@ For example: # df /data Filesystem 1K-blocks Used Avail %Cap Mounted on /dev/ccd0d -19974939099004 -19982708701532 -737868756431824584 0% /data # dumpfs -s /dev/rccd0d file system: /dev/rccd0d format FFSv2 endian little-endian location 65536 (-b 128) magic 19540119 time Thu Sep 28 13:18:10 2017 superblock location 65536 id [ 595fa4a5 3363fe37 ] cylgrp dynamic inodes FFSv2 sblock FFSv2 fslevel 5 nbfree 242773148 ndir 211185 nifree 650798800 nffree 215448 ncg 13933 size 2647654400 blocks -4993734774751 bsize 32768 shift 15 mask 0xffff8000 fsize 4096 shift 12 mask 0xfffff000 frag 8 shift 3 fsbtodb 3 bpg 23754 fpg 190032 ipg 46848 minfree 5% optim time maxcontig 2 maxbpg 4096 symlinklen 120 contigsumsize 2 maxfilesize 0x000800800805ffff nindir 4096 inopb 128 avgfilesize 16384 avgfpdir 64 sblkno 24 cblkno 32 iblkno 40 dblkno 2968 sbsize 4096 cgsize 32768 csaddr 35792 cssize 225280 cgrotor 0 fmod 0 ronly 0 clean 0x01 wapbl version 0x1 location 2 flags 0x0 wapbl loc0 6354693888 loc1 131072 loc2 512 loc3 3 flags none fsmnt /data volname swuid 0 To generate a diff of this commit: cvs rdiff -u -r1.47 -r1.48 src/sbin/resize_ffs/resize_ffs.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.