Hi, At 11.16 25/07/2006, =?iso-8859-9?Q?G=F6khan?= wrote:
system is openbsd.3.9 and squid.2.6. i saw notes "Squid calls these ``ARP ACLs'' and they are supported on Linux, Solaris, and probably BSD variants." in FAQ. when i compile --enable-arp-acl options i get error like this
....
can i install squid with --enable-arp-acl options on my openbsd.3.9 ?
Looking to the old BSD (disabled) code, it seems very similar to the actual FreeBSD code, so you can try the following patch:
Index: src/acl.c =================================================================== RCS file: /cvsroot/squid/squid/src/acl.c,v retrieving revision 1.305 diff -u -p -r1.305 acl.c --- src/acl.c 21 Jul 2006 15:20:23 -0000 1.305 +++ src/acl.c 25 Jul 2006 09:52:56 -0000 @@ -3072,7 +3072,7 @@ struct arpreq { #include <net/route.h> #endif #include <net/if.h> -#ifdef _SQUID_FREEBSD_ +#if defined(_SQUID_FREEBSD_) || defined(_SQUID_OPENBSD_) #include <net/if_arp.h> #endif #if HAVE_NETINET_IF_ETHER_H @@ -3292,7 +3292,8 @@ aclMatchArp(void *dataptr, struct in_add inet_ntoa(c), splayLastResult ? "NOT found" : "found"); return (0 == splayLastResult); } -#elif defined(_SQUID_FREEBSD_) +#elif defined(_SQUID_FREEBSD_) || defined(_SQUID_OPENBSD_) + struct arpreq arpReq; struct sockaddr_in ipAddr; splayNode **Top = dataptr; @@ -3448,7 +3449,7 @@ aclArpCompare(const void *a, const void return (d1[4] > d2[4]) ? 1 : -1; if (d1[5] != d2[5]) return (d1[5] > d2[5]) ? 1 : -1; -#elif defined(_SQUID_FREEBSD_) +#elif defined(_SQUID_FREEBSD_) || defined(_SQUID_OPENBSD_) const unsigned char *d1 = a; const unsigned char *d2 = b; if (d1[0] != d2[0]) But this should not be enough: we need to understand this error: /usr/include/uvm/uvm_extern.h:264: error: syntax error before '+' token What is the content of this line ? Regards Guido - ======================================================== Guido Serassio Acme Consulting S.r.l. - Microsoft Certified Partner Via Lucia Savarino, 1 10098 - Rivoli (TO) - ITALY Tel. : +39.011.9530135 Fax. : +39.011.9781115 Email: guido.serassio@xxxxxxxxxxxxxxxxx WWW: http://www.acmeconsulting.it/