Re: IPv6 enabled Squid - how?

From: Henrik Nordstrom <hno@dont-contact.us>
Date: Thu, 25 Oct 2001 18:59:41 +0200

Peter Bieringer wrote:

> Looks like there are some existing buchs in this branch

It should, as it is not fully finished yet.

> 1) configure without "--disable-wccp" breaks compiling in
> src/cf_parser.c

And so is documented for the ipv6 branch
<http://devel.squid-cache.org/ipv6/>

> 2) src/acl.c has a not really C conform source part (using gcc-2.96):
>
> --- src/acl.c.cvsorig Thu Oct 25 10:00:25 2001
> +++ src/acl.c Thu Oct 25 10:03:27 2001
> @@ -2252,8 +2252,8 @@
> if (ADDR_IS_ANYADDR(q->addr2)) {
> return memcmp(&A, &q->addr1, sizeof(struct IN_ADDR));
> } else {
> - if (memcmp(&A, &q->addr1, sizeof(struct IN_ADDR)) => 0) &
> - (memcmp(&A, &q->addr2, sizeof(struct IN_ADDR)) <= 0)
> + if ((memcmp(&A, &q->addr1, sizeof(struct IN_ADDR)) >= 0) &&
> + (memcmp(&A, &q->addr2, sizeof(struct IN_ADDR)) <= 0))
> return 0; /* valid */
> else
> return -1; /* outside of range, 'less than' */

Looks like a bug in the ipv6 code.. fixed.

> BTW: a warning was also displayed here:
> acl.c:1723: warning: enumeration value `ACL_SRC_ASN' not handled in
> switch
> acl.c:1723: warning: enumeration value `ACL_DST_ASN' not handled in
> switch

This is fixed in the more current Squid code I think, and will thus be
fixed in the ipv6 branch once someone cares to maintain it.

> 3) Ooops:
> client_side.c: In function `parseHttpRequest':
> client_side.c:2652: structure has no member named `sin_addr'
> client_side.c:2654: structure has no member named `sin_port'
> client_side.c:2654: structure has no member named `sin_port'
> client_side.c:2654: structure has no member named `sin_port'
> client_side.c:2654: structure has no member named `sin_port'
> client_side.c:2654: warning: `__v' might be used uninitialized in
> this function
> make[2]: *** [client_side.o] Error 1
> make[2]: Leaving directory `/usr/local/src/squid/squid-ipv6/src'
> make[1]: *** [all] Error 2
> make[1]: Leaving directory `/usr/local/src/squid/squid-ipv6/src'
> make: *** [all] Error 1

Hmm.. appears the --enable-linux-netfilter code is not ipv6 adoped yet.

> BTW: because of RHL 7.2 is now good IPv6 enabled would be imho a big
> step further on if a working IPv6 squid is available, too.
> Reason: browsers like Mozilla or Konqueror cannot be setup (by
> configuration) to use for IPv4 a proxy, but not for IPv6). So if for
> IPv4 a proxy is required, it will be also used for IPv6 requests -
> but without success.

I fully agree.

The browser when using a proxy should not diverse between IPv4 and IPv6.
It is the proxy's job to figure out how to reach the requested service.

Regards
Henrik Nordström
Squid Hacker
Received on Thu Oct 25 2001 - 10:58:51 MDT

This archive was generated by hypermail pre-2.1.9 : Tue Dec 09 2003 - 16:14:35 MST