[compiler-rt] [compiler-rt][tysan] adding posix strndup interception. (PR #122255)
Florian Mayer via llvm-commits
llvm-commits at lists.llvm.org
Thu Jan 9 07:03:49 PST 2025
================
@@ -99,6 +105,15 @@ INTERCEPTOR(char *, __strdup, const char *s) {
}
#endif // TYSAN_INTERCEPT___STRDUP
+#if TYSAN_INTERCEPT___STRNDUP
+INTERCEPTOR(char *, strndup, const char *s, SIZE_T slen) {
+ char *res = REAL(strndup)(s, slen);
+ if (res)
+ tysan_copy_types(res, const_cast<char *>(s), Min(internal_strlen(s), slen));
----------------
fmayer wrote:
Why do we need to cast away the `const`?
```
tysan_copy_types(const void *daddr, const void *saddr, uptr size) {
```
https://github.com/llvm/llvm-project/pull/122255
More information about the llvm-commits
mailing list