Upgrade socket2 - Same thing, just breaking API changes

pull/62/head
Frank Denis 3 years ago
parent 2c74702eef
commit 8c35df5705

@ -27,7 +27,7 @@ ipext = "0.1.0"
jemallocator = "0.3.2" jemallocator = "0.3.2"
libsodium-sys-stable= "1.19.14" libsodium-sys-stable= "1.19.14"
log = { version = "0.4.14", features = ["std", "release_max_level_debug"] } log = { version = "0.4.14", features = ["std", "release_max_level_debug"] }
socket2 = "0.3.19" socket2 = "0.4.0"
parking_lot = "0.11.1" parking_lot = "0.11.1"
privdrop = "0.5.0" privdrop = "0.5.0"
rand = "0.8.3" rand = "0.8.3"

@ -71,10 +71,9 @@ pub fn decrypt(
let cached_shared_key = { let cached_shared_key = {
let mut cache = dnscrypt_encryption_params.cache.as_ref().unwrap().lock(); let mut cache = dnscrypt_encryption_params.cache.as_ref().unwrap().lock();
match cache.get(client_pk) { cache
None => None, .get(client_pk)
Some(cached_shared_key) => Some((*cached_shared_key).clone()), .map(|cached_shared_key| (*cached_shared_key).clone())
}
}; };
let shared_key = match cached_shared_key { let shared_key = match cached_shared_key {
Some(cached_shared_key) => cached_shared_key, Some(cached_shared_key) => cached_shared_key,

@ -3,6 +3,7 @@
#![allow(clippy::cognitive_complexity)] #![allow(clippy::cognitive_complexity)]
#![allow(clippy::upper_case_acronyms)] #![allow(clippy::upper_case_acronyms)]
#![allow(clippy::unnecessary_wraps)] #![allow(clippy::unnecessary_wraps)]
#![allow(clippy::field_reassign_with_default)]
#![allow(dead_code)] #![allow(dead_code)]
#[global_allocator] #[global_allocator]
@ -409,53 +410,53 @@ fn bind_listeners(
) -> Result<Vec<(std::net::TcpListener, std::net::UdpSocket)>, Error> { ) -> Result<Vec<(std::net::TcpListener, std::net::UdpSocket)>, Error> {
let mut sockets = Vec::with_capacity(listen_addrs.len()); let mut sockets = Vec::with_capacity(listen_addrs.len());
for listen_addr in listen_addrs { for listen_addr in listen_addrs {
let tcp_listener = match listen_addr { let tcp_listener: std::net::TcpListener = match listen_addr {
SocketAddr::V4(_) => { SocketAddr::V4(_) => {
let kindy = socket2::Socket::new( let kindy = socket2::Socket::new(
socket2::Domain::ipv4(), socket2::Domain::IPV4,
socket2::Type::stream(), socket2::Type::STREAM,
Some(socket2::Protocol::tcp()), Some(socket2::Protocol::TCP),
)?; )?;
kindy.set_reuse_address(true)?; kindy.set_reuse_address(true)?;
kindy.bind(&(*listen_addr).into())?; kindy.bind(&(*listen_addr).into())?;
kindy.listen(TCP_BACKLOG as _)?; kindy.listen(TCP_BACKLOG as _)?;
kindy.into_tcp_listener() kindy.into()
} }
SocketAddr::V6(_) => { SocketAddr::V6(_) => {
let kindy = socket2::Socket::new( let kindy = socket2::Socket::new(
socket2::Domain::ipv6(), socket2::Domain::IPV6,
socket2::Type::stream(), socket2::Type::STREAM,
Some(socket2::Protocol::tcp()), Some(socket2::Protocol::TCP),
)?; )?;
kindy.set_reuse_address(true)?; kindy.set_reuse_address(true)?;
kindy.set_only_v6(true)?; kindy.set_only_v6(true)?;
kindy.bind(&(*listen_addr).into())?; kindy.bind(&(*listen_addr).into())?;
kindy.listen(TCP_BACKLOG as _)?; kindy.listen(TCP_BACKLOG as _)?;
kindy.into_tcp_listener() kindy.into()
} }
}; };
tcp_listener.set_nonblocking(true)?; tcp_listener.set_nonblocking(true)?;
let udp_socket = match listen_addr { let udp_socket: std::net::UdpSocket = match listen_addr {
SocketAddr::V4(_) => { SocketAddr::V4(_) => {
let kindy = socket2::Socket::new( let kindy = socket2::Socket::new(
socket2::Domain::ipv4(), socket2::Domain::IPV4,
socket2::Type::dgram(), socket2::Type::DGRAM,
Some(socket2::Protocol::udp()), Some(socket2::Protocol::UDP),
)?; )?;
kindy.set_reuse_address(true)?; kindy.set_reuse_address(true)?;
kindy.bind(&(*listen_addr).into())?; kindy.bind(&(*listen_addr).into())?;
kindy.into_udp_socket() kindy.into()
} }
SocketAddr::V6(_) => { SocketAddr::V6(_) => {
let kindy = socket2::Socket::new( let kindy = socket2::Socket::new(
socket2::Domain::ipv6(), socket2::Domain::IPV6,
socket2::Type::dgram(), socket2::Type::DGRAM,
Some(socket2::Protocol::udp()), Some(socket2::Protocol::UDP),
)?; )?;
kindy.set_reuse_address(true)?; kindy.set_reuse_address(true)?;
kindy.set_only_v6(true)?; kindy.set_only_v6(true)?;
kindy.bind(&(*listen_addr).into())?; kindy.bind(&(*listen_addr).into())?;
kindy.into_udp_socket() kindy.into()
} }
}; };
udp_socket.set_nonblocking(true)?; udp_socket.set_nonblocking(true)?;

Loading…
Cancel
Save