From afce4f33302ff47312eb3330dfd7dcd44d079f91 Mon Sep 17 00:00:00 2001 From: Dominik Maier Date: Sun, 13 Dec 2020 22:49:00 +0100 Subject: [PATCH] more events, more fun --- afl/src/events/mod.rs | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/afl/src/events/mod.rs b/afl/src/events/mod.rs index 9398ae38b2..7238b0f327 100644 --- a/afl/src/events/mod.rs +++ b/afl/src/events/mod.rs @@ -498,7 +498,9 @@ where state: &mut State, corpus: &mut C, ) -> Result { - let count = match &mut self.llmp { + // TODO: Get around local event copy by moving handle_in_client + let mut events = vec![]; + match &mut self.llmp { llmp::LlmpConnection::IsClient {client} => { let mut msg_count = 0; loop { @@ -508,9 +510,8 @@ where if tag == _LLMP_TAG_EVENT_TO_BROKER { continue; } - let event = postcard::from_bytes(event_buf)?; - // TODO: self.handle_in_client(event, state, corpus)?; - msg_count += 1; + let event: Event = postcard::from_bytes(event_buf)?; + events.push(event); }, None => break msg_count, } @@ -521,6 +522,8 @@ where 0 } }; + let count = events.len(); + events.into_iter().try_for_each(|event| self.handle_in_client(event, state, corpus))?; Ok(count) }