about summary refs log tree commit diff
diff options
context:
space:
mode:
authorvanhauser-thc <vh@thc.org>2023-09-04 09:11:47 +0200
committervanhauser-thc <vh@thc.org>2023-09-04 09:11:47 +0200
commit9307ef4b7caa96754d0449361d48b5a98ef73d8f (patch)
tree06303ce010b671cd7d0d5055643b0360c1b7cf60
parent3bae404733e27b3ec7769ad6d5d997dcd9ec6fa3 (diff)
downloadafl++-9307ef4b7caa96754d0449361d48b5a98ef73d8f.tar.gz
fix string transform laf
-rw-r--r--docs/Changelog.md2
-rw-r--r--instrumentation/compare-transform-pass.so.cc4
2 files changed, 2 insertions, 4 deletions
diff --git a/docs/Changelog.md b/docs/Changelog.md
index 8d9a0aa8..bccc6748 100644
--- a/docs/Changelog.md
+++ b/docs/Changelog.md
@@ -14,6 +14,8 @@
     - now also shows coverage reached
     - option -m shows only very relevant stats
     - option -n will not use color in the output
+  - instrumentation:
+    - fix for a few string compare transform functions for LAF
   - frida_mode:
     - fixes support for large map offsets
   - added benchmark/benchmark.sh if you want to see how good your fuzzing
diff --git a/instrumentation/compare-transform-pass.so.cc b/instrumentation/compare-transform-pass.so.cc
index b0bbd39a..5a5415d7 100644
--- a/instrumentation/compare-transform-pass.so.cc
+++ b/instrumentation/compare-transform-pass.so.cc
@@ -228,7 +228,6 @@ bool CompareTransform::transformCmps(Module &M, const bool processStrcmp,
           isStrcmp &=
               (!FuncName.compare("strcmp") || !FuncName.compare("xmlStrcmp") ||
                !FuncName.compare("xmlStrEqual") ||
-               !FuncName.compare("g_strcmp0") ||
                !FuncName.compare("curl_strequal") ||
                !FuncName.compare("strcsequal") ||
                !FuncName.compare("g_strcmp0"));
@@ -239,7 +238,6 @@ bool CompareTransform::transformCmps(Module &M, const bool processStrcmp,
                !FuncName.compare("memcmp_const_time") ||
                !FuncName.compare("memcmpct"));
           isStrncmp &= (!FuncName.compare("strncmp") ||
-                        !FuncName.compare("xmlStrncmp") ||
                         !FuncName.compare("curl_strnequal") ||
                         !FuncName.compare("xmlStrncmp"));
           isStrcasecmp &= (!FuncName.compare("strcasecmp") ||
@@ -508,10 +506,8 @@ bool CompareTransform::transformCmps(Module &M, const bool processStrcmp,
         isCaseInsensitive = true;
 
       if (!Callee->getName().compare("xmlStrEqual") ||
-          !Callee->getName().compare("g_strcmp0") ||
           !Callee->getName().compare("curl_strequal") ||
           !Callee->getName().compare("strcsequal") ||
-          !Callee->getName().compare("xmlStrncmp") ||
           !Callee->getName().compare("curl_strnequal"))
         success_is_one = true;