Re: [syzbot] [hfs?] WARNING in hfs_write_inode

From: Linus Torvalds
Date: Thu Jan 05 2023 - 16:54:48 EST


On Thu, Jan 5, 2023 at 1:35 PM Michael Schmitz <schmitzmic@xxxxxxxxx> wrote:
>
> Looking at Linus' patch, I wonder whether the missing fd.entrylength
> size test in the HFS_IS_RSRC(inode) case was due to the fact that a
> file's resource fork may be empty?

But if that is the case, then the subsequent hfs_bnode_read would
return garbage, no? And then writing it back after the update would be
even worse.

So adding that

+ if (fd.entrylength < sizeof(struct hfs_cat_file))
+ goto out;

would seem to be the right thing anyway. No?

But I really don't know the code, so this is all from just looking at
it and going "that makes no sense". Maybe it _does_ make sense to
people who have more background on it.

Linus