curl/docs/libcurl
Patrick Monnerat b20b364764
mime: use percent-escaping for multipart form field and file names
Until now, form field and file names where escaped using the
backslash-escaping algorithm defined for multipart mails. This commit
replaces this with the percent-escaping method for URLs.

As this may introduce incompatibilities with server-side applications, a
new libcurl option CURLOPT_MIME_OPTIONS with bitmask
CURLMIMEOPT_FORMESCAPE is introduced to revert to legacy use of
backslash-escaping. This is controlled by new cli tool option
--form-escape.

New tests and documentation are provided for this feature.

Reported by: Ryan Sleevi
Fixes #7789
Closes #7805
2021-11-15 10:40:03 +01:00
..
opts mime: use percent-escaping for multipart form field and file names 2021-11-15 10:40:03 +01:00
.gitignore
ABI.md docs: reduce/avoid English contractions 2021-11-07 23:16:27 +01:00
CMakeLists.txt
curl_easy_cleanup.3 curl_easy_cleanup.3: remove from multi handle first 2021-11-10 15:01:36 +01:00
curl_easy_duphandle.3
curl_easy_escape.3 docs: reduce/avoid English contractions 2021-11-07 23:16:27 +01:00
curl_easy_getinfo.3 man pages: fix backslash-n in examples 2021-11-05 08:28:29 +01:00
curl_easy_init.3
curl_easy_option_by_id.3 man pages: fix backslash-n in examples 2021-11-05 08:28:29 +01:00
curl_easy_option_by_name.3 man pages: fix backslash-n in examples 2021-11-05 08:28:29 +01:00
curl_easy_option_next.3 man pages: fix backslash-n in examples 2021-11-05 08:28:29 +01:00
curl_easy_pause.3 docs: reduce/avoid English contractions 2021-11-07 23:16:27 +01:00
curl_easy_perform.3 curl_easy_perform.3: add a para about recv and send data 2021-11-08 16:13:42 +01:00
curl_easy_recv.3 docs: reduce/avoid English contractions 2021-11-07 23:16:27 +01:00
curl_easy_reset.3
curl_easy_send.3 docs: reduce/avoid English contractions 2021-11-07 23:16:27 +01:00
curl_easy_setopt.3 mime: use percent-escaping for multipart form field and file names 2021-11-15 10:40:03 +01:00
curl_easy_strerror.3 man pages: fix backslash-n in examples 2021-11-05 08:28:29 +01:00
curl_easy_unescape.3 docs: reduce/avoid English contractions 2021-11-07 23:16:27 +01:00
curl_easy_upkeep.3
curl_escape.3 docs: reduce/avoid English contractions 2021-11-07 23:16:27 +01:00
curl_formadd.3 docs: reduce/avoid English contractions 2021-11-07 23:16:27 +01:00
curl_formfree.3
curl_formget.3 docs: reduce/avoid English contractions 2021-11-07 23:16:27 +01:00
curl_free.3
curl_getdate.3
curl_getenv.3 docs: reduce/avoid English contractions 2021-11-07 23:16:27 +01:00
curl_global_cleanup.3 docs: reduce/avoid English contractions 2021-11-07 23:16:27 +01:00
curl_global_init_mem.3
curl_global_init.3 docs: reduce/avoid English contractions 2021-11-07 23:16:27 +01:00
curl_global_sslset.3 docs: reduce/avoid English contractions 2021-11-07 23:16:27 +01:00
curl_mime_addpart.3
curl_mime_data_cb.3 docs: reduce/avoid English contractions 2021-11-07 23:16:27 +01:00
curl_mime_data.3 docs: reduce use of "very" 2021-11-01 16:13:12 +01:00
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 man pages: fix backslash-n in examples 2021-11-05 08:28:29 +01:00
curl_multi_add_handle.3 docs: reduce/avoid English contractions 2021-11-07 23:16:27 +01:00
curl_multi_assign.3 docs: reduce/avoid English contractions 2021-11-07 23:16:27 +01:00
curl_multi_cleanup.3
curl_multi_fdset.3 docs: reduce/avoid English contractions 2021-11-07 23:16:27 +01:00
curl_multi_info_read.3 docs: reduce use of "very" 2021-11-01 16:13:12 +01:00
curl_multi_init.3
curl_multi_perform.3 docs: reduce/avoid English contractions 2021-11-07 23:16:27 +01:00
curl_multi_poll.3
curl_multi_remove_handle.3 man pages: fix backslash-n in examples 2021-11-05 08:28:29 +01:00
curl_multi_setopt.3 docs: reduce/avoid English contractions 2021-11-07 23:16:27 +01:00
curl_multi_socket_action.3
curl_multi_socket_all.3
curl_multi_socket.3
curl_multi_strerror.3 man pages: fix backslash-n in examples 2021-11-05 08:28:29 +01:00
curl_multi_timeout.3 docs: reduce/avoid English contractions 2021-11-07 23:16:27 +01:00
curl_multi_wait.3
curl_multi_wakeup.3
curl_share_cleanup.3
curl_share_init.3 man pages: fix backslash-n in examples 2021-11-05 08:28:29 +01:00
curl_share_setopt.3 curl_share_setopt.3: refer to CURLSHOPT_USERDATA(3) properly 2021-11-12 15:27:04 +01:00
curl_share_strerror.3 man pages: fix backslash-n in examples 2021-11-05 08:28:29 +01:00
curl_slist_append.3
curl_slist_free_all.3
curl_strequal.3 docs: reduce/avoid English contractions 2021-11-07 23:16:27 +01:00
curl_strnequal.3
curl_unescape.3 docs: reduce/avoid English contractions 2021-11-07 23:16:27 +01:00
curl_url_cleanup.3
curl_url_dup.3
curl_url_get.3
curl_url_set.3 docs: reduce/avoid English contractions 2021-11-07 23:16:27 +01:00
curl_url_strerror.3 man pages: fix backslash-n in examples 2021-11-05 08:28:29 +01:00
curl_url.3
curl_version_info.3 docs: reduce/avoid English contractions 2021-11-07 23:16:27 +01:00
curl_version.3 man pages: fix backslash-n in examples 2021-11-05 08:28:29 +01:00
libcurl-easy.3 libcurl-easy.3: language polish 2021-11-08 14:43:13 +01:00
libcurl-env.3 docs: reduce/avoid English contractions 2021-11-07 23:16:27 +01:00
libcurl-errors.3 docs: reduce/avoid English contractions 2021-11-07 23:16:27 +01:00
libcurl-multi.3 docs: reduce/avoid English contractions 2021-11-07 23:16:27 +01:00
libcurl-security.3 docs: reduce/avoid English contractions 2021-11-07 23:16:27 +01:00
libcurl-share.3 docs: reduce/avoid English contractions 2021-11-07 23:16:27 +01:00
libcurl-thread.3 docs: reduce/avoid English contractions 2021-11-07 23:16:27 +01:00
libcurl-tutorial.3 docs: reduce/avoid English contractions 2021-11-07 23:16:27 +01:00
libcurl-url.3 docs: reduce/avoid English contractions 2021-11-07 23:16:27 +01:00
libcurl.3 docs: reduce/avoid English contractions 2021-11-07 23:16:27 +01:00
libcurl.m4
Makefile.am
Makefile.inc
mksymbolsmanpage.pl
symbols-in-versions mime: use percent-escaping for multipart form field and file names 2021-11-15 10:40:03 +01:00
symbols.pl