diff options
| author | Arne Schwabe <arne@rfc2549.org> | 2013-09-21 16:21:44 +0200 | 
|---|---|---|
| committer | Arne Schwabe <arne@rfc2549.org> | 2013-09-21 16:21:44 +0200 | 
| commit | c95e727267fed5211f8c88a6708ff21a7f57eed2 (patch) | |
| tree | c035b0562ff64da249bff0fafca335531c458eb0 /openvpn/src | |
| parent | 5f6f3bd69d858db070938bc838f844fe73f5ab3e (diff) | |
Update to v3 of custom header patchv0.5.47
Diffstat (limited to 'openvpn/src')
| -rw-r--r-- | openvpn/src/openvpn/options.c | 14 | ||||
| -rw-r--r-- | openvpn/src/openvpn/proxy.c | 7 | 
2 files changed, 14 insertions, 7 deletions
| diff --git a/openvpn/src/openvpn/options.c b/openvpn/src/openvpn/options.c index 01960f23..d1c5583f 100644 --- a/openvpn/src/openvpn/options.c +++ b/openvpn/src/openvpn/options.c @@ -1296,6 +1296,7 @@ option_iroute_ipv6 (struct options *o,  static void  show_http_proxy_options (const struct http_proxy_options *o)  { +  int i;    msg (D_SHOW_PARMS, "BEGIN http_proxy");    SHOW_STR (server);    SHOW_STR (port); @@ -1305,6 +1306,15 @@ show_http_proxy_options (const struct http_proxy_options *o)    SHOW_INT (timeout);    SHOW_STR (http_version);    SHOW_STR (user_agent); +  for  (i=0; i < MAX_CUSTOM_HTTP_HEADER && o->custom_headers[i].name;i++) +    { +      if (o->custom_headers[i].content) +	msg (D_SHOW_PARMS, "  custom_header[%d] = %s: %s", i, +	       o->custom_headers[i].name, o->custom_headers[i].content); +      else +	msg (D_SHOW_PARMS, "  custom_header[%d] = %s", i, +	     o->custom_headers[i].name); +    }    msg (D_SHOW_PARMS, "END http_proxy");  }  #endif @@ -4984,10 +4994,9 @@ add_option (struct options *options,  	{  	  /* In the wild patched versions use both EXT1/2 and CUSTOM-HEADER with either two  	   * argument or one */ +  	  struct http_custom_header *custom_header =NULL;  	  int i; -	   -	    	  /* Find the first free header */  	  for (i=0; i < MAX_CUSTOM_HTTP_HEADER; i++) {  	    if (!ho->custom_headers[i].name) { @@ -5006,7 +5015,6 @@ add_option (struct options *options,  	      custom_header->name = p[2];  	      custom_header->content = p[3];  	    } -	    	}        else  	{ diff --git a/openvpn/src/openvpn/proxy.c b/openvpn/src/openvpn/proxy.c index 80f5b87a..db26994c 100644 --- a/openvpn/src/openvpn/proxy.c +++ b/openvpn/src/openvpn/proxy.c @@ -501,7 +501,7 @@ add_proxy_header (struct http_proxy_info *p,    /* Check if any of the custom headers already provides Host: */    i=0; -  while (p->options.custom_headers[i].name) +  for  (i=0; i < MAX_CUSTOM_HTTP_HEADER && p->options.custom_headers[i].name;i++)      {        if(  	 ((!strcasecmp(p->options.custom_headers[i].name, "Host")) &&  @@ -532,12 +532,11 @@ add_proxy_header (struct http_proxy_info *p,  	return false;      } -  /*  +  /*     * Send custom headers if provided     * If content is NULL whole header is in name     */ -  i=0; -  while (p->options.custom_headers[i].name) +  for  (i=0; i < MAX_CUSTOM_HTTP_HEADER && p->options.custom_headers[i].name;i++)      {        if (p->options.custom_headers[i].content)  	openvpn_snprintf (buf, sizeof(buf), "%s: %s", | 
