diff --git a/tests/hwsim/test_ap_wps.py b/tests/hwsim/test_ap_wps.py index f05aaeaf0..01cb2bab3 100644 --- a/tests/hwsim/test_ap_wps.py +++ b/tests/hwsim/test_ap_wps.py @@ -3947,7 +3947,7 @@ def run_wps_er_proto_test(dev, handler, no_event_url=False, location_url=None): finally: dev.request("WPS_ER_STOP") -def send_wlanevent(url, uuid, data): +def send_wlanevent(url, uuid, data, no_response=False): conn = httplib.HTTPConnection(url.netloc) payload = ''' @@ -3964,6 +3964,12 @@ def send_wlanevent(url, uuid, data): "SEQ": "0", "Content-Length": str(len(payload)) } conn.request("NOTIFY", url.path, payload, headers) + if no_response: + try: + conn.getresponse() + except Exception, e: + pass + return resp = conn.getresponse() if resp.status != 200: raise Exception("Unexpected HTTP response: %d" % resp.status) @@ -4341,6 +4347,13 @@ RGV2aWNlIEEQSQAGADcqAAEg with alloc_fail(dev[0], 1, func): send_wlanevent(url, uuid, m1) + with alloc_fail(dev[0], 1, "wps_er_http_resp_ok"): + send_wlanevent(url, uuid, m1, no_response=True) + + with alloc_fail(dev[0], 1, "wps_er_http_resp_not_found"): + url2 = urlparse.urlparse(wps_event_url.replace('/event/', '/notfound/')) + send_wlanevent(url2, uuid, m1, no_response=True) + def test_ap_wps_er_http_proto_no_event_sub_url(dev, apdev): """WPS ER HTTP protocol testing - no eventSubURL""" class WPSAPHTTPServer_no_event_sub_url(WPSAPHTTPServer):