mirror of
https://github.com/curl/curl.git
synced 2026-08-24 15:53:32 +03:00
multi: Improve parameter check for curl_multi_remove_handle
- If an easy handle is owned by a multi different from the one specified then return CURLM_BAD_EASY_HANDLE. Prior to this change I assume user error could cause corruption. Closes https://github.com/curl/curl/pull/5116
This commit is contained in:
parent
7284061361
commit
a268ad5d7e
2 changed files with 6 additions and 2 deletions
|
|
@ -700,6 +700,10 @@ CURLMcode curl_multi_remove_handle(struct Curl_multi *multi,
|
|||
if(!data->multi)
|
||||
return CURLM_OK; /* it is already removed so let's say it is fine! */
|
||||
|
||||
/* Prevent users from trying to remove an easy handle from the wrong multi */
|
||||
if(data->multi != multi)
|
||||
return CURLM_BAD_EASY_HANDLE;
|
||||
|
||||
if(multi->in_callback)
|
||||
return CURLM_RECURSIVE_API_CALL;
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue