]> git.ipfire.org Git - thirdparty/xfsprogs-dev.git/commit
xfs: enhance dinode verifier
authorEric Sandeen <sandeen@sandeen.net>
Thu, 17 May 2018 17:00:05 +0000 (12:00 -0500)
committerEric Sandeen <sandeen@redhat.com>
Thu, 17 May 2018 17:00:05 +0000 (12:00 -0500)
commit3060f26a230ae2c77c2a37071419943978691ba1
tree7938b68823357848ca63ea88fbf41bfcabfec896
parent1421de38cf9262d141267e468807cad5382ee47e
xfs: enhance dinode verifier

Source kernel commit: b42db0860e13067fcc7cbfba3966c9e652668bbc

Add several more validations to xfs_dinode_verify:

- For LOCAL data fork formats, di_nextents must be 0.
- For LOCAL attr fork formats, di_anextents must be 0.
- For inodes with no attr fork offset,
- format must be XFS_DINODE_FMT_EXTENTS if set at all
- di_anextents must be 0.

Thanks to dchinner for pointing out a couple related checks I had
forgotten to add.

Signed-off-by: Eric Sandeen <sandeen@redhat.com>
Bugzilla: https://bugzilla.kernel.org/show_bug.cgi?id=199377
Reviewed-by: Darrick J. Wong <darrick.wong@oracle.com>
Signed-off-by: Darrick J. Wong <darrick.wong@oracle.com>
Signed-off-by: Eric Sandeen <sandeen@sandeen.net>
libxfs/xfs_inode_buf.c