diff -u -r -N squid-4.15/ChangeLog squid-4.16/ChangeLog
--- squid-4.15/ChangeLog 2021-05-10 14:04:15.000000000 +1200
+++ squid-4.16/ChangeLog 2021-07-05 22:09:36.000000000 +1200
@@ -1,3 +1,10 @@
+Changes in squid-4.16 (04 Jul 2021):
+
+ - Regression Fix: --with-valgrind-debug build broken since 4.15
+ - Bug 5129 pt1: remove Lock use from HttpRequestMethod
+ - Bug 5128: Translation: Fix '% i' typo in es/ERR_FORWARDING_DENIED
+ - Bug 4528: ICAP transactions quit on async DNS lookups
+
Changes in squid-4.15 (10 May 2021):
- Bug 5112: Excessively loud chunked reply parsing error reporting
diff -u -r -N squid-4.15/configure squid-4.16/configure
--- squid-4.15/configure 2021-05-10 22:35:34.000000000 +1200
+++ squid-4.16/configure 2021-07-05 22:56:27.000000000 +1200
@@ -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 4.15.
+# Generated by GNU Autoconf 2.69 for Squid Web Proxy 4.16.
#
# Report bugs to
The Squid Team are pleased to announce the release of Squid-4.15.
+The Squid Team are pleased to announce the release of Squid-4.16.
This new release is available for download from http://www.squid-cache.org/Versions/v4/ or the mirrors.
@@ -479,6 +479,7 @@New tls-default-ca option to use the system Trusted CAs to verify the server certificate.
New tls-domain= option to verify the server certificate domain.
+Squid-4.16 improved support for hostnames in ICAP service URLs.
Now only requires that helper binary exists when daemon: log module diff -u -r -N squid-4.15/errors/es/ERR_FORWARDING_DENIED squid-4.16/errors/es/ERR_FORWARDING_DENIED --- squid-4.15/errors/es/ERR_FORWARDING_DENIED 2021-05-10 22:37:12.000000000 +1200 +++ squid-4.16/errors/es/ERR_FORWARDING_DENIED 2021-07-05 22:57:50.000000000 +1200 @@ -24,7 +24,7 @@
Reenvío denegado.
-Este caché no transmitirá su solicitud, ya que intenta imponer una relación de conexión. Quizás el cliente en% i es un caché que se ha desconfigurado.
+Este caché no transmitirá su solicitud, ya que intenta imponer una relación de conexión. Quizás el cliente en %i es un caché que se ha desconfigurado.
Su administrador del caché es %w.
diff -u -r -N squid-4.15/include/version.h squid-4.16/include/version.h --- squid-4.15/include/version.h 2021-05-10 22:35:34.000000000 +1200 +++ squid-4.16/include/version.h 2021-07-05 22:56:27.000000000 +1200 @@ -7,7 +7,7 @@ */ #ifndef SQUID_RELEASE_TIME -#define SQUID_RELEASE_TIME 1620642924 +#define SQUID_RELEASE_TIME 1625482578 #endif /* diff -u -r -N squid-4.15/RELEASENOTES.html squid-4.16/RELEASENOTES.html --- squid-4.15/RELEASENOTES.html 2021-05-10 22:40:02.000000000 +1200 +++ squid-4.16/RELEASENOTES.html 2021-07-05 23:00:45.000000000 +1200 @@ -3,10 +3,10 @@ -The Squid Team are pleased to announce the release of Squid-4.15.
+The Squid Team are pleased to announce the release of Squid-4.16.
This new release is available for download from http://www.squid-cache.org/Versions/v4/ or the mirrors.
@@ -479,6 +479,7 @@New tls-default-ca option to use the system Trusted CAs to verify the server certificate.
New tls-domain= option to verify the server certificate domain.
+Squid-4.16 improved support for hostnames in ICAP service URLs.
Now only requires that helper binary exists when daemon: log module
diff -u -r -N squid-4.15/src/acl/external/delayer/ext_delayer_acl.8 squid-4.16/src/acl/external/delayer/ext_delayer_acl.8
--- squid-4.15/src/acl/external/delayer/ext_delayer_acl.8 2021-05-10 22:40:06.000000000 +1200
+++ squid-4.16/src/acl/external/delayer/ext_delayer_acl.8 2021-07-05 23:00:47.000000000 +1200
@@ -133,7 +133,7 @@
.\" ========================================================================
.\"
.IX Title "EXT_DELAYER_ACL 8"
-.TH EXT_DELAYER_ACL 8 "2021-05-10" "perl v5.32.0" "User Contributed Perl Documentation"
+.TH EXT_DELAYER_ACL 8 "2021-07-05" "perl v5.32.0" "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 -u -r -N squid-4.15/src/acl/external/SQL_session/ext_sql_session_acl.8 squid-4.16/src/acl/external/SQL_session/ext_sql_session_acl.8
--- squid-4.15/src/acl/external/SQL_session/ext_sql_session_acl.8 2021-05-10 22:40:07.000000000 +1200
+++ squid-4.16/src/acl/external/SQL_session/ext_sql_session_acl.8 2021-07-05 23:00:47.000000000 +1200
@@ -133,7 +133,7 @@
.\" ========================================================================
.\"
.IX Title "EXT_SQL_SESSION_ACL 8"
-.TH EXT_SQL_SESSION_ACL 8 "2021-05-10" "perl v5.32.0" "User Contributed Perl Documentation"
+.TH EXT_SQL_SESSION_ACL 8 "2021-07-05" "perl v5.32.0" "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 -u -r -N squid-4.15/src/acl/external/wbinfo_group/ext_wbinfo_group_acl.8 squid-4.16/src/acl/external/wbinfo_group/ext_wbinfo_group_acl.8
--- squid-4.15/src/acl/external/wbinfo_group/ext_wbinfo_group_acl.8 2021-05-10 22:40:07.000000000 +1200
+++ squid-4.16/src/acl/external/wbinfo_group/ext_wbinfo_group_acl.8 2021-07-05 23:00:48.000000000 +1200
@@ -133,7 +133,7 @@
.\" ========================================================================
.\"
.IX Title "EXT_WBINFO_GROUP_ACL 8"
-.TH EXT_WBINFO_GROUP_ACL 8 "2021-05-10" "perl v5.32.0" "User Contributed Perl Documentation"
+.TH EXT_WBINFO_GROUP_ACL 8 "2021-07-05" "perl v5.32.0" "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 -u -r -N squid-4.15/src/adaptation/icap/Xaction.cc squid-4.16/src/adaptation/icap/Xaction.cc
--- squid-4.15/src/adaptation/icap/Xaction.cc 2021-05-10 14:04:15.000000000 +1200
+++ squid-4.16/src/adaptation/icap/Xaction.cc 2021-07-05 22:09:36.000000000 +1200
@@ -88,6 +88,7 @@
isRetriable(true),
isRepeatable(true),
ignoreLastWrite(false),
+ waitingForDns(false),
stopReason(NULL),
connector(NULL),
reader(NULL),
@@ -189,12 +190,17 @@
debugs(93,3, typeName << " opens connection to " << s.cfg().host.termedBuf() << ":" << s.cfg().port);
// Locate the Service IP(s) to open
+ assert(!waitingForDns);
+ waitingForDns = true; // before the possibly-synchronous ipcache_nbgethostbyname()
ipcache_nbgethostbyname(s.cfg().host.termedBuf(), icapLookupDnsResults, this);
}
void
Adaptation::Icap::Xaction::dnsLookupDone(const ipcache_addrs *ia)
{
+ assert(waitingForDns);
+ waitingForDns = false;
+
Adaptation::Icap::ServiceRep &s = service();
if (ia == NULL) {
@@ -420,7 +426,8 @@
bool Adaptation::Icap::Xaction::doneAll() const
{
- return !connector && !securer && !reader && !writer && Adaptation::Initiate::doneAll();
+ return !waitingForDns && !connector && !securer && !reader && !writer &&
+ Adaptation::Initiate::doneAll();
}
void Adaptation::Icap::Xaction::updateTimeout()
@@ -690,6 +697,9 @@
buf.append(";", 1);
}
+
+ if (waitingForDns)
+ buf.append("D", 1);
}
void Adaptation::Icap::Xaction::fillDoneStatus(MemBuf &buf) const
diff -u -r -N squid-4.15/src/adaptation/icap/Xaction.h squid-4.16/src/adaptation/icap/Xaction.h
--- squid-4.15/src/adaptation/icap/Xaction.h 2021-05-10 14:04:15.000000000 +1200
+++ squid-4.16/src/adaptation/icap/Xaction.h 2021-07-05 22:09:36.000000000 +1200
@@ -136,6 +136,7 @@
bool isRetriable; ///< can retry on persistent connection failures
bool isRepeatable; ///< can repeat if no or unsatisfactory response
bool ignoreLastWrite;
+ bool waitingForDns; ///< expecting a ipcache_nbgethostbyname() callback
const char *stopReason;
diff -u -r -N squid-4.15/src/auth/basic/DB/basic_db_auth.8 squid-4.16/src/auth/basic/DB/basic_db_auth.8
--- squid-4.15/src/auth/basic/DB/basic_db_auth.8 2021-05-10 22:40:08.000000000 +1200
+++ squid-4.16/src/auth/basic/DB/basic_db_auth.8 2021-07-05 23:00:48.000000000 +1200
@@ -133,7 +133,7 @@
.\" ========================================================================
.\"
.IX Title "BASIC_DB_AUTH 8"
-.TH BASIC_DB_AUTH 8 "2021-05-10" "perl v5.32.0" "User Contributed Perl Documentation"
+.TH BASIC_DB_AUTH 8 "2021-07-05" "perl v5.32.0" "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 -u -r -N squid-4.15/src/auth/basic/POP3/basic_pop3_auth.8 squid-4.16/src/auth/basic/POP3/basic_pop3_auth.8
--- squid-4.15/src/auth/basic/POP3/basic_pop3_auth.8 2021-05-10 22:40:08.000000000 +1200
+++ squid-4.16/src/auth/basic/POP3/basic_pop3_auth.8 2021-07-05 23:00:48.000000000 +1200
@@ -133,7 +133,7 @@
.\" ========================================================================
.\"
.IX Title "BASIC_POP3_AUTH 8"
-.TH BASIC_POP3_AUTH 8 "2021-05-10" "perl v5.32.0" "User Contributed Perl Documentation"
+.TH BASIC_POP3_AUTH 8 "2021-07-05" "perl v5.32.0" "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 -u -r -N squid-4.15/src/cbdata.cc squid-4.16/src/cbdata.cc
--- squid-4.15/src/cbdata.cc 2021-05-10 14:04:15.000000000 +1200
+++ squid-4.16/src/cbdata.cc 2021-07-05 22:09:36.000000000 +1200
@@ -90,14 +90,7 @@
{}
~cbdata();
- static cbdata *FromUserData(const void *p) {
-#if WITH_VALGRIND
- return cbdata_htable.at(p);
-#else
- const auto t = static_cast