From e9e536619333b0ebd1b096be5c27a39c78e812c5 Mon Sep 17 00:00:00 2001 From: Michael Kaufmann Date: Thu, 22 Sep 2016 22:15:13 +0200 Subject: New libcurl option to keep sending on error Add the new option CURLOPT_KEEP_SENDING_ON_ERROR to control whether sending the request body shall be completed when the server responds early with an error status code. This is suitable for manual NTLM authentication. Reviewed-by: Jay Satiro Closes https://github.com/curl/curl/pull/904 --- docs/libcurl/opts/CURLOPT_FAILONERROR.3 | 2 +- docs/libcurl/opts/CURLOPT_KEEP_SENDING_ON_ERROR.3 | 52 +++++++++++++++++++++++ docs/libcurl/opts/Makefile.am | 3 ++ 3 files changed, 56 insertions(+), 1 deletion(-) create mode 100644 docs/libcurl/opts/CURLOPT_KEEP_SENDING_ON_ERROR.3 (limited to 'docs/libcurl/opts') diff --git a/docs/libcurl/opts/CURLOPT_FAILONERROR.3 b/docs/libcurl/opts/CURLOPT_FAILONERROR.3 index 79474cefd..93d8ba6ed 100644 --- a/docs/libcurl/opts/CURLOPT_FAILONERROR.3 +++ b/docs/libcurl/opts/CURLOPT_FAILONERROR.3 @@ -53,4 +53,4 @@ Along with HTTP .SH RETURN VALUE Returns CURLE_OK if HTTP is enabled, and CURLE_UNKNOWN_OPTION if not. .SH "SEE ALSO" -.BR CURLOPT_HTTP200ALIASES "(3), " +.BR CURLOPT_HTTP200ALIASES "(3), " CURLOPT_KEEP_SENDING_ON_ERROR "(3), " diff --git a/docs/libcurl/opts/CURLOPT_KEEP_SENDING_ON_ERROR.3 b/docs/libcurl/opts/CURLOPT_KEEP_SENDING_ON_ERROR.3 new file mode 100644 index 000000000..4ddd8687c --- /dev/null +++ b/docs/libcurl/opts/CURLOPT_KEEP_SENDING_ON_ERROR.3 @@ -0,0 +1,52 @@ +.\" ************************************************************************** +.\" * _ _ ____ _ +.\" * Project ___| | | | _ \| | +.\" * / __| | | | |_) | | +.\" * | (__| |_| | _ <| |___ +.\" * \___|\___/|_| \_\_____| +.\" * +.\" * Copyright (C) 1998 - 2016, Daniel Stenberg, , et al. +.\" * +.\" * This software is licensed as described in the file COPYING, which +.\" * you should have received as part of this distribution. The terms +.\" * are also available at https://curl.haxx.se/docs/copyright.html. +.\" * +.\" * You may opt to use, copy, modify, merge, publish, distribute and/or sell +.\" * copies of the Software, and permit persons to whom the Software is +.\" * furnished to do so, under the terms of the COPYING file. +.\" * +.\" * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY +.\" * KIND, either express or implied. +.\" * +.\" ************************************************************************** +.\" +.TH CURLOPT_KEEP_SENDING_ON_ERROR 3 "22 Sep 2016" "libcurl 7.51.0" "curl_easy_setopt options" +.SH NAME +CURLOPT_KEEP_SENDING_ON_ERROR \- keep sending on early HTTP response >= 300 +.SH SYNOPSIS +#include + +CURLcode curl_easy_setopt(CURL *handle, CURLOPT_KEEP_SENDING_ON_ERROR, long keep_sending); +.SH DESCRIPTION +A long parameter set to 1 tells the library to keep sending the request body +if the HTTP code returned is equal to or larger than 300. The default action +would be to stop sending and close the stream or connection. + +This option is suitable for manual NTLM authentication, i.e. if an application +does not use \fICURLOPT_HTTPAUTH(3)\fP, but instead sets "Authorization: NTLM ..." +headers manually using \fICURLOPT_HTTPHEADER(3)\fP. + +Most applications do not need this option. + +.SH DEFAULT +0, stop sending on error +.SH PROTOCOLS +HTTP +.SH EXAMPLE +TODO +.SH AVAILABILITY +Along with HTTP +.SH RETURN VALUE +Returns CURLE_OK if HTTP is enabled, and CURLE_UNKNOWN_OPTION if not. +.SH "SEE ALSO" +.BR CURLOPT_FAILONERROR "(3), " CURLOPT_HTTPHEADER "(3), " diff --git a/docs/libcurl/opts/Makefile.am b/docs/libcurl/opts/Makefile.am index a3fc0647f..e67364ccc 100644 --- a/docs/libcurl/opts/Makefile.am +++ b/docs/libcurl/opts/Makefile.am @@ -170,6 +170,7 @@ man_MANS = \ CURLOPT_IOCTLFUNCTION.3 \ CURLOPT_IPRESOLVE.3 \ CURLOPT_ISSUERCERT.3 \ + CURLOPT_KEEP_SENDING_ON_ERROR.3 \ CURLOPT_KEYPASSWD.3 \ CURLOPT_KRBLEVEL.3 \ CURLOPT_LOCALPORT.3 \ @@ -457,6 +458,7 @@ HTMLPAGES = \ CURLOPT_IOCTLFUNCTION.html \ CURLOPT_IPRESOLVE.html \ CURLOPT_ISSUERCERT.html \ + CURLOPT_KEEP_SENDING_ON_ERROR.html \ CURLOPT_KEYPASSWD.html \ CURLOPT_KRBLEVEL.html \ CURLOPT_LOCALPORT.html \ @@ -744,6 +746,7 @@ PDFPAGES = \ CURLOPT_IOCTLFUNCTION.pdf \ CURLOPT_IPRESOLVE.pdf \ CURLOPT_ISSUERCERT.pdf \ + CURLOPT_KEEP_SENDING_ON_ERROR.pdf \ CURLOPT_KEYPASSWD.pdf \ CURLOPT_KRBLEVEL.pdf \ CURLOPT_LOCALPORT.pdf \ -- cgit v1.2.3