aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorVsevolod Stakhov <vsevolod@highsecure.ru>2019-05-31 15:19:00 +0100
committerVsevolod Stakhov <vsevolod@highsecure.ru>2019-05-31 15:19:00 +0100
commitc28363722ff0acbd650d188cecee1730301d7c10 (patch)
tree3d8048da591271dc07da8c463baa9ab8a3e71e4b
parentff83de0104b73b4ac8350ad056c6c853cfd0cff4 (diff)
downloadrspamd-c28363722ff0acbd650d188cecee1730301d7c10.tar.gz
rspamd-c28363722ff0acbd650d188cecee1730301d7c10.zip
[Test] Fix sockets reusing
-rwxr-xr-xtest/functional/util/dummy_http.py10
-rw-r--r--test/functional/util/dummy_killer.py4
-rwxr-xr-xtest/functional/util/dummy_udp.py1
3 files changed, 8 insertions, 7 deletions
diff --git a/test/functional/util/dummy_http.py b/test/functional/util/dummy_http.py
index dc4cee354..614fced29 100755
--- a/test/functional/util/dummy_http.py
+++ b/test/functional/util/dummy_http.py
@@ -30,7 +30,7 @@ class MyHandler(BaseHTTPServer.BaseHTTPRequestHandler):
def do_GET(self):
response = "hello world"
-
+
"""Respond to a GET request."""
if self.path == "/empty":
self.finish()
@@ -55,7 +55,7 @@ class MyHandler(BaseHTTPServer.BaseHTTPRequestHandler):
conntype = self.headers.get('Connection', "").lower()
if conntype != 'keep-alive':
self.close_connection = True
-
+
self.log_message("ka:'%s', pv:%s[%s]" % (str(conntype == 'keep-alive'), str(self.protocol_version >= "HTTP/1.1"), self.protocol_version))
@@ -73,7 +73,7 @@ class MyHandler(BaseHTTPServer.BaseHTTPRequestHandler):
self.send_response(403)
else:
self.send_response(200)
-
+
if self.path == "/content-length":
self.send_header("Content-Length", str(len(response)))
@@ -85,10 +85,10 @@ class MyHandler(BaseHTTPServer.BaseHTTPRequestHandler):
class ThreadingSimpleServer(SocketServer.ThreadingMixIn,
BaseHTTPServer.HTTPServer):
def __init__(self):
- BaseHTTPServer.HTTPServer.__init__(self, (HOST_NAME, PORT), MyHandler)
self.allow_reuse_address = True
self.timeout = 1
-
+ BaseHTTPServer.HTTPServer.__init__(self, (HOST_NAME, PORT), MyHandler)
+
def run(self):
dummy_killer.write_pid(PID)
try:
diff --git a/test/functional/util/dummy_killer.py b/test/functional/util/dummy_killer.py
index 723e6ef4a..85b3d01ba 100644
--- a/test/functional/util/dummy_killer.py
+++ b/test/functional/util/dummy_killer.py
@@ -5,7 +5,7 @@ import atexit
def setup_killer(server, method = None):
def default_method():
server.server_close()
-
+
if method is None:
method = default_method
@@ -14,7 +14,7 @@ def setup_killer(server, method = None):
signal.signal(signal.SIGALRM, alarm_handler)
signal.signal(signal.SIGTERM, alarm_handler)
- signal.alarm(10)
+ signal.alarm(30)
def write_pid(path):
diff --git a/test/functional/util/dummy_udp.py b/test/functional/util/dummy_udp.py
index 4d904e3b1..02ee6dce8 100755
--- a/test/functional/util/dummy_udp.py
+++ b/test/functional/util/dummy_udp.py
@@ -15,6 +15,7 @@ if __name__ == "__main__":
port = 5005
sock = socket.socket(socket.AF_INET, # Internet
socket.SOCK_DGRAM) # UDP
+ sock.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEADDR, 1)
sock.bind((UDP_IP, port))
dummy_killer.write_pid(PID)