summaryrefslogtreecommitdiff
path: root/backport-Suppress-MSAN-detections-in-deflate-slide_hash.patch
blob: 449a9e389a02360bff3df103a8142b3e851c5b90 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
From 981ee7570ad98a3cf1ae74d737e2ee619ed79171 Mon Sep 17 00:00:00 2001
From: Andrzej Hunt <andrzej@ahunt.org>
Date: Fri, 4 Jun 2021 18:25:19 +0200
Subject: [PATCH] Suppress MSAN detections in deflate's slide_hash().

slide_hash() knowingly reads potentially uninitialized memory, see
comment lower down about prev[n] potentially being garbage. In
this case, the result is never used.

Reference:https://github.com/madler/zlib/commit/981ee7570ad98a3cf1ae74d737e2ee619ed79171
Conflict:NA
---
 deflate.c | 7 +++++++
 1 file changed, 7 insertions(+)

diff --git a/deflate.c b/deflate.c
index 5410497..8088083 100644
--- a/deflate.c
+++ b/deflate.c
@@ -209,6 +209,13 @@ local const config configuration_table[10] = {
  * bit values at the expense of memory usage). We slide even when level == 0 to
  * keep the hash table consistent if we switch back to level > 0 later.
  */
+
+#if defined(__has_feature)
+#  if __has_feature(memory_sanitizer)
+     __attribute__((no_sanitize("memory")))
+#  endif
+#endif
+
 local void slide_hash(s)
     deflate_state *s;
 {
-- 
2.27.0