From 8e188c6192a23d3445df081ac73d3a15a2803ca1 Mon Sep 17 00:00:00 2001 From: Robert Hahn <hahnr@google.com> Date: Sat, 27 Apr 2019 02:53:43 +0000 Subject: [PATCH] [wlan][sme] Combine EAPOL logging with cause This should allow us to easier map a cause to a specific frame. Test=Only logging changed. Verified new logging format by inspecting bug report Change-Id: Ifa43161e45228ecc5ae5215c50bdf1fe6f5befb4 --- .../wlan/lib/sme/src/client/state.rs | 22 ++++++++++++++----- 1 file changed, 17 insertions(+), 5 deletions(-) diff --git a/src/connectivity/wlan/lib/sme/src/client/state.rs b/src/connectivity/wlan/lib/sme/src/client/state.rs index 485877e30c1..1eacd26e18a 100644 --- a/src/connectivity/wlan/lib/sme/src/client/state.rs +++ b/src/connectivity/wlan/lib/sme/src/client/state.rs @@ -564,12 +564,14 @@ fn process_eapol_ind( ) -> RsnaStatus { let mic_size = rsna.negotiated_rsne.mic_size; let eapol_pdu = &ind.data[..]; - inspect_log!(context.inspect.rsn_events, rx_eapol_frame: InspectBytes(&eapol_pdu)); let eapol_frame = match eapol::key_frame_from_bytes(eapol_pdu, mic_size).to_full_result() { Ok(key_frame) => eapol::Frame::Key(key_frame), Err(e) => { error!("received invalid EAPOL Key frame: {:?}", e); - inspect_log!(context.inspect.rsn_events, parse_eapol_error: format!("{:?}", e)); + inspect_log!(context.inspect.rsn_events, { + rx_eapol_frame: InspectBytes(&eapol_pdu), + status: format!("rejected (parse error): {:?}", e) + }); return RsnaStatus::Unchanged; } }; @@ -578,11 +580,21 @@ fn process_eapol_ind( match rsna.supplicant.on_eapol_frame(&mut update_sink, &eapol_frame) { Err(e) => { error!("error processing EAPOL key frame: {}", e); - inspect_log!(context.inspect.rsn_events, process_eapol_error: format!("{:?}", e)); + inspect_log!(context.inspect.rsn_events, { + rx_eapol_frame: InspectBytes(&eapol_pdu), + status: format!("rejected (processing error): {}", e) + }); return RsnaStatus::Unchanged; } - Ok(_) if update_sink.is_empty() => return RsnaStatus::Unchanged, - _ => (), + Ok(_) => { + inspect_log!(context.inspect.rsn_events, { + rx_eapol_frame: InspectBytes(&eapol_pdu), + status: "processed" + }); + if update_sink.is_empty() { + return RsnaStatus::Unchanged + } + } } let bssid = ind.src_addr; -- GitLab