← Commit list

3bc93643cb

Jayanth Vennamreddy
Jayanth Vennamreddy
2026-08-21
SUCCESS Duration: 430s

Subject

docs: connection reuse behavior for socket callbacks

Binary

No binary (build failed)

Architecture & Compiler Flags

Architecture: x86_64-linux-gnu Compiler: gcc (Ubuntu 11.4.0-1ubuntu1~22.04.3) 11.4.0

—

Build Log

(log yok)

Commit Diff GitHub →

docs/libcurl/opts/CURLMOPT_SOCKETFUNCTION.md+2 -1
@@ -7,6 +7,7 @@ Source: libcurl
See-also:
- CURLMOPT_SOCKETDATA (3)
- CURLMOPT_TIMERFUNCTION (3)
+ - CURLOPT_CLOSESOCKETFUNCTION (3)
- curl_multi_socket_action (3)
Protocol:
- All
@@ -97,7 +98,7 @@ writable.
## CURL_POLL_REMOVE
-The specified socket/file descriptor is no longer used by libcurl for any
+The specified socket or file descriptor is no longer used by libcurl for any
active transfer. It might soon be added again.
When a socket is given a CURL_POLL_REMOVE value, it might be because libcurl
docs/libcurl/opts/CURLOPT_CLOSESOCKETFUNCTION.md+13 -0
@@ -7,6 +7,7 @@ Source: libcurl
See-also:
- CURLOPT_CLOSESOCKETDATA (3)
- CURLOPT_OPENSOCKETFUNCTION (3)
+ - CURLMOPT_SOCKETFUNCTION (3)
Protocol:
- All
Added-in: 7.21.7
@@ -47,6 +48,18 @@ after the easy handle has been cleaned up. The callback and data is
inherited by a new connection and that connection may live longer
than the transfer itself in the multi/share handle's connection cache.
+# NOTES ON CONNECTION REUSE
+
+The close socket callback is invoked when libcurl closes a socket it owns.
+When using the multi interface, the callback and
+CURLOPT_CLOSESOCKETDATA(3) are copied from the *first* easy handle that
+creates the socket used for a connection; changing this option on a subsequent
+easy handle that reuses the same connection has no effect for that connection.
+The callback is stored with the connection because the connection and its
+associated socket may outlive the easy handle that created it, so that libcurl
+can still invoke it when the socket is closed even after that handle has been
+cleaned up.
+
# DEFAULT
Use the standard socket close function.