1use core::{mem, ffi::{c_void, c_long}};
2
3#[allow(non_camel_case_types)]
4type uint64_t = u64;
5#[allow(non_camel_case_types)]
6type uint32_t = u32;
7
8#[inline(always)]
9pub unsafe fn map_lookup_elem(map: *mut c_void, key: *const c_void) -> *mut c_void {
10 let f: unsafe extern "C" fn(*mut c_void, *const c_void) -> *mut c_void =
11 mem::transmute(1usize);
12
13 f(map, key)
14}
15
16#[inline(always)]
17pub unsafe fn map_update_elem(
18 map: *mut c_void,
19 key: *const c_void,
20 value: *const c_void,
21 flags: uint64_t,
22) -> c_long {
23 let f: unsafe extern "C" fn(
24 *mut c_void,
25 *const c_void,
26 *const c_void,
27 uint64_t,
28 ) -> c_long = mem::transmute(2usize);
29
30 f(map, key, value, flags)
31}
32
33#[inline(always)]
34pub unsafe fn map_delete_elem(map: *mut c_void, key: *const c_void) -> c_long {
35 let f: unsafe extern "C" fn(*mut c_void, *const c_void) -> c_long =
36 mem::transmute(3usize);
37
38 f(map, key)
39}
40
41#[inline(always)]
42pub unsafe fn ktime_get_ns() -> uint64_t {
43 let f: unsafe extern "C" fn() -> uint64_t = mem::transmute(5usize);
44
45 f()
46}
47
48#[inline(always)]
49pub unsafe fn get_current_pid_tgid() -> uint64_t {
50 let f: unsafe extern "C" fn() -> uint64_t = mem::transmute(14usize);
51
52 f()
53}
54
55#[inline(always)]
56pub unsafe fn get_current_comm(buf: *mut c_void, size_of_buf: uint32_t) -> c_long {
57 let f: unsafe extern "C" fn(*mut c_void, uint32_t) -> c_long =
58 mem::transmute(16usize);
59
60 f(buf, size_of_buf)
61}
62
63#[inline(always)]
64pub unsafe fn get_stack(
65 ctx: *mut c_void,
66 buf: *mut c_void,
67 size: uint32_t,
68 flags: uint64_t,
69) -> c_long {
70 let f: unsafe extern "C" fn(
71 *mut c_void,
72 *mut c_void,
73 uint32_t,
74 uint64_t,
75 ) -> c_long = mem::transmute(67usize);
76
77 f(ctx, buf, size, flags)
78}
79
80#[inline(always)]
81pub unsafe fn probe_read_user(
82 dst: *mut c_void,
83 size: uint32_t,
84 unsafe_ptr: *const c_void,
85) -> c_long {
86 let f: unsafe extern "C" fn(
87 *mut c_void,
88 uint32_t,
89 *const c_void,
90 ) -> c_long = mem::transmute(112usize);
91
92 f(dst, size, unsafe_ptr)
93}
94
95#[inline(always)]
96pub unsafe fn probe_read_kernel(
97 dst: *mut c_void,
98 size: uint32_t,
99 unsafe_ptr: *const c_void,
100) -> c_long {
101 let f: unsafe extern "C" fn(
102 *mut c_void,
103 uint32_t,
104 *const c_void,
105 ) -> c_long = mem::transmute(113usize);
106
107 f(dst, size, unsafe_ptr)
108}
109
110#[inline(always)]
111pub unsafe fn probe_read_user_str(
112 dst: *mut c_void,
113 size: uint32_t,
114 unsafe_ptr: *const c_void,
115) -> c_long {
116 let f: unsafe extern "C" fn(
117 *mut c_void,
118 uint32_t,
119 *const c_void,
120 ) -> c_long = mem::transmute(114usize);
121
122 f(dst, size, unsafe_ptr)
123}
124
125#[inline(always)]
126pub unsafe fn probe_read_kernel_str(
127 dst: *mut c_void,
128 size: uint32_t,
129 unsafe_ptr: *const c_void,
130) -> c_long {
131 let f: unsafe extern "C" fn(
132 *mut c_void,
133 uint32_t,
134 *const c_void,
135 ) -> c_long = mem::transmute(115usize);
136
137 f(dst, size, unsafe_ptr)
138}
139
140#[inline(always)]
141pub unsafe fn ringbuf_output(
142 ringbuf: *mut c_void,
143 data: *mut c_void,
144 size: uint64_t,
145 flags: uint64_t,
146) -> c_long {
147 let f: unsafe extern "C" fn(
148 *mut c_void,
149 *mut c_void,
150 uint64_t,
151 uint64_t,
152 ) -> c_long = mem::transmute(130usize);
153
154 f(ringbuf, data, size, flags)
155}
156
157#[inline(always)]
158pub unsafe fn ringbuf_reserve(
159 ringbuf: *mut c_void,
160 size: uint64_t,
161 flags: uint64_t,
162) -> *mut c_void {
163 let f: unsafe extern "C" fn(
164 *mut c_void,
165 uint64_t,
166 uint64_t,
167 ) -> *mut c_void = mem::transmute(131usize);
168
169 f(ringbuf, size, flags)
170}
171
172#[inline(always)]
173pub unsafe fn ringbuf_submit(data: *mut c_void, flags: uint64_t) {
174 let f: unsafe extern "C" fn(*mut c_void, uint64_t) = mem::transmute(132usize);
175
176 f(data, flags)
177}
178
179#[inline(always)]
180pub unsafe fn ringbuf_discard(data: *mut c_void, flags: uint64_t) {
181 let f: unsafe extern "C" fn(*mut c_void, uint64_t) = mem::transmute(133usize);
182
183 f(data, flags)
184}