demikernel icon indicating copy to clipboard operation
demikernel copied to clipboard

[inetstack] Rely on `SocketAddr` `enum` Rather Than `SocketAddrV4` `struct`

Open ppenna opened this issue 2 years ago • 4 comments

Description

Catnip uses the ~~Ipv4Endpoint~~ SocketAddrV4 structure to refer to remote and local endpoints. While this is fine when supporting IPv4 addresses only, once we add support to IPv6 it is make the stack a mess. Therefore, we should change the stack so as to refer to local and remote endpoints using a more generic type, like ~~IpEndpoint~~SocketAddr.

ppenna avatar Mar 29 '22 11:03 ppenna

Maybe something like std::net::SocketAddr from the standard library?

gatoWololo avatar Mar 29 '22 13:03 gatoWololo

Maybe something like std::net::SocketAddr from the standard library?

Yes, our Ipv4Endpoint is broken. See Issue demikernel/inetstack#172.

BrianZill avatar May 27 '22 01:05 BrianZill

Since we removed the Ipv4Endpoint struct and replaced it with SocketAddrV4 (in PR demikernel/inetstack#177), I updated the title and description to reflect this.

BrianZill avatar Jun 14 '22 17:06 BrianZill

@anandbonde are we done with this?

ppenna avatar Dec 02 '22 14:12 ppenna