selftests/tls: add a litmus test for the socket reuse through shutdown
Make sure that shutdown never works, and at the same time document how I tested to came to the conclusion that currently reuse is not possible. Signed-off-by: Jakub Kicinski <jakub.kicinski@netronome.com> Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
parent
5d92e631b8
commit
cd114d2e81
@ -984,6 +984,30 @@ TEST_F(tls, shutdown_unsent)
|
||||
shutdown(self->cfd, SHUT_RDWR);
|
||||
}
|
||||
|
||||
TEST_F(tls, shutdown_reuse)
|
||||
{
|
||||
struct sockaddr_in addr;
|
||||
int ret;
|
||||
|
||||
shutdown(self->fd, SHUT_RDWR);
|
||||
shutdown(self->cfd, SHUT_RDWR);
|
||||
close(self->cfd);
|
||||
|
||||
addr.sin_family = AF_INET;
|
||||
addr.sin_addr.s_addr = htonl(INADDR_ANY);
|
||||
addr.sin_port = 0;
|
||||
|
||||
ret = bind(self->fd, &addr, sizeof(addr));
|
||||
EXPECT_EQ(ret, 0);
|
||||
ret = listen(self->fd, 10);
|
||||
EXPECT_EQ(ret, -1);
|
||||
EXPECT_EQ(errno, EINVAL);
|
||||
|
||||
ret = connect(self->fd, &addr, sizeof(addr));
|
||||
EXPECT_EQ(ret, -1);
|
||||
EXPECT_EQ(errno, EISCONN);
|
||||
}
|
||||
|
||||
TEST(non_established) {
|
||||
struct tls12_crypto_info_aes_gcm_256 tls12;
|
||||
struct sockaddr_in addr;
|
||||
|
Loading…
Reference in New Issue
Block a user