=== modified file 'configure.in' --- configure.in 2010-08-01 06:29:48 +0000 +++ configure.in 2010-08-05 20:20:50 +0000 @@ -1146,6 +1146,34 @@ fi AC_SUBST(SSLLIB) +dnl Allow user to specify libnetfilter_conntrack (needed for QOS netfilter marking) +AC_ARG_WITH(netfilter-conntrack, + AS_HELP_STRING([--with-netfilter-conntrack=PATH], + [Compile with the Netfilter conntrack libraries. The path to + the development libraries and headers + installation can be specified if outside of the + system standard directories]), [ +case "$with_netfilter_conntrack" in + no) + : # Nothing special to do here + ;; + yes) + AC_CHECK_LIB([netfilter_conntrack], [nfct_query],, + AC_MSG_ERROR([libnetfilter-conntrack library not found. Needed for netfilter-conntrack support]), + [-lnetfilter_conntrack]) + AC_CHECK_HEADERS([libnetfilter_conntrack/libnetfilter_conntrack.h \ + libnetfilter_conntrack/libnetfilter_conntrack_tcp.h]) + ;; + *) + if test ! -d $withval ; then + AC_MSG_ERROR([--with-netfilter-conntrack path does not point to a directory]) + fi + LDFLAGS="-L$with_netfilter_conntrack/lib $LDFLAGS" + CPPFLAGS="-I$with_netfilter_conntrack/include $CPPFLAGS" + with_netfilter_conntrack=yes + ;; + esac +]) AC_ARG_ENABLE(forw-via-db, AS_HELP_STRING([--enable-forw-via-db],[Enable Forw/Via database]), [ @@ -2057,10 +2085,19 @@ SQUID_YESNO([$enableval], [unrecognized argument to --enable-zph-qos: $enableval]) ]) -SQUID_DEFINE_BOOL(USE_ZPH_QOS,${enable_zph_qos:=no}, +SQUID_DEFINE_BOOL(USE_QOS_TOS,${enable_zph_qos:=no}, [Enable Zero Penalty Hit QOS. When set, Squid will alter the TOS field of HIT responses to help policing network traffic]) AC_MSG_NOTICE([ZPH QOS enabled: $enable_zph_qos]) +if test "$enable_zph_qos" = "yes" ; then + if test "$with_netfilter_conntrack" = "yes" ; then + AC_MSG_NOTICE([QOS netfilter marking enabled: $with_netfilter_conntrack]) + SQUID_DEFINE_BOOL(USE_QOS_NFMARK,$with_netfilter_conntrack, + [Enable support for QOS netfilter packet marking]) + else + AC_MSG_WARN([--with-netfilter-conntrack not enabled. QOS features will not support Netfilter marking.]) + fi +fi dnl --with-maxfd present for compatibility with Squid-2. dnl undocumented in ./configure --help to encourage using the Squid-3 directive. === modified file 'doc/release-notes/release-3.2.sgml' --- doc/release-notes/release-3.2.sgml 2010-08-02 13:55:59 +0000 +++ doc/release-notes/release-3.2.sgml 2010-08-05 19:13:42 +0000 @@ -396,6 +396,15 @@

Please check and update your squid.conf to use the text none for no limit instead of the old 0 (zero).

All users upgrading need to be aware that from Squid-3.3 setting this option to 0 (zero) will mean zero bytes of memory get pooled. + qos_flows +

New options mark and tos +

tos retains the original QOS functionality of the IP header TOS field. +

mark offers the same functionality, but with a netfilter mark value. +

These options should be placed immediately after qos_flows. +

The tos value is optional in order to maintain backwards compatability. +

Netfilter marking requires libnetfilter_conntrack, which must be included during compilation using --with-netfilter-conntrack. +

The preserve-miss functionality is available with the mark option and requires no kernel patching. + windows_ipaddrchangemonitor

Now only available to be set in Windows builds. @@ -472,6 +481,9 @@ Currently one demo helper fake is provided in shell and C++ forms to demonstrate the helper protocol usage and provide exemplar code. + --with-netfiler-conntrack +

Includes the libnetfilter_conntrack library, required for the new qos_flows option mark. + Changes to existing options