mirror of https://github.com/torvalds/linux.git
The inode mode loaded from corrupted disk might by error contain the file type bits. Since the file type bits are set by squashfs_read_inode() using bitwise OR, the file type bits must not be set by squashfs_new_inode() from squashfs_read_inode(); otherwise, an invalid file type bits later confuses may_open(). Link: https://lkml.kernel.org/r/f63d8d11-2254-4fc3-9292-9a43a93b374e@I-love.SAKURA.ne.jp Reported-by: syzbot <syzbot+895c23f6917da440ed0d@syzkaller.appspotmail.com> Closes: https://syzkaller.appspot.com/bug?extid=895c23f6917da440ed0d Signed-off-by: Tetsuo Handa <penguin-kernel@I-love.SAKURA.ne.jp> Reviewed-by: Phillip Lougher <phillip@squashfs.org.uk> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> |
||
|---|---|---|
| .. | ||
| Kconfig | ||
| Makefile | ||
| block.c | ||
| cache.c | ||
| decompressor.c | ||
| decompressor.h | ||
| decompressor_multi.c | ||
| decompressor_multi_percpu.c | ||
| decompressor_single.c | ||
| dir.c | ||
| export.c | ||
| file.c | ||
| file_cache.c | ||
| file_direct.c | ||
| fragment.c | ||
| id.c | ||
| inode.c | ||
| lz4_wrapper.c | ||
| lzo_wrapper.c | ||
| namei.c | ||
| page_actor.c | ||
| page_actor.h | ||
| squashfs.h | ||
| squashfs_fs.h | ||
| squashfs_fs_i.h | ||
| squashfs_fs_sb.h | ||
| super.c | ||
| symlink.c | ||
| xattr.c | ||
| xattr.h | ||
| xattr_id.c | ||
| xz_wrapper.c | ||
| zlib_wrapper.c | ||
| zstd_wrapper.c | ||