|
|
|
|
@ -109,6 +109,7 @@ static void test_sockets_allfunctions_basic_domain(int domain)
|
|
|
|
|
int s, s2, s3, ret; |
|
|
|
|
struct sockaddr_storage addr, addr2; |
|
|
|
|
socklen_t addrlen, addr2len; |
|
|
|
|
char buf[4]; |
|
|
|
|
/* listen socket */ |
|
|
|
|
s = lwip_socket(domain, SOCK_STREAM, 0); |
|
|
|
|
fail_unless(s >= 0); |
|
|
|
|
@ -151,10 +152,45 @@ static void test_sockets_allfunctions_basic_domain(int domain)
|
|
|
|
|
fail_unless(ret == -1); |
|
|
|
|
fail_unless(errno == EISCONN); |
|
|
|
|
|
|
|
|
|
ret = lwip_close(s); |
|
|
|
|
/* write from server to client */ |
|
|
|
|
ret = write(s3, "test", 4); |
|
|
|
|
fail_unless(ret == 4); |
|
|
|
|
|
|
|
|
|
ret = lwip_shutdown(s3, SHUT_WR); |
|
|
|
|
fail_unless(ret == 0); |
|
|
|
|
|
|
|
|
|
while(tcpip_thread_poll_one()); |
|
|
|
|
|
|
|
|
|
ret = lwip_read(s2, buf, 4); |
|
|
|
|
fail_unless(ret == 4); |
|
|
|
|
|
|
|
|
|
ret = lwip_read(s2, buf, 1); |
|
|
|
|
fail_unless(ret == 0); |
|
|
|
|
|
|
|
|
|
ret = lwip_read(s2, buf, 1); |
|
|
|
|
fail_unless(ret == -1); |
|
|
|
|
|
|
|
|
|
ret = lwip_write(s2, "foo", 3); |
|
|
|
|
fail_unless(ret == 3); |
|
|
|
|
|
|
|
|
|
ret = lwip_close(s2); |
|
|
|
|
fail_unless(ret == 0); |
|
|
|
|
|
|
|
|
|
while(tcpip_thread_poll_one()); |
|
|
|
|
|
|
|
|
|
ret = lwip_read(s3, buf, 3); |
|
|
|
|
fail_unless(ret == 3); |
|
|
|
|
|
|
|
|
|
ret = lwip_read(s3, buf, 1); |
|
|
|
|
fail_unless(ret == 0); |
|
|
|
|
|
|
|
|
|
ret = lwip_read(s3, buf, 1); |
|
|
|
|
fail_unless(ret == -1); |
|
|
|
|
|
|
|
|
|
while(tcpip_thread_poll_one()); |
|
|
|
|
|
|
|
|
|
ret = lwip_close(s); |
|
|
|
|
fail_unless(ret == 0); |
|
|
|
|
ret = lwip_close(s3); |
|
|
|
|
fail_unless(ret == 0); |
|
|
|
|
} |
|
|
|
|
|