]> git.ipfire.org Git - thirdparty/curl.git/commitdiff
connect: make Curl_getconnectinfo work with conn cache from share handle
authorFrank Meier <frank.meier@ergon.ch>
Wed, 23 Feb 2022 14:35:06 +0000 (15:35 +0100)
committerDaniel Stenberg <daniel@haxx.se>
Tue, 8 Mar 2022 08:22:09 +0000 (09:22 +0100)
Closes #8524

lib/connect.c

index c2241b48a6db1d212480b5e48a81cdac400efc55..e0b740147157cd7a04758344da10ad7834f38f95 100644 (file)
@@ -74,6 +74,7 @@
 #include "warnless.h"
 #include "conncache.h"
 #include "multihandle.h"
+#include "share.h"
 #include "version_win32.h"
 #include "quic.h"
 #include "socks.h"
@@ -1486,7 +1487,11 @@ curl_socket_t Curl_getconnectinfo(struct Curl_easy *data,
     find.id_tofind = data->state.lastconnect_id;
     find.found = NULL;
 
-    Curl_conncache_foreach(data, data->multi_easy?
+    Curl_conncache_foreach(data,
+                           data->share && (data->share->specifier
+                           & (1<< CURL_LOCK_DATA_CONNECT))?
+                           &data->share->conn_cache:
+                           data->multi_easy?
                            &data->multi_easy->conn_cache:
                            &data->multi->conn_cache, &find, conn_is_conn);