From 7791b1629b16cac4a49d677cbf7c778f4fbaaf0e Mon Sep 17 00:00:00 2001 From: Daniel Stenberg Date: Mon, 29 Jun 2026 17:41:34 +0200 Subject: [PATCH] CURLSHOPT_(UN)SHARE.md: do not modify shares while in use Reported-by: smaeljaish on hackerone Closes #22217 --- docs/libcurl/opts/CURLSHOPT_SHARE.md | 3 +++ docs/libcurl/opts/CURLSHOPT_UNSHARE.md | 3 +++ 2 files changed, 6 insertions(+) diff --git a/docs/libcurl/opts/CURLSHOPT_SHARE.md b/docs/libcurl/opts/CURLSHOPT_SHARE.md index 60e1405bb2..69b59779ad 100644 --- a/docs/libcurl/opts/CURLSHOPT_SHARE.md +++ b/docs/libcurl/opts/CURLSHOPT_SHARE.md @@ -35,6 +35,9 @@ CURLSHOPT_SHARE(3) multiple times with different data arguments to have the share object share multiple types of data. Unset a type again by setting CURLSHOPT_UNSHARE(3). +Do not add types to a shared object that is being in use. Add them only +between transfers. + If any of the data is to be shared in multiple threads then mutex callbacks must be set as well. See CURLSHOPT_LOCKFUNC(3) and CURLSHOPT_UNLOCKFUNC(3). diff --git a/docs/libcurl/opts/CURLSHOPT_UNSHARE.md b/docs/libcurl/opts/CURLSHOPT_UNSHARE.md index 45ee27dec0..5ad0c60c7b 100644 --- a/docs/libcurl/opts/CURLSHOPT_UNSHARE.md +++ b/docs/libcurl/opts/CURLSHOPT_UNSHARE.md @@ -36,6 +36,9 @@ below. You can set CURLSHOPT_UNSHARE(3) multiple times with different data arguments to remove multiple types from the shared object. Add data to share again with CURLSHOPT_SHARE(3). +Do not remove types from a shared object that is being in use. Unshare them +only between transfers. + ## CURL_LOCK_DATA_COOKIE Cookie data is no longer shared across the easy handles using this shared