summaryrefslogtreecommitdiffstats
path: root/src/handshake/device.rs
diff options
context:
space:
mode:
authorMathias Hall-Andersen <mathias@hall-andersen.dk>2019-08-01 13:56:42 +0200
committerMathias Hall-Andersen <mathias@hall-andersen.dk>2019-08-01 13:56:42 +0200
commitd6e40f9ea61ba2f84394baa5de444fec76dbea09 (patch)
tree3b76d381305a5fa3495b323c2e380ae358f31422 /src/handshake/device.rs
parentSuccessfully validate mac1 field (diff)
downloadwireguard-rs-d6e40f9ea61ba2f84394baa5de444fec76dbea09.tar.xz
wireguard-rs-d6e40f9ea61ba2f84394baa5de444fec76dbea09.zip
Unit test for mac1 validation
Diffstat (limited to 'src/handshake/device.rs')
-rw-r--r--src/handshake/device.rs9
1 files changed, 6 insertions, 3 deletions
diff --git a/src/handshake/device.rs b/src/handshake/device.rs
index 2a676a8..a1f882d 100644
--- a/src/handshake/device.rs
+++ b/src/handshake/device.rs
@@ -233,11 +233,14 @@ where
Some(&TYPE_COOKIEREPLY) => {
let msg = CookieReply::parse(msg)?;
- // validate cookie reply
+ // lookup peer
+ let peer = self.lookup_id(msg.f_receiver.get())?;
- // update cookie generator for peer
+ // validate cookie reply
+ peer.macs.lock().process(&msg)?;
- unimplemented!()
+ // this prompts no new message
+ Ok((peer.identifier, None, None))
}
_ => Err(HandshakeError::InvalidMessageFormat),
}