From 240c65507bcd764b5372a1326b236038166c4855 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Alessandro=C2=A0Decina?= Date: Tue, 1 Jun 2021 09:29:32 +0000 Subject: [PATCH] bpf: add HashMap::remove() --- bpf/aya-bpf/src/maps/hash_map.rs | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/bpf/aya-bpf/src/maps/hash_map.rs b/bpf/aya-bpf/src/maps/hash_map.rs index a1269d04..42b1ac12 100644 --- a/bpf/aya-bpf/src/maps/hash_map.rs +++ b/bpf/aya-bpf/src/maps/hash_map.rs @@ -73,4 +73,16 @@ impl HashMap { Ok(()) } + + pub unsafe fn remove(&mut self, key: &K) -> Result<(), c_long> { + let value = bpf_map_delete_elem( + &mut self.def as *mut _ as *mut _, + key as *const _ as *const c_void, + ); + if value < 0 { + Err(value) + } else { + Ok(()) + } + } }