tests: retry connect if it fails with EINTR

test/syscalls/linux/proc_net_tcp.cc:252: Failure
 Value of: connect(client->get(), &addr, addrlen)
 Expected: not -1 (success)
   Actual: -1 (of type int), with errno PosixError(errno=4 Interrupted system call)

PiperOrigin-RevId: 264743815
This commit is contained in:
Andrei Vagin 2019-08-21 19:05:56 -07:00 committed by gVisor bot
parent 573e6e4bba
commit 5fd63d1c7f
1 changed files with 2 additions and 1 deletions

View File

@ -249,7 +249,8 @@ TEST(ProcNetTCP, State) {
std::unique_ptr<FileDescriptor> client =
ASSERT_NO_ERRNO_AND_VALUE(IPv4TCPUnboundSocket(0).Create());
ASSERT_THAT(connect(client->get(), &addr, addrlen), SyscallSucceeds());
ASSERT_THAT(RetryEINTR(connect)(client->get(), &addr, addrlen),
SyscallSucceeds());
entries = ASSERT_NO_ERRNO_AND_VALUE(ProcNetTCPEntries());
ASSERT_TRUE(FindByLocalAddr(entries, &listen_entry, &addr));
EXPECT_EQ(listen_entry.state, TCP_LISTEN);