summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLorenzo Colitti <lorenzo@google.com>2016-02-17 00:42:58 +0900
committerLorenzo Colitti <lorenzo@google.com>2016-02-17 01:08:39 +0900
commit574fa73aa3d947b87a20c06cb39cd57ac01fe08f (patch)
treed7098c81d7631c6ddb9d42f1dd2c46bd9bab0001
parentb1180e2c76bed73f2ea2e7fbd3c02adc7eea9bcf (diff)
downloadextras-574fa73aa3d947b87a20c06cb39cd57ac01fe08f.tar.gz
Rename DisableLinger to DisableFinWait, and add an EnableFinWait.
Change-Id: I226a41e7eed6cc5bda04f1fb3a0f1889a10408c0
-rwxr-xr-xtests/net_test/net_test.py11
-rw-r--r--tests/net_test/tcp_test.py2
2 files changed, 9 insertions, 4 deletions
diff --git a/tests/net_test/net_test.py b/tests/net_test/net_test.py
index d7ea0130..71429605 100755
--- a/tests/net_test/net_test.py
+++ b/tests/net_test/net_test.py
@@ -153,7 +153,12 @@ def RawGRESocket(family):
return s
-def DisableLinger(sock):
+def EnableFinWait(sock):
+ # Disabling SO_LINGER causes sockets to go into FIN_WAIT on close().
+ sock.setsockopt(SOL_SOCKET, SO_LINGER, struct.pack("ii", 0, 0))
+
+def DisableFinWait(sock):
+ # Enabling SO_LINGER with a timeout of zero causes close() to send RST.
sock.setsockopt(SOL_SOCKET, SO_LINGER, struct.pack("ii", 1, 0))
@@ -165,8 +170,8 @@ def CreateSocketPair(family, socktype, addr):
listensock.listen(1)
clientsock.connect(addr)
acceptedsock, _ = listensock.accept()
- DisableLinger(clientsock)
- DisableLinger(acceptedsock)
+ DisableFinWait(clientsock)
+ DisableFinWait(acceptedsock)
listensock.close()
return clientsock, acceptedsock
diff --git a/tests/net_test/tcp_test.py b/tests/net_test/tcp_test.py
index 81a6884e..5a8dde35 100644
--- a/tests/net_test/tcp_test.py
+++ b/tests/net_test/tcp_test.py
@@ -98,7 +98,7 @@ class TcpBaseTest(multinetwork_base.MultiNetworkBaseTest):
return
self.accepted, _ = self.s.accept()
- net_test.DisableLinger(self.accepted)
+ net_test.DisableFinWait(self.accepted)
if end_state == TCP_ESTABLISHED:
return