Commit 4946ea05 authored by Maciej Puzio's avatar Maciej Puzio Committed by Daniel Stenberg
Browse files

curl: add --proxy-header

parent fa0a5e68
Loading
Loading
Loading
Loading
+1 −0
Original line number Diff line number Diff line
@@ -120,6 +120,7 @@ static void free_config_fields(struct OperationConfig *config)
  curl_slist_free_all(config->prequote);

  curl_slist_free_all(config->headers);
  curl_slist_free_all(config->proxyheaders);

  if(config->httppost) {
    curl_formfree(config->httppost);
+1 −0
Original line number Diff line number Diff line
@@ -143,6 +143,7 @@ struct OperationConfig {
  curl_TimeCond timecond;
  time_t condtime;
  struct curl_slist *headers;
  struct curl_slist *proxyheaders;
  struct curl_httppost *httppost;
  struct curl_httppost *last_post;
  struct curl_slist *telnet_options;
+5 −1
Original line number Diff line number Diff line
@@ -222,6 +222,7 @@ static const struct LongShort aliases[]= {
  {"G",  "get",                      FALSE},
  {"h",  "help",                     FALSE},
  {"H",  "header",                   TRUE},
  {"Hp", "proxy-header",             TRUE},
  {"i",  "include",                  FALSE},
  {"I",  "head",                     FALSE},
  {"j",  "junk-session-cookies",     FALSE},
@@ -1404,6 +1405,9 @@ ParameterError getparameter(char *flag, /* f or -long-flag */
      break;
    case 'H':
      /* A custom header to append to a list */
      if(subletter == 'p') /* --proxy-header */
        err = add2list(&config->proxyheaders, nextarg);
      else
        err = add2list(&config->headers, nextarg);
      if(err)
        return err;
+6 −0
Original line number Diff line number Diff line
@@ -947,6 +947,12 @@ static CURLcode operate_do(struct GlobalConfig *global,
          my_setopt_str(curl, CURLOPT_USERAGENT, config->useragent);
          my_setopt_slist(curl, CURLOPT_HTTPHEADER, config->headers);

          /* new in libcurl 7.36.0 */
          if(config->proxyheaders) {
            my_setopt_slist(curl, CURLOPT_PROXYHEADER, config->proxyheaders);
            my_setopt(curl, CURLOPT_HEADEROPT, CURLHEADER_SEPARATE);
          }

          /* new in libcurl 7.5 */
          my_setopt(curl, CURLOPT_MAXREDIRS, config->maxredirs);