use serde::{Deserialize, Serialize};
use sodiumoxide::crypto::box_;
use std::net::SocketAddr;
#[derive(Debug, Clone, Serialize, Deserialize)]
pub struct RendezvousInfo {
pub udp: Vec<SocketAddr>,
pub tcp: Option<SocketAddr>,
pub enc_pk: [u8; box_::PUBLICKEYBYTES],
}
impl RendezvousInfo {
fn new(enc_pk: &box_::PublicKey) -> Self {
RendezvousInfo {
udp: vec![],
tcp: None,
enc_pk: enc_pk.0,
}
}
}
impl Default for RendezvousInfo {
fn default() -> Self {
RendezvousInfo {
udp: vec![],
tcp: None,
enc_pk: [0; box_::PUBLICKEYBYTES],
}
}
}