summaryrefslogtreecommitdiffhomepage
path: root/test/test_routing.py
diff options
context:
space:
mode:
authorOisin Canty <o.canty@f5.com>2021-08-05 16:00:01 +0000
committerOisin Canty <o.canty@f5.com>2021-08-05 16:00:01 +0000
commit60cf1399611ae1b2728492c94ff57a4a044774b4 (patch)
tree9ec34d4b8c018fcc46a24a42b8b4fd91618f5f1e /test/test_routing.py
parent44fe31dc6198e7a6fd752d6cdb7e51be73f6d8eb (diff)
downloadunit-60cf1399611ae1b2728492c94ff57a4a044774b4.tar.gz
unit-60cf1399611ae1b2728492c94ff57a4a044774b4.tar.bz2
Router: fixed crash when matching an empty address pattern array.
A crash would occur when the router tried to match an against an empty address pattern array. The following configuration was used to reproduce the issue: { "listeners": { "127.0.0.1:8082": { "pass": "routes" } }, "routes": [ { "match": { "source": [] }, "action": { "return": 200 } } ] }
Diffstat (limited to 'test/test_routing.py')
-rw-r--r--test/test_routing.py4
1 files changed, 4 insertions, 0 deletions
diff --git a/test/test_routing.py b/test/test_routing.py
index eaa0a134..ef5622c2 100644
--- a/test/test_routing.py
+++ b/test/test_routing.py
@@ -1751,6 +1751,10 @@ class TestRouting(TestApplicationProto):
self.route_match_invalid({"source": "*:1-a"})
self.route_match_invalid({"source": "*:65536"})
+ def test_routes_match_source_none(self):
+ self.route_match({"source": []})
+ assert self.get()['status'] == 404, 'source none'
+
def test_routes_match_destination(self):
assert 'success' in self.conf(
{"*:7080": {"pass": "routes"}, "*:7081": {"pass": "routes"}},