[core] Check status of dladdr (#626)
This commit is contained in:
parent
ee57426443
commit
9899bbfb95
|
|
@ -127,7 +127,7 @@ namespace lspd {
|
||||||
_make_rwx(original, _page_size);
|
_make_rwx(original, _page_size);
|
||||||
if constexpr (isDebug) {
|
if constexpr (isDebug) {
|
||||||
Dl_info info;
|
Dl_info info;
|
||||||
dladdr(original, &info);
|
if (dladdr(original, &info))
|
||||||
LOGD("Hooking %s (%p) from %s (%p)",
|
LOGD("Hooking %s (%p) from %s (%p)",
|
||||||
info.dli_sname ? info.dli_sname : "(unknown symbol)", info.dli_saddr,
|
info.dli_sname ? info.dli_sname : "(unknown symbol)", info.dli_saddr,
|
||||||
info.dli_fname ? info.dli_fname : "(unknown file)", info.dli_fbase);
|
info.dli_fname ? info.dli_fname : "(unknown file)", info.dli_fbase);
|
||||||
|
|
@ -138,7 +138,7 @@ namespace lspd {
|
||||||
inline int UnhookFunction(void *original) {
|
inline int UnhookFunction(void *original) {
|
||||||
if constexpr (isDebug) {
|
if constexpr (isDebug) {
|
||||||
Dl_info info;
|
Dl_info info;
|
||||||
dladdr(original, &info);
|
if (dladdr(original, &info))
|
||||||
LOGD("Unhooking %s (%p) from %s (%p)",
|
LOGD("Unhooking %s (%p) from %s (%p)",
|
||||||
info.dli_sname ? info.dli_sname : "(unknown symbol)", info.dli_saddr,
|
info.dli_sname ? info.dli_sname : "(unknown symbol)", info.dli_saddr,
|
||||||
info.dli_fname ? info.dli_fname : "(unknown file)", info.dli_fbase);
|
info.dli_fname ? info.dli_fname : "(unknown file)", info.dli_fbase);
|
||||||
|
|
|
||||||
|
|
@ -98,10 +98,10 @@ namespace lspd {
|
||||||
for (std::string_view module_lib: moduleNativeLibs) {
|
for (std::string_view module_lib: moduleNativeLibs) {
|
||||||
// the so is a module so
|
// the so is a module so
|
||||||
if (UNLIKELY(hasEnding(ns, module_lib))) {
|
if (UNLIKELY(hasEnding(ns, module_lib))) {
|
||||||
LOGI("Loading module native library %s", module_lib.data());
|
LOGD("Loading module native library %s", module_lib.data());
|
||||||
void *native_init_sym = dlsym(handle, "native_init");
|
void *native_init_sym = dlsym(handle, "native_init");
|
||||||
if (UNLIKELY(native_init_sym == nullptr)) {
|
if (UNLIKELY(native_init_sym == nullptr)) {
|
||||||
LOGE("Failed to get symbol \"native_init\" from library %s",
|
LOGD("Failed to get symbol \"native_init\" from library %s",
|
||||||
module_lib.data());
|
module_lib.data());
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue