Rewrite the whole net/addr.rs file

This commit is contained in:
Ruihan Li
2024-07-25 21:29:12 +08:00
committed by Tate, Hongliang Tian
parent d814603504
commit 4deba9baca
14 changed files with 608 additions and 377 deletions

View File

@ -57,7 +57,10 @@ FN_TEST(getsockname)
{
struct sockaddr_in saddr = { .sin_port = 0xbeef };
struct sockaddr *psaddr = (struct sockaddr *)&saddr;
socklen_t addrlen = sizeof(saddr);
socklen_t addrlen = 0;
TEST_RES(getsockname(sk_unbound, psaddr, &addrlen),
addrlen == sizeof(saddr) && saddr.sin_port == 0xbeef);
TEST_RES(getsockname(sk_unbound, psaddr, &addrlen),
addrlen == sizeof(saddr) && saddr.sin_port == 0);
@ -143,6 +146,8 @@ FN_TEST(bind)
struct sockaddr *psaddr = (struct sockaddr *)&sk_addr;
socklen_t addrlen = sizeof(sk_addr);
TEST_ERRNO(bind(sk_unbound, psaddr, addrlen - 1), EINVAL);
TEST_ERRNO(bind(sk_bound, psaddr, addrlen), EINVAL);
TEST_ERRNO(bind(sk_connected, psaddr, addrlen), EINVAL);