Simplify. NFC.

v0.7.x
whitequark 2017-10-24 22:50:12 +00:00
parent 1cd3625bf4
commit a7e6a1b5ae
1 changed files with 15 additions and 22 deletions

View File

@ -171,33 +171,26 @@ impl<'a, 'b, 'c, DeviceT: Device + 'a> Interface<'a, 'b, 'c, DeviceT> {
};
let response =
match self.process_ethernet(sockets, timestamp, &frame) {
Ok(response) => response,
Err(err) => {
net_debug!("cannot process ingress packet: {}", err);
if net_log_enabled!(debug) {
match EthernetFrame::new_checked(frame.as_ref()) {
Err(_) => {
net_debug!("packet dump follows:\n{:?}", frame.as_ref());
}
Ok(frame) => {
net_debug!("packet dump follows:\n{}", frame);
}
self.process_ethernet(sockets, timestamp, &frame).map_err(|err| {
net_debug!("cannot process ingress packet: {}", err);
if net_log_enabled!(debug) {
match EthernetFrame::new_checked(frame.as_ref()) {
Err(_) => {
net_debug!("packet dump follows:\n{:?}", frame.as_ref());
}
Ok(frame) => {
net_debug!("packet dump follows:\n{}", frame);
}
}
return Err(err)
}
};
err
})?;
processed_any = true;
match self.dispatch(timestamp, response) {
Ok(()) => (),
Err(err) => {
net_debug!("cannot dispatch response packet: {}", err);
return Err(err)
}
}
self.dispatch(timestamp, response).map_err(|err| {
net_debug!("cannot dispatch response packet: {}", err);
err
})?;
}
Ok(processed_any)
}