public inbox for iwd@lists.linux.dev
 help / color / mirror / Atom feed
* [PATCH 1/2] scan: check scan request in get_survey_done before deref
@ 2024-09-05 13:43 James Prestwood
  2024-09-05 13:43 ` [PATCH 2/2] scan: check pending requests after regdom update James Prestwood
                   ` (2 more replies)
  0 siblings, 3 replies; 7+ messages in thread
From: James Prestwood @ 2024-09-05 13:43 UTC (permalink / raw)
  To: iwd; +Cc: James Prestwood, Daniel Bond

Due to the possibility of external scans the scan request pointer
could be NULL. Prior to surveys IWD would still get the results in
order for periodic scans to utilize them. This behavior can be
retained by checking both if we don't have a request or if the
request was canceled. This check is identical to the one in
get_scan_done.

This fixes a crash when checking if the NULL scan request has been
canceled:

0x00005ffa6a0376de in get_survey_done (user_data=0x5ffa783a3f90) at src/scan.c:2059
0x0000749646a29bbd in ?? () from /usr/lib/libell.so.0
0x0000749646a243cb in ?? () from /usr/lib/libell.so.0
0x0000749646a24655 in l_main_iterate () from /usr/lib/libell.so.0
0x0000749646a24ace in l_main_run () from /usr/lib/libell.so.0
0x0000749646a263a4 in l_main_run_with_signal () from /usr/lib/libell.so.0
0x00005ffa6a00d642 in main (argc=<optimized out>, argv=<optimized out>) at src/main.c:614

Reported-by: Daniel Bond <danielbondno@gmail.com>
---
 src/scan.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/src/scan.c b/src/scan.c
index debdeb1f..205365cd 100644
--- a/src/scan.c
+++ b/src/scan.c
@@ -2056,7 +2056,7 @@ static void get_survey_done(void *user_data)
 
 	sc->get_survey_cmd_id = 0;
 
-	if (!results->sr->canceled)
+	if (!results->sr || !results->sr->canceled)
 		get_results(results);
 	else
 		get_scan_done(user_data);
-- 
2.34.1


^ permalink raw reply related	[flat|nested] 7+ messages in thread

end of thread, other threads:[~2024-09-05 15:09 UTC | newest]

Thread overview: 7+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2024-09-05 13:43 [PATCH 1/2] scan: check scan request in get_survey_done before deref James Prestwood
2024-09-05 13:43 ` [PATCH 2/2] scan: check pending requests after regdom update James Prestwood
2024-09-05 13:56 ` [PATCH 1/2] scan: check scan request in get_survey_done before deref James Prestwood
2024-09-05 14:37 ` Denis Kenzior
2024-09-05 14:44   ` James Prestwood
2024-09-05 14:57     ` Denis Kenzior
2024-09-05 15:09       ` James Prestwood

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox