https://bugs.llvm.org/show_bug.cgi?id=32895

            Bug ID: 32895
           Summary: Problems intercepting strnlen on Windows 10 build 1703
           Product: compiler-rt
           Version: unspecified
          Hardware: PC
                OS: Windows NT
            Status: NEW
          Severity: enhancement
          Priority: P
         Component: compiler-rt
          Assignee: unassignedb...@nondot.org
          Reporter: dma...@mozilla.com
                CC: llvm-bugs@lists.llvm.org

Originally filed as https://bugzilla.mozilla.org/show_bug.cgi?id=1361185

strnlen changed in Windows 10 build 1703 (Creators Update) leading to two
problems in ASan's interceptors:

1) ucrtbase!strnlen now starts with:
8b052a0a0c00    mov     eax,dword ptr [ucrtbase!_isa_available]
which is unrecognized by GetInstructionSize().

2) There are now two different implementations of strnlen in the system
libraries: ntdll!strnlen and ucrtbase!strnlen. Because of the way that
OverrideFunction() loops over InterestingDLLsAvailable(), ASan ends up
detouring both functions to the same place, which is bad when they both try to
use the same return pointer at __interception::real_strnlen.

-- 
You are receiving this mail because:
You are on the CC list for the bug.
_______________________________________________
llvm-bugs mailing list
llvm-bugs@lists.llvm.org
http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-bugs

Reply via email to