Hello community,

here is the log from the commit of package squid for openSUSE:Factory checked 
in at 2015-03-11 09:56:44
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/squid (Old)
 and      /work/SRC/openSUSE:Factory/.squid.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "squid"

Changes:
--------
--- /work/SRC/openSUSE:Factory/squid/squid.changes      2015-01-09 
20:51:01.000000000 +0100
+++ /work/SRC/openSUSE:Factory/.squid.new/squid.changes 2015-03-11 
09:56:45.000000000 +0100
@@ -1,0 +2,34 @@
+Wed Feb 18 23:28:06 UTC 2015 - [email protected]
+
+- remove obsolete RELEASENOTES.html
+  * included in package
+
+-------------------------------------------------------------------
+Wed Feb 11 22:35:30 UTC 2015 - [email protected]
+
+- Update to 3.4.11:
+  * cachemgr.cgi: memory leak in request parser
+  * Fix typo on commStartSslClose
+  * Fix SQUID_CC_REQUIRE_ARGUMENT autoconf macro
+  * Bug #3760: squidclient ignores --disable-ipv6
+  * Bug #3664: ssl_crtd fails to build on OpenSolaris/OpenIndiana/Solaris 11
+  * Bug #3754: configure doesnt detect IPFilter 5.1.2 system headers
+  * Bug #4164: SEGFAULT when %W formating code used in errorpages
+  * Deleting first fs left psstate->servers pointing to uninitialized memory
+  * Maintenance: check release notes on packaging
+  * Bug #4057: Avoid on-exit crashes when adaptation is enabled.
+
+-------------------------------------------------------------------
+Sat Jan 10 01:08:40 UTC 2015 - [email protected]
+
+- recover old spec
+  * merge in suggested changes from tchvatal
+- fix permissions for SLE11
+  * revert suid bit for pinger and basic_pam_auth
+    add them to permissions file (commented)
+- readd deleted files
+  * RELEASENOTES
+  * permissions (needed for SLE11)
+  * init.rh
+
+-------------------------------------------------------------------

Old:
----
  squid-3.4.10.tar.bz2
  squid-3.4.10.tar.bz2.asc

New:
----
  squid-3.4.11.tar.bz2
  squid-3.4.11.tar.bz2.asc
  squid.init
  squid.init.rh
  squid.permissions

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ squid.spec ++++++
--- /var/tmp/diff_new_pack.YvjQs3/_old  2015-03-11 09:56:47.000000000 +0100
+++ /var/tmp/diff_new_pack.YvjQs3/_new  2015-03-11 09:56:47.000000000 +0100
@@ -18,8 +18,9 @@
 
 %define         squidlibdir %{_libdir}/squid
 %define         squidconfdir %{_sysconfdir}/squid
+
 Name:           squid
-Version:        3.4.10
+Version:        3.4.11
 Release:        0
 Summary:        A fully featured HTTP/1.0 proxy
 License:        GPL-2.0+
@@ -27,13 +28,18 @@
 Url:            http://www.squid-cache.org/Versions/v3/3.4
 Source0:        
http://www.squid-cache.org/Versions/v3/3.4/%{name}-%{version}.tar.bz2
 Source1:        
http://www.squid-cache.org/Versions/v3/3.4/%{name}-%{version}.tar.bz2.asc
+
+Source3:        squid.init
 Source4:        squid.sysconfig
 Source5:        pam.squid
 Source6:        unsquid.pl
 Source7:        %{name}.logrotate
+Source9:        %{name}.permissions
 Source10:       README.kerberos
 Source11:       %{name}.service
 Source13:       %{name}.keyring
+Source14:       squid.init.rh
+
 # do not show some rpmlint warnings
 Source99:       squid-rpmlintrc
 # some useful defaults for squid
@@ -45,47 +51,89 @@
 Patch102:       %{name}-compiled_without_RPM_OPT_FLAGS.patch
 # patch fixes kerberos principalname handling 
(http://bugs.squid-cache.org/show_bug.cgi?id=4042)
 Patch103:       squid-brokenad.patch
-BuildRequires:  cyrus-sasl-devel
+
+BuildRoot:      %{_tmppath}/%{name}-%{version}-build
 BuildRequires:  db-devel
+# needed by bootstrap.sh
+BuildRequires:  cyrus-sasl-devel
 BuildRequires:  ed
 BuildRequires:  expat
+#
 BuildRequires:  fdupes
 BuildRequires:  gcc-c++
 BuildRequires:  krb5-devel
 BuildRequires:  libcap-devel
 BuildRequires:  libexpat-devel
+%if 0%{?suse_version} <= 1140
+BuildRequires:  libtool
+%else
 BuildRequires:  libtool >= 2.4
+%endif
+%if 0%{?suse_version} < 1220
+BuildRequires:  libxml2-devel
+%else
+BuildRequires:  pkgconfig(libxml-2.0)
+%endif
 BuildRequires:  openldap2-devel
 BuildRequires:  opensp-devel
 BuildRequires:  openssl-devel
 BuildRequires:  pam-devel
 BuildRequires:  pkgconfig
 BuildRequires:  sharutils
-BuildRequires:  systemd
-BuildRequires:  pkgconfig(libxml-2.0)
-Requires:       logrotate
-Requires:       sed
+
+%if 0%{?suse_version}
 Requires(post): %fillup_prereq
-Requires(pre):  %insserv_prereq
 Requires(pre):  %{_bindir}/getent
+%if 0%{?suse_version} < 1140
 Requires(pre):  permissions
+%else
+Requires(pre):  permissions >= 2014.11
+%endif
 Requires(pre):  pwdutils
-Provides:       %{name}3 = %{version}
+%else
+Requires(pre): shadow-utils
+Requires(post): /sbin/chkconfig
+Requires(preun): /sbin/service /sbin/chkconfig
+Requires(postun): /sbin/service
+%endif
+
+%if 0%{?suse_version} > 1210
+BuildRequires:  systemd
+%{?systemd_requires}
+%define has_systemd 1
+%else
+Requires(pre):  %insserv_prereq
+%endif
+
+Requires:       logrotate
 Provides:       http_proxy
+
+# due to package rename
+# Wed Aug 15 17:40:30 UTC 2012
+Provides:       %{name}3 = %{version}
 Obsoletes:      %{name}3 < %{version}
-BuildRoot:      %{_tmppath}/%{name}-%{version}-build
-%{?systemd_requires}
 
 %description
-Squid is a fully-featured HTTP/1.0 proxy which is almost a fully-featured
-HTTP/1.1 proxy. Squid offers a rich access control, authorization and logging
-environment to develop web proxy and content serving applications.
-Squid offers a rich set of traffic optimization options, most of which are
-enabled by default for simpler installation and high performance.
+Squid is a fully-featured HTTP/1.0 proxy which is almost (but not quite - 
we're getting there!) a fully-featured HTTP/1.1 proxy. Squid offers a rich 
access control, authorization and logging environment to develop web proxy and 
content serving applications. Squid offers a rich set of traffic optimization 
options, most of which are enabled by default for simpler installation and high 
performance. 
+
+Squid 3.4 represents a new feature release above 3.3.
+
+The most important of these new features are:
+
+  * Helper protocol extensions
+  * SSL Server Certificate Validator
+  * Store-ID
+  * TPROXY Support for OpenBSD 5.1+ and FreeBSD 9+
+  * Transaction Annotations
+  * Multicast DNS
 
 %prep
+#setup -q -n %{name}-%{version}%{snap}
 %setup -q
 cp %{SOURCE10} .
+# upstream patches after RELEASE
+#
+##### other patches
 %patch100
 perl -p -i -e 's|%{_prefix}/local/bin/perl|%{_bindir}/perl|' `find -name 
"*.pl"`
 chmod a-x CREDITS
@@ -104,8 +152,15 @@
        --datadir=%{_datadir}/squid \
        --sharedstatedir=%{_localstatedir}/squid \
        --with-logdir=%{_localstatedir}/log/squid \
+%if 0%{?has_systemd}
        --with-pidfile=/run/squid.pid \
+%else
+       --with-pidfile=%{_localstatedir}/run/squid.pid \
+%endif
        --with-dl \
+%if 0%{?suse_version} <= 1140
+       --with-included-ltdl \
+%endif
        --enable-disk-io \
        --enable-storeio \
        --enable-removal-policies=heap,lru \
@@ -162,6 +217,11 @@
 mv %{buildroot}{%{_sysconfdir}/%{name}/,%{_datadir}/%{name}/}mime.conf.default
 ln -s %{_sysconfdir}/%{name}/mime.conf %{buildroot}%{_datadir}/%{name} # 
backward compatible
 
+%if 0%{?suse_version} < 1140
+# permissions file
+install -D -m 644 %{SOURCE9} %{buildroot}%{_sysconfdir}/permissions.d/%{name}
+%endif
+
 # install logrotate file
 install -D -m 644 %{SOURCE7} %{buildroot}%{_sysconfdir}/logrotate.d/%{name}
 
@@ -187,40 +247,73 @@
 done
 ln -sf %{_datadir}/%{name}/errors/de %{buildroot}%{squidconfdir}/errors
 
-# systemd service
-install -D -m 644 %{SOURCE11} %{buildroot}%{_unitdir}/%{name}.service
-ln -sf service %{buildroot}%{_sbindir}/rc%{name}
-install -D -m644 %{SOURCE4} 
%{buildroot}%{_localstatedir}/adm/fillup-templates/sysconfig.%{name}
-
 # fix file duplicates
+%if 0%{?suse_version} > 1030
 %fdupes -s %{buildroot}%{_prefix}
+%endif
+%if 0%{?fedora_version} > 8
+fdupes -q -n -r %{buildroot}%{_prefix}
+%endif
+
+# systemd vs SysVinit
+%if 0%{?has_systemd}
+  install -D -m 644 %{SOURCE11} %{buildroot}%{_unitdir}/%{name}.service
+  ln -sf %{_sbindir}/service %{buildroot}%{_sbindir}/rc%{name}
+%else # SysVinit
+  # fix postrotate script for SysVinit
+  sed -i -re 's@/usr/bin/systemctl.*@/etc/init.d/squid reload@g' 
%{buildroot}%{_sysconfdir}/logrotate.d/%{name}
+ %if 0%{?suse_version}
+  install -D %{SOURCE3} %{buildroot}%{_sysconfdir}/init.d/%{name}
+  ln -sf %{_sysconfdir}/init.d/%{name} %{buildroot}%{_sbindir}/rc%{name}
+ %else # lets just assume other are rh based ones...
+  install -D %{SOURCE14} %{buildroot}%{_sysconfdir}/init.d/%{name}
+ %endif
+%endif
+%if 0%{?suse_version}
+ install -D -m644 %{SOURCE4} 
%{buildroot}%{_localstatedir}/adm/fillup-templates/sysconfig.%{name}
+%else
+ install -D -m644 %{SOURCE4} %{buildroot}%{_sysconfdir}/sysconfig/%{name}
+%endif
 
 %pre
 # we need this group for /usr/sbin/pinger
-if [ -z "`%{_bindir}/getent group %{name} 2>/dev/null`" ]; then
+if [[ -z $(%{_bindir}/getent group %{name} 2>/dev/null) ]]; then
   %{_sbindir}/groupadd -g 31 -r %{name} 2>/dev/null
 fi
 # we need this group for squid (ntlmauth)
 # read access to /var/lib/samba/winbindd_privileged
-if [ -z "`%{_bindir}/getent group winbind 2>/dev/null`" ]; then
+if [[ -z $(%{_bindir}/getent group winbind 2>/dev/null) ]]; then
   %{_sbindir}/groupadd -r winbind 2>/dev/null
 fi
-if [ -z "`%{_bindir}/getent passwd squid 2>/dev/null`" ]; then
+if [[ -z $(%{_bindir}/getent passwd squid 2>/dev/null) ]]; then
   %{_sbindir}/useradd -c "WWW-proxy squid" -d %{_localstatedir}/cache/%{name} \
     -G winbind -g %{name} -o -u 31 -r -s /bin/false \
     %{name} 2>/dev/null
 fi
+# if default group is not squid, change it
+if [[ "$(%{_bindir}/id -ng %{name} 2>/dev/null)" != "%{name}" ]]; then
+  %{_sbindir}/usermod -g %{name} %{name} 2>/dev/null
+fi 
 # if squid is not member of winbind, add him
-if [ `%{_bindir}/id -nG %{name} 2>/dev/null | grep -q winbind >/dev/null; echo 
$?` -ne 0 ]; then
+if [[ $(%{_bindir}/id -nG %{name} 2>/dev/null | grep -q winbind >/dev/null; 
echo $?) -ne 0 ]]; then
   %{_sbindir}/usermod -G winbind %{name} 2>/dev/null
 fi
+
+%if 0%{?has_systemd}
 %service_add_pre %{name}.service
+%endif
 
 %post
-%set_permissions %{_sbindir}/pinger
+%if 0%{?suse_version} >= 1140
+ %if 0%{?set_permissions:1}
 %set_permissions %{_sbindir}/basic_pam_auth
+%set_permissions %{_sbindir}/pinger
 %set_permissions %{_localstatedir}/cache/squid/
 %set_permissions %{_localstatedir}/log/squid/
+ %else
+%run_permissions
+ %endif
+%endif
 # update mode?
 if [ "$1" -gt "1" ]; then
   if [ -e etc/%{name}.conf -a ! -L etc/%{name}.conf -a ! -e 
etc/%{name}/%{name}.conf ]; then
@@ -230,20 +323,53 @@
   # default group changed from nogroup to squid
   %{_sbindir}/usermod -g %{name} %{name}
 fi
-%fillup_only
+
+%if 0%{?has_systemd}
 %service_add_post squid.service
+%else
+ %if 0%{?suse_version}
+%{fillup_and_insserv -n "squid"}
+ %else
+   /sbin/chkconfig --add squid
+ %endif
+%endif
 
 %preun
+%if 0%{?has_systemd}
 %service_del_preun squid.service
+%else
+ %if 0%{?suse_version}
+%stop_on_removal squid
+ %else
+   if [ $1 = 0 ] ; then
+     service squid stop >/dev/null 2>&1
+     rm -f /var/log/squid/*
+     /sbin/chkconfig --del squid
+   fi
+ %endif
+%endif
 
+%if 0%{?suse_version}
 %verifyscript
 %verify_permissions -e %{_sbindir}/basic_pam_auth
 %verify_permissions -e %{_sbindir}/pinger
 %verify_permissions -e %{_localstatedir}/cache/squid/
 %verify_permissions -e %{_localstatedir}/log/squid/
+%endif
 
 %postun
+%if 0%{?has_systemd}
 %service_del_postun squid.service
+%else
+ %if 0%{?suse_version}
+%restart_on_update squid
+%insserv_cleanup
+ %else
+  if [ "$1" -ge "1" ] ; then
+    service squid condrestart >/dev/null 2>&1
+  fi
+ %endif
+%endif
 
 %files
 %defattr(-,root,root)
@@ -253,7 +379,11 @@
 %doc doc/contrib doc/scripts
 %doc doc/debug-sections.txt src/%{name}.conf.default
 %doc %{_mandir}/man?/*
+%if 0%{?has_systemd}
 %{_unitdir}/%{name}.service
+%else
+%{_sysconfdir}/init.d/%{name}
+%endif
 %verify(not user group mode) %attr(750,%{name},root) %dir 
%{_localstatedir}/cache/%{name}/
 %verify(not user group mode) %attr(750,%{name},root) %dir 
%{_localstatedir}/log/%{name}/
 %dir %{squidconfdir}
@@ -270,6 +400,9 @@
 %config %{squidconfdir}/%{name}.conf.default
 %config %{squidconfdir}/%{name}.conf.documented
 %config %{_sysconfdir}/pam.d/%{name}
+%if 0%{?suse_version} < 1140
+%config %{_sysconfdir}/permissions.d/%{name}
+%endif
 %dir %{_datadir}/%{name}
 %{_datadir}/%{name}/errors
 %{_datadir}/%{name}/icons
@@ -286,7 +419,11 @@
 %{_sbindir}/basic_msnt_multi_domain_auth
 %{_sbindir}/basic_ncsa_auth
 %{_sbindir}/basic_nis_auth
+%if 0%{?suse_version} < 1140
+%{_sbindir}/basic_pam_auth
+%else
 %verify(not mode) %attr(2750,root,shadow) %{_sbindir}/basic_pam_auth
+%endif
 %{_sbindir}/basic_pop3_auth
 %{_sbindir}/basic_radius_auth
 %{_sbindir}/basic_sasl_auth
@@ -294,6 +431,7 @@
 %{_sbindir}/basic_smb_auth.sh
 %{_sbindir}/cert_tool
 %{_sbindir}/cert_valid.pl
+#{_sbindir}/digest_edirectory_auth
 %{_sbindir}/digest_file_auth
 %{_sbindir}/digest_ldap_auth
 %{_sbindir}/diskd
@@ -312,15 +450,24 @@
 %{_sbindir}/negotiate_wrapper_auth
 %{_sbindir}/ntlm_fake_auth
 %{_sbindir}/ntlm_smb_lm_auth
-%verify(not user group mode caps) %attr(750,root,squid) %{_sbindir}/pinger
+# not working %%caps(cap_net_raw=ep)
+%if 0%{?suse_version} < 1140
+%attr(0750,root,squid) %{_sbindir}/pinger
+%else
+%verify(not user group mode caps) %attr(0750,root,squid) %{_sbindir}/pinger
+%endif
 %{_sbindir}/%{name}
 %{_sbindir}/ssl_crtd
 %{_sbindir}/storeid_file_rewrite
 %{_sbindir}/unlinkd
 %{_sbindir}/url_fake_rewrite
 %{_sbindir}/url_fake_rewrite.sh
+%if 0%{?suse_version}
 %{_sbindir}/rc%{name}
 %{_localstatedir}/adm/fillup-templates/sysconfig.%{name}
+%else
+%{_sysconfdir}/sysconfig/%{name}
+%endif
 %dir %{_libdir}/%{name}
 %{_libdir}/%{name}/cachemgr.cgi
 

++++++ squid-3.4.10.tar.bz2 -> squid-3.4.11.tar.bz2 ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/squid-3.4.10/ChangeLog new/squid-3.4.11/ChangeLog
--- old/squid-3.4.10/ChangeLog  2014-12-09 17:27:21.000000000 +0100
+++ new/squid-3.4.11/ChangeLog  2015-01-13 12:53:17.000000000 +0100
@@ -1,3 +1,14 @@
+Changes to squid-3.4.11 (13 Jan 2015):
+
+       - Bug 4164: SEGFAULT when %W formating code used in errorpages
+       - Bug 4057: Avoid on-exit crashes when adaptation is enabled.
+       - Bug 3760: squidclient ignores --disable-ipv6
+       - Bug 3754: configure doesnt detect IPFilter 5.1.2 system headers
+       - Bug 3664: ssl_crtd fails to build on OpenSolaris/OpenIndiana/Solaris 
11
+       - cachemgr.cgi: memory leak in request parser
+       - Deleting first fs left psstate->servers pointing to uninitialized 
memory
+       - ... and some build issues
+
 Changes to squid-3.4.10 (09 Dec 2014):
 
        - Bug 4148: external_acl_type header format does not accept the new 
libformat syntax
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/squid-3.4.10/RELEASENOTES.html 
new/squid-3.4.11/RELEASENOTES.html
--- old/squid-3.4.10/RELEASENOTES.html  2014-12-09 18:23:17.000000000 +0100
+++ new/squid-3.4.11/RELEASENOTES.html  2015-01-13 13:35:19.000000000 +0100
@@ -2,10 +2,10 @@
 <HTML>
 <HEAD>
  <META NAME="GENERATOR" CONTENT="LinuxDoc-Tools 0.9.69">
- <TITLE>Squid 3.4.10 release notes</TITLE>
+ <TITLE>Squid 3.4.11 release notes</TITLE>
 </HEAD>
 <BODY>
-<H1>Squid 3.4.10 release notes</H1>
+<H1>Squid 3.4.11 release notes</H1>
 
 <H2>Squid Developers</H2>
 <HR>
@@ -57,7 +57,7 @@
 <HR>
 <H2><A NAME="s1">1.</A> <A HREF="#toc1">Notice</A></H2>
 
-<P>The Squid Team are pleased to announce the release of Squid-3.4.10 for 
testing.</P>
+<P>The Squid Team are pleased to announce the release of Squid-3.4.11 for 
testing.</P>
 <P>This new release is available for download from 
 <A 
HREF="http://www.squid-cache.org/Versions/v3/3.4/";>http://www.squid-cache.org/Versions/v3/3.4/</A>
 or the
 <A HREF="http://www.squid-cache.org/Mirrors/http-mirrors.html";>mirrors</A>.</P>
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/squid-3.4.10/acinclude/compiler-flags.m4 
new/squid-3.4.11/acinclude/compiler-flags.m4
--- old/squid-3.4.10/acinclude/compiler-flags.m4        2014-12-09 
17:27:21.000000000 +0100
+++ new/squid-3.4.11/acinclude/compiler-flags.m4        2015-01-13 
12:53:17.000000000 +0100
@@ -63,15 +63,14 @@
     SAVED_FLAGS="$CFLAGS"
     SAVED_CXXFLAGS="$CXXFLAGS"
     AC_COMPILE_IFELSE([AC_LANG_PROGRAM($3,$4)],[$1=no],[],[$1=no])
-    if test "$1" != "no" ; then
-      CFLAGS="$CXXFLAGS $2"
+    if test "x$1" != "xno" ; then
+      CFLAGS="$CFLAGS $2"
       CXXFLAGS="$CXXFLAGS $2"
       AC_COMPILE_IFELSE([AC_LANG_PROGRAM($3,$4)],[$1=yes],[$1=no],[$1=no])
     fi
     CFLAGS="$SAVED_CFLAGS"
     CXXFLAGS="$SAVED_CXXFLAGS"
   }])
-  AC_MSG_RESULT([$1])
 ])
 
 # detect what kind of compiler we're using, either by using hints from
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/squid-3.4.10/acinclude/os-deps.m4 
new/squid-3.4.11/acinclude/os-deps.m4
--- old/squid-3.4.10/acinclude/os-deps.m4       2014-12-09 17:27:21.000000000 
+0100
+++ new/squid-3.4.11/acinclude/os-deps.m4       2015-01-13 12:53:17.000000000 
+0100
@@ -902,3 +902,86 @@
   AC_DEFINE_UNQUOTED(RECV_ARG_TYPE,$squid_cv_recv_second_arg_type,
     [Base type of the second argument to recv(2)])
 ])
+
+
+dnl check whether Solaris has broken IPFilter headers (Solaris 10 at least 
does)
+AC_DEFUN([SQUID_CHECK_BROKEN_SOLARIS_IPFILTER],[
+  if test "x$squid_cv_broken_ipfilter_minor_t" = "x"; then
+    AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[
+#     include <sys/types.h>
+#     include <sys/ioccom.h>
+#     include <netinet/in.h>
+
+#     include <netinet/ip_compat.h>
+#     include <netinet/ip_fil.h>
+#     include <netinet/ip_nat.h>
+    ]])],[
+      AC_MSG_RESULT(no)
+      squid_cv_broken_ipfilter_minor_t=0
+    ],[
+      ## on fail, test the hack
+      AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[
+#define minor_t fubaar
+#       include <sys/types.h>
+#       include <sys/ioccom.h>
+#       include <netinet/in.h>
+#undef minor_t
+#       include <netinet/ip_compat.h>
+#       include <netinet/ip_fil.h>
+#       include <netinet/ip_nat.h>
+      ]])],[
+        AC_MSG_RESULT(yes)
+        squid_cv_broken_ipfilter_minor_t=1
+      ],[
+        AC_MSG_RESULT(unable to make IPFilter work with netinet/ headers)
+      ])
+    ])
+  fi
+
+  
AC_DEFINE_UNQUOTED(USE_SOLARIS_IPFILTER_MINOR_T_HACK,$squid_cv_broken_ipfilter_minor_t,
+    [Workaround IPFilter minor_t breakage])
+
+## check for IPFilter headers that require this hack
+## (but first netinet/in.h and sys/ioccom.h which they depend on)
+  AC_CHECK_HEADERS( \
+       netinet/in.h \
+       sys/ioccom.h \
+       ip_compat.h \
+       ip_fil_compat.h \
+       ip_fil.h \
+       ip_nat.h \
+       netinet/ip_compat.h \
+       netinet/ip_fil_compat.h \
+       netinet/ip_fil.h \
+       netinet/ip_nat.h \
+  ,,,[
+#if USE_SOLARIS_IPFILTER_MINOR_T_HACK
+#define minor_t fubar
+#endif
+#if HAVE_SYS_TYPES_H
+#include <sys/types.h>
+#endif
+#if HAVE_NETINET_IN_H
+#include <netinet/in.h>
+#endif
+#if HAVE_SYS_IOCCOM_H
+#include <sys/ioccom.h>
+#endif
+#if USE_SOLARIS_IPFILTER_MINOR_T_HACK
+#undef minor_t
+#endif
+#if HAVE_IP_COMPAT_H
+#include <ip_compat.h>
+#elif HAVE_NETINET_IP_COMPAT_H
+#include <netinet/ip_compat.h>
+#endif
+#if HAVE_IP_FIL_H
+#include <ip_fil.h>
+#elif HAVE_NETINET_IP_FIL_H
+#include <netinet/ip_fil.h>
+#endif
+#if !defined(IPFILTER_VERSION)
+#define IPFILTER_VERSION        5000004
+#endif
+  ])
+])
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/squid-3.4.10/compat/Makefile.in 
new/squid-3.4.11/compat/Makefile.in
--- old/squid-3.4.10/compat/Makefile.in 2014-12-09 17:28:06.000000000 +0100
+++ new/squid-3.4.11/compat/Makefile.in 2015-01-13 12:54:03.000000000 +0100
@@ -83,9 +83,9 @@
 build_triplet = @build@
 host_triplet = @host@
 DIST_COMMON = $(top_srcdir)/src/Common.am $(srcdir)/Makefile.in \
-       $(srcdir)/Makefile.am inet_pton.c strerror.c getnameinfo.c \
-       inet_ntop.c strtoll.c initgroups.c tempnam.c drand48.c \
-       getaddrinfo.c psignal.c $(top_srcdir)/cfgaux/depcomp \
+       $(srcdir)/Makefile.am initgroups.c inet_pton.c drand48.c \
+       inet_ntop.c getnameinfo.c psignal.c strtoll.c tempnam.c \
+       strerror.c getaddrinfo.c $(top_srcdir)/cfgaux/depcomp \
        $(top_srcdir)/cfgaux/test-driver
 check_PROGRAMS = testPreCompiler$(EXEEXT)
 TESTS = testPreCompiler$(EXEEXT) testHeaders
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/squid-3.4.10/compat/compat.h 
new/squid-3.4.11/compat/compat.h
--- old/squid-3.4.10/compat/compat.h    2014-12-09 17:27:21.000000000 +0100
+++ new/squid-3.4.11/compat/compat.h    2015-01-13 12:53:17.000000000 +0100
@@ -34,6 +34,17 @@
 #endif
 #endif
 
+/* Solaris 10 has a broken definition for minor_t in IPFilter compat.
+ * We must pre-define before doing anything with OS headers so the OS
+ * do not. Then un-define it before using the IPFilter *_compat.h headers.
+ */
+#if IPF_TRANSPARENT && USE_SOLARIS_IPFILTER_MINOR_T_HACK
+/* But we only need do this nasty thing for src/ip/Intercept.cc */
+#if BUILDING_SQUID_IP_INTERCEPT_CC
+#define minor_t solaris_minor_t_fubar
+#endif
+#endif
+
 /*****************************************************/
 /* FDSETSIZE is messy and needs to be done before    */
 /* sys/types.h are defined.                          */
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/squid-3.4.10/configure new/squid-3.4.11/configure
--- old/squid-3.4.10/configure  2014-12-09 17:28:58.000000000 +0100
+++ new/squid-3.4.11/configure  2015-01-13 12:54:50.000000000 +0100
@@ -1,7 +1,7 @@
 #! /bin/sh
 # From configure.ac Revision.
 # Guess values for system-dependent variables and create Makefiles.
-# Generated by GNU Autoconf 2.69 for Squid Web Proxy 3.4.10.
+# Generated by GNU Autoconf 2.69 for Squid Web Proxy 3.4.11.
 #
 # Report bugs to <http://bugs.squid-cache.org/>.
 #
@@ -595,8 +595,8 @@
 # Identity of this package.
 PACKAGE_NAME='Squid Web Proxy'
 PACKAGE_TARNAME='squid'
-PACKAGE_VERSION='3.4.10'
-PACKAGE_STRING='Squid Web Proxy 3.4.10'
+PACKAGE_VERSION='3.4.11'
+PACKAGE_STRING='Squid Web Proxy 3.4.11'
 PACKAGE_BUGREPORT='http://bugs.squid-cache.org/'
 PACKAGE_URL=''
 
@@ -1605,7 +1605,7 @@
   # Omit some internal or obsolete options to make the list less imposing.
   # This message is too long to be a string in the A/UX 3.1 sh.
   cat <<_ACEOF
-\`configure' configures Squid Web Proxy 3.4.10 to adapt to many kinds of 
systems.
+\`configure' configures Squid Web Proxy 3.4.11 to adapt to many kinds of 
systems.
 
 Usage: $0 [OPTION]... [VAR=VALUE]...
 
@@ -1675,7 +1675,7 @@
 
 if test -n "$ac_init_help"; then
   case $ac_init_help in
-     short | recursive ) echo "Configuration of Squid Web Proxy 3.4.10:";;
+     short | recursive ) echo "Configuration of Squid Web Proxy 3.4.11:";;
    esac
   cat <<\_ACEOF
 
@@ -2071,7 +2071,7 @@
 test -n "$ac_init_help" && exit $ac_status
 if $ac_init_version; then
   cat <<\_ACEOF
-Squid Web Proxy configure 3.4.10
+Squid Web Proxy configure 3.4.11
 generated by GNU Autoconf 2.69
 
 Copyright (C) 2012 Free Software Foundation, Inc.
@@ -3175,7 +3175,7 @@
 This file contains any messages produced by compilers while
 running configure, to aid debugging if configure makes a mistake.
 
-It was created by Squid Web Proxy $as_me 3.4.10, which was
+It was created by Squid Web Proxy $as_me 3.4.11, which was
 generated by GNU Autoconf 2.69.  Invocation command line was
 
   $ $0 $@
@@ -4042,7 +4042,7 @@
 
 # Define the identity of the package.
  PACKAGE='squid'
- VERSION='3.4.10'
+ VERSION='3.4.11'
 
 
 cat >>confdefs.h <<_ACEOF
@@ -4461,6 +4461,9 @@
 
 
 
+
+
+
 # pkg.m4 - Macros to locate and utilise pkg-config.            -*- Autoconf -*-
 # serial 1 (pkg-config-0.24)
 #
@@ -27258,10 +27261,6 @@
   iostream \
   fstream \
   climits \
-  ip_compat.h \
-  ip_fil_compat.h \
-  ip_fil.h \
-  ip_nat.h \
   ipl.h \
   lber.h \
   ldap.h \
@@ -27279,7 +27278,6 @@
   netdb.h \
   netinet/in.h \
   netinet/in_systm.h \
-  netinet/ip_fil_compat.h \
   openssl/err.h \
   openssl/md5.h \
   openssl/opensslv.h \
@@ -27419,12 +27417,8 @@
   netinet/in.h \
   netinet/ip.h \
   netinet/ip6.h \
-  netinet/ip_compat.h\
-  netinet/ip_fil_compat.h\
-  netinet/ip_fil.h\
   netinet/ip_icmp.h \
   netinet/ipl.h \
-  netinet/ip_nat.h\
   net/pf/pfvar.h \
   net/pfvar.h \
   sys/mount.h\
@@ -31414,8 +31408,8 @@
   ac_cv_require_rtti=no
 fi
 rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-    if test "ac_cv_require_rtti" != "no" ; then
-      CFLAGS="$CXXFLAGS -rtti"
+    if test "xac_cv_require_rtti" != "xno" ; then
+      CFLAGS="$CFLAGS -rtti"
       CXXFLAGS="$CXXFLAGS -rtti"
       cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
@@ -31456,8 +31450,6 @@
 fi
 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_require_rtti" >&5
 $as_echo "$ac_cv_require_rtti" >&6; }
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: ac_cv_require_rtti" >&5
-$as_echo "ac_cv_require_rtti" >&6; }
 
     if test "$ac_cv_require_rtti" = "yes"; then
       SQUID_CFLAGS="-rtti $SQUID_CFLAGS"
@@ -31495,8 +31487,8 @@
   ac_cv_require_qcpluscmt=no
 fi
 rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-    if test "ac_cv_require_qcpluscmt" != "no" ; then
-      CFLAGS="$CXXFLAGS -qcpluscmt"
+    if test "xac_cv_require_qcpluscmt" != "xno" ; then
+      CFLAGS="$CFLAGS -qcpluscmt"
       CXXFLAGS="$CXXFLAGS -qcpluscmt"
       cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
@@ -31522,8 +31514,6 @@
 fi
 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_require_qcpluscmt" >&5
 $as_echo "$ac_cv_require_qcpluscmt" >&6; }
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: ac_cv_require_qcpluscmt" >&5
-$as_echo "ac_cv_require_qcpluscmt" >&6; }
 
     ac_ext=cpp
 ac_cpp='$CXXCPP $CPPFLAGS'
@@ -32220,8 +32210,138 @@
 fi
 
 
-
 if test "x$enable_ipf_transparent" != "xno" ; then
+
+  if test "x$squid_cv_broken_ipfilter_minor_t" = "x"; then
+    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h.  */
+
+#     include <sys/types.h>
+#     include <sys/ioccom.h>
+#     include <netinet/in.h>
+
+#     include <netinet/ip_compat.h>
+#     include <netinet/ip_fil.h>
+#     include <netinet/ip_nat.h>
+
+int
+main ()
+{
+
+  ;
+  return 0;
+}
+_ACEOF
+if ac_fn_cxx_try_compile "$LINENO"; then :
+
+      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
+      squid_cv_broken_ipfilter_minor_t=0
+
+else
+
+      ## on fail, test the hack
+      cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h.  */
+
+#define minor_t fubaar
+#       include <sys/types.h>
+#       include <sys/ioccom.h>
+#       include <netinet/in.h>
+#undef minor_t
+#       include <netinet/ip_compat.h>
+#       include <netinet/ip_fil.h>
+#       include <netinet/ip_nat.h>
+
+int
+main ()
+{
+
+  ;
+  return 0;
+}
+_ACEOF
+if ac_fn_cxx_try_compile "$LINENO"; then :
+
+        { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+$as_echo "yes" >&6; }
+        squid_cv_broken_ipfilter_minor_t=1
+
+else
+
+        { $as_echo "$as_me:${as_lineno-$LINENO}: result: unable to make 
IPFilter work with netinet/ headers" >&5
+$as_echo "unable to make IPFilter work with netinet/ headers" >&6; }
+
+fi
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+
+fi
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+  fi
+
+
+cat >>confdefs.h <<_ACEOF
+#define USE_SOLARIS_IPFILTER_MINOR_T_HACK $squid_cv_broken_ipfilter_minor_t
+_ACEOF
+
+
+## check for IPFilter headers that require this hack
+## (but first netinet/in.h and sys/ioccom.h which they depend on)
+  for ac_header in \
+       netinet/in.h \
+       sys/ioccom.h \
+       ip_compat.h \
+       ip_fil_compat.h \
+       ip_fil.h \
+       ip_nat.h \
+       netinet/ip_compat.h \
+       netinet/ip_fil_compat.h \
+       netinet/ip_fil.h \
+       netinet/ip_nat.h \
+
+do :
+  as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh`
+ac_fn_cxx_check_header_compile "$LINENO" "$ac_header" "$as_ac_Header" "
+#if USE_SOLARIS_IPFILTER_MINOR_T_HACK
+#define minor_t fubar
+#endif
+#if HAVE_SYS_TYPES_H
+#include <sys/types.h>
+#endif
+#if HAVE_NETINET_IN_H
+#include <netinet/in.h>
+#endif
+#if HAVE_SYS_IOCCOM_H
+#include <sys/ioccom.h>
+#endif
+#if USE_SOLARIS_IPFILTER_MINOR_T_HACK
+#undef minor_t
+#endif
+#if HAVE_IP_COMPAT_H
+#include <ip_compat.h>
+#elif HAVE_NETINET_IP_COMPAT_H
+#include <netinet/ip_compat.h>
+#endif
+#if HAVE_IP_FIL_H
+#include <ip_fil.h>
+#elif HAVE_NETINET_IP_FIL_H
+#include <netinet/ip_fil.h>
+#endif
+#if !defined(IPFILTER_VERSION)
+#define IPFILTER_VERSION        5000004
+#endif
+
+"
+if eval test \"x\$"$as_ac_Header"\" = x"yes"; then :
+  cat >>confdefs.h <<_ACEOF
+#define `$as_echo "HAVE_$ac_header" | $as_tr_cpp` 1
+_ACEOF
+
+fi
+
+done
+
+
     { $as_echo "$as_me:${as_lineno-$LINENO}: checking for availability of 
IP-Filter header files" >&5
 $as_echo_n "checking for availability of IP-Filter header files... " >&6; }
     # hold on to your hats...
@@ -32230,8 +32350,8 @@
         "x$ac_cv_header_netinet_ip_compat_h" = "xyes" -o \
         "x$ac_cv_header_netinet_ip_fil_compat_h" = "xyes" ; then
         have_ipfilter_compat_header="yes"
-     fi
-     if test "x$have_ipfilter_compat_header" = "xyes" -a \
+    fi
+    if test "x$have_ipfilter_compat_header" = "xyes" -a \
        "x$ac_cv_header_ip_fil_h" = "xyes" -a \
        "x$ac_cv_header_ip_nat_h" = "xyes" ; then
         enable_ipf_transparent="yes"
@@ -32244,6 +32364,15 @@
     fi
     { $as_echo "$as_me:${as_lineno-$LINENO}: result: $IPF_TRANSPARENT" >&5
 $as_echo "$IPF_TRANSPARENT" >&6; }
+
+## On Solaris Ipfilter includes expect that SOLARIS2 is defined with the
+## Solaris minor version (8, 9, 10, ...)
+  if test "x$enable_ipf_transparent" = "xyes" -a "x$squid_host_os" = 
"xsolaris" ; then
+    solrev=`uname -r | sh -c 'IFS=. read j n x; echo $n'`
+    CFLAGS="-DSOLARIS2=$solrev $CFLAGS"
+    CXXFLAGS="-DSOLARIS2=$solrev $CXXFLAGS"
+  fi
+
 fi
 { $as_echo "$as_me:${as_lineno-$LINENO}: IPF-based transparent proxying 
enabled: $enable_ipf_transparent" >&5
 $as_echo "$as_me: IPF-based transparent proxying enabled: 
$enable_ipf_transparent" >&6;}
@@ -32262,12 +32391,6 @@
 unset squid_tmp_define
 
 
-if test "x$enable_ipf_transparent" = "xyes" -a "x$squid_host_os" = "xsolaris" 
; then
-  solrev=`uname -r | sh -c 'IFS=. read j n x; echo $n'`
-  CFLAGS="-DSOLARIS2=$solrev $CFLAGS"
-  CXXFLAGS="-DSOLARIS2=$solrev $CXXFLAGS"
-fi
-
 if test "x$with_nat_devpf" != "xno" ; then
   if test "x$ac_cv_header_net_pfvar_h" = "xyes" -o \
     "x$ac_cv_header_net_pf_pfvar_h" = "xyes"; then
@@ -34255,7 +34378,7 @@
 # report actual input values of CONFIG_FILES etc. instead of their
 # values after options handling.
 ac_log="
-This file was extended by Squid Web Proxy $as_me 3.4.10, which was
+This file was extended by Squid Web Proxy $as_me 3.4.11, which was
 generated by GNU Autoconf 2.69.  Invocation command line was
 
   CONFIG_FILES    = $CONFIG_FILES
@@ -34321,7 +34444,7 @@
 cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
 ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; 
s/[\\""\`\$]/\\\\&/g'`"
 ac_cs_version="\\
-Squid Web Proxy config.status 3.4.10
+Squid Web Proxy config.status 3.4.11
 configured by $0, generated by GNU Autoconf 2.69,
   with options \\"\$ac_cs_config\\"
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/squid-3.4.10/configure.ac 
new/squid-3.4.11/configure.ac
--- old/squid-3.4.10/configure.ac       2014-12-09 17:28:58.000000000 +0100
+++ new/squid-3.4.11/configure.ac       2015-01-13 12:54:50.000000000 +0100
@@ -1,4 +1,4 @@
-AC_INIT([Squid Web Proxy],[3.4.10],[http://bugs.squid-cache.org/],[squid])
+AC_INIT([Squid Web Proxy],[3.4.11],[http://bugs.squid-cache.org/],[squid])
 AC_PREREQ(2.61)
 AC_CONFIG_HEADERS([include/autoconf.h])
 AC_CONFIG_AUX_DIR(cfgaux)
@@ -2239,10 +2239,6 @@
   iostream \
   fstream \
   climits \
-  ip_compat.h \
-  ip_fil_compat.h \
-  ip_fil.h \
-  ip_nat.h \
   ipl.h \
   lber.h \
   ldap.h \
@@ -2260,7 +2256,6 @@
   netdb.h \
   netinet/in.h \
   netinet/in_systm.h \
-  netinet/ip_fil_compat.h \
   openssl/err.h \
   openssl/md5.h \
   openssl/opensslv.h \
@@ -2348,12 +2343,8 @@
   netinet/in.h \
   netinet/ip.h \
   netinet/ip6.h \
-  netinet/ip_compat.h\
-  netinet/ip_fil_compat.h\
-  netinet/ip_fil.h\
   netinet/ip_icmp.h \
   netinet/ipl.h \
-  netinet/ip_nat.h\
   net/pf/pfvar.h \
   net/pfvar.h \
   sys/mount.h\
@@ -3238,10 +3229,10 @@
 SQUID_CHECK_FUNC_VACOPY
 SQUID_CHECK_FUNC___VACOPY
 
-  
 dnl IP-Filter support requires ipf header files. These aren't
 dnl installed by default, so we need to check for them
 if test "x$enable_ipf_transparent" != "xno" ; then
+    SQUID_CHECK_BROKEN_SOLARIS_IPFILTER
     AC_MSG_CHECKING(for availability of IP-Filter header files)
     # hold on to your hats...
     if test "x$ac_cv_header_ip_compat_h" = "xyes" -o \
@@ -3249,8 +3240,8 @@
         "x$ac_cv_header_netinet_ip_compat_h" = "xyes" -o \
         "x$ac_cv_header_netinet_ip_fil_compat_h" = "xyes" ; then
         have_ipfilter_compat_header="yes"
-     fi
-     if test "x$have_ipfilter_compat_header" = "xyes" -a \
+    fi
+    if test "x$have_ipfilter_compat_header" = "xyes" -a \
        "x$ac_cv_header_ip_fil_h" = "xyes" -a \
        "x$ac_cv_header_ip_nat_h" = "xyes" ; then
         enable_ipf_transparent="yes"
@@ -3262,19 +3253,20 @@
         enable_ipf_transparent="no"
     fi
     AC_MSG_RESULT($IPF_TRANSPARENT)
+
+## On Solaris Ipfilter includes expect that SOLARIS2 is defined with the
+## Solaris minor version (8, 9, 10, ...)
+  if test "x$enable_ipf_transparent" = "xyes" -a "x$squid_host_os" = 
"xsolaris" ; then
+    solrev=`uname -r | sh -c 'IFS=. read j n x; echo $n'`
+    CFLAGS="-DSOLARIS2=$solrev $CFLAGS"
+    CXXFLAGS="-DSOLARIS2=$solrev $CXXFLAGS"
+  fi
+
 fi
 AC_MSG_NOTICE([IPF-based transparent proxying enabled: 
$enable_ipf_transparent])
 SQUID_DEFINE_BOOL(IPF_TRANSPARENT,$enable_ipf_transparent,
     [Enable support for IPF-style transparent proxying])
 
-if test "x$enable_ipf_transparent" = "xyes" -a "x$squid_host_os" = "xsolaris" 
; then
-dnl On Solaris Ipfilter includes expect that SOLARIS2 is defined with the
-dnl Solaris minor version (8, 9, 10, ...)
-  solrev=`uname -r | sh -c 'IFS=. read j n x; echo $n'`
-  CFLAGS="-DSOLARIS2=$solrev $CFLAGS" 
-  CXXFLAGS="-DSOLARIS2=$solrev $CXXFLAGS" 
-fi
-
 dnl PF /dev/pf support requires a header file.
 if test "x$with_nat_devpf" != "xno" ; then
   if test "x$ac_cv_header_net_pfvar_h" = "xyes" -o \
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/squid-3.4.10/helpers/basic_auth/DB/basic_db_auth.8 
new/squid-3.4.11/helpers/basic_auth/DB/basic_db_auth.8
--- old/squid-3.4.10/helpers/basic_auth/DB/basic_db_auth.8      2014-12-09 
18:21:20.000000000 +0100
+++ new/squid-3.4.11/helpers/basic_auth/DB/basic_db_auth.8      2015-01-13 
13:33:24.000000000 +0100
@@ -133,7 +133,7 @@
 .\" ========================================================================
 .\"
 .IX Title "BASIC_DB_AUTH 1"
-.TH BASIC_DB_AUTH 1 "2014-12-09" "perl v5.20.1" "User Contributed Perl 
Documentation"
+.TH BASIC_DB_AUTH 1 "2015-01-13" "perl v5.20.1" "User Contributed Perl 
Documentation"
 .\" For nroff, turn off justification.  Always turn off hyphenation; it makes
 .\" way too many mistakes in technical documents.
 .if n .ad l
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/squid-3.4.10/helpers/external_acl/SQL_session/ext_sql_session_acl.8 
new/squid-3.4.11/helpers/external_acl/SQL_session/ext_sql_session_acl.8
--- old/squid-3.4.10/helpers/external_acl/SQL_session/ext_sql_session_acl.8     
2014-12-09 18:21:44.000000000 +0100
+++ new/squid-3.4.11/helpers/external_acl/SQL_session/ext_sql_session_acl.8     
2015-01-13 13:33:57.000000000 +0100
@@ -133,7 +133,7 @@
 .\" ========================================================================
 .\"
 .IX Title "EXT_SQL_SESSION_ACL 1"
-.TH EXT_SQL_SESSION_ACL 1 "2014-12-09" "perl v5.20.1" "User Contributed Perl 
Documentation"
+.TH EXT_SQL_SESSION_ACL 1 "2015-01-13" "perl v5.20.1" "User Contributed Perl 
Documentation"
 .\" For nroff, turn off justification.  Always turn off hyphenation; it makes
 .\" way too many mistakes in technical documents.
 .if n .ad l
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/squid-3.4.10/helpers/external_acl/wbinfo_group/ext_wbinfo_group_acl.8 
new/squid-3.4.11/helpers/external_acl/wbinfo_group/ext_wbinfo_group_acl.8
--- old/squid-3.4.10/helpers/external_acl/wbinfo_group/ext_wbinfo_group_acl.8   
2014-12-09 18:21:54.000000000 +0100
+++ new/squid-3.4.11/helpers/external_acl/wbinfo_group/ext_wbinfo_group_acl.8   
2015-01-13 13:34:01.000000000 +0100
@@ -133,7 +133,7 @@
 .\" ========================================================================
 .\"
 .IX Title "EXT_WBINFO_GROUP_ACL.PL.IN 1"
-.TH EXT_WBINFO_GROUP_ACL.PL.IN 1 "2014-12-09" "perl v5.20.1" "User Contributed 
Perl Documentation"
+.TH EXT_WBINFO_GROUP_ACL.PL.IN 1 "2015-01-13" "perl v5.20.1" "User Contributed 
Perl Documentation"
 .\" For nroff, turn off justification.  Always turn off hyphenation; it makes
 .\" way too many mistakes in technical documents.
 .if n .ad l
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/squid-3.4.10/helpers/log_daemon/DB/log_db_daemon.8 
new/squid-3.4.11/helpers/log_daemon/DB/log_db_daemon.8
--- old/squid-3.4.10/helpers/log_daemon/DB/log_db_daemon.8      2014-12-09 
18:21:56.000000000 +0100
+++ new/squid-3.4.11/helpers/log_daemon/DB/log_db_daemon.8      2015-01-13 
13:34:03.000000000 +0100
@@ -133,7 +133,7 @@
 .\" ========================================================================
 .\"
 .IX Title "LOG_DB_DAEMON 1"
-.TH LOG_DB_DAEMON 1 "2014-12-09" "perl v5.20.1" "User Contributed Perl 
Documentation"
+.TH LOG_DB_DAEMON 1 "2015-01-13" "perl v5.20.1" "User Contributed Perl 
Documentation"
 .\" For nroff, turn off justification.  Always turn off hyphenation; it makes
 .\" way too many mistakes in technical documents.
 .if n .ad l
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/squid-3.4.10/helpers/storeid_rewrite/file/storeid_file_rewrite.8 
new/squid-3.4.11/helpers/storeid_rewrite/file/storeid_file_rewrite.8
--- old/squid-3.4.10/helpers/storeid_rewrite/file/storeid_file_rewrite.8        
2014-12-09 18:22:09.000000000 +0100
+++ new/squid-3.4.11/helpers/storeid_rewrite/file/storeid_file_rewrite.8        
2015-01-13 13:34:15.000000000 +0100
@@ -133,7 +133,7 @@
 .\" ========================================================================
 .\"
 .IX Title "STOREID_FILE_REWRITE 1"
-.TH STOREID_FILE_REWRITE 1 "2014-12-09" "perl v5.20.1" "User Contributed Perl 
Documentation"
+.TH STOREID_FILE_REWRITE 1 "2015-01-13" "perl v5.20.1" "User Contributed Perl 
Documentation"
 .\" For nroff, turn off justification.  Always turn off hyphenation; it makes
 .\" way too many mistakes in technical documents.
 .if n .ad l
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/squid-3.4.10/include/autoconf.h.in 
new/squid-3.4.11/include/autoconf.h.in
--- old/squid-3.4.10/include/autoconf.h.in      2014-12-09 17:27:45.000000000 
+0100
+++ new/squid-3.4.11/include/autoconf.h.in      2015-01-13 12:53:42.000000000 
+0100
@@ -1017,6 +1017,9 @@
 /* Define to 1 if you have the <sys/file.h> header file. */
 #undef HAVE_SYS_FILE_H
 
+/* Define to 1 if you have the <sys/ioccom.h> header file. */
+#undef HAVE_SYS_IOCCOM_H
+
 /* Define to 1 if you have the <sys/ioctl.h> header file. */
 #undef HAVE_SYS_IOCTL_H
 
@@ -1446,6 +1449,9 @@
 /* Use Winsock select() for the IO loop */
 #undef USE_SELECT_WIN32
 
+/* Workaround IPFilter minor_t breakage */
+#undef USE_SOLARIS_IPFILTER_MINOR_T_HACK
+
 /* Compile the ESI processor and Surrogate header support */
 #undef USE_SQUID_ESI
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/squid-3.4.10/include/version.h 
new/squid-3.4.11/include/version.h
--- old/squid-3.4.10/include/version.h  2014-12-09 17:28:58.000000000 +0100
+++ new/squid-3.4.11/include/version.h  2015-01-13 12:54:50.000000000 +0100
@@ -7,7 +7,7 @@
  */
 
 #ifndef SQUID_RELEASE_TIME
-#define SQUID_RELEASE_TIME 1418142434
+#define SQUID_RELEASE_TIME 1421149989
 #endif
 
 #ifndef APP_SHORTNAME
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/squid-3.4.10/src/adaptation/AccessRule.cc 
new/squid-3.4.11/src/adaptation/AccessRule.cc
--- old/squid-3.4.10/src/adaptation/AccessRule.cc       2014-12-09 
17:27:21.000000000 +0100
+++ new/squid-3.4.11/src/adaptation/AccessRule.cc       2015-01-13 
12:53:17.000000000 +0100
@@ -52,8 +52,8 @@
 Adaptation::AccessRules &
 Adaptation::AllRules()
 {
-    static AccessRules TheRules;
-    return TheRules;
+    static AccessRules *TheRules = new AccessRules;
+    return *TheRules;
 }
 
 // TODO: make AccessRules::find work
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/squid-3.4.10/src/adaptation/Service.cc 
new/squid-3.4.11/src/adaptation/Service.cc
--- old/squid-3.4.10/src/adaptation/Service.cc  2014-12-09 17:27:21.000000000 
+0100
+++ new/squid-3.4.11/src/adaptation/Service.cc  2015-01-13 12:53:17.000000000 
+0100
@@ -54,8 +54,8 @@
 Adaptation::Services &
 Adaptation::AllServices()
 {
-    static Services TheServices;
-    return TheServices;
+    static Services *TheServices = new Services;
+    return *TheServices;
 }
 
 Adaptation::ServicePointer
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/squid-3.4.10/src/adaptation/ServiceGroups.cc 
new/squid-3.4.11/src/adaptation/ServiceGroups.cc
--- old/squid-3.4.10/src/adaptation/ServiceGroups.cc    2014-12-09 
17:27:21.000000000 +0100
+++ new/squid-3.4.11/src/adaptation/ServiceGroups.cc    2015-01-13 
12:53:17.000000000 +0100
@@ -315,8 +315,8 @@
 Adaptation::Groups &
 Adaptation::AllGroups()
 {
-    static Groups TheGroups;
-    return TheGroups;
+    static Groups *TheGroups = new Groups;
+    return *TheGroups;
 }
 
 Adaptation::ServiceGroupPointer
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/squid-3.4.10/src/comm.cc new/squid-3.4.11/src/comm.cc
--- old/squid-3.4.10/src/comm.cc        2014-12-09 17:27:21.000000000 +0100
+++ new/squid-3.4.11/src/comm.cc        2015-01-13 12:53:17.000000000 +0100
@@ -1034,7 +1034,7 @@
 void
 commStartSslClose(const FdeCbParams &params)
 {
-    assert(&fd_table[params.fd].ssl);
+    assert(fd_table[params.fd].ssl != NULL);
     ssl_shutdown_method(fd_table[params.fd].ssl);
 }
 #endif
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/squid-3.4.10/src/errorpage.cc 
new/squid-3.4.11/src/errorpage.cc
--- old/squid-3.4.10/src/errorpage.cc   2014-12-09 17:27:21.000000000 +0100
+++ new/squid-3.4.11/src/errorpage.cc   2015-01-13 12:53:17.000000000 +0100
@@ -736,7 +736,7 @@
         str.Printf("Err: [none]\r\n");
     }
 #if USE_AUTH
-    if (auth_user_request->denyMessage())
+    if (auth_user_request.getRaw() && auth_user_request->denyMessage())
         str.Printf("Auth ErrMsg: %s\r\n", auth_user_request->denyMessage());
 #endif
     if (dnsError.size() > 0)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/squid-3.4.10/src/ip/Address.cc 
new/squid-3.4.11/src/ip/Address.cc
--- old/squid-3.4.10/src/ip/Address.cc  2014-12-09 17:27:21.000000000 +0100
+++ new/squid-3.4.11/src/ip/Address.cc  2015-01-13 12:53:17.000000000 +0100
@@ -382,6 +382,20 @@
         return false;
     }
 
+    struct addrinfo *resHead = res; // we need to free the whole list later
+    if (!Ip::EnableIpv6) {
+        // if we are IPv6-disabled, use first-IPv4 instead of first-IP.
+        struct addrinfo *maybeIpv4 = res;
+        while (maybeIpv4) {
+            if (maybeIpv4->ai_family == AF_INET)
+                break;
+            maybeIpv4 = maybeIpv4->ai_next;
+        }
+        if (maybeIpv4 != NULL)
+            res = maybeIpv4;
+        // else IPv6-only host, let the caller deal with first-IP anyway.
+    }
+
     /*
      *  NP: =(sockaddr_*) may alter the port. we don't want that.
      *      all we have been given as input was an IPA.
@@ -391,7 +405,7 @@
     port(portSaved);
 
     /* free the memory getaddrinfo() dynamically allocated. */
-    freeaddrinfo(res);
+    freeaddrinfo(resHead);
     return true;
 }
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/squid-3.4.10/src/ip/Intercept.cc 
new/squid-3.4.11/src/ip/Intercept.cc
--- old/squid-3.4.10/src/ip/Intercept.cc        2014-12-09 17:27:21.000000000 
+0100
+++ new/squid-3.4.11/src/ip/Intercept.cc        2015-01-13 12:53:17.000000000 
+0100
@@ -30,6 +30,10 @@
  *  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111, USA.
  *
  */
+
+// Enable hack to workaround Solaris 10 IPFilter breakage
+#define BUILDING_SQUID_IP_INTERCEPT_CC 1
+
 #include "squid.h"
 #include "comm/Connection.h"
 #include "ip/Intercept.h"
@@ -38,9 +42,19 @@
 
 #if IPF_TRANSPARENT
 
+#if !defined(IPFILTER_VERSION)
+#define IPFILTER_VERSION        5000004
+#endif
+
+#if HAVE_SYS_IOCCOM_H
+#include <sys/ioccom.h>
+#endif
 #if HAVE_SYS_IOCTL_H
 #include <sys/ioctl.h>
 #endif
+#if HAVE_NETINET_IP6_H
+#include <netinet/ip6.h>
+#endif
 #if HAVE_NETINET_TCP_H
 #include <netinet/tcp.h>
 #endif
@@ -52,6 +66,9 @@
 #elif HAVE_NETINET_IPL_H
 #include <netinet/ipl.h>
 #endif
+#if USE_SOLARIS_IPFILTER_MINOR_T_HACK
+#undef minor_t
+#endif
 #if HAVE_IP_FIL_COMPAT_H
 #include <ip_fil_compat.h>
 #elif HAVE_NETINET_IP_FIL_COMPAT_H
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/squid-3.4.10/src/peer_select.cc 
new/squid-3.4.11/src/peer_select.cc
--- old/squid-3.4.10/src/peer_select.cc 2014-12-09 17:27:21.000000000 +0100
+++ new/squid-3.4.11/src/peer_select.cc 2015-01-13 12:53:17.000000000 +0100
@@ -271,11 +271,12 @@
     // due to the allocation method of fs, we must deallocate each manually.
     // TODO: use a std::list so we can get the size and abort adding whenever 
the selection loops reach Config.forward_max_tries
     if (fs && psstate->paths->size() >= (unsigned 
int)Config.forward_max_tries) {
+        assert(fs == psstate->servers);
         while (fs) {
-            FwdServer *next = fs->next;
+            psstate->servers = fs->next;
             cbdataReferenceDone(fs->_peer);
             memFree(fs, MEM_FWD_SERVER);
-            fs = next;
+            fs = psstate->servers;
         }
     }
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/squid-3.4.10/src/ssl/certificate_db.cc 
new/squid-3.4.11/src/ssl/certificate_db.cc
--- old/squid-3.4.10/src/ssl/certificate_db.cc  2014-12-09 17:27:21.000000000 
+0100
+++ new/squid-3.4.11/src/ssl/certificate_db.cc  2015-01-13 12:53:17.000000000 
+0100
@@ -47,7 +47,7 @@
     hFile = CreateFile(TEXT(filename.c_str()), GENERIC_READ, 0, NULL, 
OPEN_EXISTING, FILE_ATTRIBUTE_NORMAL, NULL);
     if (hFile == INVALID_HANDLE_VALUE)
 #else
-    fd = open(filename.c_str(), 0);
+    fd = open(filename.c_str(), O_RDWR);
     if (fd == -1)
 #endif
         throw std::runtime_error("Failed to open file " + filename);
@@ -55,7 +55,7 @@
 #if _SQUID_WINDOWS_
     if (!LockFile(hFile, 0, 0, 1, 0))
 #else
-    if (flock(fd, LOCK_EX) != 0)
+    if (lockf(fd, F_LOCK, 0) != 0)
 #endif
         throw std::runtime_error("Failed to get a lock of " + filename);
 }
@@ -70,7 +70,7 @@
     }
 #else
     if (fd != -1) {
-        flock(fd, LOCK_UN);
+        lockf(fd, F_ULOCK, 0);
         close(fd);
         fd = -1;
     }
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/squid-3.4.10/tools/cachemgr.cc 
new/squid-3.4.11/tools/cachemgr.cc
--- old/squid-3.4.10/tools/cachemgr.cc  2014-12-09 17:27:21.000000000 +0100
+++ new/squid-3.4.11/tools/cachemgr.cc  2015-01-13 12:53:17.000000000 +0100
@@ -1072,6 +1072,7 @@
             req->workers = xstrdup(q);
         else if (0 == strcmp(t, "processes") && strlen(q))
             req->processes = xstrdup(q);
+        safe_free(t);
     }
 
     if (req->server && !req->hostname) {

++++++ squid-3.4.10.tar.bz2.asc -> squid-3.4.11.tar.bz2.asc ++++++
--- /work/SRC/openSUSE:Factory/squid/squid-3.4.10.tar.bz2.asc   2015-01-09 
20:51:01.000000000 +0100
+++ /work/SRC/openSUSE:Factory/.squid.new/squid-3.4.11.tar.bz2.asc      
2015-03-11 09:56:45.000000000 +0100
@@ -1,8 +1,8 @@
-File: squid-3.4.10.tar.bz2
-Date: Tue Dec  9 17:23:33 UTC 2014
-Size: 3043193
-MD5 : 326283b0c37e7dc9b2f90dc0ecd9a8a4
-SHA1: a04ab50971e1a446fe82514fff830898661c6fad
+File: squid-3.4.11.tar.bz2
+Date: Tue Jan 13 12:35:37 UTC 2015
+Size: 3047198
+MD5 : 9b2c457c889b026ffcada0cfe03c19ae
+SHA1: c01bedfdfdf51e689f29a96de62ad301d984b26a
 Key : 0xFF5CF463 <[email protected]>
       fingerprint = EA31 CC5E 9488 E516 8D2D  CC5E B268 E706 FF5C F463
       keyring = http://www.squid-cache.org/pgp.asc
@@ -10,11 +10,11 @@
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v1
 
-iQEcBAABAgAGBQJUhzBbAAoJELJo5wb/XPRjUCIH/3hfJgMi/iKRZpedeFjQhstf
-twbTxrtW1x+Er6J3pswPUIbLcYARHhsTpfYHAatleE1Ccl9b16FXSMSXobHpmrab
-YR1q/N/W3QwgqH3D2a2m8eUNJTWxTeZ1xYeGzHJK7sgKfaBbt/JlYfs8nh7ekdkV
-GjHzHa3IDuq5VX4Pra6riCW9NjAvUo8oaesU3ZRjV9fECbZ2XMqvrxHq7V7bGOgx
-sU1gsRjlgsAZeFDiEXz+Dww2RBh46/gUwJZwO/uTYmJjPzr4hFb1PLwEVL4+auv2
-uS8lta6K9ZpIXPXaKj0zntG1Z+5X77SoLoTQMq06PpLlGpDjYMDzcs25mCyU1R0=
-=Ooir
+iQEcBAABAgAGBQJUtRGiAAoJELJo5wb/XPRj2PMH/RxXg8QmRzrDClMOdEUC24mP
+zwT5WbaaCOtIEtAeMJoO+gSPS7t9bMLyJ3Q0VOh6Ql3M1RdxsSTp6FS40YxX/UAK
+CVgR5dmF418S/Dy9zrOzucUdeUHEqMS8bFmo9GsLuvRIqbTSfj+QejEAOVQ08oNf
+9MLhI4N6yFNVbKziFWIOsXGI0xIsWlYX+RnuRiG9tDGLn3oqCUqJbTjQyaLBDrQY
+fW46Y9iIQzfe+W5t4paR6S+cdCSX8u2aPnVPdvdKS2cy5Y1dnZBo/pRjq2+PeY7t
+PT3TNvlevapjH4lWPxqWyxtnMU3/g9dfmFmG0y6u6DYAzuS0clu77jBYuP1u8uM=
+=IzkO
 -----END PGP SIGNATURE-----

++++++ squid.init ++++++
#!/bin/sh
# Copyright (c) 1996, 1997, 1998 S.u.S.E. GmbH
# Copyright (c) 1998, 1999, 2000, 2001 SuSE GmbH
# Copyright (c) 2002 SuSE Linux AG
#
# Author: Frank Bodammer, Peter Poeml, Klaus Singvogel <[email protected]>
#
# /etc/init.d/squid
#   and its symbolic link
# /(usr/)sbin/rcsquid
#
### BEGIN INIT INFO
# Provides:           squid
# Required-Start:     $local_fs $remote_fs $network $time
# Should-Start:       apache $named winbind 
# Required-Stop:      $local_fs $remote_fs $network $time
# Should-Stop:        apache $named winbind
# Default-Start:      3 5
# Default-Stop:       0 1 2 6
# Short-Description:  Squid web cache
# Description:        Start the Squid web cache, providing
#                     HTTP, FTP and other proxy services
### END INIT INFO
#
# Note on runlevels:
# 0 - halt/poweroff                     6 - reboot
# 1 - single user                       2 - multiuser without network exported
# 3 - multiuser w/ network (text mode)  5 - multiuser w/ network and X11 (xdm)


# Check for missing binaries (stale symlinks should not happen)
# Note: Special treatment of stop for LSB conformance
SQUID_BIN=/usr/sbin/squid
test -x $SQUID_BIN || { echo "$SQUID_BIN not installed";
        if [ "$1" = "stop" ]; then exit 0;
        else exit 5; fi; }

# Check for existence of needed config file and read it
SQUID_SYSCONFIG=/etc/sysconfig/squid
test -r $SQUID_SYSCONFIG || { echo "$SQUID_SYSCONFIG not existing";
        if [ "$1" = "stop" ]; then exit 0;
        else exit 6; fi; }

# Read config
. $SQUID_SYSCONFIG

SQUID_PID=/var/run/squid.pid
SQUID_CONF=/etc/squid/squid.conf
SQUID_S_T=${SQUID_SHUTDOWN_TIMEOUT:="60"}
SQUID_OPTS=${SQUID_START_OPTIONS:="-sY"}
SQUID_ULIMIT=${SQUID_DEFAULT_ULIMT:="4096"}

# determine which one is the cache_swap directory
SQUID_CACHE_DIR=$(perl -n -e \
 '/^cache_dir\s+\S+\s+(.*)\s+\d+\s+\d+\s+\d+/ && print "$1"' $SQUID_CONF)

ulimit -n "$SQUID_ULIMIT"

#IN: $SQUID_CACHE_DIR
setup_squid_cache_dir(){
  for adir in "$1" ; do
    if [ ! -d $adir/00 ]; then # create missing cache directories
      umask 027             # prevent users reading any cache data
      echo -n " ($adir)"
      $SQUID_BIN -z -F > /dev/null 2>&1
    fi
    if [ ! -d $adir/00 ]; then
      echo " - failed while creating cache_dir ! "
      rc_failed
      rc_status -v
      rc_exit
    fi
  done
  sleep 2
}

# Shell functions sourced from /etc/rc.status:
#      rc_check         check and set local and overall rc status
#      rc_status        check and set local and overall rc status
#      rc_status -v     be verbose in local rc status and clear it afterwards
#      rc_status -v -r  ditto and clear both the local and overall rc status
#      rc_status -s     display "skipped" and exit with status 3
#      rc_status -u     display "unused" and exit with status 3
#      rc_failed        set local and overall rc status to failed
#      rc_failed <num>  set local and overall rc status to <num>
#      rc_reset         clear both the local and overall rc status
#      rc_exit          exit appropriate to overall rc status
#      rc_active        checks whether a service is activated by symlinks
. /etc/rc.status

# Reset status of this service
rc_reset


case "$1" in
    start)
        echo -n "Starting WWW-proxy squid "
        if /sbin/checkproc $SQUID_BIN ; then
          echo -n "- Warning: squid already running ! "
          rc_failed
        else
          [ -e $SQUID_PID ] && echo -n "- Warning: $SQUID_PID exists ! "
          if [ -n "$SQUID_CACHE_DIR" -a -d "$SQUID_CACHE_DIR" ]; then
            setup_squid_cache_dir "$SQUID_CACHE_DIR"
          fi
        fi
        startproc -l /var/log/squid/rcsquid.log $SQUID_BIN "$SQUID_OPTS"

        # Remember status and be verbose
        rc_status -v
        ;;
    stop)
        echo -n "Shutting down WWW-proxy squid "
        if /sbin/checkproc $SQUID_BIN ; then
          $SQUID_BIN -k shutdown
          sleep 2
          if [ -e $SQUID_PID ] ; then 
            echo -n "- wait a minute or two... "
            i="$SQUID_S_T"
            while [ -e $SQUID_PID ] && [ $i -gt 0 ] ; do
              sleep 2
              i=$[$i-1]
              echo -n "."
              [ $i -eq 41 ] && echo
            done
          fi
          if /sbin/checkproc $SQUID_BIN ; then
            killproc -TERM $SQUID_BIN
            echo -n " Warning: squid killed !"
          fi
        else
          echo -n "- Warning: squid not running ! "
          rc_failed 7
        fi

        # Remember status and be verbose
        rc_status -v
        ;;
    try-restart)
        $0 status >/dev/null && $0 restart

        # Remember status and be quiet
        rc_status
        ;;
    restart)
        $0 stop
        $0 start

        # Remember status and be quiet
        rc_status
        ;;
    force-reload)
        $0 reload

        # Remember status and be quiet
        rc_status
        ;;
    reload)
        echo -n "Reloading WWW-proxy squid "
        if /sbin/checkproc $SQUID_BIN ; then
          $SQUID_BIN -k rotate
          sleep 2
          $SQUID_BIN -k reconfigure
          rc_status
        else
          echo -n "- Warning: squid not running ! "
          rc_failed 7
        fi

        # Remember status and be verbose
        rc_status -v
        ;;
    status)
        echo -n "Checking for WWW-proxy squid "
        ## Check status with checkproc(8), if process is running
        ## checkproc will return with exit status 0.

        # Return value is slightly different for the status command:
        # 0 - service up and running
        # 1 - service dead, but /var/run/  pid  file exists
        # 2 - service dead, but /var/lock/ lock file exists
        # 3 - service not running (unused)
        # 4 - service status unknown :-(
        # 5--199 reserved (5--99 LSB, 100--149 distro, 150--199 appl.)

        # NOTE: checkproc returns LSB compliant status values.
        /sbin/checkproc $SQUID_BIN

        # Remember status and be verbose
        rc_status -v
        ;;
    probe)
        test $SQUID_CONF -nt $SQUID_PID && echo reload
        ;;
    *)
        echo "Usage: $0 
{start|stop|status|try-restart|restart|force-reload|reload|probe}"
        exit 1
        ;;
esac
rc_exit

++++++ squid.init.rh ++++++
#!/bin/bash
# chkconfig: - 90 25
# pidfile: /var/run/squid.pid
# config: /etc/squid/squid.conf
#
### BEGIN INIT INFO
# Provides: squid
# Short-Description: starting and stopping Squid Internet Object Cache
# Description: Squid - Internet Object Cache. Internet object caching is \
#       a way to store requested Internet objects (i.e., data available \
#       via the HTTP, FTP, and gopher protocols) on a system closer to the \
#       requesting site than to the source. Web browsers can then use the \
#       local Squid cache as a proxy HTTP server, reducing access time as \
#       well as bandwidth consumption.
### END INIT INFO


PATH=/usr/bin:/sbin:/bin:/usr/sbin
export PATH

# Source function library.
. /etc/rc.d/init.d/functions

# Source networking configuration.
. /etc/sysconfig/network

if [ -f /etc/sysconfig/squid ]; then
        . /etc/sysconfig/squid
fi

# don't raise an error if the config file is incomplete
# set defaults instead:
SQUID_OPTS=${SQUID_OPTS:-""}
SQUID_PIDFILE_TIMEOUT=${SQUID_PIDFILE_TIMEOUT:-20}
SQUID_SHUTDOWN_TIMEOUT=${SQUID_SHUTDOWN_TIMEOUT:-100}
SQUID_CONF=${SQUID_CONF:-"/etc/squid/squid.conf"}
SQUID_PIDFILE_DIR="/var/run/squid"
SQUID_USER="squid"
SQUID_DIR="squid"

# determine the name of the squid binary
[ -f /usr/sbin/squid ] && SQUID=squid

prog="$SQUID"

# determine which one is the cache_swap directory
CACHE_SWAP=`sed -e 's/#.*//g' $SQUID_CONF | \
        grep cache_dir | awk '{ print $3 }'`

RETVAL=0

probe() {
        # Check that networking is up.
        [ ${NETWORKING} = "no" ] && exit 1

        [ `id -u` -ne 0 ] && exit 4

        # check if the squid conf file is present
        [ -f $SQUID_CONF ] || exit 6
}

start() {
        # Check if $SQUID_PIDFILE_DIR exists and if not, lets create it and 
give squid permissions.
        if [ ! -d $SQUID_PIDFILE_DIR ] ; then mkdir $SQUID_PIDFILE_DIR ; chown 
-R $SQUID_USER.$SQUID_DIR $SQUID_PIDFILE_DIR; fi
        probe

        parse=`$SQUID -k parse -f $SQUID_CONF 2>&1`
        RETVAL=$?
        if [ $RETVAL -ne 0 ]; then
                echo -n $"Starting $prog: "
                echo_failure
                echo
                echo "$parse"
                return 1
        fi
        for adir in $CACHE_SWAP; do
                if [ ! -d $adir/00 ]; then
                        echo -n "init_cache_dir $adir... "
                        $SQUID -z -F -f $SQUID_CONF >> /var/log/squid/squid.out 
2>&1
                fi
        done
        echo -n $"Starting $prog: "
        $SQUID $SQUID_OPTS -f $SQUID_CONF >> /var/log/squid/squid.out 2>&1
        RETVAL=$?
        if [ $RETVAL -eq 0 ]; then
                timeout=0;
                while : ; do
                        [ ! -f /var/run/squid.pid ] || break
                        if [ $timeout -ge $SQUID_PIDFILE_TIMEOUT ]; then
                                RETVAL=1
                                break
                        fi
                        sleep 1 && echo -n "."
                        timeout=$((timeout+1))
                done
        fi
        [ $RETVAL -eq 0 ] && touch /var/lock/subsys/$SQUID
        [ $RETVAL -eq 0 ] && echo_success
        [ $RETVAL -ne 0 ] && echo_failure
        echo
        return $RETVAL
}

stop() {
        echo -n $"Stopping $prog: "
        $SQUID -k check -f $SQUID_CONF >> /var/log/squid/squid.out 2>&1
        RETVAL=$?
        if [ $RETVAL -eq 0 ] ; then
                $SQUID -k shutdown -f $SQUID_CONF &
                rm -f /var/lock/subsys/$SQUID
                timeout=0
                while : ; do
                        [ -f /var/run/squid.pid ] || break
                        if [ $timeout -ge $SQUID_SHUTDOWN_TIMEOUT ]; then
                                echo
                                return 1
                        fi
                        sleep 2 && echo -n "."
                        timeout=$((timeout+2))
                done
                echo_success
                echo
        else
                echo_failure
                if [ ! -e /var/lock/subsys/$SQUID ]; then
                        RETVAL=0
                fi
                echo
        fi
        rm -rf $SQUID_PIDFILE_DIR/*
        return $RETVAL
}

reload() {
        $SQUID $SQUID_OPTS -k reconfigure -f $SQUID_CONF
}

restart() {
        stop
        rm -rf $SQUID_PIDFILE_DIR/*
        start
}

condrestart() {
        [ -e /var/lock/subsys/squid ] && restart || :
}

rhstatus() {
        status $SQUID && $SQUID -k check -f $SQUID_CONF
}


case "$1" in
start)
        start
        ;;

stop)
        stop
        ;;

reload|force-reload)
        reload
        ;;

restart)
        restart
        ;;

condrestart|try-restart)
        condrestart
        ;;

status)
        rhstatus
        ;;

probe)
        probe
        ;;

*)
        echo $"Usage: $0 
{start|stop|status|reload|force-reload|restart|try-restart|probe}"
        exit 2
esac

exit $?
++++++ squid.permissions ++++++
/var/cache/squid/               squid:root      750
/var/log/squid/                 squid:root      750
#/usr/sbin/pinger               root:squid      4750
#/usr/sbin/basic_pam_auth       root:shadow     2750
-- 
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to