[edk2-devel] [edk2-platforms][PATCH v4 1/1] Ext4Pkg: Fixes double-free in Ext4ReadSymlink

2023-02-17 Thread Savva Mitrofanov
The SymlinkTmp was deallocated unconditionally, so we shouldn't free it again on EFI_ERROR Cc: Marvin Häuser Cc: Pedro Falcato Cc: Vitaly Cheptsov Fixes: e81432fbacb7 ("Ext4Pkg: Add symbolic links support") Signed-off-by: Savva Mitrofanov --- Features/Ext4Pkg/Ext4Dxe/Symlink.

[edk2-devel] [edk2-platforms][PATCH v4 09/12] Ext4Pkg: Add missing exit Status in Ext4OpenDirent

2023-02-02 Thread Savva Mitrofanov
ned-off-by: Savva Mitrofanov Reviewed-by: Pedro Falcato Reviewed-by: Marvin Häuser --- Features/Ext4Pkg/Ext4Dxe/Directory.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/Features/Ext4Pkg/Ext4Dxe/Directory.c b/Features/Ext4Pkg/Ext4Dxe/Directory.c index c7992cc72717..dee8cfc66

[edk2-devel] [edk2-platforms][PATCH v4 11/12] Ext4Pkg: Filter out directory entry names containing \0 as invalid

2023-02-02 Thread Savva Mitrofanov
tries") Signed-off-by: Savva Mitrofanov Reviewed-by: Pedro Falcato --- Features/Ext4Pkg/Ext4Dxe/Directory.c | 9 - 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/Features/Ext4Pkg/Ext4Dxe/Directory.c b/Features/Ext4Pkg/Ext4Dxe/Directory.c index dee8cfc66cb7..88f89a40534c 10

[edk2-devel] [edk2-platforms][PATCH v4 12/12] Ext4Pkg: Corrects memory leak in Ext4ReadSlowSymlink

2023-02-02 Thread Savva Mitrofanov
We need to free SymlinkTmp before exiting if SymlinkSizeTmp != ReadSize condition is true Reported-by: Marvin Häuser Cc: Pedro Falcato Cc: Vitaly Cheptsov Fixes: e81432fbacb7 ("Ext4Pkg: Add symbolic links support") Signed-off-by: Savva Mitrofanov Reviewed-by: Marvin Häuser ---

[edk2-devel] [edk2-platforms][PATCH v4 10/12] Ext4Pkg: Fixes build on MSVC

2023-02-02 Thread Savva Mitrofanov
Häuser Cc: Pedro Falcato Cc: Vitaly Cheptsov Fixes: 7c46116b0e18 ("Ext4Pkg: Add ext2/3 support") Fixes: e81432fbacb7 ("Ext4Pkg: Add symbolic links support") Signed-off-by: Savva Mitrofanov Reviewed-by: Marvin Häuser --- Features/Ext4Pkg/Ext4Dxe/Inode.c | 4 ++-- Feat

[edk2-devel] [edk2-platforms][PATCH v4 08/12] Ext4Pkg: Check VolumeName allocation correctness in Ext4GetVolumeName

2023-02-02 Thread Savva Mitrofanov
ng of EFI_FILE_SYSTEM_VOLUME_LABEL GetInfo().") Signed-off-by: Savva Mitrofanov Reviewed-by: Pedro Falcato Reviewed-by: Marvin Häuser --- Features/Ext4Pkg/Ext4Dxe/File.c | 10 -- Features/Ext4Pkg/Ext4Dxe/Inode.c | 2 +- 2 files changed, 9 insertions(+), 3 deletions(-) diff --git a/Features/Ext4P

[edk2-devel] [edk2-platforms][PATCH v4 07/12] Ext4Pkg: Check that source file is directory in Ext4OpenInternal

2023-02-02 Thread Savva Mitrofanov
river.") Signed-off-by: Savva Mitrofanov Reviewed-by: Pedro Falcato Reviewed-by: Marvin Häuser --- Features/Ext4Pkg/Ext4Dxe/File.c | 13 + 1 file changed, 9 insertions(+), 4 deletions(-) diff --git a/Features/Ext4Pkg/Ext4Dxe/File.c b/Features/Ext4Pkg/Ext4Dxe/File.c index 8d

[edk2-devel] [edk2-platforms][PATCH v4 06/12] Ext4Pkg: Corrects integer overflow check logic in DiskUtil

2023-02-02 Thread Savva Mitrofanov
Corrects multiplication overflow check code and adds additional check for emptiness of number of blocks and block number Cc: Marvin Häuser Cc: Pedro Falcato Cc: Vitaly Cheptsov Fixes: d9ceedca6c8f ("Ext4Pkg: Add Ext4Dxe driver.") Signed-off-by: Savva Mitrofanov --- Featur

[edk2-devel] [edk2-platforms][PATCH v4 05/12] Ext4Pkg: Fix shift out of bounds in Ext4OpenSuperblock

2023-02-02 Thread Savva Mitrofanov
Missing check for wrong s_log_block_size exponent leads to shift out of bounds. Limit block size to 2 MiB Cc: Marvin Häuser Cc: Pedro Falcato Cc: Vitaly Cheptsov Fixes: d9ceedca6c8f ("Ext4Pkg: Add Ext4Dxe driver.") Signed-off-by: Savva Mitrofanov Reviewed-by: Pedro Falcato R

[edk2-devel] [edk2-platforms][PATCH v4 03/12] Ext4Pkg: Fix division by zero by adding check for s_inodes_per_group

2023-02-02 Thread Savva Mitrofanov
Superblock s_inodes_per_group field can't be zero, it leads to division by zero in BlockGroup routine Ext4ReadInode Cc: Marvin Häuser Cc: Pedro Falcato Cc: Vitaly Cheptsov Fixes: d9ceedca6c8f ("Ext4Pkg: Add Ext4Dxe driver.") Signed-off-by: Savva Mitrofanov Reviewed-by: Pedro Fa

[edk2-devel] [edk2-platforms][PATCH v4 04/12] Ext4Pkg: Add inode number validity check

2023-02-02 Thread Savva Mitrofanov
river.") Signed-off-by: Savva Mitrofanov --- Features/Ext4Pkg/Ext4Dxe/Ext4Disk.h | 13 +++-- Features/Ext4Pkg/Ext4Dxe/Ext4Dxe.h| 12 Features/Ext4Pkg/Ext4Dxe/BlockGroup.c | 5 + 3 files changed, 28 insertions(+), 2 deletions(-) diff --git a/Features/Ext4Pkg/Ext4Dxe/

[edk2-devel] [edk2-platforms][PATCH v4 02/12] Ext4Pkg: Fix incorrect checksum metadata feature check

2023-02-02 Thread Savva Mitrofanov
: Pedro Falcato Cc: Vitaly Cheptsov Fixes: d9ceedca6c8f ("Ext4Pkg: Add Ext4Dxe driver.") Signed-off-by: Savva Mitrofanov Reviewed-by: Pedro Falcato Reviewed-by: Marvin Häuser --- Features/Ext4Pkg/Ext4Dxe/Superblock.c | 6 ++ 1 file changed, 2 insertions(+), 4 deletions(-) di

[edk2-devel] [edk2-platforms][PATCH v4 00/12] Ext4Pkg: Code correctness and security improvements

2023-02-02 Thread Savva Mitrofanov
/savvamitrofanov/edk2-platforms/tree/master Cc: Marvin Häuser Cc: Pedro Falcato Cc: Vitaly Cheptsov Savva Mitrofanov (12): Ext4Pkg: Fix memory leak in Ext4RetrieveDirent Ext4Pkg: Fix incorrect checksum metadata feature check Ext4Pkg: Fix division by zero by adding check for s_inodes_per_group Ext4Pkg

[edk2-devel] [edk2-platforms][PATCH v4 01/12] Ext4Pkg: Fix memory leak in Ext4RetrieveDirent

2023-02-02 Thread Savva Mitrofanov
We need to free buffer on return if BlockRemainder != 0. Also changed return logic from function to use use common exit to prevent code duplication. Cc: Marvin Häuser Cc: Pedro Falcato Cc: Vitaly Cheptsov Fixes: d9ceedca6c8f ("Ext4Pkg: Add Ext4Dxe driver.") Signed-off-by: Savva

Re: [edk2-devel] [edk2-platforms][PATCH v3 04/11] Ext4Pkg: Add inode number validity check

2023-02-02 Thread Savva Mitrofanov
his in a simplified way. These changes will be in v4 Thanks! > On 27 Jan 2023, at 20:19, Pedro Falcato wrote: > > On Fri, Jan 27, 2023 at 9:29 AM Savva Mitrofanov wrote: >> >> We need to validate inode number to prevent possible null-pointer >> dereference of dire

Re: [edk2-devel] [edk2-platforms][PATCH v3 02/11] Ext4Pkg: Fix incorrect checksum metadata feature check

2023-01-30 Thread Savva Mitrofanov
Thanks for pointing this, yes, this change actually replaces structure field from FeaturesCompat to FeaturesRoCompat. The commit message was already corrected in referenced repository fork. > On 27 Jan 2023, at 16:02, Marvin Häuser wrote: > > The actual issue appears to be FeaturesCompat vs Fe

Re: [edk2-devel] [edk2-platforms][PATCH v3 11/11] Ext4Pkg: Filter out directory entry names containing \0 as invalid

2023-01-30 Thread Savva Mitrofanov
It is not so important from my point of view, however, I corrected this in the referenced repository fork. > On 27 Jan 2023, at 16:04, Marvin Häuser wrote: > > On 27. Jan 2023, at 10:29, Savva Mitrofanov wrote: >> >> The directory entry name conventions forbid h

Re: [edk2-devel] [edk2-platforms][PATCH v3 05/11] Ext4Pkg: Fix shift out of bounds in Ext4OpenSuperblock

2023-01-27 Thread Savva Mitrofanov
Thanks, I corrected this in the referenced repository fork. Will be included in v4. > On 27 Jan 2023, at 20:22, Pedro Falcato wrote: > > On Fri, Jan 27, 2023 at 9:29 AM Savva Mitrofanov wrote: >> >> Missing check for wrong s_log_block_size exponent leads to shift out of &

Re: [edk2-devel] [edk2-platforms][PATCH v3 06/11] Ext4Pkg: Corrects integer overflow check logic in DiskUtil

2023-01-27 Thread Savva Mitrofanov
> Why this whitespace change? Seems code formatter just removed trailing space. If you want so, I can drop this change in v4. > On 27 Jan 2023, at 20:24, Pedro Falcato wrote: > > On Fri, Jan 27, 2023 at 9:29 AM Savva Mitrofanov wrote: >> >> Corrects multiplica

[edk2-devel] [edk2-platforms][PATCH v3 11/11] Ext4Pkg: Filter out directory entry names containing \0 as invalid

2023-01-27 Thread Savva Mitrofanov
tries") Signed-off-by: Savva Mitrofanov --- Features/Ext4Pkg/Ext4Dxe/Directory.c | 9 - 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/Features/Ext4Pkg/Ext4Dxe/Directory.c b/Features/Ext4Pkg/Ext4Dxe/Directory.c index 0753a20b5377..465749c9b51d 100644 --- a/Features/Ext4P

[edk2-devel] [edk2-platforms][PATCH v3 10/11] Ext4Pkg: Fixes build on MSVC

2023-01-27 Thread Savva Mitrofanov
Häuser Cc: Pedro Falcato Cc: Vitaly Cheptsov Fixes: 7c46116b0e18 ("Ext4Pkg: Add ext2/3 support") Fixes: e81432fbacb7 ("Ext4Pkg: Add symbolic links support") Signed-off-by: Savva Mitrofanov --- Features/Ext4Pkg/Ext4Dxe/Inode.c | 4 ++-- Features/Ext4Pkg/Ext4Dxe/Symlink.c

[edk2-devel] [edk2-platforms][PATCH v3 07/11] Ext4Pkg: Check that source file is directory in Ext4OpenInternal

2023-01-27 Thread Savva Mitrofanov
river.") Signed-off-by: Savva Mitrofanov --- Features/Ext4Pkg/Ext4Dxe/File.c | 13 + 1 file changed, 9 insertions(+), 4 deletions(-) diff --git a/Features/Ext4Pkg/Ext4Dxe/File.c b/Features/Ext4Pkg/Ext4Dxe/File.c index 8dfe324255f4..9dde4a5d1a2d 100644 --- a/Features/Ext4Pkg/Ext4Dxe/Fi

[edk2-devel] [edk2-platforms][PATCH v3 09/11] Ext4Pkg: Add missing exit Status in Ext4OpenDirent

2023-01-27 Thread Savva Mitrofanov
ned-off-by: Savva Mitrofanov --- Features/Ext4Pkg/Ext4Dxe/Directory.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/Features/Ext4Pkg/Ext4Dxe/Directory.c b/Features/Ext4Pkg/Ext4Dxe/Directory.c index 2e9a58a7e329..0753a20b5377 100644 --- a/Features/Ext4Pkg/Ext4Dxe/Directory.c +++

[edk2-devel] [edk2-platforms][PATCH v3 08/11] Ext4Pkg: Check VolumeName allocation correctness in Ext4GetVolumeName

2023-01-27 Thread Savva Mitrofanov
ng of EFI_FILE_SYSTEM_VOLUME_LABEL GetInfo().") Signed-off-by: Savva Mitrofanov --- Features/Ext4Pkg/Ext4Dxe/File.c | 10 -- Features/Ext4Pkg/Ext4Dxe/Inode.c | 2 +- 2 files changed, 9 insertions(+), 3 deletions(-) diff --git a/Features/Ext4Pkg/Ext4Dxe/File.c b/Features/Ext4Pkg/Ext4Dxe/File.c index 9d

[edk2-devel] [edk2-platforms][PATCH v3 05/11] Ext4Pkg: Fix shift out of bounds in Ext4OpenSuperblock

2023-01-27 Thread Savva Mitrofanov
Missing check for wrong s_log_block_size exponent leads to shift out of bounds. Limit block size to 2 MiB Cc: Marvin Häuser Cc: Pedro Falcato Cc: Vitaly Cheptsov Fixes: d9ceedca6c8f ("Ext4Pkg: Add Ext4Dxe driver.") Signed-off-by: Savva Mitrofanov --- Features/Ext4Pkg/Ext4Dxe

[edk2-devel] [edk2-platforms][PATCH v3 04/11] Ext4Pkg: Add inode number validity check

2023-01-27 Thread Savva Mitrofanov
("Ext4Pkg: Add Ext4Dxe driver.") Signed-off-by: Savva Mitrofanov --- Features/Ext4Pkg/Ext4Dxe/Ext4Disk.h | 13 -- Features/Ext4Pkg/Ext4Dxe/Ext4Dxe.h| 25 Features/Ext4Pkg/Ext4Dxe/BlockGroup.c | 5 Features/Ext4Pkg/Ext4Dxe/Directory.c | 10 +++

[edk2-devel] [edk2-platforms][PATCH v3 06/11] Ext4Pkg: Corrects integer overflow check logic in DiskUtil

2023-01-27 Thread Savva Mitrofanov
Corrects multiplication overflow check code Cc: Marvin Häuser Cc: Pedro Falcato Cc: Vitaly Cheptsov Fixes: d9ceedca6c8f ("Ext4Pkg: Add Ext4Dxe driver.") Signed-off-by: Savva Mitrofanov --- Features/Ext4Pkg/Ext4Pkg.dsc| 2 +- Features/Ext4Pkg/Ext4Dxe/DiskUtil.c | 8 ---

[edk2-devel] [edk2-platforms][PATCH v3 03/11] Ext4Pkg: Fix division by zero by adding check for s_inodes_per_group

2023-01-27 Thread Savva Mitrofanov
Superblock s_inodes_per_group field can't be zero, it leads to division by zero in BlockGroup routine Ext4ReadInode Cc: Marvin Häuser Cc: Pedro Falcato Cc: Vitaly Cheptsov Fixes: d9ceedca6c8f ("Ext4Pkg: Add Ext4Dxe driver.") Signed-off-by: Savva Mitrofanov --- Features/

[edk2-devel] [edk2-platforms][PATCH v3 02/11] Ext4Pkg: Fix incorrect checksum metadata feature check

2023-01-27 Thread Savva Mitrofanov
Missing comparison != 0 leads to broken logic condition. Also replaced CSUM_SEED feature_incompat check with predefined macro EXT4_HAS_INCOMPAT Cc: Marvin Häuser Cc: Pedro Falcato Cc: Vitaly Cheptsov Fixes: d9ceedca6c8f ("Ext4Pkg: Add Ext4Dxe driver.") Signed-off-by: Savva

[edk2-devel] [edk2-platforms][PATCH v3 01/11] Ext4Pkg: Fix memory leak in Ext4RetrieveDirent

2023-01-27 Thread Savva Mitrofanov
We need to free buffer on return if BlockRemainder != 0. Also changed return logic from function to use use common exit to prevent code duplication. Cc: Marvin Häuser Cc: Pedro Falcato Cc: Vitaly Cheptsov Fixes: d9ceedca6c8f ("Ext4Pkg: Add Ext4Dxe driver.") Signed-off-by: Savva

[edk2-devel] [edk2-platforms][PATCH v3 00/11] Ext4Pkg: Code correctness and security improvements

2023-01-27 Thread Savva Mitrofanov
SVC. This patchset fixes several code problems found by fuzzing Ext4Dxe like buffer and integer overflows, memory leaks, logic bugs and so on. REF: https://github.com/savvamitrofanov/edk2-platforms/tree/master Cc: Marvin Häuser Cc: Pedro Falcato Cc: Vitaly Cheptsov Savva Mitrofanov (11): Ex

[edk2-devel] [edk2-platforms][PATCH v2 11/11] Ext4Pkg: Add missing exit Status in Ext4OpenDirent

2022-12-12 Thread Savva Mitrofanov
Missing EFI_OUT_OF_RESOURCES exit status on failed Ext4CreateDentry leads to NULL-pointer dereference in Ext4GetFileInfo (passing NULL buffer in Ext4ReadDir) Cc: Marvin Häuser Cc: Pedro Falcato Cc: Vitaly Cheptsov Fixes: e55f0527dde48a5f139c1b8f35acc4e6b59dd794 Signed-off-by: Savva Mitrofanov

[edk2-devel] [edk2-platforms][PATCH v2 10/11] Ext4Pkg: Check VolumeName allocation correctness in Ext4GetVolumeName

2022-12-12 Thread Savva Mitrofanov
Missing check in some cases leads to failed StrCpyS call in Ext4GetVolumeLabelInfo. Also correct condition that checks Inode pointer for being NULL in Ext4AllocateInode Cc: Marvin Häuser Cc: Pedro Falcato Cc: Vitaly Cheptsov Fixes: e55f0527dde48a5f139c1b8f35acc4e6b59dd794 Signed-off-by: Savva

[edk2-devel] [edk2-platforms][PATCH v2 09/11] Ext4Pkg: Check that source file is directory in Ext4OpenInternal

2022-12-12 Thread Savva Mitrofanov
-off-by: Savva Mitrofanov --- Features/Ext4Pkg/Ext4Dxe/File.c | 13 + 1 file changed, 9 insertions(+), 4 deletions(-) diff --git a/Features/Ext4Pkg/Ext4Dxe/File.c b/Features/Ext4Pkg/Ext4Dxe/File.c index 04198a53bfc0..20a0194a5793 100644 --- a/Features/Ext4Pkg/Ext4Dxe/File.c +++ b

[edk2-devel] [edk2-platforms][PATCH v2 08/11] Ext4Pkg: Corrects integer overflow check logic in DiskUtil

2022-12-12 Thread Savva Mitrofanov
Corrects multiplication overflow check code Cc: Marvin Häuser Cc: Pedro Falcato Cc: Vitaly Cheptsov Fixes: e55f0527dde48a5f139c1b8f35acc4e6b59dd794 Signed-off-by: Savva Mitrofanov --- Features/Ext4Pkg/Ext4Pkg.dsc| 2 +- Features/Ext4Pkg/Ext4Dxe/DiskUtil.c | 8 2 files

[edk2-devel] [edk2-platforms][PATCH v2 07/11] Ext4Pkg: Fix shift out of bounds in Ext4OpenSuperblock

2022-12-12 Thread Savva Mitrofanov
Missing check for wrong s_log_block_size exponent leads to shift out of bounds. Limit block size to 2 MiB Cc: Marvin Häuser Cc: Pedro Falcato Cc: Vitaly Cheptsov Fixes: e55f0527dde48a5f139c1b8f35acc4e6b59dd794 Signed-off-by: Savva Mitrofanov --- Features/Ext4Pkg/Ext4Dxe/Ext4Dxe.h| 14

[edk2-devel] [edk2-platforms][PATCH v2 06/11] Ext4Pkg: Add inode number validity check

2022-12-12 Thread Savva Mitrofanov
: e55f0527dde48a5f139c1b8f35acc4e6b59dd794 Signed-off-by: Savva Mitrofanov --- Features/Ext4Pkg/Ext4Dxe/Ext4Disk.h | 15 +--- Features/Ext4Pkg/Ext4Dxe/Ext4Dxe.h| 25 Features/Ext4Pkg/Ext4Dxe/BlockGroup.c | 5 Features/Ext4Pkg/Ext4Dxe/Directory.c | 10 4 files changed

[edk2-devel] [edk2-platforms][PATCH v2 04/11] Ext4Pkg: Fix incorrect checksum metadata feature check

2022-12-12 Thread Savva Mitrofanov
Missing comparison != 0 leads to broken logic condition. Also replaced CSUM_SEED feature_incompat check with predefined macro EXT4_HAS_INCOMPAT Cc: Marvin Häuser Cc: Pedro Falcato Cc: Vitaly Cheptsov Fixes: e55f0527dde48a5f139c1b8f35acc4e6b59dd794 Signed-off-by: Savva Mitrofanov --- Features

[edk2-devel] [edk2-platforms][PATCH v2 05/11] Ext4Pkg: Fix division by zero by adding check for s_inodes_per_group

2022-12-12 Thread Savva Mitrofanov
Superblock s_inodes_per_group field can't be zero, it leads to division by zero in BlockGroup routine Ext4ReadInode Cc: Marvin Häuser Cc: Pedro Falcato Cc: Vitaly Cheptsov Fixes: e55f0527dde48a5f139c1b8f35acc4e6b59dd794 Signed-off-by: Savva Mitrofanov --- Features/Ext4Pkg/Ex

[edk2-devel] [edk2-platforms][PATCH v2 02/11] Ext4Pkg: Move EXT4_NAME_MAX definition to Ext4Disk.h

2022-12-12 Thread Savva Mitrofanov
Constant EXT4_NAME_MAX is related to EXT4_DIR_ENTRY FS structure, so it should be placed into Ext4Disk.h header Cc: Marvin Häuser Cc: Pedro Falcato Cc: Vitaly Cheptsov Fixes: e55f0527dde48a5f139c1b8f35acc4e6b59dd794 Signed-off-by: Savva Mitrofanov --- Features/Ext4Pkg/Ext4Dxe/Ext4Disk.h | 4

[edk2-devel] [edk2-platforms][PATCH v2 03/11] Ext4Pkg: Fix global buffer overflow in Ext4ReadDir

2022-12-12 Thread Savva Mitrofanov
is that we passing big Length to CompareMem routine. The correct way here is to check that name_len <= 2 and check for null-terminator presence Cc: Marvin Häuser Cc: Pedro Falcato Cc: Vitaly Cheptsov Fixes: e55f0527dde48a5f139c1b8f35acc4e6b59dd794 Signed-off-by: Savva Mitrofanov --- Feat

[edk2-devel] [edk2-platforms][PATCH v2 01/11] Ext4Pkg: Fix memory leak in Ext4RetrieveDirent

2022-12-12 Thread Savva Mitrofanov
We need to free buffer on return if BlockRemainder != 0. Also changed return logic from function to use use common exit to prevent code duplication. Cc: Marvin Häuser Cc: Pedro Falcato Cc: Vitaly Cheptsov Fixes: e55f0527dde48a5f139c1b8f35acc4e6b59dd794 Signed-off-by: Savva Mitrofanov

[edk2-devel] [edk2-platforms][PATCH v2 00/11] Ext4Pkg: Code correctness and security improvements

2022-12-12 Thread Savva Mitrofanov
REF: https://github.com/savvamitrofanov/edk2-platforms/tree/master Cc: Marvin Häuser Cc: Pedro Falcato Cc: Vitaly Cheptsov Savva Mitrofanov (11): Ext4Pkg: Fix memory leak in Ext4RetrieveDirent Ext4Pkg: Move EXT4_NAME_MAX definition to Ext4Disk.h Ext4Pkg: Fix global buffer overflow in E

Re: [edk2-devel] [edk2-platforms][PATCH v1 00/12] Ext4Pkg: Code correctness and security improvements

2022-12-12 Thread Savva Mitrofanov
Hi! Thanks for your review, I did changes in my branch of edk2-platforms and will send corrected patchset soon. Best regards, Savva Mitrofanov > On 10 Dec 2022, at 04:28, Pedro Falcato wrote: > > On Fri, Dec 9, 2022 at 4:11 PM Savva Mitrofanov <mailto:savva...@gmail.com>&g

Re: [edk2-devel] [edk2-platforms][PATCH v1 06/12] Ext4Pkg: Add comparison between Position and FileSize in Ext4SetPosition

2022-12-12 Thread Savva Mitrofanov
Seems I misunderstood the usage of SetPosition, thanks for pointing out. So we can just drop this commit and keep everything as is, because this check is already present in Ext4Read. Savva Mitrofanov > On 10 Dec 2022, at 04:12, Pedro Falcato wrote: > > On Fri, Dec 9, 2022 at 4:11

[edk2-devel] [edk2-platforms][PATCH v1 12/12] Ext4Pkg: Add missing exit Status in Ext4OpenDirent

2022-12-09 Thread Savva Mitrofanov
Missing EFI_OUT_OF_RESOURCES exit status on failed Ext4CreateDentry leads to NULL-pointer dereference in Ext4GetFileInfo (passing NULL buffer in Ext4ReadDir) Cc: Marvin Häuser Cc: Pedro Falcato Cc: Vitaly Cheptsov Signed-off-by: Savva Mitrofanov --- Features/Ext4Pkg/Ext4Dxe/Directory.c | 3

[edk2-devel] [edk2-platforms][PATCH v1 11/12] Ext4Pkg: Check VolumeName allocation correctness in Ext4GetVolumeName

2022-12-09 Thread Savva Mitrofanov
Missing check in some cases leads to failed StrCpyS call in Ext4GetVolumeLabelInfo. Also correct condition that checks Inode pointer for being NULL in Ext4AllocateInode Cc: Marvin Häuser Cc: Pedro Falcato Cc: Vitaly Cheptsov Signed-off-by: Savva Mitrofanov --- Features/Ext4Pkg/Ext4Dxe/File.c

[edk2-devel] [edk2-platforms][PATCH v1 08/12] Ext4Pkg: Fix shift out of bounds in Ext4OpenSuperblock

2022-12-09 Thread Savva Mitrofanov
Missing check for wrong s_log_block_size exponent leads to shift out of bounds. Limit block size to 2 MiB Cc: Marvin Häuser Cc: Pedro Falcato Cc: Vitaly Cheptsov Signed-off-by: Savva Mitrofanov --- Features/Ext4Pkg/Ext4Dxe/Ext4Dxe.h| 14 ++ Features/Ext4Pkg/Ext4Dxe

[edk2-devel] [edk2-platforms][PATCH v1 10/12] Ext4Pkg: Check that source file is directory in Ext4OpenInternal

2022-12-09 Thread Savva Mitrofanov
This check already present in the while loop below, but absent for cases when input file is nameless, so to handle assertion in Ext4ReadFile we need to add it at the top of function Cc: Marvin Häuser Cc: Pedro Falcato Cc: Vitaly Cheptsov Signed-off-by: Savva Mitrofanov --- Features/Ext4Pkg

[edk2-devel] [edk2-platforms][PATCH v1 07/12] Ext4Pkg: Add inode number validity check

2022-12-09 Thread Savva Mitrofanov
We need to validate inode number to prevent possible null-pointer dereference of directory parent in Ext4OpenDirent. Also checks that inode number valid across opened partition before we read it in Ext4ReadInode. Cc: Marvin Häuser Cc: Pedro Falcato Cc: Vitaly Cheptsov Signed-off-by: Savva

[edk2-devel] [edk2-platforms][PATCH v1 09/12] Ext4Pkg: Correct integer overflow check on multiplication in DiskUtil

2022-12-09 Thread Savva Mitrofanov
Multiplication overflow could result into small numbers, so we need also check it Cc: Marvin Häuser Cc: Pedro Falcato Cc: Vitaly Cheptsov Signed-off-by: Savva Mitrofanov --- Features/Ext4Pkg/Ext4Pkg.dsc| 2 +- Features/Ext4Pkg/Ext4Dxe/DiskUtil.c | 8 2 files changed, 5

[edk2-devel] [edk2-platforms][PATCH v1 06/12] Ext4Pkg: Add comparison between Position and FileSize in Ext4SetPosition

2022-12-09 Thread Savva Mitrofanov
and file size Cc: Marvin Häuser Cc: Pedro Falcato Cc: Vitaly Cheptsov Signed-off-by: Savva Mitrofanov --- Features/Ext4Pkg/Ext4Dxe/Ext4Dxe.h | 19 +- Features/Ext4Pkg/Ext4Dxe/File.c| 21 +--- 2 files changed, 23 insertions(+), 17 deletions(-) diff --git a

[edk2-devel] [edk2-platforms][PATCH v1 05/12] Ext4Pkg: Fix division by zero by adding check for s_inodes_per_group

2022-12-09 Thread Savva Mitrofanov
Superblock s_inodes_per_group field can't be zero, it leads to division by zero in BlockGroup routine Ext4ReadInode Cc: Marvin Häuser Cc: Pedro Falcato Cc: Vitaly Cheptsov Signed-off-by: Savva Mitrofanov --- Features/Ext4Pkg/Ext4Dxe/Superblock.c | 5 + 1 file changed, 5 inser

[edk2-devel] [edk2-platforms][PATCH v1 04/12] Ext4Pkg: Fix incorrect checksum metadata feature check

2022-12-09 Thread Savva Mitrofanov
Missing comparison != 0 leads to broken logic condition. Also replaced CSUM_SEED feature_incompat check with predefined macro EXT4_HAS_INCOMPAT Cc: Marvin Häuser Cc: Pedro Falcato Cc: Vitaly Cheptsov Signed-off-by: Savva Mitrofanov --- Features/Ext4Pkg/Ext4Dxe/Superblock.c | 6 ++ 1 file

[edk2-devel] [edk2-platforms][PATCH v1 03/12] Ext4Pkg: Fix global buffer overflow in Ext4ReadDir

2022-12-09 Thread Savva Mitrofanov
is that we passing big Length to CompareMem routine. The correct way here is to check that name_len <= 2 and check for null-terminator presence Cc: Marvin Häuser Cc: Pedro Falcato Cc: Vitaly Cheptsov Signed-off-by: Savva Mitrofanov --- Features/Ext4Pkg/Ext4Dxe/Directory.c | 8 +++-

[edk2-devel] [edk2-platforms][PATCH v1 02/12] Ext4Pkg: Move EXT4_NAME_MAX definition to Ext4Disk.h

2022-12-09 Thread Savva Mitrofanov
Constant EXT4_NAME_MAX is related to EXT4_DIR_ENTRY FS structure, so it should be placed into Ext4Disk.h header Cc: Marvin Häuser Cc: Pedro Falcato Cc: Vitaly Cheptsov Signed-off-by: Savva Mitrofanov --- Features/Ext4Pkg/Ext4Dxe/Ext4Disk.h | 4 +++- Features/Ext4Pkg/Ext4Dxe/Ext4Dxe.h | 1

[edk2-devel] [edk2-platforms][PATCH v1 01/12] Ext4Pkg: Fix memory leak in Ext4RetrieveDirent

2022-12-09 Thread Savva Mitrofanov
We need to free buffer on return if BlockRemainder != 0. Also changed return logic from function to use use common exit to prevent code duplication. Cc: Marvin Häuser Cc: Pedro Falcato Cc: Vitaly Cheptsov Signed-off-by: Savva Mitrofanov --- Features/Ext4Pkg/Ext4Dxe/Directory.c | 30

[edk2-devel] [edk2-platforms][PATCH v1 00/12] Ext4Pkg: Code correctness and security improvements

2022-12-09 Thread Savva Mitrofanov
Hi all, This patchset fixes several code problems found by fuzzing Ext4Dxe like buffer and integer overflows, memory leaks, logic bugs and so on. REF: https://github.com/savvamitrofanov/edk2-platforms/tree/master Cc: Marvin Häuser Cc: Pedro Falcato Cc: Vitaly Cheptsov Savva Mitrofanov (12

[edk2-devel] [edk2-platforms][PATCH v5 1/2] Ext4Pkg: Add symbolic links support

2022-09-07 Thread Savva Mitrofanov
Ext4Open functionality to internal routine. Cc: Marvin Häuser Cc: Pedro Falcato Cc: Vitaly Cheptsov Signed-off-by: Savva Mitrofanov --- Features/Ext4Pkg/Ext4Dxe/Ext4Dxe.inf | 1 + Features/Ext4Pkg/Ext4Dxe/Ext4Disk.h | 13 +- Features/Ext4Pkg/Ext4Dxe/Ext4Dxe.h | 72 +- Features/Ext4Pkg

[edk2-devel] [edk2-platforms][PATCH v5 2/2] Ext4Pkg: Add base containing record macro for EXT4_FILE

2022-09-07 Thread Savva Mitrofanov
We shouldn't use direct casts, because in the future it could break the code, so using BASE_CR would be safe against possible structure changes and rearrangements Cc: Marvin Häuser Cc: Pedro Falcato Cc: Vitaly Cheptsov Signed-off-by: Savva Mitrofanov Reviewed-by: Marvin Häuser --- Fea

[edk2-devel] [edk2-platforms][PATCH v5 0/2] Ext4Pkg: Add Symbolic Links support

2022-09-07 Thread Savva Mitrofanov
-platforms/tree/ext4pkg_symlink_support Cc: Marvin Häuser Cc: Pedro Falcato Cc: Vitaly Cheptsov Savva Mitrofanov (2): Ext4Pkg: Add symbolic links support Ext4Pkg: Add base containing record macro for EXT4_FILE Features/Ext4Pkg/Ext4Dxe/Ext4Dxe.inf | 1 + Features/Ext4Pkg/Ext4Dxe

Re: [edk2-devel] [edk2-platforms][PATCH v4 1/2] Ext4Pkg: Add symbolic links support

2022-09-07 Thread Savva Mitrofanov
Hi Pedro, Thank you for your code-review. I answer to comments inline too. > On 30 Aug 2022, at 04:12, Pedro Falcato wrote: > > Hi Savva, > > Sorry for the huge delay. Comments inline. > > On Thu, Jul 28, 2022 at 4:26 PM Savva Mitrofanov <mailto:savva...@gmail.

Re: [edk2-devel] [edk2-platforms][PATCH v4 1/2] Ext4Pkg: Add symbolic links support

2022-09-04 Thread Savva Mitrofanov
Hello Marvin! That seems there will be another revision based on Pedro Falcato's comments, so in the next version I solved all the remarks from you. Best regards, Savva Mitrofanov > On 28 Jul 2022, at 22:43, Marvin Häuser wrote: > > Looks very nice, tyvm. I did add a few more

[edk2-devel] [edk2-platforms][PATCH v3 1/1] Ext4Pkg: Code correctness and security improvements

2022-07-29 Thread Savva Mitrofanov
: Vitaly Cheptsov Signed-off-by: Savva Mitrofanov --- Features/Ext4Pkg/Ext4Dxe/Ext4Disk.h | 3 +- Features/Ext4Pkg/Ext4Dxe/Ext4Dxe.h| 2 +- Features/Ext4Pkg/Ext4Dxe/BlockGroup.c | 4 +-- Features/Ext4Pkg/Ext4Dxe/BlockMap.c | 18 Features/Ext4Pkg/Ext4Dxe/Directory.c | 29

[edk2-devel] [edk2-platforms][PATCH v3 0/1] Ext4Pkg: Code correctness and security improvements

2022-07-29 Thread Savva Mitrofanov
Cheptsov Savva Mitrofanov (1): Ext4Pkg: Code correctness and security improvements Features/Ext4Pkg/Ext4Dxe/Ext4Disk.h | 3 +- Features/Ext4Pkg/Ext4Dxe/Ext4Dxe.h| 2 +- Features/Ext4Pkg/Ext4Dxe/BlockGroup.c | 4 +-- Features/Ext4Pkg/Ext4Dxe/BlockMap.c | 18 Features

Re: [edk2-devel] [edk2-platforms][PATCH v2 1/1] Ext4Pkg: Code correctness and security improvements

2022-07-29 Thread Savva Mitrofanov
cause CRLF and LF to mix. By default git am tries to use LF encoding, so to change this behaviour it is suggested to use git am with --quoted-cr=nowarn and --keep-cr arguments. Best regards, Savva Mitrofanov > On 24 Jul 2022, at 22:59, Pedro Falcato wrote: > > Hi Savva, > > Could

Re: [edk2-devel] [edk2-platforms][PATCH v2 1/1] Ext4Pkg: Code correctness and security improvements

2022-07-29 Thread Savva Mitrofanov
Hi Marvin, Thanks for comments! > On 20 Jul 2022, at 23:54, Marvin Häuser wrote: > > On 20. Jul 2022, at 07:36, Savva Mitrofanov wrote: >> >> This changes tends to improve security of code sections by fixing >> integer overflows, missing aligment checks, unsaf

[edk2-devel] [edk2-platforms][PATCH v4 2/2] Ext4Pkg: Add base containing record macro for EXT4_FILE

2022-07-28 Thread Savva Mitrofanov
We shouldn't use direct casts, because in the future it could break the code, so using BASE_CR would be safe against possible structure changes and rearrangements Cc: Marvin Häuser Cc: Pedro Falcato Cc: Vitaly Cheptsov Signed-off-by: Savva Mitrofanov --- Features/Ext4Pkg/Ext4Dxe/Ext4

[edk2-devel] [edk2-platforms][PATCH v4 1/2] Ext4Pkg: Add symbolic links support

2022-07-28 Thread Savva Mitrofanov
Ext4Open functionality to internal routine. Cc: Marvin Häuser Cc: Pedro Falcato Cc: Vitaly Cheptsov Signed-off-by: Savva Mitrofanov --- Features/Ext4Pkg/Ext4Dxe/Ext4Disk.h | 13 +- Features/Ext4Pkg/Ext4Dxe/Ext4Dxe.h | 98 +- Features/Ext4Pkg/Ext4Dxe/File.c | 359

[edk2-devel] [edk2-platforms][PATCH v4 0/2] Ext4Pkg: Add Symbolic Links support

2022-07-28 Thread Savva Mitrofanov
ivate structure to prevent possible code corruption caused by structure changes and rearrangements in future. REF: https://github.com/savvamitrofanov/edk2-platforms/tree/ext4pkg_symlink_support Cc: Marvin Häuser Cc: Pedro Falcato Cc: Vitaly Cheptsov Savva Mitrofanov (2): Ext4Pkg: Add symbolic

[edk2-devel] [edk2-platforms][PATCH v3 2/2] Ext4Pkg: Add base containing record macro for EXT4_FILE

2022-07-24 Thread Savva Mitrofanov
We shouldn't use direct casts, because in the future it could break the code, so using BASE_CR would be safe against possible structure changes and rearrangements Cc: Marvin Häuser Cc: Pedro Falcato Cc: Vitaly Cheptsov Signed-off-by: Savva Mitrofanov --- Features/Ext4Pkg/Ext4Dxe/Ext4

[edk2-devel] [edk2-platforms][PATCH v3 1/2] Ext4Pkg: Add symbolic links support

2022-07-24 Thread Savva Mitrofanov
Ext4Open functionality to internal routine. Cc: Marvin Häuser Cc: Pedro Falcato Cc: Vitaly Cheptsov Signed-off-by: Savva Mitrofanov --- Features/Ext4Pkg/Ext4Dxe/Ext4Disk.h | 13 +- Features/Ext4Pkg/Ext4Dxe/Ext4Dxe.h | 98 +- Features/Ext4Pkg/Ext4Dxe/File.c | 358

[edk2-devel] [edk2-platforms][PATCH v3 0/2] Ext4Pkg: Add Symbolic Links support

2022-07-24 Thread Savva Mitrofanov
Cc: Marvin Häuser Cc: Pedro Falcato Cc: Vitaly Cheptsov Savva Mitrofanov (2): Ext4Pkg: Add symbolic links support Ext4Pkg: Add base containing record macro for EXT4_FILE Features/Ext4Pkg/Ext4Dxe/Ext4Disk.h | 13 +- Features/Ext4Pkg/Ext4Dxe/Ext4Dxe.h | 100 +- Features/Ext4Pkg/Ext4Dxe

Re: [edk2-devel] [edk2-platforms][PATCH 1/2] Ext4Pkg: Add symbolic links support

2022-07-24 Thread Savva Mitrofanov
Hello, Marvin! Thank you for your time and this code-review > On 21 Jul 2022, at 01:15, Marvin Häuser wrote: > > > >> On 20. Jul 2022, at 08:17, Savva Mitrofanov > <mailto:savva...@gmail.com>> wrote: >> >> Provided support for symlink file type.

[edk2-devel] [edk2-platforms][PATCH 2/2] Ext4Pkg: Add base containing record macro for EXT4_FILE

2022-07-21 Thread Savva Mitrofanov
We shouldn't use direct casts, because in the future it could break the code, so using BASE_CR would be safe against possible structure changes and rearrangements Cc: Marvin Häuser Cc: Pedro Falcato Cc: Vitaly Cheptsov Signed-off-by: Savva Mitrofanov --- Features/Ext4Pkg/Ext4Dxe/Ext4

[edk2-devel] [edk2-platforms][PATCH 02/10] Ext4Pkg: Change HoleLen type to UINT64

2022-07-21 Thread Savva Mitrofanov
Set HoleLen to UINT64 to perform safe cast to UINTN in ternary operator at WasRead assignment Cc: Marvin Häuser Cc: Pedro Falcato Cc: Vitaly Cheptsov Signed-off-by: Savva Mitrofanov --- Features/Ext4Pkg/Ext4Dxe/Inode.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a

[edk2-devel] [edk2-platforms][PATCH v2 2/2] Ext4Pkg: Add base containing record macro for EXT4_FILE

2022-07-21 Thread Savva Mitrofanov
We shouldn't use direct casts, because in the future it could break the code, so using BASE_CR would be safe against possible structure changes and rearrangements Cc: Marvin Häuser Cc: Pedro Falcato Cc: Vitaly Cheptsov Signed-off-by: Savva Mitrofanov --- Features/Ext4Pkg/Ext4Dxe/Ext4

[edk2-devel] [edk2-platforms][PATCH v2 1/2] Ext4Pkg: Add symbolic links support

2022-07-21 Thread Savva Mitrofanov
Ext4Open functionality to internal routine. Cc: Marvin Häuser Cc: Pedro Falcato Cc: Vitaly Cheptsov Signed-off-by: Savva Mitrofanov --- Features/Ext4Pkg/Ext4Dxe/Ext4Disk.h | 2 +- Features/Ext4Pkg/Ext4Dxe/Ext4Dxe.h | 99 +- Features/Ext4Pkg/Ext4Dxe/File.c | 365

[edk2-devel] [edk2-platforms][PATCH v2 0/2] Ext4Pkg: Add Symbolic Links support

2022-07-21 Thread Savva Mitrofanov
: Vitaly Cheptsov Savva Mitrofanov (2): Ext4Pkg: Add symbolic links support Ext4Pkg: Add base containing record macro for EXT4_FILE Features/Ext4Pkg/Ext4Dxe/Ext4Disk.h | 2 +- Features/Ext4Pkg/Ext4Dxe/Ext4Dxe.h | 101 +- Features/Ext4Pkg/Ext4Dxe/File.c | 375

[edk2-devel] [edk2-platforms][PATCH 1/2] Ext4Pkg: Add symbolic links support

2022-07-21 Thread Savva Mitrofanov
Häuser Cc: Pedro Falcato Cc: Vitaly Cheptsov Signed-off-by: Savva Mitrofanov --- Features/Ext4Pkg/Ext4Dxe/Ext4Disk.h | 2 +- Features/Ext4Pkg/Ext4Dxe/Ext4Dxe.h | 99 +- Features/Ext4Pkg/Ext4Dxe/File.c | 365 ++-- Features/Ext4Pkg/Ext4Dxe/Inode.c| 38 ++ 4 files

[edk2-devel] [edk2-platforms][PATCH v2 0/1] Ext4Pkg: Code correctness and security improvements

2022-07-21 Thread Savva Mitrofanov
: https://github.com/savvamitrofanov/edk2-platforms/commits/ext4pkg_security_improvements Cc: Marvin Häuser Cc: Pedro Falcato Cc: Vitaly Cheptsov Savva Mitrofanov (1): Ext4Pkg: Code correctness and security improvements Features/Ext4Pkg/Ext4Dxe/Ext4Disk.h | 3 +- Features/Ext4Pkg/Ext4Dxe

[edk2-devel] [edk2-platforms][PATCH v2 1/1] Ext4Pkg: Code correctness and security improvements

2022-07-21 Thread Savva Mitrofanov
-off-by: Savva Mitrofanov --- Features/Ext4Pkg/Ext4Dxe/Ext4Disk.h | 3 +- Features/Ext4Pkg/Ext4Dxe/Ext4Dxe.h| 2 +- Features/Ext4Pkg/Ext4Dxe/BlockMap.c | 18 Features/Ext4Pkg/Ext4Dxe/Directory.c | 29 ++-- Features/Ext4Pkg/Ext4Dxe/Ext4Dxe.c| 10

[edk2-devel] [edk2-platforms][PATCH 0/2] Ext4Pkg: Add Symbolic Links support

2022-07-21 Thread Savva Mitrofanov
future. REF: https://github.com/savvamitrofanov/edk2-platforms/tree/ext4pkg_symlink_support Cc: Marvin Häuser Cc: Pedro Falcato Cc: Vitaly Cheptsov Savva Mitrofanov (2): Ext4Pkg: Add symbolic links support Ext4Pkg: Add base containing record macro for EXT4_FILE Features/Ext4Pkg/Ext4Dxe

[edk2-devel] [edk2-platforms][PATCH 10/10] Ext4Pkg: Group descriptor size must be 4-byte aligned

2022-07-21 Thread Savva Mitrofanov
Adds 4-byte aligned check for superblock group descriptor size field Cc: Marvin Häuser Cc: Pedro Falcato Cc: Vitaly Cheptsov Signed-off-by: Savva Mitrofanov --- Features/Ext4Pkg/Ext4Dxe/Directory.c | 2 +- Features/Ext4Pkg/Ext4Dxe/Superblock.c | 10 +- 2 files changed, 6 insertions

[edk2-devel] [edk2-platforms][PATCH 08/10] Ext4Pkg: Fix possible int overflow in Ext4ExtentsMapKeyCompare

2022-07-21 Thread Savva Mitrofanov
Cc: Marvin Häuser Cc: Pedro Falcato Cc: Vitaly Cheptsov Signed-off-by: Savva Mitrofanov --- Features/Ext4Pkg/Ext4Dxe/Extents.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Features/Ext4Pkg/Ext4Dxe/Extents.c b/Features/Ext4Pkg/Ext4Dxe/Extents.c index c5951f78aa62

[edk2-devel] [edk2-platforms][PATCH 07/10] Ext4Pkg: Simplify Ext4RemoveDentry logic

2022-07-21 Thread Savva Mitrofanov
First of all BASE_LIST_FOR_EACH_SAFE doesn't have any sanity checks. So its usage isn't "safe". We can drop this loop and use just IsNodeInList Cc: Marvin Häuser Cc: Pedro Falcato Cc: Vitaly Cheptsov Signed-off-by: Savva Mitrofanov --- Features/Ext4Pkg/Ext4

[edk2-devel] [edk2-platforms][PATCH 09/10] Ext4Pkg: Return bad block type in Ext4GetBlockpath

2022-07-21 Thread Savva Mitrofanov
Seems that returning maximum uintn in case of bad block was a mistake, so return just bad block type Cc: Marvin Häuser Cc: Pedro Falcato Cc: Vitaly Cheptsov Signed-off-by: Savva Mitrofanov --- Features/Ext4Pkg/Ext4Dxe/BlockMap.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff

[edk2-devel] [edk2-platforms][PATCH 05/10] Ext4Pkg: Fix compiler warnings

2022-07-21 Thread Savva Mitrofanov
Initialize all fields in gExt4BindingProtocol. Fix comparison of integer expressions of different signedness. Cc: Marvin Häuser Cc: Pedro Falcato Cc: Vitaly Cheptsov Signed-off-by: Savva Mitrofanov --- Features/Ext4Pkg/Ext4Dxe/Ext4Disk.h | 2 +- Features/Ext4Pkg/Ext4Dxe/Ext4Dxe.c | 10

[edk2-devel] [edk2-platforms][PATCH 06/10] Ext4Pkg: Drop dir entry name_len limit extra check

2022-07-21 Thread Savva Mitrofanov
Field name_len has type CHAR8, while filename limit is 255 (EXT4_NAME_MAX), so because structure EXT4_DIR_ENTRY would be unchangeable in future, we could drop this check without any assertions Cc: Marvin Häuser Cc: Pedro Falcato Cc: Vitaly Cheptsov Signed-off-by: Savva Mitrofanov

[edk2-devel] [edk2-platforms][PATCH 03/10] Ext4Pkg: Use 32-bit block number in BlockMap

2022-07-21 Thread Savva Mitrofanov
Replace EXT4_BLOCK_NR with 32-bit EXT2_BLOCK_NR in BlockMap, because we consider BlockMap is 32-bit fs ext2/3 feature Cc: Marvin Häuser Cc: Pedro Falcato Cc: Vitaly Cheptsov Signed-off-by: Savva Mitrofanov --- Features/Ext4Pkg/Ext4Dxe/Ext4Disk.h | 1 + Features/Ext4Pkg/Ext4Dxe/Ext4Dxe.h

[edk2-devel] [edk2-platforms][PATCH 04/10] Ext4Pkg: Use assertion in Ext4CalculateChecksum

2022-07-21 Thread Savva Mitrofanov
Replaced UNREACHABLE with ASSERT (FALSE) in case of new checksum algorithms, due to it is an invariant violation rather than unreachable path Cc: Marvin Häuser Cc: Pedro Falcato Cc: Vitaly Cheptsov Signed-off-by: Savva Mitrofanov --- Features/Ext4Pkg/Ext4Dxe/Superblock.c | 2 +- 1 file

[edk2-devel] [edk2-platforms][PATCH 01/10] Ext4Pkg: Replace SetMem(,,0) with ZeroMem

2022-07-21 Thread Savva Mitrofanov
Cc: Marvin Häuser Cc: Pedro Falcato Cc: Vitaly Cheptsov Signed-off-by: Savva Mitrofanov --- Features/Ext4Pkg/Ext4Dxe/Inode.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Features/Ext4Pkg/Ext4Dxe/Inode.c b/Features/Ext4Pkg/Ext4Dxe/Inode.c index 831f5946e870

[edk2-devel] [edk2-platforms][PATCH 00/10] Ext4Pkg: Code security and correctness improvements

2022-07-21 Thread Savva Mitrofanov
/ext4pkg_security_improvements Cc: Marvin Häuser Cc: Pedro Falcato Cc: Vitaly Cheptsov Savva Mitrofanov (10): Ext4Pkg: Replace SetMem(,,0) with ZeroMem Ext4Pkg: Change HoleLen type to UINT64 Ext4Pkg: Use 32-bit block number in BlockMap Ext4Pkg: Use assertion in Ext4CalculateChecksum