mirror of
git://slackware.nl/current.git
synced 2025-01-29 08:36:40 +01:00
24 lines
914 B
Diff
24 lines
914 B
Diff
|
From eb7939b24a681a04648a59cdebd386b1e9dc9237 Mon Sep 17 00:00:00 2001
|
||
|
From: Wei-Cheng Pan <legnaleurc@gmail.com>
|
||
|
Date: Mon, 22 Apr 2024 01:55:41 +0900
|
||
|
Subject: [PATCH] fix: OOB in rar e8 filter (#2135)
|
||
|
|
||
|
This patch fixes an out-of-bound error in rar e8 filter.
|
||
|
---
|
||
|
libarchive/archive_read_support_format_rar.c | 2 +-
|
||
|
1 file changed, 1 insertion(+), 1 deletion(-)
|
||
|
|
||
|
diff --git a/libarchive/archive_read_support_format_rar.c b/libarchive/archive_read_support_format_rar.c
|
||
|
index 99a11d170..266d0ee99 100644
|
||
|
--- a/libarchive/archive_read_support_format_rar.c
|
||
|
+++ b/libarchive/archive_read_support_format_rar.c
|
||
|
@@ -3615,7 +3615,7 @@ execute_filter_e8(struct rar_filter *filter, struct rar_virtual_machine *vm, siz
|
||
|
uint32_t filesize = 0x1000000;
|
||
|
uint32_t i;
|
||
|
|
||
|
- if (length > PROGRAM_WORK_SIZE || length < 4)
|
||
|
+ if (length > PROGRAM_WORK_SIZE || length <= 4)
|
||
|
return 0;
|
||
|
|
||
|
for (i = 0; i <= length - 5; i++)
|