1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
use std::net::{ToSocketAddrs, SocketAddr};
use std::io::{self, Error, ErrorKind};
use crate::crypto::Method;
pub use codec::{Codec, NsonCodec};
pub use network::{Packet, NetWork};
mod codec;
mod network;
pub mod tcp_ext;
#[derive(Debug, Clone)]
pub struct CryptoOptions {
pub method: Method,
pub secret: String
}
pub fn parse_addr<A: ToSocketAddrs>(addr: A) -> io::Result<SocketAddr> {
addr.to_socket_addrs()?.next().ok_or_else(|| Error::new(ErrorKind::InvalidInput, "Address is not valid"))
}