Re: [PATCH v2 1/4] ext4: add EXT4_INODE_HAVE_XATTR_SPACE macro in xattr.h

From: Baokun Li
Date: Wed Jun 15 2022 - 21:07:07 EST


在 2022/6/15 20:46, Jan Kara 写道:
On Wed 15-06-22 12:06:27, Baokun Li wrote:
When adding an xattr to an inode, we must ensure that the inode_size is
not less than EXT4_GOOD_OLD_INODE_SIZE + extra_isize + pad. Otherwise,
the end position may be greater than the start position, resulting in UAF.

Signed-off-by: Baokun Li <libaokun1@xxxxxxxxxx>
...

+/*
+ * If we want to add an xattr to the inode, we should make sure that
+ * i_extra_isize is not 0 and that the inode size is not less than
+ * EXT4_GOOD_OLD_INODE_SIZE + extra_isize + pad.
+ * EXT4_GOOD_OLD_INODE_SIZE extra_isize header entry pad data
+ * |--------------------------|------------|------|---------|---|-------|
+ */
+#define EXT4_INODE_HAVE_XATTR_SPACE(inode) \
Gramatically correct would be EXT4_INODE_**HAS**_XATTR_SPACE and I'd be for
using that. Otherwise the whole series looks good so feel free to add:

Reviewed-by: Jan Kara <jack@xxxxxxx>

Honza

I'm sorry, I didn't notice it was "HAS." Thank you very much for your correction.

I will send a patch V3 with the changes suggested by you. Thanks again!

--
With Best Regards,
Baokun Li
.