Skip to content

Commit f5f9650

Browse files
authored
Move interceptors for libresolv functions to MSan (#119071)
The functions are not relevant for most sanitizers and only required for MSan to see which regions have been written to. This eliminates a link dependency for all other sanitizers and fixes #59007: while `-lresolv` had been added for the static runtime in 6dce56b, it wasn't added to the shared runtimes. Instead of just moving the interceptors, we adapt them to MSan conventions: * We don't skip intercepting when `msan_init_is_running` is true, but directly call ENSURE_MSAN_INITED() like most other interceptors. It seems unlikely that these functions are called during initialization. * We don't unpoison `errno`, because none of the functions is specified to use it.
1 parent e55c167 commit f5f9650

File tree

7 files changed

+107
-152
lines changed

7 files changed

+107
-152
lines changed

clang/lib/Driver/ToolChains/CommonArgs.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1410,7 +1410,7 @@ void tools::linkSanitizerRuntimeDeps(const ToolChain &TC,
14101410
// libresolv.a, even if exists, is an empty archive to satisfy POSIX -lresolv
14111411
// requirement.
14121412
if (TC.getTriple().isOSLinux() && !TC.getTriple().isAndroid() &&
1413-
!TC.getTriple().isMusl())
1413+
!TC.getTriple().isMusl() && TC.getSanitizerArgs(Args).needsMsanRt())
14141414
CmdArgs.push_back("-lresolv");
14151415
}
14161416

clang/test/Driver/sanitizer-ld.c

Lines changed: 20 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@
1515
// CHECK-ASAN-LINUX: "-lpthread"
1616
// CHECK-ASAN-LINUX: "-lrt"
1717
// CHECK-ASAN-LINUX: "-ldl"
18-
// CHECK-ASAN-LINUX: "-lresolv"
18+
// CHECK-ASAN-LINUX-NOT: "-lresolv"
1919

2020
// RUN: %clang -fsanitize=address -fno-sanitize-link-runtime -### %s 2>&1 \
2121
// RUN: --target=x86_64-unknown-linux -fuse-ld=ld \
@@ -143,7 +143,7 @@
143143
// CHECK-ASAN-LINUX-CXX: "-lpthread"
144144
// CHECK-ASAN-LINUX-CXX: "-lrt"
145145
// CHECK-ASAN-LINUX-CXX: "-ldl"
146-
// CHECK-ASAN-LINUX-CXX: "-lresolv"
146+
// CHECK-ASAN-LINUX-CXX-NOT: "-lresolv"
147147

148148
// RUN: %clang -### %s -o /dev/null -fsanitize=address \
149149
// RUN: --target=i386-unknown-linux -fuse-ld=ld -stdlib=platform \
@@ -292,7 +292,7 @@
292292
// CHECK-TSAN-LINUX-CXX: "-lpthread"
293293
// CHECK-TSAN-LINUX-CXX: "-lrt"
294294
// CHECK-TSAN-LINUX-CXX: "-ldl"
295-
// CHECK-TSAN-LINUX-CXX: "-lresolv"
295+
// CHECK-TSAN-LINUX-CXX-NOT: "-lresolv"
296296

297297
// RUN: %clang -fsanitize=thread -fno-sanitize-link-runtime -### %s 2>&1 \
298298
// RUN: --target=x86_64-unknown-linux -fuse-ld=ld \
@@ -365,7 +365,7 @@
365365
// CHECK-UBSAN-LINUX-NOT: libclang_rt.ubsan_standalone_cxx
366366
// CHECK-UBSAN-LINUX-NOT: "-lstdc++"
367367
// CHECK-UBSAN-LINUX: "-lpthread"
368-
// CHECK-UBSAN-LINUX: "-lresolv"
368+
// CHECK-UBSAN-LINUX-NOT: "-lresolv"
369369

370370
// RUN: %clang -fsanitize=undefined -fno-sanitize-link-runtime -### %s 2>&1 \
371371
// RUN: --target=x86_64-unknown-linux -fuse-ld=ld \
@@ -438,7 +438,7 @@
438438
// CHECK-UBSAN-LINUX-CXX: "-lstdc++"
439439
// CHECK-UBSAN-LINUX-CXX-NOT: libclang_rt.asan
440440
// CHECK-UBSAN-LINUX-CXX: "-lpthread"
441-
// CHECK-UBSAN-LINUX-CXX: "-lresolv"
441+
// CHECK-UBSAN-LINUX-CXX-NOT: "-lresolv"
442442

443443
// RUN: %clang -fsanitize=undefined -fsanitize-minimal-runtime -### %s 2>&1 \
444444
// RUN: --target=i386-unknown-linux -fuse-ld=ld \
@@ -448,7 +448,7 @@
448448
// CHECK-UBSAN-MINIMAL-LINUX: "{{.*}}ld{{(.exe)?}}"
449449
// CHECK-UBSAN-MINIMAL-LINUX: "--whole-archive" "{{.*}}libclang_rt.ubsan_minimal.a" "--no-whole-archive"
450450
// CHECK-UBSAN-MINIMAL-LINUX: "-lpthread"
451-
// CHECK-UBSAN-MINIMAL-LINUX: "-lresolv"
451+
// CHECK-UBSAN-MINIMAL-LINUX-NOT: "-lresolv"
452452

453453
// RUN: %clang -fsanitize=undefined -fsanitize-minimal-runtime -### %s 2>&1 \
454454
// RUN: --target=x86_64-apple-darwin -fuse-ld=ld \
@@ -485,7 +485,7 @@
485485
// CHECK-ASAN-UBSAN-LINUX-NOT: libclang_rt.ubsan
486486
// CHECK-ASAN-UBSAN-LINUX-NOT: "-lstdc++"
487487
// CHECK-ASAN-UBSAN-LINUX: "-lpthread"
488-
// CHECK-ASAN-UBSAN-LINUX: "-lresolv"
488+
// CHECK-ASAN-UBSAN-LINUX-NOT: "-lresolv"
489489

490490
// RUN: %clangxx -fsanitize=address,undefined -### %s 2>&1 \
491491
// RUN: --target=i386-unknown-linux -fuse-ld=ld -stdlib=platform \
@@ -498,7 +498,7 @@
498498
// CHECK-ASAN-UBSAN-LINUX-CXX-NOT: libclang_rt.ubsan
499499
// CHECK-ASAN-UBSAN-LINUX-CXX: "-lstdc++"
500500
// CHECK-ASAN-UBSAN-LINUX-CXX: "-lpthread"
501-
// CHECK-ASAN-UBSAN-LINUX-CXX: "-lresolv"
501+
// CHECK-ASAN-UBSAN-LINUX-CXX-NOT: "-lresolv"
502502

503503
// RUN: %clangxx -fsanitize=memory,undefined -### %s 2>&1 \
504504
// RUN: --target=x86_64-unknown-linux -fuse-ld=ld \
@@ -541,7 +541,7 @@
541541
// CHECK-LSAN-LINUX: libclang_rt.lsan.a"
542542
// CHECK-LSAN-LINUX: "-lpthread"
543543
// CHECK-LSAN-LINUX: "-ldl"
544-
// CHECK-LSAN-LINUX: "-lresolv"
544+
// CHECK-LSAN-LINUX-NOT: "-lresolv"
545545

546546
// RUN: %clang -fsanitize=leak -fno-sanitize-link-runtime -### %s 2>&1 \
547547
// RUN: --target=x86_64-unknown-linux -fuse-ld=ld \
@@ -564,7 +564,7 @@
564564
// CHECK-LSAN-COV-LINUX-NOT: libclang_rt.ubsan
565565
// CHECK-LSAN-COV-LINUX: "-lpthread"
566566
// CHECK-LSAN-COV-LINUX: "-ldl"
567-
// CHECK-LSAN-COV-LINUX: "-lresolv"
567+
// CHECK-LSAN-COV-LINUX-NOT: "-lresolv"
568568

569569
// RUN: %clang -fsanitize=leak,address -### %s 2>&1 \
570570
// RUN: --target=x86_64-unknown-linux -fuse-ld=ld \
@@ -586,7 +586,7 @@
586586
// CHECK-ASAN-COV-LINUX-NOT: libclang_rt.ubsan
587587
// CHECK-ASAN-COV-LINUX-NOT: "-lstdc++"
588588
// CHECK-ASAN-COV-LINUX: "-lpthread"
589-
// CHECK-ASAN-COV-LINUX: "-lresolv"
589+
// CHECK-ASAN-COV-LINUX-NOT: "-lresolv"
590590

591591
// RUN: %clang -fsanitize=memory -fsanitize-coverage=func -### %s 2>&1 \
592592
// RUN: --target=x86_64-unknown-linux -fuse-ld=ld \
@@ -610,7 +610,7 @@
610610
// CHECK-DFSAN-COV-LINUX-NOT: libclang_rt.ubsan
611611
// CHECK-DFSAN-COV-LINUX-NOT: "-lstdc++"
612612
// CHECK-DFSAN-COV-LINUX: "-lpthread"
613-
// CHECK-DFSAN-COV-LINUX: "-lresolv"
613+
// CHECK-DFSAN-COV-LINUX-NOT: "-lresolv"
614614

615615
// RUN: %clang -fsanitize=undefined -fsanitize-coverage=func -### %s 2>&1 \
616616
// RUN: --target=x86_64-unknown-linux -fuse-ld=ld \
@@ -621,7 +621,7 @@
621621
// CHECK-UBSAN-COV-LINUX: "--whole-archive" "{{.*}}libclang_rt.ubsan_standalone.a" "--no-whole-archive"
622622
// CHECK-UBSAN-COV-LINUX-NOT: "-lstdc++"
623623
// CHECK-UBSAN-COV-LINUX: "-lpthread"
624-
// CHECK-UBSAN-COV-LINUX: "-lresolv"
624+
// CHECK-UBSAN-COV-LINUX-NOT: "-lresolv"
625625

626626
// RUN: %clang -fsanitize-coverage=func -### %s 2>&1 \
627627
// RUN: --target=x86_64-unknown-linux -fuse-ld=ld \
@@ -632,7 +632,7 @@
632632
// CHECK-COV-LINUX: "--whole-archive" "{{.*}}libclang_rt.ubsan_standalone.a" "--no-whole-archive"
633633
// CHECK-COV-LINUX-NOT: "-lstdc++"
634634
// CHECK-COV-LINUX: "-lpthread"
635-
// CHECK-COV-LINUX: "-lresolv"
635+
// CHECK-COV-LINUX-NOT: "-lresolv"
636636

637637
// RUN: %clang -### %s 2>&1 \
638638
// RUN: --target=x86_64-unknown-linux -fuse-ld=ld -fsanitize=numerical \
@@ -644,7 +644,8 @@
644644
// CHECK-NSAN-LINUX-NOT: "-lc"
645645
// CHECK-NSAN-LINUX-NOT: libclang_rt.ubsan
646646
// CHECK-NSAN-LINUX: libclang_rt.nsan.a"
647-
// CHECK-NSAN-LINUX: "-lpthread" "-lrt" "-lm" "-ldl" "-lresolv"
647+
// CHECK-NSAN-LINUX: "-lpthread" "-lrt" "-lm" "-ldl"
648+
// CHECK-NSAN-LINUX-NOT: "-lresolv"
648649

649650
// RUN: %clang -### %s 2>&1 --target=x86_64-unknown-linux -fuse-ld=ld -fsanitize=numerical -shared-libsan \
650651
// RUN: -resource-dir=%S/Inputs/resource_dir \
@@ -757,7 +758,7 @@
757758
// CHECK-SAFESTACK-LINUX: libclang_rt.safestack.a"
758759
// CHECK-SAFESTACK-LINUX: "-lpthread"
759760
// CHECK-SAFESTACK-LINUX: "-ldl"
760-
// CHECK-SAFESTACK-LINUX: "-lresolv"
761+
// CHECK-SAFESTACK-LINUX-NOT: "-lresolv"
761762

762763
// RUN: %clang -fsanitize=shadow-call-stack -### %s 2>&1 \
763764
// RUN: --target=x86_64-unknown-linux -fuse-ld=ld \
@@ -957,7 +958,7 @@
957958
// CHECK-SCUDO-LINUX-NOT: "-lstdc++"
958959
// CHECK-SCUDO-LINUX: "-lpthread"
959960
// CHECK-SCUDO-LINUX: "-ldl"
960-
// CHECK-SCUDO-LINUX: "-lresolv"
961+
// CHECK-SCUDO-LINUX-NOT: "-lresolv"
961962

962963
// RUN: %clang -### %s -o %t.so -shared 2>&1 \
963964
// RUN: --target=i386-unknown-linux -fuse-ld=ld -fsanitize=scudo -shared-libsan \
@@ -1018,7 +1019,7 @@
10181019
// CHECK-HWASAN-X86-64-LINUX: "-lpthread"
10191020
// CHECK-HWASAN-X86-64-LINUX: "-lrt"
10201021
// CHECK-HWASAN-X86-64-LINUX: "-ldl"
1021-
// CHECK-HWASAN-X86-64-LINUX: "-lresolv"
1022+
// CHECK-HWASAN-X86-64-LINUX-NOT: "-lresolv"
10221023

10231024
// RUN: %clang -### %s 2>&1 \
10241025
// RUN: --target=x86_64-unknown-linux -fuse-ld=ld -fsanitize=hwaddress \
@@ -1067,7 +1068,7 @@
10671068
// CHECK-HWASAN-AARCH64-LINUX: "-lpthread"
10681069
// CHECK-HWASAN-AARCH64-LINUX: "-lrt"
10691070
// CHECK-HWASAN-AARCH64-LINUX: "-ldl"
1070-
// CHECK-HWASAN-AARCH64-LINUX: "-lresolv"
1071+
// CHECK-HWASAN-AARCH64-LINUX-NOT: "-lresolv"
10711072

10721073
// RUN: %clang -### %s 2>&1 \
10731074
// RUN: --target=aarch64-unknown-linux -fuse-ld=ld -fsanitize=hwaddress \

compiler-rt/lib/msan/msan_interceptors.cpp

Lines changed: 76 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1358,6 +1358,79 @@ INTERCEPTOR(int, forkpty, int *aparent, char *name, const void *termp,
13581358
#define MSAN_MAYBE_INTERCEPT_FORKPTY
13591359
#endif
13601360

1361+
#if SANITIZER_LINUX && !SANITIZER_ANDROID
1362+
INTERCEPTOR(int, __b64_ntop, unsigned char const *src, SIZE_T srclength,
1363+
char *target, SIZE_T targsize) {
1364+
ENSURE_MSAN_INITED();
1365+
CHECK_UNPOISONED(src, srclength);
1366+
InterceptorScope interceptor_scope;
1367+
int res = REAL(__b64_ntop)(src, srclength, target, targsize);
1368+
if (res >= 0)
1369+
__msan_unpoison(target, res + 1);
1370+
return res;
1371+
}
1372+
INTERCEPTOR(int, __b64_pton, char const *src, char *target, SIZE_T targsize) {
1373+
ENSURE_MSAN_INITED();
1374+
CHECK_UNPOISONED(src, internal_strlen(src) + 1);
1375+
InterceptorScope interceptor_scope;
1376+
int res = REAL(__b64_pton)(src, target, targsize);
1377+
if (res >= 0)
1378+
__msan_unpoison(target, res);
1379+
return res;
1380+
}
1381+
# define MSAN_MAYBE_INTERCEPT___B64_TO \
1382+
MSAN_INTERCEPT_FUNC(__b64_ntop); \
1383+
COMMON_INTERCEPT_FUNCTION(__b64_pton);
1384+
#else
1385+
# define MSAN_MAYBE_INTERCEPT___B64_TO
1386+
#endif
1387+
1388+
#if SANITIZER_LINUX && !SANITIZER_ANDROID
1389+
# if __GLIBC_PREREQ(2, 34)
1390+
// Changed with https://sourceware.org/git/?p=glibc.git;h=640bbdf
1391+
# define DN_COMP_INTERCEPTOR_NAME dn_comp
1392+
# define DN_EXPAND_INTERCEPTOR_NAME dn_expand
1393+
# else
1394+
# define DN_COMP_INTERCEPTOR_NAME __dn_comp
1395+
# define DN_EXPAND_INTERCEPTOR_NAME __dn_expand
1396+
# endif
1397+
INTERCEPTOR(int, DN_COMP_INTERCEPTOR_NAME, unsigned char *exp_dn,
1398+
unsigned char *comp_dn, int length, unsigned char **dnptrs,
1399+
unsigned char **lastdnptr) {
1400+
ENSURE_MSAN_INITED();
1401+
InterceptorScope interceptor_scope;
1402+
int res = REAL(DN_COMP_INTERCEPTOR_NAME)(exp_dn, comp_dn, length, dnptrs,
1403+
lastdnptr);
1404+
if (res >= 0) {
1405+
__msan_unpoison(comp_dn, res);
1406+
if (dnptrs && lastdnptr) {
1407+
unsigned char **p = dnptrs;
1408+
for (; p != lastdnptr && *p; ++p);
1409+
if (p != lastdnptr)
1410+
++p;
1411+
__msan_unpoison(dnptrs, (p - dnptrs) * sizeof(*p));
1412+
}
1413+
}
1414+
return res;
1415+
}
1416+
INTERCEPTOR(int, DN_EXPAND_INTERCEPTOR_NAME, unsigned char const *base,
1417+
unsigned char const *end, unsigned char const *src, char *dest,
1418+
int space) {
1419+
ENSURE_MSAN_INITED();
1420+
// TODO: add read check if __dn_comp intercept added
1421+
InterceptorScope interceptor_scope;
1422+
int res = REAL(DN_EXPAND_INTERCEPTOR_NAME)(base, end, src, dest, space);
1423+
if (res >= 0)
1424+
__msan_unpoison(dest, internal_strlen(dest) + 1);
1425+
return res;
1426+
}
1427+
# define MSAN_MAYBE_INTERCEPT_DN_COMP_EXPAND \
1428+
MSAN_INTERCEPT_FUNC(DN_COMP_INTERCEPTOR_NAME); \
1429+
MSAN_INTERCEPT_FUNC(DN_EXPAND_INTERCEPTOR_NAME);
1430+
#else
1431+
# define MSAN_MAYBE_INTERCEPT_DN_COMP_EXPAND
1432+
#endif
1433+
13611434
struct MSanInterceptorContext {
13621435
bool in_interceptor_scope;
13631436
};
@@ -1916,6 +1989,9 @@ void InitializeInterceptors() {
19161989
MSAN_MAYBE_INTERCEPT_OPENPTY;
19171990
MSAN_MAYBE_INTERCEPT_FORKPTY;
19181991

1992+
MSAN_MAYBE_INTERCEPT___B64_TO;
1993+
MSAN_MAYBE_INTERCEPT_DN_COMP_EXPAND;
1994+
19191995
inited = 1;
19201996
}
19211997
} // namespace __msan

compiler-rt/lib/sanitizer_common/sanitizer_common_interceptors.inc

Lines changed: 0 additions & 78 deletions
Original file line numberDiff line numberDiff line change
@@ -2538,82 +2538,6 @@ INTERCEPTOR(int, glob64, const char *pattern, int flags,
25382538
#define INIT_GLOB64
25392539
#endif // SANITIZER_INTERCEPT_GLOB64
25402540

2541-
#if SANITIZER_INTERCEPT___B64_TO
2542-
INTERCEPTOR(int, __b64_ntop, unsigned char const *src, SIZE_T srclength,
2543-
char *target, SIZE_T targsize) {
2544-
void *ctx;
2545-
COMMON_INTERCEPTOR_ENTER(ctx, __b64_ntop, src, srclength, target, targsize);
2546-
COMMON_INTERCEPTOR_READ_RANGE(ctx, src, srclength);
2547-
int res = REAL(__b64_ntop)(src, srclength, target, targsize);
2548-
if (res >= 0)
2549-
COMMON_INTERCEPTOR_WRITE_RANGE(ctx, target, res + 1);
2550-
return res;
2551-
}
2552-
INTERCEPTOR(int, __b64_pton, char const *src, char *target, SIZE_T targsize) {
2553-
void *ctx;
2554-
COMMON_INTERCEPTOR_ENTER(ctx, __b64_pton, src, target, targsize);
2555-
COMMON_INTERCEPTOR_READ_RANGE(ctx, src, internal_strlen(src) + 1);
2556-
int res = REAL(__b64_pton)(src, target, targsize);
2557-
if (res >= 0)
2558-
COMMON_INTERCEPTOR_WRITE_RANGE(ctx, target, res);
2559-
return res;
2560-
}
2561-
#define INIT___B64_TO \
2562-
COMMON_INTERCEPT_FUNCTION(__b64_ntop); \
2563-
COMMON_INTERCEPT_FUNCTION(__b64_pton);
2564-
#else // SANITIZER_INTERCEPT___B64_TO
2565-
#define INIT___B64_TO
2566-
#endif // SANITIZER_INTERCEPT___B64_TO
2567-
2568-
#if SANITIZER_INTERCEPT_DN_COMP_EXPAND
2569-
# if __GLIBC_PREREQ(2, 34)
2570-
// Changed with https://sourceware.org/git/?p=glibc.git;h=640bbdf
2571-
# define DN_COMP_INTERCEPTOR_NAME dn_comp
2572-
# define DN_EXPAND_INTERCEPTOR_NAME dn_expand
2573-
# else
2574-
# define DN_COMP_INTERCEPTOR_NAME __dn_comp
2575-
# define DN_EXPAND_INTERCEPTOR_NAME __dn_expand
2576-
# endif
2577-
INTERCEPTOR(int, DN_COMP_INTERCEPTOR_NAME, unsigned char *exp_dn,
2578-
unsigned char *comp_dn, int length, unsigned char **dnptrs,
2579-
unsigned char **lastdnptr) {
2580-
void *ctx;
2581-
COMMON_INTERCEPTOR_ENTER(ctx, DN_COMP_INTERCEPTOR_NAME, exp_dn, comp_dn,
2582-
length, dnptrs, lastdnptr);
2583-
int res = REAL(DN_COMP_INTERCEPTOR_NAME)(exp_dn, comp_dn, length, dnptrs,
2584-
lastdnptr);
2585-
if (res >= 0) {
2586-
COMMON_INTERCEPTOR_WRITE_RANGE(ctx, comp_dn, res);
2587-
if (dnptrs && lastdnptr) {
2588-
unsigned char **p = dnptrs;
2589-
for (; p != lastdnptr && *p; ++p)
2590-
;
2591-
if (p != lastdnptr)
2592-
++p;
2593-
COMMON_INTERCEPTOR_WRITE_RANGE(ctx, dnptrs, (p - dnptrs) * sizeof(*p));
2594-
}
2595-
}
2596-
return res;
2597-
}
2598-
INTERCEPTOR(int, DN_EXPAND_INTERCEPTOR_NAME, unsigned char const *base,
2599-
unsigned char const *end, unsigned char const *src, char *dest,
2600-
int space) {
2601-
void *ctx;
2602-
COMMON_INTERCEPTOR_ENTER(ctx, DN_EXPAND_INTERCEPTOR_NAME, base, end, src,
2603-
dest, space);
2604-
// TODO: add read check if __dn_comp intercept added
2605-
int res = REAL(DN_EXPAND_INTERCEPTOR_NAME)(base, end, src, dest, space);
2606-
if (res >= 0)
2607-
COMMON_INTERCEPTOR_WRITE_RANGE(ctx, dest, internal_strlen(dest) + 1);
2608-
return res;
2609-
}
2610-
# define INIT_DN_COMP_EXPAND \
2611-
COMMON_INTERCEPT_FUNCTION(DN_COMP_INTERCEPTOR_NAME); \
2612-
COMMON_INTERCEPT_FUNCTION(DN_EXPAND_INTERCEPTOR_NAME);
2613-
#else // SANITIZER_INTERCEPT_DN_COMP_EXPAND
2614-
# define INIT_DN_COMP_EXPAND
2615-
#endif // SANITIZER_INTERCEPT_DN_COMP_EXPAND
2616-
26172541
#if SANITIZER_INTERCEPT_POSIX_SPAWN
26182542

26192543
template <class RealSpawnPtr>
@@ -10346,8 +10270,6 @@ static void InitializeCommonInterceptors() {
1034610270
INIT_TIMESPEC_GET;
1034710271
INIT_GLOB;
1034810272
INIT_GLOB64;
10349-
INIT___B64_TO;
10350-
INIT_DN_COMP_EXPAND;
1035110273
INIT_POSIX_SPAWN;
1035210274
INIT_WAIT;
1035310275
INIT_WAIT4;

compiler-rt/lib/sanitizer_common/sanitizer_platform_interceptors.h

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -266,8 +266,6 @@ SANITIZER_WEAK_IMPORT void *aligned_alloc(__sanitizer::usize __alignment,
266266
#define SANITIZER_INTERCEPT_TIMESPEC_GET SI_LINUX
267267
#define SANITIZER_INTERCEPT_GLOB (SI_GLIBC || SI_SOLARIS)
268268
#define SANITIZER_INTERCEPT_GLOB64 SI_GLIBC
269-
#define SANITIZER_INTERCEPT___B64_TO SI_LINUX_NOT_ANDROID
270-
#define SANITIZER_INTERCEPT_DN_COMP_EXPAND SI_LINUX_NOT_ANDROID
271269
#define SANITIZER_INTERCEPT_POSIX_SPAWN SI_POSIX
272270
#define SANITIZER_INTERCEPT_WAIT SI_POSIX
273271
#define SANITIZER_INTERCEPT_INET SI_POSIX

0 commit comments

Comments
 (0)