blob: abd309296ba73801671b8f6fafa36a8c25563bb9 (
plain) (
blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
|
--- Curl_Multi.xsh.orig 2021-05-12 05:52:08 UTC
+++ Curl_Multi.xsh
@@ -66,9 +66,21 @@ cb_multi_socket( CURL *easy_handle, curl_socket_t s, i
perl_curl_multi_t *multi;
perl_curl_easy_t *easy;
+ /* Check if userptr is NULL */
+ if (!userptr) {
+ return -1;
+ }
multi = (perl_curl_multi_t *) userptr;
- (void) curl_easy_getinfo( easy_handle, CURLINFO_PRIVATE, (void *) &easy );
+ CURLcode res = curl_easy_getinfo( easy_handle, CURLINFO_PRIVATE, (void *) &easy );
+ if (res != CURLE_OK || !easy) {
+ return -1;
+ }
+
+ /* Check if the callback is set */
+ if (multi->cb[CB_MULTI_SOCKET].func == NULL) {
+ return -1;
+ }
/* $multi, $easy, $socket, $what, $socketdata, $userdata */
SV *args[] = {
|