u-boot/fs/squashfs
Norbert van Bolhuis bbfa4fe13c squashfs: Fix sqfs_inode_size() for xattr related SQFS_LSYMLINK_TYPE
A squashfs filesystem with extended attributes (xattrs) may have
inodes of type SQFS_LSYMLINK_TYPE. This might cause u-boot to fail to
handle the filesystem since it assumes a SYMLINK_TYPE and LSYMLINK_TYPE
inode are the same size. This is wrong, see:
https://github.com/plougher/squashfs-tools/blob/master/squashfs-tools/read_fs.c#L421

Using the mksquashfs '-no-xattrs' argument is probably best, but the
mksquashfs '-xattrs' argument is the default.
This patch fixes squashfs image handling by making sure parsing the
uncompressed inode_table (with sqfs_find_inode) succeeeds. The only change
needed is correctly determining the size of a SQFS_LSYMLINK_TYPE inode.

Signed-off-by: Norbert van Bolhuis <nvbolhuis@gmail.com>
2025-01-18 08:29:10 -06:00
..
Kconfig include/u-boot, lib/zlib: add sources for zlib decompression 2020-08-07 22:31:32 -04:00
Makefile global: Rename SPL_ to XPL_ 2024-10-11 11:44:48 -06:00
sqfs.c squashfs: Fix heap corruption in sqfs_search_dir() 2024-08-15 16:14:36 -06:00
sqfs_decompressor.c fs/squashfs: enable LZ4 compression support 2023-11-16 18:53:09 -05:00
sqfs_decompressor.h fs/squashfs: remove unused declarations 2023-11-16 18:53:09 -05:00
sqfs_dir.c squashfs: Fix compilation on big endian systems 2022-06-03 11:15:24 -04:00
sqfs_filesystem.h fs/squashfs: remove unused declarations 2023-11-16 18:53:09 -05:00
sqfs_inode.c squashfs: Fix sqfs_inode_size() for xattr related SQFS_LSYMLINK_TYPE 2025-01-18 08:29:10 -06:00
sqfs_utils.h fs/squashfs: remove unused declarations 2023-11-16 18:53:09 -05:00