]> granicus.if.org Git - libexpat/commitdiff
Address MemorySanitizer mis-report on SYS_getrandom
authorSebastian Pipping <sebastian@pipping.org>
Thu, 15 Jun 2017 21:13:47 +0000 (23:13 +0200)
committerSebastian Pipping <sebastian@pipping.org>
Thu, 15 Jun 2017 21:45:44 +0000 (23:45 +0200)
expat/memory-sanitizer-blacklist.txt [new file with mode: 0644]
expat/qa.sh

diff --git a/expat/memory-sanitizer-blacklist.txt b/expat/memory-sanitizer-blacklist.txt
new file mode 100644 (file)
index 0000000..166e6a1
--- /dev/null
@@ -0,0 +1,6 @@
+# Line "hash_secret_salt = generate_hash_secret_salt(parser);"
+# is mis-reported as use-of-uninitialized-value because
+# its call to writeRandomBytes_getrandom uses syscall
+# SYS_getrandom and MemorySanitizer does not seem to understand that
+# as writing bytes to that memory (which it does).
+fun:startParsing
index cb11b87ad87de8967ee60587706826964988cfea..56bc34921f6b5b05a652fd0a008530ad65e5dbfa 100755 (executable)
@@ -55,7 +55,7 @@ main() {
         ;;
     memory)
         # http://clang.llvm.org/docs/MemorySanitizer.html
-        BASE_FLAGS+=" -fsanitize=memory -fno-omit-frame-pointer -g -O2"
+        BASE_FLAGS+=" -fsanitize=memory -fno-omit-frame-pointer -g -O2 -fsanitize-memory-track-origins -fsanitize-blacklist=memory-sanitizer-blacklist.txt"
         ;;
     ncc)
         # http://students.ceid.upatras.gr/~sxanth/ncc/