]> git.ipfire.org Git - thirdparty/curl.git/commitdiff
CURLOPT_HEADERDATA.3: warn DLL users must set write function
authorJay Satiro <raysatiro@yahoo.com>
Thu, 5 Jan 2023 07:14:53 +0000 (02:14 -0500)
committerJay Satiro <raysatiro@yahoo.com>
Fri, 6 Jan 2023 08:45:17 +0000 (03:45 -0500)
- Warn that in Windows if libcurl is running from a DLL and if
  CURLOPT_HEADERDATA is set then CURLOPT_WRITEFUNCTION or
  CURLOPT_HEADERFUNCTION must be set as well, otherwise the user may
  experience crashes.

We already have a similar warning in CURLOPT_WRITEDATA. Basically, in
Windows libcurl could crash writing a FILE pointer that was created by
a different C runtime. In Windows each DLL that is part of a program may
or may not have its own C runtime.

Ref: https://github.com/curl/curl/issues/10231

Closes https://github.com/curl/curl/pull/10233

docs/libcurl/opts/CURLOPT_HEADERDATA.3

index a6e7c59819b66d07a1e236d53177dcacafb70593..7311f2dce7c2961a1f5fd6833f2b5cf6e96b0a38 100644 (file)
@@ -40,6 +40,10 @@ If \fICURLOPT_WRITEFUNCTION(3)\fP or \fICURLOPT_HEADERFUNCTION(3)\fP is used,
 
 If neither of those options are set, \fIpointer\fP must be a valid FILE * and
 it will be used by a plain fwrite() to write headers to.
+
+If you are using libcurl as a win32 DLL, you \fBMUST\fP use a
+\fICURLOPT_WRITEFUNCTION(3)\fP or \fICURLOPT_HEADERFUNCTION(3)\fP if you set
+this option or you will experience crashes.
 .SH DEFAULT
 NULL
 .SH PROTOCOLS