Add socket hash table

This commit is contained in:
jiangjianfeng
2024-12-27 08:28:11 +00:00
committed by Tate, Hongliang Tian
parent 783345b90b
commit 39cc0dca26
11 changed files with 684 additions and 202 deletions

View File

@ -10,7 +10,41 @@ pub enum BindError {
}
pub mod tcp {
pub use smoltcp::socket::tcp::{ConnectError, ListenError, RecvError, SendError};
pub use smoltcp::socket::tcp::{RecvError, SendError};
#[derive(Debug, PartialEq, Eq, Clone, Copy)]
pub enum ListenError {
InvalidState,
Unaddressable,
/// The specified address is in use.
AddressInUse,
}
impl From<smoltcp::socket::tcp::ListenError> for ListenError {
fn from(value: smoltcp::socket::tcp::ListenError) -> Self {
match value {
smoltcp::socket::tcp::ListenError::InvalidState => Self::InvalidState,
smoltcp::socket::tcp::ListenError::Unaddressable => Self::Unaddressable,
}
}
}
#[derive(Debug, PartialEq, Eq, Clone, Copy)]
pub enum ConnectError {
InvalidState,
Unaddressable,
/// The specified address is in use.
AddressInUse,
}
impl From<smoltcp::socket::tcp::ConnectError> for ConnectError {
fn from(value: smoltcp::socket::tcp::ConnectError) -> Self {
match value {
smoltcp::socket::tcp::ConnectError::InvalidState => Self::InvalidState,
smoltcp::socket::tcp::ConnectError::Unaddressable => Self::Unaddressable,
}
}
}
}
pub mod udp {