From 53874213fa43a14a45b4fd145b89a9beb7ab4f38 Mon Sep 17 00:00:00 2001 From: Jeremy Soller Date: Sun, 6 Jan 2019 12:48:36 -0700 Subject: [PATCH] Add dladdr --- src/header/dlfcn/mod.rs | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) diff --git a/src/header/dlfcn/mod.rs b/src/header/dlfcn/mod.rs index ca14d8c83b..712ae590fa 100644 --- a/src/header/dlfcn/mod.rs +++ b/src/header/dlfcn/mod.rs @@ -10,6 +10,23 @@ pub const RTLD_NOW: c_int = 0x0002; pub const RTLD_GLOBAL: c_int = 0x0100; pub const RTLD_LOCAL: c_int = 0x0000; +#[repr(C)] +pub struct Dl_info { + dli_fname: *const c_char, + dli_fbase: *mut c_void, + dli_sname: *const c_char, + dli_saddr: *mut c_void, +} + +#[no_mangle] +pub unsafe extern "C" fn dladdr(addr: *mut c_void, info: *mut Dl_info) -> c_int { + (*info).dli_fname = ptr::null(); + (*info).dli_fbase = ptr::null_mut(); + (*info).dli_sname = ptr::null(); + (*info).dli_saddr = ptr::null_mut(); + 0 +} + #[no_mangle] pub unsafe extern "C" fn dlopen(filename: *const c_char, flags: c_int) -> *mut c_void { let filename_cstr = CStr::from_ptr(filename);