From c631562846346dc9c63832016bc06d414ad65f06 Mon Sep 17 00:00:00 2001 From: Alin Năstac Date: Sun, 19 Oct 2008 10:00:35 +0000 Subject: Version bump (#242646). (Portage version: 2.1.4.4) --- net-proxy/squid/ChangeLog | 9 +- net-proxy/squid/files/squid-2.7.5-gentoo.patch | 307 ++++++++++++++++++++++++ net-proxy/squid/files/squid-2.7.5-heimdal.patch | 18 ++ net-proxy/squid/squid-2.7.4-r1.ebuild | 187 --------------- net-proxy/squid/squid-2.7.5.ebuild | 199 +++++++++++++++ 5 files changed, 532 insertions(+), 188 deletions(-) create mode 100644 net-proxy/squid/files/squid-2.7.5-gentoo.patch create mode 100644 net-proxy/squid/files/squid-2.7.5-heimdal.patch delete mode 100644 net-proxy/squid/squid-2.7.4-r1.ebuild create mode 100644 net-proxy/squid/squid-2.7.5.ebuild (limited to 'net-proxy') diff --git a/net-proxy/squid/ChangeLog b/net-proxy/squid/ChangeLog index 600b1d587565..0483c6a832e3 100644 --- a/net-proxy/squid/ChangeLog +++ b/net-proxy/squid/ChangeLog @@ -1,6 +1,13 @@ # ChangeLog for net-proxy/squid # Copyright 2002-2008 Gentoo Foundation; Distributed under the GPL v2 -# $Header: /var/cvsroot/gentoo-x86/net-proxy/squid/ChangeLog,v 1.207 2008/10/18 17:01:12 nixnut Exp $ +# $Header: /var/cvsroot/gentoo-x86/net-proxy/squid/ChangeLog,v 1.208 2008/10/19 10:00:35 mrness Exp $ + +*squid-2.7.5 (19 Oct 2008) + + 19 Oct 2008; Alin Năstac + +files/squid-2.7.5-gentoo.patch, +files/squid-2.7.5-heimdal.patch, + -squid-2.7.4-r1.ebuild, +squid-2.7.5.ebuild: + Version bump (#242646). 18 Oct 2008; nixnut squid-2.7.4-r2.ebuild: Stable on ppc wrt bug 242386 diff --git a/net-proxy/squid/files/squid-2.7.5-gentoo.patch b/net-proxy/squid/files/squid-2.7.5-gentoo.patch new file mode 100644 index 000000000000..23086059841d --- /dev/null +++ b/net-proxy/squid/files/squid-2.7.5-gentoo.patch @@ -0,0 +1,307 @@ +diff -Nru squid-2.7.STABLE5.orig/configure.in squid-2.7.STABLE5/configure.in +--- squid-2.7.STABLE5.orig/configure.in 2008-10-17 19:01:04.000000000 +0000 ++++ squid-2.7.STABLE5/configure.in 2008-10-19 09:48:02.000000000 +0000 +@@ -18,9 +18,9 @@ + PRESET_LDFLAGS="$LDFLAGS" + + dnl Set default LDFLAGS +-if test -z "$LDFLAGS"; then +- LDFLAGS="-g" +-fi ++dnl if test -z "$LDFLAGS"; then ++dnl LDFLAGS="-g" ++dnl fi + + dnl Check for GNU cc + AC_PROG_CC +diff -Nru squid-2.7.STABLE5.orig/helpers/basic_auth/MSNT/confload.c squid-2.7.STABLE5/helpers/basic_auth/MSNT/confload.c +--- squid-2.7.STABLE5.orig/helpers/basic_auth/MSNT/confload.c 2002-06-26 19:09:48.000000000 +0000 ++++ squid-2.7.STABLE5/helpers/basic_auth/MSNT/confload.c 2008-10-19 09:48:02.000000000 +0000 +@@ -24,7 +24,7 @@ + + /* Path to configuration file */ + #ifndef SYSCONFDIR +-#define SYSCONFDIR "/usr/local/squid/etc" ++#define SYSCONFDIR "/etc/squid" + #endif + #define CONFIGFILE SYSCONFDIR "/msntauth.conf" + +diff -Nru squid-2.7.STABLE5.orig/helpers/basic_auth/MSNT/msntauth.conf.default squid-2.7.STABLE5/helpers/basic_auth/MSNT/msntauth.conf.default +--- squid-2.7.STABLE5.orig/helpers/basic_auth/MSNT/msntauth.conf.default 2002-06-26 18:44:28.000000000 +0000 ++++ squid-2.7.STABLE5/helpers/basic_auth/MSNT/msntauth.conf.default 2008-10-19 09:48:02.000000000 +0000 +@@ -8,6 +8,6 @@ + server other_PDC other_BDC otherdomain + + # Denied and allowed users. Comment these if not needed. +-#denyusers /usr/local/squid/etc/msntauth.denyusers +-#allowusers /usr/local/squid/etc/msntauth.allowusers ++#denyusers /etc/squid/msntauth.denyusers ++#allowusers /etc/squid/msntauth.allowusers + +diff -Nru squid-2.7.STABLE5.orig/helpers/basic_auth/SMB/Makefile.am squid-2.7.STABLE5/helpers/basic_auth/SMB/Makefile.am +--- squid-2.7.STABLE5.orig/helpers/basic_auth/SMB/Makefile.am 2005-05-17 16:56:26.000000000 +0000 ++++ squid-2.7.STABLE5/helpers/basic_auth/SMB/Makefile.am 2008-10-19 09:48:02.000000000 +0000 +@@ -14,7 +14,7 @@ + ## FIXME: autoconf should test for the samba path. + + SMB_AUTH_HELPER = smb_auth.sh +-SAMBAPREFIX=/usr/local/samba ++SAMBAPREFIX=/usr + SMB_AUTH_HELPER_PATH = $(libexecdir)/$(SMB_AUTH_HELPER) + + libexec_SCRIPTS = $(SMB_AUTH_HELPER) +diff -Nru squid-2.7.STABLE5.orig/helpers/basic_auth/SMB/smb_auth.sh squid-2.7.STABLE5/helpers/basic_auth/SMB/smb_auth.sh +--- squid-2.7.STABLE5.orig/helpers/basic_auth/SMB/smb_auth.sh 2001-01-07 23:36:46.000000000 +0000 ++++ squid-2.7.STABLE5/helpers/basic_auth/SMB/smb_auth.sh 2008-10-19 09:48:02.000000000 +0000 +@@ -24,7 +24,7 @@ + read AUTHSHARE + read AUTHFILE + read SMBUSER +-read SMBPASS ++read -r SMBPASS + + # Find domain controller + echo "Domain name: $DOMAINNAME" +@@ -47,7 +47,7 @@ + addropt="" + fi + echo "Query address options: $addropt" +-dcip=`$SAMBAPREFIX/bin/nmblookup $addropt "$PASSTHROUGH#1c" | awk '/^[0-9.]+ / { print $1 ; exit }'` ++dcip=`$SAMBAPREFIX/bin/nmblookup $addropt "$PASSTHROUGH#1c" | awk '/^[0-9.]+\..+ / { print $1 ; exit }'` + echo "Domain controller IP address: $dcip" + [ -n "$dcip" ] || exit 1 + +diff -Nru squid-2.7.STABLE5.orig/helpers/external_acl/session/squid_session.8 squid-2.7.STABLE5/helpers/external_acl/session/squid_session.8 +--- squid-2.7.STABLE5.orig/helpers/external_acl/session/squid_session.8 2007-01-06 17:28:35.000000000 +0000 ++++ squid-2.7.STABLE5/helpers/external_acl/session/squid_session.8 2008-10-19 09:48:02.000000000 +0000 +@@ -35,7 +35,7 @@ + .P + Configuration example using the default automatic mode + .IP +-external_acl_type session ttl=300 negative_ttl=0 children=1 concurrency=200 %LOGIN /usr/local/squid/libexec/squid_session ++external_acl_type session ttl=300 negative_ttl=0 children=1 concurrency=200 %LOGIN /usr/libexec/squid/squid_session + .IP + acl session external session + .IP +diff -Nru squid-2.7.STABLE5.orig/helpers/external_acl/unix_group/squid_unix_group.8 squid-2.7.STABLE5/helpers/external_acl/unix_group/squid_unix_group.8 +--- squid-2.7.STABLE5.orig/helpers/external_acl/unix_group/squid_unix_group.8 2006-05-14 15:07:24.000000000 +0000 ++++ squid-2.7.STABLE5/helpers/external_acl/unix_group/squid_unix_group.8 2008-10-19 09:48:02.000000000 +0000 +@@ -27,7 +27,7 @@ + This squid.conf example defines two Squid acls. usergroup1 matches users in group1, and usergroup2 + matches users in group2 or group3 + .IP +-external_acl_type unix_group %LOGIN /usr/local/squid/libexec/squid_unix_group -p ++external_acl_type unix_group %LOGIN /usr/libexec/squid/squid_unix_group -p + .IP + acl usergroup1 external unix_group group1 + .IP +diff -Nru squid-2.7.STABLE5.orig/src/access_log.c squid-2.7.STABLE5/src/access_log.c +--- squid-2.7.STABLE5.orig/src/access_log.c 2008-03-18 02:48:43.000000000 +0000 ++++ squid-2.7.STABLE5/src/access_log.c 2008-10-19 09:48:02.000000000 +0000 +@@ -1261,7 +1261,7 @@ + LogfileStatus = LOG_ENABLE; + } + #if HEADERS_LOG +- headerslog = logfileOpen("/usr/local/squid/logs/headers.log", MAX_URL << 1, 0); ++ headerslog = logfileOpen("/var/log/squid/headers.log", MAX_URL << 1, 0); + assert(NULL != headerslog); + #endif + #if FORW_VIA_DB +diff -Nru squid-2.7.STABLE5.orig/src/cf.data.pre squid-2.7.STABLE5/src/cf.data.pre +--- squid-2.7.STABLE5.orig/src/cf.data.pre 2008-09-25 02:33:37.000000000 +0000 ++++ squid-2.7.STABLE5/src/cf.data.pre 2008-10-19 09:48:02.000000000 +0000 +@@ -676,6 +676,8 @@ + acl Safe_ports port 488 # gss-http + acl Safe_ports port 591 # filemaker + acl Safe_ports port 777 # multiling http ++acl Safe_ports port 901 # SWAT ++acl purge method PURGE + acl CONNECT method CONNECT + NOCOMMENT_END + DOC_END +@@ -709,6 +711,9 @@ + # Only allow cachemgr access from localhost + http_access allow manager localhost + http_access deny manager ++# Only allow purge requests from localhost ++http_access allow purge localhost ++http_access deny purge + # Deny requests to unknown ports + http_access deny !Safe_ports + # Deny CONNECT to other than SSL ports +@@ -726,6 +731,9 @@ + # from where browsing should be allowed + http_access allow localnet + ++# Allow the localhost to have access by default ++http_access allow localhost ++ + # And finally deny all other access to this proxy + http_access deny all + NOCOMMENT_END +@@ -3745,11 +3753,11 @@ + + NAME: cache_mgr + TYPE: string +-DEFAULT: webmaster ++DEFAULT: root + LOC: Config.adminEmail + DOC_START + Email-address of local cache manager who will receive +- mail if the cache dies. The default is "webmaster". ++ mail if the cache dies. The default is "root". + DOC_END + + NAME: mail_from +@@ -3778,12 +3786,12 @@ + + NAME: cache_effective_user + TYPE: string +-DEFAULT: nobody ++DEFAULT: squid + LOC: Config.effectiveUser + DOC_START + If you start Squid as root, it will change its effective/real + UID/GID to the user specified below. The default is to change +- to UID to nobody. If you define cache_effective_user, but not ++ to UID to squid. If you define cache_effective_user, but not + cache_effective_group, Squid sets the GID to the effective + user's default group ID (taken from the password file) and + supplementary group list from the from groups membership of +@@ -4420,12 +4428,12 @@ + NAME: snmp_port + TYPE: ushort + LOC: Config.Port.snmp +-DEFAULT: 3401 ++DEFAULT: 0 + IFDEF: SQUID_SNMP + DOC_START + Squid can now serve statistics and status information via SNMP. +- By default it listens to port 3401 on the machine. If you don't +- wish to use SNMP, set this to "0". ++ By default snmp_port is disabled. If you wish to use SNMP, ++ set this to "3401" (or any other number you like). + DOC_END + + NAME: snmp_access +@@ -4496,12 +4504,12 @@ + NAME: htcp_port + IFDEF: USE_HTCP + TYPE: ushort +-DEFAULT: 4827 ++DEFAULT: 0 + LOC: Config.Port.htcp + DOC_START + The port number where Squid sends and receives HTCP queries to +- and from neighbor caches. Default is 4827. To disable use +- "0". ++ and from neighbor caches. To turn it on you want to set it to ++ 4827. By default it is set to "0" (disabled). + DOC_END + + NAME: log_icp_queries +@@ -5398,6 +5406,9 @@ + If you disable this, it will appear as + + X-Forwarded-For: unknown ++NOCOMMENT_START ++forwarded_for off ++NOCOMMENT_END + DOC_END + + NAME: cachemgr_passwd +diff -Nru squid-2.7.STABLE5.orig/src/client_side.c squid-2.7.STABLE5/src/client_side.c +--- squid-2.7.STABLE5.orig/src/client_side.c 2008-10-06 21:27:44.000000000 +0000 ++++ squid-2.7.STABLE5/src/client_side.c 2008-10-19 09:48:02.000000000 +0000 +@@ -4706,14 +4706,7 @@ + debug(83, 2) ("clientNegotiateSSL: Session %p reused on FD %d (%s:%d)\n", SSL_get_session(ssl), fd, fd_table[fd].ipaddr, (int) fd_table[fd].remote_port); + } else { + if (do_debug(83, 4)) { +- /* Write out the SSL session details.. actually the call below, but +- * OpenSSL headers do strange typecasts confusing GCC.. */ +- /* PEM_write_SSL_SESSION(debug_log, SSL_get_session(ssl)); */ +-#if defined(OPENSSL_VERSION_NUMBER) && OPENSSL_VERSION_NUMBER >= 0x00908000L +- PEM_ASN1_write((i2d_of_void *) i2d_SSL_SESSION, PEM_STRING_SSL_SESSION, debug_log, (char *) SSL_get_session(ssl), NULL, NULL, 0, NULL, NULL); +-#else + PEM_ASN1_write(i2d_SSL_SESSION, PEM_STRING_SSL_SESSION, debug_log, (char *) SSL_get_session(ssl), NULL, NULL, 0, NULL, NULL); +-#endif + /* Note: This does not automatically fflush the log file.. */ + } + debug(83, 2) ("clientNegotiateSSL: New session %p on FD %d (%s:%d)\n", SSL_get_session(ssl), fd, fd_table[fd].ipaddr, (int) fd_table[fd].remote_port); +diff -Nru squid-2.7.STABLE5.orig/src/defines.h squid-2.7.STABLE5/src/defines.h +--- squid-2.7.STABLE5.orig/src/defines.h 2007-09-24 13:31:19.000000000 +0000 ++++ squid-2.7.STABLE5/src/defines.h 2008-10-19 09:48:02.000000000 +0000 +@@ -259,7 +259,7 @@ + + /* were to look for errors if config path fails */ + #ifndef DEFAULT_SQUID_ERROR_DIR +-#define DEFAULT_SQUID_ERROR_DIR "/usr/local/squid/etc/errors" ++#define DEFAULT_SQUID_ERROR_DIR "/usr/share/squid/errors/English" + #endif + + /* gb_type operations */ +diff -Nru squid-2.7.STABLE5.orig/src/main.c squid-2.7.STABLE5/src/main.c +--- squid-2.7.STABLE5.orig/src/main.c 2008-09-25 02:21:52.000000000 +0000 ++++ squid-2.7.STABLE5/src/main.c 2008-10-19 09:48:02.000000000 +0000 +@@ -376,6 +376,22 @@ + asnFreeMemory(); + } + ++#if USE_UNLINKD ++static int ++needUnlinkd(void) ++{ ++ int i; ++ int r = 0; ++ for (i = 0; i < Config.cacheSwap.n_configured; i++) { ++ if (strcmp(Config.cacheSwap.swapDirs[i].type, "ufs") == 0 || ++ strcmp(Config.cacheSwap.swapDirs[i].type, "aufs") == 0 || ++ strcmp(Config.cacheSwap.swapDirs[i].type, "diskd") == 0) ++ r++; ++ } ++ return r; ++} ++#endif ++ + static void + mainReconfigure(void) + { +@@ -614,7 +630,7 @@ + + if (!configured_once) { + #if USE_UNLINKD +- unlinkdInit(); ++ if (needUnlinkd()) unlinkdInit(); + #endif + urlInitialize(); + cachemgrInit(); +@@ -637,6 +653,9 @@ + #if USE_WCCPv2 + wccp2Init(); + #endif ++#if USE_UNLINKD ++ if (needUnlinkd()) unlinkdInit(); ++#endif + serverConnectionsOpen(); + neighbors_init(); + if (Config.chroot_dir) +diff -Nru squid-2.7.STABLE5.orig/src/Makefile.am squid-2.7.STABLE5/src/Makefile.am +--- squid-2.7.STABLE5.orig/src/Makefile.am 2008-01-02 15:50:39.000000000 +0000 ++++ squid-2.7.STABLE5/src/Makefile.am 2008-10-19 09:48:02.000000000 +0000 +@@ -340,13 +340,13 @@ + DEFAULT_CONFIG_FILE = $(sysconfdir)/squid.conf + DEFAULT_MIME_TABLE = $(sysconfdir)/mime.conf + DEFAULT_DNSSERVER = $(libexecdir)/`echo dnsserver | sed '$(transform);s/$$/$(EXEEXT)/'` +-DEFAULT_LOG_PREFIX = $(localstatedir)/logs ++DEFAULT_LOG_PREFIX = $(localstatedir)/log/squid + DEFAULT_CACHE_LOG = $(DEFAULT_LOG_PREFIX)/cache.log + DEFAULT_ACCESS_LOG = $(DEFAULT_LOG_PREFIX)/access.log + DEFAULT_STORE_LOG = $(DEFAULT_LOG_PREFIX)/store.log +-DEFAULT_PID_FILE = $(DEFAULT_LOG_PREFIX)/squid.pid ++DEFAULT_PID_FILE = $(localstatedir)/run/squid.pid + DEFAULT_NETDB_FILE = $(DEFAULT_LOG_PREFIX)/netdb.state +-DEFAULT_SWAP_DIR = $(localstatedir)/cache ++DEFAULT_SWAP_DIR = $(localstatedir)/cache/squid + DEFAULT_PINGER = $(libexecdir)/`echo pinger | sed '$(transform);s/$$/$(EXEEXT)/'` + DEFAULT_UNLINKD = $(libexecdir)/`echo unlinkd | sed '$(transform);s/$$/$(EXEEXT)/'` + DEFAULT_DISKD = $(libexecdir)/`echo diskd-daemon | sed '$(transform);s/$$/$(EXEEXT)/'` diff --git a/net-proxy/squid/files/squid-2.7.5-heimdal.patch b/net-proxy/squid/files/squid-2.7.5-heimdal.patch new file mode 100644 index 000000000000..6ea700ef8fbb --- /dev/null +++ b/net-proxy/squid/files/squid-2.7.5-heimdal.patch @@ -0,0 +1,18 @@ +diff -Nru squid-2.7.STABLE5.orig/helpers/negotiate_auth/squid_kerb_auth/Makefile.am squid-2.7.STABLE5/helpers/negotiate_auth/squid_kerb_auth/Makefile.am +--- squid-2.7.STABLE5.orig/helpers/negotiate_auth/squid_kerb_auth/Makefile.am 2007-05-14 23:36:29.000000000 +0000 ++++ squid-2.7.STABLE5/helpers/negotiate_auth/squid_kerb_auth/Makefile.am 2008-10-19 09:50:22.000000000 +0000 +@@ -18,10 +18,10 @@ + #-L$(top_builddir)/lib -lmiscutil $(XTRA_LIBS) + + # HEIMDAL +-#KERBINC = -DHEIMDAL -I/usr/include/heimdal +-#KERBLIBS = -lgssapi -lkrb5 -lcom_err -lasn1 -lroken ++KERBINC = -DHEIMDAL -I/usr/include/heimdal ++KERBLIBS = -lgssapi -lkrb5 -lcom_err -lasn1 -lroken + + # MIT +-KERBINC = +-KERBLIBS = -lgssapi_krb5 -lkrb5 -lcom_err ++#KERBINC = ++#KERBLIBS = -lgssapi_krb5 -lkrb5 -lcom_err + diff --git a/net-proxy/squid/squid-2.7.4-r1.ebuild b/net-proxy/squid/squid-2.7.4-r1.ebuild deleted file mode 100644 index 39f3ad1f2625..000000000000 --- a/net-proxy/squid/squid-2.7.4-r1.ebuild +++ /dev/null @@ -1,187 +0,0 @@ -# Copyright 1999-2008 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/net-proxy/squid/squid-2.7.4-r1.ebuild,v 1.2 2008/09/12 16:38:43 armin76 Exp $ - -WANT_AUTOCONF="latest" -WANT_AUTOMAKE="latest" - -inherit eutils pam toolchain-funcs autotools linux-info - -#lame archive versioning scheme.. -S_PMV="${PV%%.*}" -S_PV="${PV%.*}" -S_PL="${PV##*.}" -S_PL="${S_PL/_rc/-RC}" -S_PP="${PN}-${S_PV}.STABLE${S_PL}" - -DESCRIPTION="A full-featured web proxy cache" -HOMEPAGE="http://www.squid-cache.org/" -SRC_URI="http://www.squid-cache.org/Versions/v${S_PMV}/${S_PV}/${S_PP}.tar.gz" - -LICENSE="GPL-2" -SLOT="0" -KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~mips ~ppc ~ppc64 ~sparc ~x86 ~x86-fbsd" -IUSE="pam ldap samba sasl nis ssl snmp selinux logrotate \ - qos zero-penalty-hit \ - pf-transparent ipf-transparent \ - elibc_uclibc kernel_linux" - -DEPEND="pam? ( virtual/pam ) - ldap? ( net-nds/openldap ) - ssl? ( dev-libs/openssl ) - sasl? ( dev-libs/cyrus-sasl ) - selinux? ( sec-policy/selinux-squid ) - !x86-fbsd? ( logrotate? ( app-admin/logrotate ) ) - >=sys-libs/db-4 - dev-lang/perl" -RDEPEND="${DEPEND} - samba? ( net-fs/samba )" - -S="${WORKDIR}/${S_PP}" - -pkg_setup() { - if use qos; then - eerror "qos patch is no longer supported!" - eerror "Please remove qos USE flag and use zph* config options instead." - die "unsupported USE flags detected" - fi - if use zero-penalty-hit; then - ewarn "This version supports natively IP TOS/Priority mangling," - ewarn "but it does not support zph_preserve_miss_tos." - ewarn "If you need that, please use squid-3.0.6-r2 or higher." - fi - enewgroup squid 31 - enewuser squid 31 -1 /var/cache/squid squid -} - -src_unpack() { - unpack ${A} || die "unpack failed" - - cd "${S}" || die "source dir not found" - epatch "${FILESDIR}"/${P}-gentoo.patch - epatch "${FILESDIR}"/${P}-charset.patch - eautoreconf -} - -src_compile() { - local basic_modules="getpwnam,NCSA,MSNT" - use samba && basic_modules="SMB,multi-domain-NTLM,${basic_modules}" - use ldap && basic_modules="LDAP,${basic_modules}" - use pam && basic_modules="PAM,${basic_modules}" - use sasl && basic_modules="SASL,${basic_modules}" - use nis && ! use elibc_uclibc && basic_modules="YP,${basic_modules}" - - local ext_helpers="ip_user,session,unix_group" - use samba && ext_helpers="wbinfo_group,${ext_helpers}" - use ldap && ext_helpers="ldap_group,${ext_helpers}" - - local ntlm_helpers="fakeauth" - use samba && ntlm_helpers="SMB,${ntlm_helpers}" - - local myconf="" - - # Support for uclibc #61175 - if use elibc_uclibc; then - myconf="${myconf} --enable-storeio=ufs,diskd,aufs,null" - myconf="${myconf} --disable-async-io" - else - myconf="${myconf} --enable-storeio=ufs,diskd,coss,aufs,null" - myconf="${myconf} --enable-async-io" - fi - - if use kernel_linux; then - myconf="${myconf} --enable-linux-netfilter" - if kernel_is ge 2 6 && linux_chkconfig_present EPOLL ; then - myconf="${myconf} --enable-epoll" - fi - elif use kernel_FreeBSD || use kernel_OpenBSD || use kernel_NetBSD ; then - myconf="${myconf} --enable-kqueue" - if use pf-transparent; then - myconf="${myconf} --enable-pf-transparent" - elif use ipf-transparent; then - myconf="${myconf} --enable-ipf-transparent" - fi - fi - - export CC=$(tc-getCC) - - econf \ - --sysconfdir=/etc/squid \ - --libexecdir=/usr/libexec/squid \ - --localstatedir=/var \ - --datadir=/usr/share/squid \ - --enable-auth="basic,digest,ntlm" \ - --enable-removal-policies="lru,heap" \ - --enable-digest-auth-helpers="password" \ - --enable-basic-auth-helpers="${basic_modules}" \ - --enable-external-acl-helpers="${ext_helpers}" \ - --enable-ntlm-auth-helpers="${ntlm_helpers}" \ - --enable-ident-lookups \ - --enable-useragent-log \ - --enable-cache-digests \ - --enable-delay-pools \ - --enable-referer-log \ - --enable-arp-acl \ - --with-pthreads \ - --with-large-files \ - --enable-htcp \ - --enable-carp \ - --enable-follow-x-forwarded-for \ - --with-maxfd=8192 \ - $(use_enable snmp) \ - $(use_enable ssl) \ - ${myconf} || die "econf failed" - - emake || die "emake failed" -} - -src_install() { - make DESTDIR="${D}" install || die "make install failed" - - # need suid root for looking into /etc/shadow - fowners root:squid /usr/libexec/squid/ncsa_auth - fowners root:squid /usr/libexec/squid/pam_auth - fperms 4750 /usr/libexec/squid/ncsa_auth - fperms 4750 /usr/libexec/squid/pam_auth - - # some cleanups - rm -f "${D}"/usr/bin/Run* - - dodoc CONTRIBUTORS CREDITS ChangeLog QUICKSTART SPONSORS doc/*.txt \ - helpers/ntlm_auth/no_check/README.no_check_ntlm_auth - newdoc helpers/basic_auth/SMB/README README.auth_smb - dohtml helpers/basic_auth/MSNT/README.html RELEASENOTES.html - newdoc helpers/basic_auth/LDAP/README README.auth_ldap - doman helpers/basic_auth/LDAP/*.8 - dodoc helpers/basic_auth/SASL/squid_sasl_auth* - - newpamd "${FILESDIR}/squid.pam" squid - newconfd "${FILESDIR}/squid.confd" squid - if use logrotate; then - newinitd "${FILESDIR}/squid.initd-logrotate" squid - insinto /etc/logrotate.d - newins "${FILESDIR}/squid.logrotate" squid - else - newinitd "${FILESDIR}/squid.initd" squid - exeinto /etc/cron.weekly - newexe "${FILESDIR}/squid.cron" squid.cron - fi - - rm -rf "${D}"/var - diropts -m0755 -o squid -g squid - keepdir /var/cache/squid /var/log/squid -} - -pkg_postinst() { - echo - ewarn "Squid authentication helpers have been installed suid root." - ewarn "This allows shadow based authentication (see bug #52977 for more)." - echo - ewarn "Be careful what type of cache_dir you select!" - ewarn " 'diskd' is optimized for high levels of traffic, but it might seem slow" - ewarn "when there isn't sufficient traffic to keep squid reasonably busy." - ewarn " If your traffic level is low to moderate, use 'aufs' or 'ufs'." - echo - ewarn "Squid can be configured to run in transparent mode like this:" - ewarn " ${HILITE}http_port internal-addr:3128 transparent${NORMAL}" -} diff --git a/net-proxy/squid/squid-2.7.5.ebuild b/net-proxy/squid/squid-2.7.5.ebuild new file mode 100644 index 000000000000..01f66c60d521 --- /dev/null +++ b/net-proxy/squid/squid-2.7.5.ebuild @@ -0,0 +1,199 @@ +# Copyright 1999-2008 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/net-proxy/squid/squid-2.7.5.ebuild,v 1.1 2008/10/19 10:00:35 mrness Exp $ + +WANT_AUTOCONF="latest" +WANT_AUTOMAKE="latest" + +inherit eutils pam toolchain-funcs autotools linux-info + +#lame archive versioning scheme.. +S_PMV="${PV%%.*}" +S_PV="${PV%.*}" +S_PL="${PV##*.}" +S_PL="${S_PL/_rc/-RC}" +S_PP="${PN}-${S_PV}.STABLE${S_PL}" + +DESCRIPTION="A full-featured web proxy cache" +HOMEPAGE="http://www.squid-cache.org/" +SRC_URI="http://www.squid-cache.org/Versions/v${S_PMV}/${S_PV}/${S_PP}.tar.gz" + +LICENSE="GPL-2" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~mips ~ppc ~ppc64 ~sparc ~x86 ~x86-fbsd" +IUSE="pam ldap samba sasl kerberos nis ssl snmp selinux logrotate \ + mysql postgres sqlite \ + qos zero-penalty-hit \ + pf-transparent ipf-transparent \ + elibc_uclibc kernel_linux" + +DEPEND="pam? ( virtual/pam ) + ldap? ( net-nds/openldap ) + kerberos? ( || ( app-crypt/mit-krb5 app-crypt/heimdal ) ) + ssl? ( dev-libs/openssl ) + sasl? ( dev-libs/cyrus-sasl ) + selinux? ( sec-policy/selinux-squid ) + !x86-fbsd? ( logrotate? ( app-admin/logrotate ) ) + >=sys-libs/db-4 + dev-lang/perl" +RDEPEND="${DEPEND} + samba? ( net-fs/samba ) + mysql? ( dev-perl/DBD-mysql ) + postgres? ( dev-perl/DBD-Pg ) + sqlite? ( dev-perl/DBD-SQLite )" + +S="${WORKDIR}/${S_PP}" + +pkg_setup() { + if use qos; then + eerror "qos patch is no longer supported!" + eerror "Please remove qos USE flag and use zph* config options instead." + die "unsupported USE flags detected" + fi + if use zero-penalty-hit; then + ewarn "This version supports natively IP TOS/Priority mangling," + ewarn "but it does not support zph_preserve_miss_tos." + ewarn "If you need that, please use squid-3.0.6-r2 or higher." + fi + enewgroup squid 31 + enewuser squid 31 -1 /var/cache/squid squid +} + +src_unpack() { + unpack ${A} || die "unpack failed" + + cd "${S}" || die "source dir not found" + epatch "${FILESDIR}"/${P}-gentoo.patch + has_version app-crypt/mit-krb5 || epatch "${FILESDIR}"/${P}-heimdal.patch + eautoreconf +} + +src_compile() { + local basic_modules="getpwnam,NCSA,MSNT" + use samba && basic_modules="SMB,multi-domain-NTLM,${basic_modules}" + use ldap && basic_modules="LDAP,${basic_modules}" + use pam && basic_modules="PAM,${basic_modules}" + use sasl && basic_modules="SASL,${basic_modules}" + use nis && ! use elibc_uclibc && basic_modules="YP,${basic_modules}" + if use mysql || use postgres || use sqlite ; then + basic_modules="DB,${basic_modules}" + fi + + local ext_helpers="ip_user,session,unix_group" + use samba && ext_helpers="wbinfo_group,${ext_helpers}" + use ldap && ext_helpers="ldap_group,${ext_helpers}" + + local ntlm_helpers="fakeauth" + use samba && ntlm_helpers="SMB,${ntlm_helpers}" + + local negotiate_helpers= + use kerberos && local negotiate_helpers="squid_kerb_auth" + + local myconf="" + + # Support for uclibc #61175 + if use elibc_uclibc; then + myconf="${myconf} --enable-storeio=ufs,diskd,aufs,null" + myconf="${myconf} --disable-async-io" + else + myconf="${myconf} --enable-storeio=ufs,diskd,coss,aufs,null" + myconf="${myconf} --enable-async-io" + fi + + if use kernel_linux; then + myconf="${myconf} --enable-linux-netfilter" + if kernel_is ge 2 6 && linux_chkconfig_present EPOLL ; then + myconf="${myconf} --enable-epoll" + fi + elif use kernel_FreeBSD || use kernel_OpenBSD || use kernel_NetBSD ; then + myconf="${myconf} --enable-kqueue" + if use pf-transparent; then + myconf="${myconf} --enable-pf-transparent" + elif use ipf-transparent; then + myconf="${myconf} --enable-ipf-transparent" + fi + fi + + export CC=$(tc-getCC) + + econf \ + --sysconfdir=/etc/squid \ + --libexecdir=/usr/libexec/squid \ + --localstatedir=/var \ + --datadir=/usr/share/squid \ + --enable-auth="basic,digest,ntlm" \ + --enable-removal-policies="lru,heap" \ + --enable-digest-auth-helpers="password" \ + --enable-basic-auth-helpers="${basic_modules}" \ + --enable-external-acl-helpers="${ext_helpers}" \ + --enable-ntlm-auth-helpers="${ntlm_helpers}" \ + --enable-negotiate-auth-helpers="${negotiate_helpers}" \ + --enable-ident-lookups \ + --enable-useragent-log \ + --enable-cache-digests \ + --enable-delay-pools \ + --enable-referer-log \ + --enable-arp-acl \ + --with-pthreads \ + --with-large-files \ + --enable-htcp \ + --enable-carp \ + --enable-follow-x-forwarded-for \ + --with-maxfd=8192 \ + $(use_enable snmp) \ + $(use_enable ssl) \ + ${myconf} || die "econf failed" + + emake || die "emake failed" +} + +src_install() { + make DESTDIR="${D}" install || die "make install failed" + + # need suid root for looking into /etc/shadow + fowners root:squid /usr/libexec/squid/ncsa_auth + fowners root:squid /usr/libexec/squid/pam_auth + fperms 4750 /usr/libexec/squid/ncsa_auth + fperms 4750 /usr/libexec/squid/pam_auth + + # some cleanups + rm -f "${D}"/usr/bin/Run* + + dodoc CONTRIBUTORS CREDITS ChangeLog QUICKSTART SPONSORS doc/*.txt \ + helpers/ntlm_auth/no_check/README.no_check_ntlm_auth + newdoc helpers/basic_auth/SMB/README README.auth_smb + dohtml helpers/basic_auth/MSNT/README.html RELEASENOTES.html + newdoc helpers/basic_auth/LDAP/README README.auth_ldap + doman helpers/basic_auth/LDAP/*.8 + dodoc helpers/basic_auth/SASL/squid_sasl_auth* + + newpamd "${FILESDIR}/squid.pam" squid + newconfd "${FILESDIR}/squid.confd" squid + if use logrotate; then + newinitd "${FILESDIR}/squid.initd-logrotate" squid + insinto /etc/logrotate.d + newins "${FILESDIR}/squid.logrotate" squid + else + newinitd "${FILESDIR}/squid.initd" squid + exeinto /etc/cron.weekly + newexe "${FILESDIR}/squid.cron" squid.cron + fi + + rm -rf "${D}"/var + diropts -m0755 -o squid -g squid + keepdir /var/cache/squid /var/log/squid +} + +pkg_postinst() { + echo + ewarn "Squid authentication helpers have been installed suid root." + ewarn "This allows shadow based authentication (see bug #52977 for more)." + echo + ewarn "Be careful what type of cache_dir you select!" + ewarn " 'diskd' is optimized for high levels of traffic, but it might seem slow" + ewarn "when there isn't sufficient traffic to keep squid reasonably busy." + ewarn " If your traffic level is low to moderate, use 'aufs' or 'ufs'." + echo + ewarn "Squid can be configured to run in transparent mode like this:" + ewarn " ${HILITE}http_port internal-addr:3128 transparent${NORMAL}" +} -- cgit v1.2.3-65-gdbad