Thanks. Your patch has been added to Bennos patch on
squid.sourceforge.net.
--
Henrik Nordstrom
Squid Hacker
K. Leif D. Van Horn wrote:
>
> Here is a patch to the Squid SSL accelerator headed up by Benno Rice.
> This allows me to pass either http://... or https://... to any
> redirect programs allowing me to modify the URL accordingly.
> I have tested this with a Zope server.
>
> Thanks,
> Leif Van Horn
> Kaivo, Inc.
>
> --- src/url.c.orig Wed Dec 20 16:51:58 2000
> +++ src/url.c Wed Dec 20 17:23:46 2000
> @@ -550,12 +550,17 @@
> rc = 1;
> break;
> case PROTO_HTTPS:
> +#ifdef USE_SSL
> + rc = 1;
> + break;
> +#else
> /*
> * Squid can't originate an SSL connection, so it should
> * never receive an "https:" URL. It should always be
> * CONNECT instead.
> */
> rc = 0;
> +#endif
> default:
> break;
> }
> --- src/client_side.c.orig Wed Dec 20 12:22:39 2000
> +++ src/client_side.c Wed Dec 20 17:28:40 2000
> @@ -2398,6 +2398,7 @@
> if (opt_accel_uses_host && (t = mime_get_header(req_hdr, "Host"))) {
> int vport = (int) Config.Accel.port;
> char *q;
> + char *protocol_name = "http";
> /* If a Host: header was specified, use it to build the URL
> * instead of the one in the Config file. */
> /*
> @@ -2415,8 +2416,15 @@
> url_sz = strlen(url) + 32 + Config.appendDomainLen +
> strlen(t);
> http->uri = xcalloc(url_sz, 1);
> - snprintf(http->uri, url_sz, "http://%s:%d%s",
> - t, vport, url);
> +
> +#ifdef USE_SSL
> + if (Config.Sockaddr.https->s.sin_port == http->conn->me.sin_port) {
> + protocol_name = "https";
> + vport = ntohs(http->conn->me.sin_port);
> + }
> +#endif
> + snprintf(http->uri, url_sz, "%s://%s:%d%s",
> + protocol_name, t, vport, url);
> } else if (vhost_mode) {
> int vport;
> /* Put the local socket IP address as the hostname */
Received on Thu Jan 04 2001 - 14:52:00 MST
This archive was generated by hypermail pre-2.1.9 : Tue Dec 09 2003 - 16:13:09 MST