diff options
author | Daniel Stenberg <daniel@haxx.se> | 2015-03-23 10:51:49 +0100 |
---|---|---|
committer | Daniel Stenberg <daniel@haxx.se> | 2015-03-24 10:31:58 +0100 |
commit | 5d2327929932bb18b0c683583f398855f0a31fed (patch) | |
tree | cb6025b9b090e99b80716b4daba080f3970a33ed /docs/libcurl/opts/CURLOPT_PATH_AS_IS.3 | |
parent | ecc4940df2c286702262f8c21d7369f893e78968 (diff) |
CURLOPT_PATH_AS_IS: added
--path-as-is is the command line option
Added docs in curl.1 and CURLOPT_PATH_AS_IS.3
Added test in test 1241
Diffstat (limited to 'docs/libcurl/opts/CURLOPT_PATH_AS_IS.3')
-rw-r--r-- | docs/libcurl/opts/CURLOPT_PATH_AS_IS.3 | 63 |
1 files changed, 63 insertions, 0 deletions
diff --git a/docs/libcurl/opts/CURLOPT_PATH_AS_IS.3 b/docs/libcurl/opts/CURLOPT_PATH_AS_IS.3 new file mode 100644 index 000000000..aa096c2d1 --- /dev/null +++ b/docs/libcurl/opts/CURLOPT_PATH_AS_IS.3 @@ -0,0 +1,63 @@ +.\" ************************************************************************** +.\" * _ _ ____ _ +.\" * Project ___| | | | _ \| | +.\" * / __| | | | |_) | | +.\" * | (__| |_| | _ <| |___ +.\" * \___|\___/|_| \_\_____| +.\" * +.\" * Copyright (C) 1998 - 2015, Daniel Stenberg, <daniel@haxx.se>, 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 http://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_PATH_AS_IS 3 "17 Jun 2014" "libcurl 7.42.0" "curl_easy_setopt options" +.SH NAME +CURLOPT_PATH_AS_IS \- do not handle dot dot sequences +.SH SYNOPSIS +#include <curl/curl.h> + +CURLcode curl_easy_setopt(CURL *handle, CURLOPT_PATH_AS_IS, leaveit); +.SH DESCRIPTION +By setting the long \fIleavit\fP to 1, to explicitly tell libcurl to not alter +the given path before passing it on to the server. + +This tells libcurl to NOT squash sequences of "/../" or "/./" that may exist +in the URL's path part and that is supposed to be removed according to RFC +3986 section 5.2.4. + +Some server implementations are known to (erroneously) require the dot dot +sequences to remain in the path and some clients want to pass these on in +order to try out server implementations. + +By default libcurl will merge such sequences before using the path. +.SH DEFAULT +0 +.SH PROTOCOLS +All +.SH EXAMPLE +.nf +CURL *curl = curl_easy_init(); +if(curl) { + curl_easy_setopt(curl, CURLOPT_URL, "http://example.com/../../etc/password"); + + curl_easy_setopt(curl, CURLOPT_PATH_AS_IS, 1L); + + curl_easy_perform(curl); +} +.fi +.SH AVAILABILITY +Aded in 7.42.0 +.SH RETURN VALUE +Returns CURLE_OK if the option is supported, and CURLE_UNKNOWN_OPTION if not. +.SH "SEE ALSO" +.BR CURLOPT_STDERR "(3), " CURLOPT_DEBUGFUNCTION "(3), " |