mirror of
https://github.com/curl/curl.git
synced 2026-07-22 19:17:17 +03:00
http: add --strip-path-slash and CURLOPT_STRIP_PATH_SLASH
... to enable sending "OPTIONS *" which wasn't possible previously. This option currently only works for HTTP. Added test cases 1298 + 1299 to verify Fixes #1280 Closes #1462
This commit is contained in:
parent
176ec51382
commit
b778ae4c5e
21 changed files with 220 additions and 25 deletions
|
|
@ -144,6 +144,7 @@ struct OperationConfig {
|
|||
bool readbusy; /* set when reading input returns EAGAIN */
|
||||
bool globoff;
|
||||
bool use_httpget;
|
||||
bool strip_path_slash;
|
||||
bool insecure_ok; /* set TRUE to allow insecure SSL connects */
|
||||
bool proxy_insecure_ok; /* set TRUE to allow insecure SSL connects
|
||||
for proxy */
|
||||
|
|
|
|||
|
|
@ -257,6 +257,7 @@ static const struct LongShort aliases[]= {
|
|||
{"Fs", "form-string", ARG_STRING},
|
||||
{"g", "globoff", ARG_BOOL},
|
||||
{"G", "get", ARG_NONE},
|
||||
{"Ga", "strip-path-slash", ARG_BOOL},
|
||||
{"h", "help", ARG_BOOL},
|
||||
{"H", "header", ARG_STRING},
|
||||
{"Hp", "proxy-header", ARG_STRING},
|
||||
|
|
@ -1591,7 +1592,11 @@ ParameterError getparameter(const char *flag, /* f or -long-flag */
|
|||
break;
|
||||
|
||||
case 'G': /* HTTP GET */
|
||||
config->use_httpget = TRUE;
|
||||
if(subletter == 'a') { /* --strip-path-slash */
|
||||
config->strip_path_slash = TRUE;
|
||||
}
|
||||
else
|
||||
config->use_httpget = TRUE;
|
||||
break;
|
||||
|
||||
case 'h': /* h for help */
|
||||
|
|
|
|||
|
|
@ -400,6 +400,8 @@ static const struct helptxt helptext[] = {
|
|||
"Use SSLv3"},
|
||||
{" --stderr",
|
||||
"Where to redirect stderr"},
|
||||
{" --strip-path-slash",
|
||||
"Strip off the first slash of the path"},
|
||||
{" --suppress-connect-headers",
|
||||
"Suppress proxy CONNECT response headers"},
|
||||
{" --tcp-fastopen",
|
||||
|
|
|
|||
|
|
@ -972,6 +972,8 @@ static CURLcode operate_do(struct GlobalConfig *global,
|
|||
#endif /* !CURL_DISABLE_PROXY */
|
||||
|
||||
my_setopt(curl, CURLOPT_FAILONERROR, config->failonerror?1L:0L);
|
||||
my_setopt(curl, CURLOPT_STRIP_PATH_SLASH,
|
||||
config->strip_path_slash?1L:0L);
|
||||
my_setopt(curl, CURLOPT_UPLOAD, uploadfile?1L:0L);
|
||||
my_setopt(curl, CURLOPT_DIRLISTONLY, config->dirlistonly?1L:0L);
|
||||
my_setopt(curl, CURLOPT_APPEND, config->ftp_append?1L:0L);
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue