aboutsummaryrefslogtreecommitdiffstats
path: root/src/wireguard/router/outbound.rs
diff options
context:
space:
mode:
authorMathias Hall-Andersen <mathias@hall-andersen.dk>2019-12-14 13:37:51 +0100
committerMathias Hall-Andersen <mathias@hall-andersen.dk>2019-12-14 13:37:51 +0100
commite0db9861bcf7194c29888c28184785f969199c38 (patch)
tree76c14e6ccf9bfac6880f1ce99ad1d96f06d62788 /src/wireguard/router/outbound.rs
parentRemove crossbeam dependency (diff)
downloadwireguard-rs-e0db9861bcf7194c29888c28184785f969199c38.tar.xz
wireguard-rs-e0db9861bcf7194c29888c28184785f969199c38.zip
Added profiler feature
Diffstat (limited to '')
-rw-r--r--src/wireguard/router/outbound.rs34
1 files changed, 19 insertions, 15 deletions
diff --git a/src/wireguard/router/outbound.rs b/src/wireguard/router/outbound.rs
index 9ecffd8..a555ecb 100644
--- a/src/wireguard/router/outbound.rs
+++ b/src/wireguard/router/outbound.rs
@@ -1,3 +1,4 @@
+use super::constants::MAX_INORDER_CONSUME;
use super::device::Device;
use super::messages::{TransportHeader, TYPE_TRANSPORT};
use super::peer::Peer;
@@ -88,20 +89,23 @@ pub fn sequential<E: Endpoint, C: Callbacks, T: tun::Writer, B: udp::Writer<E>>(
device: Device<E, C, T, B>,
) {
device.run_outbound.run(|peer| {
- peer.outbound.handle(|body| {
- log::trace!("worker, sequential section, obtained job");
-
- // send to peer
- let xmit = peer.send(&body.msg[..]).is_ok();
-
- // trigger callback
- C::send(
- &peer.opaque,
- body.msg.len(),
- xmit,
- &body.keypair,
- body.counter,
- );
- });
+ peer.outbound.handle(
+ |body| {
+ log::trace!("worker, sequential section, obtained job");
+
+ // send to peer
+ let xmit = peer.send(&body.msg[..]).is_ok();
+
+ // trigger callback
+ C::send(
+ &peer.opaque,
+ body.msg.len(),
+ xmit,
+ &body.keypair,
+ body.counter,
+ );
+ },
+ MAX_INORDER_CONSUME,
+ )
});
}