From 48f61e781a01e6a8dbc4a347e280644b1c68ab6a Mon Sep 17 00:00:00 2001 From: Daniel Stenberg Date: Wed, 11 Sep 2024 14:12:41 +0200 Subject: [PATCH] multi: check that the multi handle is valid in curl_multi_assign By requiring that the multi handle is fine, it can detect bad usage better and by that avoid crashes. Like in the #14860 case, which is an application calling curl_multi_assign() with a NULL pointer multi handle. Reported-by: Carlo Cabrera Fixes #14860 Closes #14862 Conflict:NA Reference:https://github.com/curl/curl/commit/48f61e781a01e6a8dbc4a347e280644b1c68ab6a --- lib/multi.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/lib/multi.c b/lib/multi.c index 062d09cc0..78e5c0a1e 100644 --- a/lib/multi.c +++ b/lib/multi.c @@ -3688,6 +3688,8 @@ CURLMcode curl_multi_assign(struct Curl_multi *multi, curl_socket_t s, void *hashp) { struct Curl_sh_entry *there = NULL; + if(!GOOD_MULTI_HANDLE(multi)) + return CURLM_BAD_HANDLE; there = sh_getentry(&multi->sockhash, s); -- 2.33.0