48 lines
1.5 KiB
Diff
48 lines
1.5 KiB
Diff
|
From 85aac526af8612c21b3117dadc8ef5944985b476 Mon Sep 17 00:00:00 2001
|
||
|
From: Jouni Malinen <jouni@codeaurora.org>
|
||
|
Date: Thu, 4 Jun 2020 21:24:04 +0300
|
||
|
Subject: [PATCH 3/3] WPS UPnP: Handle HTTP initiation failures for events more
|
||
|
properly
|
||
|
|
||
|
While it is appropriate to try to retransmit the event to another
|
||
|
callback URL on a failure to initiate the HTTP client connection, there
|
||
|
is no point in trying the exact same operation multiple times in a row.
|
||
|
Replve the event_retry() calls with event_addr_failure() for these cases
|
||
|
to avoid busy loops trying to repeat the same failing operation.
|
||
|
|
||
|
These potential busy loops would go through eloop callbacks, so the
|
||
|
process is not completely stuck on handling them, but unnecessary CPU
|
||
|
would be used to process the continues retries that will keep failing
|
||
|
for the same reason.
|
||
|
|
||
|
Signed-off-by: Jouni Malinen <jouni@codeaurora.org>
|
||
|
---
|
||
|
src/wps/wps_upnp_event.c | 4 ++--
|
||
|
1 file changed, 2 insertions(+), 2 deletions(-)
|
||
|
|
||
|
diff --git a/src/wps/wps_upnp_event.c b/src/wps/wps_upnp_event.c
|
||
|
index 08a23612f338..c0d9e41d9a38 100644
|
||
|
--- a/src/wps/wps_upnp_event.c
|
||
|
+++ b/src/wps/wps_upnp_event.c
|
||
|
@@ -294,7 +294,7 @@ static int event_send_start(struct subscription *s)
|
||
|
|
||
|
buf = event_build_message(e);
|
||
|
if (buf == NULL) {
|
||
|
- event_retry(e, 0);
|
||
|
+ event_addr_failure(e);
|
||
|
return -1;
|
||
|
}
|
||
|
|
||
|
@@ -302,7 +302,7 @@ static int event_send_start(struct subscription *s)
|
||
|
event_http_cb, e);
|
||
|
if (e->http_event == NULL) {
|
||
|
wpabuf_free(buf);
|
||
|
- event_retry(e, 0);
|
||
|
+ event_addr_failure(e);
|
||
|
return -1;
|
||
|
}
|
||
|
|
||
|
--
|
||
|
2.20.1
|
||
|
|