diff options
author | Jake McGinty <me@jake.su> | 2018-02-01 15:41:15 +0000 |
---|---|---|
committer | Jake McGinty <me@jake.su> | 2018-02-01 15:41:15 +0000 |
commit | 3341298937c3c7c2db93a9bb87757800c930b374 (patch) | |
tree | 6460ce4b7d783f94c9ac53e89ddfaa1acff3ac85 /src | |
parent | ratchet session upon sending successful handshake response (diff) | |
download | wireguard-rs-3341298937c3c7c2db93a9bb87757800c930b374.tar.xz wireguard-rs-3341298937c3c7c2db93a9bb87757800c930b374.zip |
handle no-psk case
Diffstat (limited to 'src')
-rw-r--r-- | src/interface/mod.rs | 2 | ||||
-rw-r--r-- | src/interface/peer_server.rs | 4 |
2 files changed, 3 insertions, 3 deletions
diff --git a/src/interface/mod.rs b/src/interface/mod.rs index e10ce8e..1cce00e 100644 --- a/src/interface/mod.rs +++ b/src/interface/mod.rs @@ -175,7 +175,7 @@ impl Interface { .local_private_key(&state.interface_info.private_key.expect("no private key!")) .remote_public_key(&info.pub_key) .prologue("WireGuard v1 zx2c4 Jason@zx2c4.com".as_bytes()) - .psk(2, &info.psk.expect("no psk!")) + .psk(2, &info.psk.unwrap_or_else(|| [0u8; 32])) .build_initiator().unwrap(); let mut peer = Peer::new(info.clone()); diff --git a/src/interface/peer_server.rs b/src/interface/peer_server.rs index 7b5f3ff..e4d442a 100644 --- a/src/interface/peer_server.rs +++ b/src/interface/peer_server.rs @@ -125,7 +125,7 @@ impl PeerServer { // TODO: hacked up API until it's officially supported in snow. match noise { snow::Session::Handshake(ref mut handshake_state) => { - handshake_state.set_psk(2, &peer.info.psk.expect("no psk!")); + handshake_state.set_psk(2, &peer.info.psk.unwrap_or_else(|| [0u8; 32])); }, _ => unreachable!() } @@ -224,7 +224,7 @@ impl PeerServer { .local_private_key(&state.interface_info.private_key.expect("no private key!")) .remote_public_key(&peer.info.pub_key) .prologue("WireGuard v1 zx2c4 Jason@zx2c4.com".as_bytes()) - .psk(2, &peer.info.psk.expect("no psk!")) + .psk(2, &peer.info.psk.unwrap_or_else(|| [0u8; 32])) .build_initiator().unwrap(); peer.set_next_session(noise.into()); |