1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
#![feature(link_args)]
#![allow(non_camel_case_types)]
#![allow(non_upper_case_globals)]
#![allow(non_snake_case)]

extern crate libc;

#[cfg(feature = "use_parking_lot")]
extern crate parking_lot;

#[macro_use]
mod macros;

mod common;
mod dl;

pub use common::{
    are_hooks_enabled,
    are_hooks_disabled,
    disable_hooks,
    enable_hooks
};

#[doc(hidden)]
pub mod private {
    pub use libc::{
        c_void,
        c_char
    };

    pub use dl::{
        initialize_dlsym,
        initialize_dlvsym,
        initialize_libc_dlsym
    };
}