mirror of https://github.com/OpenIPC/firmware.git
				
				
				
			
		
			
				
	
	
		
			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/hostapd-2.9/src/wps/wps_upnp_event.c
 | |
| +++ b/hostapd-2.9/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
 | |
| 
 |