X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~ian/git?a=blobdiff_plain;f=src%2Fbin%2Fclient.rs;h=d73eceb221277819c858df45c602171d7d6b12aa;hb=6e5d2b20984678a4ed9242fedfe8cdb2eb7028ec;hp=559b1afcb616111cedfe53d7032fdaa38b043826;hpb=6e9d9ba4189d5b65327c6baba8f409d4a0fdf3e9;p=hippotat.git diff --git a/src/bin/client.rs b/src/bin/client.rs index 559b1af..d73eceb 100644 --- a/src/bin/client.rs +++ b/src/bin/client.rs @@ -276,11 +276,13 @@ async fn run_client( if let Some(got) = got { //eprintln!("got={:?}", DumpHex(&got)); - match checkn(SlipNoConv,ic.mtu, &got, &mut rx_queue, |header| { + match checkn(SlipNoConv,ic.mtu, &got, |header| { let addr = ip_packet_addr::(header)?; if addr != ic.link.client.0 { throw!(PE::Dst(addr)) } Ok(()) - }, |e| error!("{} #{}: rx discarding: {}", &ic, req_num, e)) { + }, |o| rx_queue.push(o), + |e| error!("{} #{}: rx discarding: {}", &ic, req_num, e)) + { Ok(()) => reporter.lock().success(), Err(ErrorOnlyBad) => { reqs.push(Box::pin(async {