Skip to content

Commit

Permalink
Revert "Reland '[msan] Intercept dladdr1, and refactor dladdr'"
Browse files Browse the repository at this point in the history
This reverts my commit 015dabd
due to breaking non-glibc builds.
  • Loading branch information
thurstond committed Jul 7, 2023
1 parent d1e8df8 commit 667b9ad
Show file tree
Hide file tree
Showing 5 changed files with 13 additions and 203 deletions.
2 changes: 0 additions & 2 deletions compiler-rt/lib/msan/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,6 @@ set(MSAN_RTL_SOURCES
msan.cpp
msan_allocator.cpp
msan_chained_origin_depot.cpp
msan_dl.cpp
msan_interceptors.cpp
msan_linux.cpp
msan_report.cpp
Expand All @@ -21,7 +20,6 @@ set(MSAN_RTL_HEADERS
msan.h
msan_allocator.h
msan_chained_origin_depot.h
msan_dl.h
msan_flags.h
msan_flags.inc
msan_interface_internal.h
Expand Down
63 changes: 0 additions & 63 deletions compiler-rt/lib/msan/msan_dl.cpp

This file was deleted.

28 changes: 0 additions & 28 deletions compiler-rt/lib/msan/msan_dl.h

This file was deleted.

28 changes: 13 additions & 15 deletions compiler-rt/lib/msan/msan_interceptors.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,6 @@
#include "interception/interception.h"
#include "msan.h"
#include "msan_chained_origin_depot.h"
#include "msan_dl.h"
#include "msan_origin.h"
#include "msan_poisoning.h"
#include "msan_report.h"
Expand Down Expand Up @@ -1521,23 +1520,23 @@ INTERCEPTOR(const char *, strsignal, int sig) {
return res;
}

INTERCEPTOR(int, dladdr, void *addr, void *info) {
struct dlinfo {
char *dli_fname;
void *dli_fbase;
char *dli_sname;
void *dli_saddr;
};

INTERCEPTOR(int, dladdr, void *addr, dlinfo *info) {
void *ctx;
COMMON_INTERCEPTOR_ENTER(ctx, dladdr, addr, info);
int res = REAL(dladdr)(addr, info);
if (res != 0)
UnpoisonDllAddrInfo(info);
return res;
}

INTERCEPTOR(int, dladdr1, void *addr, void *info, void **extra_info,
int flags) {
void *ctx;
COMMON_INTERCEPTOR_ENTER(ctx, dladdr1, addr, info, extra_info, flags);
int res = REAL(dladdr1)(addr, info, extra_info, flags);
if (res != 0) {
UnpoisonDllAddrInfo(info);
UnpoisonDllAddr1ExtraInfo(extra_info, flags);
__msan_unpoison(info, sizeof(*info));
if (info->dli_fname)
__msan_unpoison(info->dli_fname, internal_strlen(info->dli_fname) + 1);
if (info->dli_sname)
__msan_unpoison(info->dli_sname, internal_strlen(info->dli_sname) + 1);
}
return res;
}
Expand Down Expand Up @@ -1789,7 +1788,6 @@ void InitializeInterceptors() {
MSAN_MAYBE_INTERCEPT_EPOLL_PWAIT;
INTERCEPT_FUNCTION(strsignal);
INTERCEPT_FUNCTION(dladdr);
INTERCEPT_FUNCTION(dladdr1);
INTERCEPT_FUNCTION(dlerror);
INTERCEPT_FUNCTION(dl_iterate_phdr);
INTERCEPT_FUNCTION(getrusage);
Expand Down
95 changes: 0 additions & 95 deletions compiler-rt/test/msan/dladdr1_test.c

This file was deleted.

0 comments on commit 667b9ad

Please sign in to comment.