curl/docs/libcurl
Daniel Stenberg a6af50c484
multi: forbid curl_easy_pause from within multi socket callback
- there is a risk for a nasty recursive situation

- we avoid certain risks that the pause call changes things so that when
  returning from the callback, the state of some internals is undefined
  and we need to reload which is easy to miss

- we can't think of legitiate use cases for doing this. This is
  basically just the new favorite point for AI and security researchers
  to find hypothetical problems

Closes #22179
2026-06-26 13:43:48 +02:00
..
opts tidy-up: docs, comments, typos, whitespace 2026-06-26 11:36:09 +02:00
.gitignore gitignore: the generated libcurl-symbols.md 2024-01-25 16:34:06 +01:00
ABI.md stop using the word 'just' 2026-03-03 15:30:22 +01:00
CMakeLists.txt cmake: fix building docs when the base directory contains .3 2025-09-16 12:37:11 +02:00
curl_easy_cleanup.md docs: compare result against literal CURLE_OK (where missing) 2026-02-07 19:40:45 +01:00
curl_easy_duphandle.md hsts: duplicate live HSTS data in curl_easy_duphandle 2026-06-09 16:51:47 +02:00
curl_easy_escape.md stop using the word 'just' 2026-03-03 15:30:22 +01:00
curl_easy_getinfo.md progress: count amount of data "delivered" to application 2026-03-21 23:21:55 +01:00
curl_easy_header.md clang-tidy: enable more checks, fix fallouts 2026-04-14 02:20:16 +02:00
curl_easy_init.md docs: rename CURLcode variables to 'result' 2025-12-17 08:55:12 +01:00
curl_easy_nextheader.md curl_easy_nextheader.md: a new transfer invalidates 'prev' 2026-01-13 14:11:15 +01:00
curl_easy_option_by_id.md docs: minor edits to please the new spellchecker regime 2025-02-27 13:15:21 +01:00
curl_easy_option_by_name.md docs: minor edits to please the new spellchecker regime 2025-02-27 13:15:21 +01:00
curl_easy_option_next.md curldown: fixups 2024-07-19 17:03:25 +02:00
curl_easy_pause.md multi: forbid curl_easy_pause from within multi socket callback 2026-06-26 13:43:48 +02:00
curl_easy_perform.md docs: rename CURLcode variables to 'result' 2025-12-17 08:55:12 +01:00
curl_easy_recv.md docs: rename CURLcode variables to 'result' 2025-12-17 08:55:12 +01:00
curl_easy_reset.md stop using the word 'just' 2026-03-03 15:30:22 +01:00
curl_easy_send.md docs: rename CURLcode variables to 'result' 2025-12-17 08:55:12 +01:00
curl_easy_setopt.md http2: remove stream dependency tracking 2026-05-22 09:44:08 +02:00
curl_easy_ssls_export.md tidy-up: miscellaneous 2026-05-16 01:56:17 +02:00
curl_easy_ssls_import.md docs: rename CURLcode variables to 'result' 2025-12-17 08:55:12 +01:00
curl_easy_strerror.md docs: rename CURLcode variables to 'result' 2025-12-17 08:55:12 +01:00
curl_easy_unescape.md doc: some returned in-memory data may not be altered 2025-11-25 11:05:27 +01:00
curl_easy_upkeep.md mqtt: send ping at upkeep interval 2025-04-16 09:36:19 +02:00
curl_escape.md doc: some returned in-memory data may not be altered 2025-11-25 11:05:27 +01:00
curl_formadd.md tidy-up: docs, comments, typos, whitespace 2026-06-26 11:36:09 +02:00
curl_formfree.md GHA: silence proselint warnings and an error 2024-10-15 16:44:17 +02:00
curl_formget.md tidy-up: miscellaneous 2026-01-15 13:06:13 +01:00
curl_free.md GHA: silence proselint warnings and an error 2024-10-15 16:44:17 +02:00
curl_getdate.md curldown: fixups 2024-07-19 17:03:25 +02:00
curl_getenv.md doc: some returned in-memory data may not be altered 2025-11-25 11:05:27 +01:00
curl_global_cleanup.md stop using the word 'just' 2026-03-03 15:30:22 +01:00
curl_global_init.md docs: handle error in curl_global_init* examples 2026-03-09 13:01:22 +01:00
curl_global_init_mem.md docs: fixup wording nits 2026-03-09 22:47:07 +01:00
curl_global_sslset.md tidy-up: miscellaneous 2026-06-05 16:57:38 +02:00
curl_global_trace.md lib: make resolving HTTPS DNS records reliable: 2026-04-01 15:36:31 +02:00
curl_mime_addpart.md curldown: fixups 2024-07-19 17:03:25 +02:00
curl_mime_data.md tidy-up: miscellaneous 2026-02-25 14:44:56 +01:00
curl_mime_data_cb.md docs: enable more compiler warnings for C snippets, fix 3 finds 2026-03-19 14:21:53 +01:00
curl_mime_encoder.md docs/libcurl: return value overhall 2025-01-02 16:58:05 +01:00
curl_mime_filedata.md docs/libcurl: return value overhall 2025-01-02 16:58:05 +01:00
curl_mime_filename.md badwords: fix typos found 2026-01-14 03:11:33 +01:00
curl_mime_free.md curldown: fixups 2024-07-19 17:03:25 +02:00
curl_mime_headers.md docs/libcurl: return value overhall 2025-01-02 16:58:05 +01:00
curl_mime_init.md curldown: fixups 2024-07-19 17:03:25 +02:00
curl_mime_name.md docs/libcurl: return value overhall 2025-01-02 16:58:05 +01:00
curl_mime_subparts.md docs/libcurl: return value overhall 2025-01-02 16:58:05 +01:00
curl_mime_type.md docs/libcurl: return value overhall 2025-01-02 16:58:05 +01:00
curl_mprintf.md tidy-up: miscellaneous 2026-06-09 11:07:55 +02:00
curl_multi_add_handle.md docs/libcurl: return value overhall 2025-01-02 16:58:05 +01:00
curl_multi_assign.md curl_multi_assign.md: clarify lifetime 2026-06-18 17:47:33 +02:00
curl_multi_cleanup.md docs/libcurl: return value overhall 2025-01-02 16:58:05 +01:00
curl_multi_fdset.md docs: use mresult as variable name for CURLMcode 2025-12-17 08:55:12 +01:00
curl_multi_get_handles.md doc: some returned in-memory data may not be altered 2025-11-25 11:05:27 +01:00
curl_multi_get_offt.md curl_multi_get_offt: language fix 2025-08-05 11:48:31 +02:00
curl_multi_info_read.md stop using the word 'just' 2026-03-03 15:30:22 +01:00
curl_multi_init.md docs/libcurl: expand multi documentation 2024-10-01 15:17:17 +02:00
curl_multi_notify_disable.md multi: use CURLMNOTIFY_ as notification id prefix 2025-10-07 17:18:05 +02:00
curl_multi_notify_enable.md multi: use CURLMNOTIFY_ as notification id prefix 2025-10-07 17:18:05 +02:00
curl_multi_perform.md stop using the word 'just' 2026-03-03 15:30:22 +01:00
curl_multi_poll.md docs: use mresult as variable name for CURLMcode 2025-12-17 08:55:12 +01:00
curl_multi_remove_handle.md stop using the word 'just' 2026-03-03 15:30:22 +01:00
curl_multi_setopt.md async-thrdd: use thread queue for resolving 2026-03-25 12:14:21 +01:00
curl_multi_socket.md docs/libcurl: make examples build with picky compiler options 2025-04-11 15:23:51 +02:00
curl_multi_socket_action.md tidy-up: miscellaneous 2026-05-20 00:50:43 +02:00
curl_multi_socket_all.md stop using the word 'just' 2026-03-03 15:30:22 +01:00
curl_multi_strerror.md docs: use mresult as variable name for CURLMcode 2025-12-17 08:55:12 +01:00
curl_multi_timeout.md clang-tidy: enable more checks, fix fallouts 2026-04-14 02:20:16 +02:00
curl_multi_wait.md docs: use mresult as variable name for CURLMcode 2025-12-17 08:55:12 +01:00
curl_multi_waitfds.md stop using the word 'just' 2026-03-03 15:30:22 +01:00
curl_multi_wakeup.md docs: use mresult as variable name for CURLMcode 2025-12-17 08:55:12 +01:00
curl_pushheader_byname.md doc: some returned in-memory data may not be altered 2025-11-25 11:05:27 +01:00
curl_pushheader_bynum.md tidy-up: miscellaneous 2026-03-09 11:35:19 +01:00
curl_share_cleanup.md share: concurrency handling, easy updates 2026-03-21 14:42:49 +01:00
curl_share_init.md curldown: fixups 2024-07-19 17:03:25 +02:00
curl_share_setopt.md curldown: fixups 2024-07-19 17:03:25 +02:00
curl_share_strerror.md curldown: fixups 2024-07-19 17:03:25 +02:00
curl_slist_append.md doc: some returned in-memory data may not be altered 2025-11-25 11:05:27 +01:00
curl_slist_free_all.md docs/libcurl: make examples build with picky compiler options 2025-04-11 15:23:51 +02:00
curl_strequal.md curldown: fixups 2024-07-19 17:03:25 +02:00
curl_strnequal.md curldown: fixups 2024-07-19 17:03:25 +02:00
curl_unescape.md doc: some returned in-memory data may not be altered 2025-11-25 11:05:27 +01:00
curl_url.md doc: some returned in-memory data may not be altered 2025-11-25 11:05:27 +01:00
curl_url_cleanup.md GHA: silence proselint warnings and an error 2024-10-15 16:44:17 +02:00
curl_url_dup.md docs/libcurl: return value overhall 2025-01-02 16:58:05 +01:00
curl_url_get.md stop using the word 'just' 2026-03-03 15:30:22 +01:00
curl_url_set.md urlapi: allow more path characters "raw" when asked to URL encode 2025-08-01 23:22:32 +02:00
curl_url_strerror.md curldown: fixups 2024-07-19 17:03:25 +02:00
curl_version.md curl_version_info.md: clarify ssl_version for MultiSSL 2025-05-11 12:23:36 -04:00
curl_version_info.md h3-proxy: rename feature 'Proxy/PROXY-HTTP3' to 'proxy-HTTP3' 2026-05-28 12:52:50 +02:00
curl_ws_meta.md docs/libcurl: fix C formatting nits 2025-12-04 22:49:03 +01:00
curl_ws_recv.md docs: enable more compiler warnings for C snippets, fix 3 finds 2026-03-19 14:21:53 +01:00
curl_ws_send.md docs: rename CURLcode variables to 'result' 2025-12-17 08:55:12 +01:00
curl_ws_start_frame.md docs: avoid starting sentences with However, 2026-03-07 23:49:11 +01:00
libcurl-easy.md libcurl-easy.md: minor clarifications 2026-05-04 11:22:05 +02:00
libcurl-env-dbg.md url: connection reuse fixes for starttls 2026-05-31 23:29:15 +02:00
libcurl-env.md _ENVIRONMENT.md. Windows does case insensitive env variables 2026-06-08 13:29:47 +02:00
libcurl-errors.md docs: tidy-up scheme references 2026-05-19 16:55:45 +02:00
libcurl-multi.md docs: tidy-up scheme references 2026-05-19 16:55:45 +02:00
libcurl-security.md docs: tidy-up scheme references 2026-05-19 16:55:45 +02:00
libcurl-share.md GHA: silence proselint warnings and an error 2024-10-15 16:44:17 +02:00
libcurl-thread.md tidy-up: miscellaneous 2026-05-16 01:56:17 +02:00
libcurl-tutorial.md tidy-up: make 'CA' uppercase, where missing 2026-06-22 21:04:45 +02:00
libcurl-url.md stop using the word 'just' 2026-03-03 15:30:22 +01:00
libcurl-ws.md docs: tidy-up scheme references 2026-05-19 16:55:45 +02:00
libcurl.m4 configure: tidy up comments 2026-04-10 23:19:41 +02:00
libcurl.md tidy-up: miscellaneous 2026-05-16 01:56:17 +02:00
Makefile.am tests: always make bundles, adapt build and tests 2025-06-14 21:08:23 +02:00
Makefile.inc tidy-up: miscellaneous 2026-01-15 13:06:13 +01:00
mksymbolsmanpage.pl tidy-up: add spaces around equal operators where missing 2026-06-11 19:52:01 +02:00
symbols-in-versions HTTP/3: add proxy CONNECT and MASQUE CONNECT-UDP support (ngtcp2 QUIC) 2026-05-27 08:49:53 +02:00
symbols.pl tidy-up: add spaces around equal operators where missing 2026-06-11 19:52:01 +02:00