Jeremy Soller 6 anos atrás
pai
commit
53874213fa
1 arquivos alterados com 17 adições e 0 exclusões
  1. 17 0
      src/header/dlfcn/mod.rs

+ 17 - 0
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);