chiark / gitweb /
make route_packet async
[hippotat.git] / src / bin / server.rs
index a45bec6d92e4351bd75f3484332925527e1302d1..57f9bc75caa6b813365234c4f9c8e79f85a53c80 100644 (file)
@@ -57,9 +57,9 @@ struct WebResponse {
 type WebResponseData = Vec<u8>;
 
 #[throws(PacketError)]
-pub fn route_packet(global: &Global,
-                    conn: &str, link: &dyn Display,
-                    packet: RoutedPacket, daddr: IpAddr)
+pub async fn route_packet(global: &Global,
+                          conn: &str, link: &(dyn Display + Sync),
+                          packet: RoutedPacket, daddr: IpAddr)
 {
   let c = &global.config;
   let trace = |how| trace!("{} {} route {} daddr={:?} len={}",
@@ -401,7 +401,7 @@ async fn run_client(global: Arc<Global>,
               &global, &conn, &ic.link.client, daddr,packet
             ),
               |e| Ok::<_,SlipFramesError<_>>({ warnings.add(&e)?; })
-            )?;
+            ).await?;
           }
 
           let oi = OutstandingInner {