mirror of
https://github.com/curl/curl.git
synced 2025-02-05 14:30:10 +08:00
For compatibility with `fwrite`, the `CURLOPT_WRITEFUNCTION` callback is passed two `size_t` parameters which, when multiplied, designate the number of bytes of data passed in. In practice, CURL always sets the first parameter (`size`) to 1. This practice is also enshrined in documentation and cannot be changed in future. The documentation states that the default callback is `fwrite`, which means `fwrite` must be a suitable function for this purpose. However, the documentation also states that the callback must return the number of *bytes* it successfully handled, whereas ISO C `fwrite` returns the number of items (each of size `size`) which it wrote. The only way these numbers can be equal is if `size` is 1. Since `size` is 1 and can never be changed in future anyway, document that fact explicitly and let users rely on it. Closes #2787 |
||
---|---|---|
.. | ||
opts | ||
.gitignore | ||
ABI | ||
CMakeLists.txt | ||
curl_easy_cleanup.3 | ||
curl_easy_duphandle.3 | ||
curl_easy_escape.3 | ||
curl_easy_getinfo.3 | ||
curl_easy_init.3 | ||
curl_easy_pause.3 | ||
curl_easy_perform.3 | ||
curl_easy_recv.3 | ||
curl_easy_reset.3 | ||
curl_easy_send.3 | ||
curl_easy_setopt.3 | ||
curl_easy_strerror.3 | ||
curl_easy_unescape.3 | ||
curl_escape.3 | ||
curl_formadd.3 | ||
curl_formfree.3 | ||
curl_formget.3 | ||
curl_free.3 | ||
curl_getdate.3 | ||
curl_getenv.3 | ||
curl_global_cleanup.3 | ||
curl_global_init_mem.3 | ||
curl_global_init.3 | ||
curl_global_sslset.3 | ||
curl_mime_addpart.3 | ||
curl_mime_data_cb.3 | ||
curl_mime_data.3 | ||
curl_mime_encoder.3 | ||
curl_mime_filedata.3 | ||
curl_mime_filename.3 | ||
curl_mime_free.3 | ||
curl_mime_headers.3 | ||
curl_mime_init.3 | ||
curl_mime_name.3 | ||
curl_mime_subparts.3 | ||
curl_mime_type.3 | ||
curl_mprintf.3 | ||
curl_multi_add_handle.3 | ||
curl_multi_assign.3 | ||
curl_multi_cleanup.3 | ||
curl_multi_fdset.3 | ||
curl_multi_info_read.3 | ||
curl_multi_init.3 | ||
curl_multi_perform.3 | ||
curl_multi_remove_handle.3 | ||
curl_multi_setopt.3 | ||
curl_multi_socket_action.3 | ||
curl_multi_socket_all.3 | ||
curl_multi_socket.3 | ||
curl_multi_strerror.3 | ||
curl_multi_timeout.3 | ||
curl_multi_wait.3 | ||
curl_share_cleanup.3 | ||
curl_share_init.3 | ||
curl_share_setopt.3 | ||
curl_share_strerror.3 | ||
curl_slist_append.3 | ||
curl_slist_free_all.3 | ||
curl_strequal.3 | ||
curl_strnequal.3 | ||
curl_unescape.3 | ||
curl_version_info.3 | ||
curl_version.3 | ||
getinfo-times | ||
libcurl-easy.3 | ||
libcurl-env.3 | ||
libcurl-errors.3 | ||
libcurl-multi.3 | ||
libcurl-security.3 | ||
libcurl-share.3 | ||
libcurl-thread.3 | ||
libcurl-tutorial.3 | ||
libcurl.3 | ||
libcurl.m4 | ||
Makefile.am | ||
Makefile.inc | ||
mksymbolsmanpage.pl | ||
symbols-in-versions | ||
symbols.pl |