---------------------
PatchSet 6306 
Date: 2007/12/16 22:27:05
Author: amosjeffries
Branch: squid3-ipv6
Tag: (none) 
Log:
Several compile errors.

Members: 
	NOTES-IPv6:1.1.2.79->1.1.2.80 
	src/ACLARP.cc:1.9.4.13->1.9.4.14 
	src/client_side_request.cc:1.33.4.25->1.33.4.26 
	src/fqdncache.cc:1.9.2.19->1.9.2.20 
	src/peer_digest.cc:1.11.4.13->1.11.4.14 

Index: squid3/NOTES-IPv6
===================================================================
RCS file: /cvsroot/squid-sf//squid3/Attic/NOTES-IPv6,v
retrieving revision 1.1.2.79
retrieving revision 1.1.2.80
diff -u -r1.1.2.79 -r1.1.2.80
--- squid3/NOTES-IPv6	14 Dec 2007 05:11:22 -0000	1.1.2.79
+++ squid3/NOTES-IPv6	16 Dec 2007 22:27:05 -0000	1.1.2.80
@@ -1,4 +1,4 @@
-$Id: NOTES-IPv6,v 1.1.2.79 2007/12/14 05:11:22 amosjeffries Exp $
+$Id: NOTES-IPv6,v 1.1.2.80 2007/12/16 22:27:05 amosjeffries Exp $
 
 NP: Any problems with this version of squid please contact
 	squid3@treenet.co.nz for assistance.
@@ -125,39 +125,12 @@
 	 *Vista --with-ipv4-mapped
 	 *XP	--with-ipv6-split-stack
 
-1.1	Netmasks need to die a clean death
-	- alter all storage of netmask values to CIDR (AKA uint8_t)
-	- alter all netmask parsing to issue deprecation WARNING's and translate
-	- possibly provide netmask-->CIDR translation as static via IPAddress API
-
-3       Push patch to HEAD
-
-4.0	Find netdb solution for sending IPv6 addresses.
-
-4.1	Add 'EPSV' FTP command for IPv6 PASV connections.
-
-4.2	Write an rfc2874/3266 DNS Resolver library (IPv6 DNS extensions )
-		defines A6, DNAME, packet sizes
-		* A6 is now officially 'less desirable' ie, read: close to deprecated
-
 4.3	Test new ICMP* engines
 	- Write unit tests for ICMPv*, ICMPSquid, ICMPPinger classes
 	- still requires Hop retrieval in ICMPv6 (v6 addresses always seen as 1 hops away :-)
 
-4.4	Upgrade peer selection bucket sizes
-	- currently using 32-bit buckets
-	- IPv6 needs at least 64-bit to do equivalent net/host 'class' operations
-	- Possible IPv6-specific buckets for CIDR-wise routing buckets
-
 4.5	Give SNMP modules an OO flavour ( C++ )
-	- hold for 3.1/3.2-HEAD code cleanups
-
-4.6	Write "(src|dst)6host" ACL types
-	- configured with ::0:0:0:0 (/64 bits for the host-part)
-	- matches the src/dst IPv6 ignoring the net-part (first 64 bits)
-	- IPv4 MUST 'fail' matching.
-	- this will provide a clean replacement for ACLARP under IPv6
-		also provides an ACL for src/dst on IPv6 Roaming or SHIM6 clients
+	- not part of squid3-ipv6 branch
 
 4.6	Write a Neighbour-Discovery auto-configuration component.
 	- DHCPv6?
Index: squid3/src/ACLARP.cc
===================================================================
RCS file: /cvsroot/squid-sf//squid3/src/ACLARP.cc,v
retrieving revision 1.9.4.13
retrieving revision 1.9.4.14
diff -u -r1.9.4.13 -r1.9.4.14
--- squid3/src/ACLARP.cc	31 Oct 2007 04:51:38 -0000	1.9.4.13
+++ squid3/src/ACLARP.cc	16 Dec 2007 22:27:06 -0000	1.9.4.14
@@ -1,6 +1,6 @@
 
 /*
- * $Id: ACLARP.cc,v 1.9.4.13 2007/10/31 04:51:38 amosjeffries Exp $
+ * $Id: ACLARP.cc,v 1.9.4.14 2007/12/16 22:27:06 amosjeffries Exp $
  *
  * DEBUG: section 28    Access Control
  * AUTHOR: Duane Wessels
@@ -242,12 +242,12 @@
 int
 aclMatchArp(SplayNode<acl_arp_data *> **dataptr, IPAddress &c)
 {
-    char ntoabuf[MAX_IPSTRLEN];
-
     struct arpreq arpReq;
 
     IPAddress ipAddr = c;
 
+    struct sockaddr_in *sa = NULL;
+
 #if defined(_SQUID_LINUX_)
 
     unsigned char ifbuffer[sizeof(struct ifreq) * 64];
@@ -274,7 +274,8 @@
      */
     memset(&arpReq, '\0', sizeof(arpReq));
 
-    ipAddr.GetSockAddr(arpReq.arp_pa);
+    sa = (sockaddr_in*)&arpReq.arp_pa;
+    ipAddr.GetSockAddr(*sa);
     /* Query ARP table */
 
     if (ioctl(HttpSockets[0], SIOCGARP, &arpReq) != -1) {
@@ -336,7 +337,8 @@
 
         memset(&arpReq, '\0', sizeof(arpReq));
 
-        ipAddr.GetSockAddr(arpReq.arp_pa);
+        sa = (sockaddr_in*)&arpReq.arp_pa;
+        ipAddr.GetSockAddr(*sa);
 
         strncpy(arpReq.arp_dev, ifr->ifr_name, sizeof(arpReq.arp_dev) - 1);
 
Index: squid3/src/client_side_request.cc
===================================================================
RCS file: /cvsroot/squid-sf//squid3/src/client_side_request.cc,v
retrieving revision 1.33.4.25
retrieving revision 1.33.4.26
diff -u -r1.33.4.25 -r1.33.4.26
--- squid3/src/client_side_request.cc	27 Nov 2007 07:59:09 -0000	1.33.4.25
+++ squid3/src/client_side_request.cc	16 Dec 2007 22:27:06 -0000	1.33.4.26
@@ -1,6 +1,6 @@
 
 /*
- * $Id: client_side_request.cc,v 1.33.4.25 2007/11/27 07:59:09 amosjeffries Exp $
+ * $Id: client_side_request.cc,v 1.33.4.26 2007/12/16 22:27:06 amosjeffries Exp $
  * 
  * DEBUG: section 85    Client-side Request Routines
  * AUTHOR: Robert Collins (Originally Duane Wessels in client_side.c)
@@ -728,15 +728,19 @@
         s.clean();
     }
 
+/**
+ \todo  --enable-useragent-log and --enable-referer-log. We should
+        probably drop those two as the custom log formats accomplish pretty much the same thing..
+*/
 #if USE_USERAGENT_LOG
     if ((str = req_hdr->getStr(HDR_USER_AGENT)))
-        logUserAgent(fqdnFromAddr(http->getConn() != NULL ? http->getConn()->log_addr : no_addr), str);
+        logUserAgent(fqdnFromAddr(http->getConn()->log_addr, str);
 
 #endif
 #if USE_REFERER_LOG
 
     if ((str = req_hdr->getStr(HDR_REFERER)))
-        logReferer(fqdnFromAddr(http->getConn() != NULL ? http->getConn()->log_addr : no_addr), str, http->log_uri);
+        logReferer(fqdnFromAddr(http->getConn()->log_addr, str, http->log_uri);
 
 #endif
 #if FORW_VIA_DB
Index: squid3/src/fqdncache.cc
===================================================================
RCS file: /cvsroot/squid-sf//squid3/src/fqdncache.cc,v
retrieving revision 1.9.2.19
retrieving revision 1.9.2.20
diff -u -r1.9.2.19 -r1.9.2.20
--- squid3/src/fqdncache.cc	13 Oct 2007 12:16:02 -0000	1.9.2.19
+++ squid3/src/fqdncache.cc	16 Dec 2007 22:27:06 -0000	1.9.2.20
@@ -1,6 +1,6 @@
 
 /*
- * $Id: fqdncache.cc,v 1.9.2.19 2007/10/13 12:16:02 amosjeffries Exp $
+ * $Id: fqdncache.cc,v 1.9.2.20 2007/12/16 22:27:06 amosjeffries Exp $
  *
  * DEBUG: section 35    FQDN Cache
  * AUTHOR: Harvest Derived
@@ -651,6 +651,8 @@
     if (Config.onoff.log_fqdn && (n = fqdncache_gethostbyaddr(addr, 0)))
         return n;
 
+/// \todo Perhaose this should use toHostname() instead of straight NtoA.
+///       that would wrap the IPv6 properly when raw.
     addr.NtoA(buf, MAX_IPSTRLEN);
 
     return buf;
Index: squid3/src/peer_digest.cc
===================================================================
RCS file: /cvsroot/squid-sf//squid3/src/peer_digest.cc,v
retrieving revision 1.11.4.13
retrieving revision 1.11.4.14
diff -u -r1.11.4.13 -r1.11.4.14
--- squid3/src/peer_digest.cc	28 Aug 2007 01:35:10 -0000	1.11.4.13
+++ squid3/src/peer_digest.cc	16 Dec 2007 22:27:06 -0000	1.11.4.14
@@ -1,6 +1,6 @@
 
 /*
- * $Id: peer_digest.cc,v 1.11.4.13 2007/08/28 01:35:10 amosjeffries Exp $
+ * $Id: peer_digest.cc,v 1.11.4.14 2007/12/16 22:27:06 amosjeffries Exp $
  *
  * DEBUG: section 72    Peer Digest Routines
  * AUTHOR: Alex Rousskov
@@ -257,7 +257,6 @@
 {
     PeerDigest *pd = (PeerDigest *)data;
     time_t req_time;
-    char buf[MAX_IPSTRLEN];
 
     assert(!pd->flags.requested);
 
