Skip to content
Snippets Groups Projects
Commit 29e68b20 authored by Daniel Stenberg's avatar Daniel Stenberg
Browse files

curl: add --post303 to set the CURL_REDIR_POST_303 option

parent 0b516b71
No related merge requests found
......@@ -187,6 +187,7 @@ struct Configurable {
bool raw;
bool post301;
bool post302;
bool post303;
bool nokeepalive; /* for keepalive needs */
long alivetime;
bool content_disposition; /* use Content-disposition filename */
......
......@@ -171,6 +171,7 @@ static const struct LongShort aliases[]= {
{"$F", "resolve", TRUE},
{"$G", "delegation", TRUE},
{"$H", "mail-auth", TRUE},
{"$I", "post303", FALSE},
{"0", "http1.0", FALSE},
{"1", "tlsv1", FALSE},
{"2", "sslv2", FALSE},
......@@ -764,6 +765,9 @@ ParameterError getparameter(char *flag, /* f or -long-flag */
case '4': /* --post302 */
config->post302 = toggle;
break;
case 'I': /* --post303 */
config->post303 = toggle;
break;
case '5': /* --noproxy */
/* This specifies the noproxy list */
GetStr(&config->noproxy, nextarg);
......
......@@ -140,6 +140,8 @@ static const char *const helptext[] = {
"Do not switch to GET after following a 301 redirect (H)",
" --post302 "
"Do not switch to GET after following a 302 redirect (H)",
" --post303 "
"Do not switch to GET after following a 303 redirect (H)",
" -#, --progress-bar Display transfer progress as a progress bar",
" --proto PROTOCOLS Enable/disable specified protocols",
" --proto-redir PROTOCOLS "
......
......@@ -916,9 +916,12 @@ int operate(struct Configurable *config, int argc, argv_item_t argv[])
if(config->authtype)
my_setopt_flags(curl, CURLOPT_HTTPAUTH, config->authtype);
/* curl 7.19.1 (the 301 version existed in 7.18.2) */
my_setopt(curl, CURLOPT_POSTREDIR, config->post301 |
(config->post302 ? CURL_REDIR_POST_302 : FALSE));
/* curl 7.19.1 (the 301 version existed in 7.18.2),
303 was added in 7.26.0 */
my_setopt(curl, CURLOPT_POSTREDIR,
(config->post301 ? CURL_REDIR_POST_301 : 0) |
(config->post302 ? CURL_REDIR_POST_302 : 0) |
(config->post303 ? CURL_REDIR_POST_303 : 0));
/* new in libcurl 7.21.6 */
if(config->encoding)
......
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment