]> git.ipfire.org Git - thirdparty/squid.git/log
thirdparty/squid.git
11 years agoVector refactor: move almost all clients to std::vector from Vector
Francesco Chemolli [Tue, 11 Feb 2014 11:35:20 +0000 (12:35 +0100)] 
Vector refactor: move almost all clients to std::vector from Vector

11 years agoMerged from trunk
Francesco Chemolli [Tue, 11 Feb 2014 11:32:45 +0000 (12:32 +0100)] 
Merged from trunk

11 years agoFixed some formatting
Francesco Chemolli [Tue, 11 Feb 2014 11:30:51 +0000 (12:30 +0100)] 
Fixed some formatting

11 years agoCleanup: remove garbage prefixes from Digest auth debugs
Amos Jeffries [Tue, 11 Feb 2014 09:12:28 +0000 (02:12 -0700)] 
Cleanup: remove garbage prefixes from Digest auth debugs

11 years agoAdded missing includes
Francesco Chemolli [Mon, 10 Feb 2014 22:39:56 +0000 (23:39 +0100)] 
Added missing includes

11 years agoCleanup
Francesco Chemolli [Mon, 10 Feb 2014 17:52:49 +0000 (18:52 +0100)] 
Cleanup

11 years agoRefactor all users of Vector to std::vector except for Stack
Francesco Chemolli [Mon, 10 Feb 2014 17:18:48 +0000 (18:18 +0100)] 
Refactor all users of Vector to std::vector except for Stack

11 years agoMore Vector to std::vector refactoring
Francesco Chemolli [Mon, 10 Feb 2014 16:39:10 +0000 (17:39 +0100)] 
More Vector to std::vector refactoring

11 years agoRefactor HttpHeader::entries
Francesco Chemolli [Mon, 10 Feb 2014 15:07:49 +0000 (16:07 +0100)] 
Refactor HttpHeader::entries

11 years agoGet rid of all users of Vector::iterator::incrementable
Francesco Chemolli [Mon, 10 Feb 2014 13:55:54 +0000 (14:55 +0100)] 
Get rid of all users of Vector::iterator::incrementable

11 years agoMigrate some users of Vector to std::vector
Francesco Chemolli [Mon, 10 Feb 2014 12:58:49 +0000 (13:58 +0100)] 
Migrate some users of Vector to std::vector

11 years agoMerged from trunk
Francesco Chemolli [Mon, 10 Feb 2014 12:38:41 +0000 (13:38 +0100)] 
Merged from trunk

11 years agoFix argument name conflict in Auth::Config::findUserInCache
Francesco Chemolli [Mon, 10 Feb 2014 12:37:47 +0000 (13:37 +0100)] 
Fix argument name conflict in Auth::Config::findUserInCache

11 years agoMerge vector-refactor branch: align Vector API with std::vector
Francesco Chemolli [Mon, 10 Feb 2014 12:15:40 +0000 (13:15 +0100)] 
Merge vector-refactor branch: align Vector API with std::vector

11 years agoMerged from trunk
Francesco Chemolli [Mon, 10 Feb 2014 12:14:44 +0000 (13:14 +0100)] 
Merged from trunk

11 years agoBug 3969: user credentials cache lookup for Digest authentication broken
Frederic Bourgeois [Mon, 10 Feb 2014 11:08:58 +0000 (04:08 -0700)] 
Bug 3969: user credentials cache lookup for Digest authentication broken

Changes to the username credentials cache were made in Basic auth but
the matching changes were not duplicated to Digest auth. Since the
lookup is identical move it to generic Auth::Config.

Also fixes assertion auth_digest.cc:759:
    "(nonce->user == NULL) || (nonce->user == user)"

11 years agoMerged from trunk
Francesco Chemolli [Mon, 10 Feb 2014 09:59:19 +0000 (10:59 +0100)] 
Merged from trunk

11 years agoMake ESICustomParser::parse c++98-compatible
Francesco Chemolli [Mon, 10 Feb 2014 09:19:56 +0000 (10:19 +0100)] 
Make ESICustomParser::parse c++98-compatible

11 years agoFix cstdio compile errors
Amos Jeffries [Sun, 9 Feb 2014 08:55:01 +0000 (01:55 -0700)] 
Fix cstdio compile errors

11 years agoSource Maintenance - manual run
Amos Jeffries [Sat, 8 Feb 2014 13:36:42 +0000 (06:36 -0700)] 
Source Maintenance - manual run

11 years agoMove compat/unsafe.h protections from libcompat to source maintenance
Amos Jeffries [Sat, 8 Feb 2014 12:33:31 +0000 (05:33 -0700)] 
Move compat/unsafe.h protections from libcompat to source maintenance

It is sufficient to run a code scan from source-maintenance.sh for the
unsafe functions being used in Squid-specific code instead of
hard-coding compiler breakage on users.
This also "fixes" reporting of errors when cstdio pulls in use of the
unsafe functions by stdlib.

11 years agoVarious fixes to configure for FreeBSD 10
Dennis Glatting [Sat, 8 Feb 2014 08:53:47 +0000 (01:53 -0700)] 
Various fixes to configure for FreeBSD 10

* Detect cstdio file presence for libcompat

* Fix shell syntax in Heimdal Kerberos library detection

11 years agoUse Vector::at() instead of [] errorInitialize()
Francesco Chemolli [Fri, 7 Feb 2014 16:14:42 +0000 (17:14 +0100)] 
Use Vector::at() instead of [] errorInitialize()

11 years agoMerged from trunk
Francesco Chemolli [Fri, 7 Feb 2014 15:38:35 +0000 (16:38 +0100)] 
Merged from trunk

11 years agoHave Vector::at rely on operator[] to do the low-level access
Francesco Chemolli [Fri, 7 Feb 2014 15:37:11 +0000 (16:37 +0100)] 
Have Vector::at rely on operator[] to do the low-level access

11 years agoSourceLayout: shuffle URLScheme to AnyP::UriScheme
Amos Jeffries [Fri, 7 Feb 2014 13:45:20 +0000 (06:45 -0700)] 
SourceLayout: shuffle URLScheme to AnyP::UriScheme

This class holds a generic protocol agnostic Scheme representation.

* rename const_str() member to c_str() since it produces a const C-string
 (char*) representation.

* Remove some unecessary dependencies.

* Cleanup the coding style to match guidelines.

11 years agoVector::pop_back returns void now; don't save the old value
Francesco Chemolli [Thu, 6 Feb 2014 14:14:36 +0000 (15:14 +0100)] 
Vector::pop_back returns void now; don't save the old value

11 years agoMerged from trunk
Francesco Chemolli [Thu, 6 Feb 2014 13:05:41 +0000 (14:05 +0100)] 
Merged from trunk

11 years agoRegression Bug 3769: client_netmask not evaluated since Comm redesign
Amos Jeffries [Thu, 6 Feb 2014 12:16:08 +0000 (05:16 -0700)] 
Regression Bug 3769: client_netmask not evaluated since Comm redesign

11 years agoFix r13257 commit
Francesco Chemolli [Thu, 6 Feb 2014 09:30:48 +0000 (10:30 +0100)] 
Fix r13257 commit

11 years agoFix keepalive handling for non-ranged requests.
Alex Rousskov [Wed, 5 Feb 2014 18:04:47 +0000 (19:04 +0100)] 
Fix keepalive handling for non-ranged requests.

Internal keepalive flag was ignored by a mismatched interface between ClientSocketContext::socketState
and writeComplete in the case of non-ranged requests.

11 years agoChanged c-style cast to const_cast in esi/CustomParser.cc
Francesco Chemolli [Tue, 4 Feb 2014 19:55:16 +0000 (20:55 +0100)] 
Changed c-style cast to const_cast in esi/CustomParser.cc

11 years agoRemoved useless include in errorpage.cc
Francesco Chemolli [Tue, 4 Feb 2014 19:51:44 +0000 (20:51 +0100)] 
Removed useless include in errorpage.cc

11 years agoReverted broken change in HttpRequest::multipartRangeRequest
Francesco Chemolli [Tue, 4 Feb 2014 19:50:02 +0000 (20:50 +0100)] 
Reverted broken change in HttpRequest::multipartRangeRequest

11 years agoRemove Vector::operator +=. Removed some useless comments
Francesco Chemolli [Tue, 4 Feb 2014 19:47:14 +0000 (20:47 +0100)] 
Remove Vector::operator +=. Removed some useless comments

11 years agoMove some looping checks from size() to !empty()
Francesco Chemolli [Tue, 4 Feb 2014 16:54:49 +0000 (17:54 +0100)] 
Move some looping checks from size() to !empty()

11 years agoChanged pop_back() signature to match std::vector. Marked hot methods inline
Francesco Chemolli [Sun, 2 Feb 2014 18:19:59 +0000 (19:19 +0100)] 
Changed pop_back() signature to match std::vector. Marked hot methods inline

11 years agoTurned Vector::count and capacity protected
Francesco Chemolli [Sun, 2 Feb 2014 17:10:57 +0000 (18:10 +0100)] 
Turned Vector::count and capacity protected

11 years agoMade Vector::items private
Francesco Chemolli [Sun, 2 Feb 2014 14:36:26 +0000 (15:36 +0100)] 
Made Vector::items private

11 years agoRenamed Vector::clean to clear
Francesco Chemolli [Sun, 2 Feb 2014 09:42:23 +0000 (10:42 +0100)] 
Renamed Vector::clean to clear

11 years agoRemove layering violations in Vector users
Francesco Chemolli [Sun, 2 Feb 2014 08:57:20 +0000 (09:57 +0100)] 
Remove layering violations in Vector users

11 years agoPrep for 3.4.3
Amos Jeffries [Sun, 2 Feb 2014 03:09:44 +0000 (20:09 -0700)] 
Prep for 3.4.3

11 years agoFix peerSelectDnsResults() IP address cycling
Amos Jeffries [Sun, 2 Feb 2014 01:24:53 +0000 (18:24 -0700)] 
Fix peerSelectDnsResults() IP address cycling

The local ip variable is the index of the IP address to be used.
Loop counter n is only used to prevent cycling indefinitely and should
not be used to access the array indexes.

11 years agoComm job callbacks need job's cbdata pointer, not a job pointer.
Alex Rousskov [Tue, 28 Jan 2014 19:28:23 +0000 (12:28 -0700)] 
Comm job callbacks need job's cbdata pointer, not a job pointer.

Otherwise, in complex inheritance hierarchies, some [inner] classes will
hit cbdata cookie assertions when scheduling Comm calls with callbacks.

11 years agoBug 3975: atomic detection cross-compilation failure
Stefano Cordibella [Mon, 27 Jan 2014 13:37:38 +0000 (06:37 -0700)] 
Bug 3975: atomic detection cross-compilation failure

11 years agoBug 3608: part 1 - per-service name for workers UDS sockets
Amos Jeffries [Mon, 27 Jan 2014 05:27:41 +0000 (22:27 -0700)] 
Bug 3608: part 1 - per-service name for workers UDS sockets

Separate the UDS socket names used by SMP workers by the -n service_name
label assigned to the Squid instance being run.

TODO: separate shared memory blocks per-service.

11 years agoAdd ${service_name} macro to squid.conf processing
Amos Jeffries [Mon, 27 Jan 2014 03:06:15 +0000 (20:06 -0700)] 
Add ${service_name} macro to squid.conf processing

This allows squid.conf directives to be configured per-service by
expanding into the -n service_name parameter. The default is "squid".

11 years agoBug 3954: compile failure in CpuAffinity.cc
Unknown FreeBSD Contributor [Mon, 27 Jan 2014 02:11:08 +0000 (19:11 -0700)] 
Bug 3954: compile failure in CpuAffinity.cc

Patch written by 'dim [1]' contributor to FreeBSD and imported to Squid
under FreeBSD license. see
http://svnweb.freebsd.org/ports/head/www/squid33/files/patch-include__Array.h

11 years agoEnable -n command line option for non-Windows Squid builds
Amos Jeffries [Fri, 24 Jan 2014 01:57:15 +0000 (18:57 -0700)] 
Enable -n command line option for non-Windows Squid builds

This command line option is used on Windows to name the service instance
of Squid being run and/or managed. At this point it still only has
useful effect on Windows, but can now be used by components on other
systems as well.

Show the running instance service name in cacehmgr and -v output.

Also remove _WIN_SQUID_DEFAULT_SERVICE_NAME macro which duplicated the
APP_SHORTNAME macro. This changes the Windows service name from Squid to
squid (lower case) on future Squid-3 for Windows.

11 years agoInitialize asyncLoopDepth_ in constructor
Amos Jeffries [Thu, 23 Jan 2014 22:47:39 +0000 (15:47 -0700)] 
Initialize asyncLoopDepth_ in constructor

  Detected by Coverity Scan. Issue 740529.

11 years agoBug 3971: "BUG: cannot aggregate mgr:client_list: cmd->profile != NULL" in SMP mode
Nathan Hoad [Thu, 23 Jan 2014 07:59:26 +0000 (09:59 +0200)] 
Bug 3971: "BUG: cannot aggregate mgr:client_list: cmd->profile != NULL" in SMP mode

When running Squid in SMP mode, the 'client_list' command cannot be used as the
coordinator doesn't call clientdbInit(), and thus doesn't have the client_list
action registered.

This patch uses RegisteredRunner to initialize clientdb and register the
'client_list' command

11 years agoBug 1202 part 1: documentation and debugs for refresh_pattern algorithms
Doug Dixon [Mon, 20 Jan 2014 10:43:03 +0000 (23:43 +1300)] 
Bug 1202 part 1: documentation and debugs for refresh_pattern algorithms

This contains only the code documentation and debugs changes as relevant
to the current code. Some which are only relevant to the new code from
that bug patch have been omitted.

It omits all logic changes and function renaming changes.

11 years agoSet error page Content-Type character set to UTF-8
Amos Jeffries [Mon, 20 Jan 2014 01:20:40 +0000 (14:20 +1300)] 
Set error page Content-Type character set to UTF-8

This fixes issues with some user agents displaying non-English / ASCII
error page translations. Our translation system uses and produces UTF-8
templates for the langpack content.

It also encourages UTF-8 usage in third-party error pages.

11 years agocachemgr: Enable per-report Content-Type header
Amos Jeffries [Mon, 20 Jan 2014 01:11:58 +0000 (14:11 +1300)] 
cachemgr: Enable per-report Content-Type header

The default for all reports is plain text in UTF-8.

NOTE: UTF-8 selected because although current reports limit themselves
to ASCII character ranges, some reports may contain text pulled from the
protocol transferred and UTF-8 display covers most unexpected cases.

11 years agoCleanup refreshCountsStats() cache manager code
Amos Jeffries [Mon, 20 Jan 2014 00:50:04 +0000 (13:50 +1300)] 
Cleanup refreshCountsStats() cache manager code

* Replace a #define macro with local static function.

* Replace pointer parameter with reference

* suppress display of histograms where there are no records and so no
  meaningful content to be displayed.

11 years agoDocs: update refresh_pattern internal documentation
Amos Jeffries [Sun, 19 Jan 2014 22:43:22 +0000 (11:43 +1300)] 
Docs: update refresh_pattern internal documentation

11 years agoRevert rev.13253 - fuba
Amos Jeffries [Sun, 19 Jan 2014 05:39:55 +0000 (21:39 -0800)] 
Revert rev.13253 - fuba

11 years agoMerge from trunk
Amos Jeffries [Sun, 19 Jan 2014 05:20:17 +0000 (21:20 -0800)] 
Merge from trunk

11 years agoFix documentation for key_extras authentication helper parameter
Christos Tsantilas [Thu, 30 Jan 2014 21:24:44 +0000 (23:24 +0200)] 
Fix documentation for key_extras authentication helper parameter

11 years agoFix configure syntax error on strict shells
Francesco Chemolli [Wed, 29 Jan 2014 09:31:47 +0000 (10:31 +0100)] 
Fix configure syntax error on strict shells

11 years agoFix external_acl_type async loop failures
Amos Jeffries [Fri, 17 Jan 2014 11:44:26 +0000 (03:44 -0800)] 
Fix external_acl_type async loop failures

When externa_acl_type uses %LOGIN and is required to trigger async
authentication lookups it returns and hits the async loop prevention
check when starting to trigger its own external helper lookup. This
results in a DUNNO output from the helper as final status instead of
the real helepr lookup result.

Avoid these by allowing async helpers to loop several times before
aborting the lookups.

Also, extend debug message to indicate loop count.

Thanks to Peter Benko for trackign down the issue and testing solutions.

11 years agoRevert and replace rev.13234
Amos Jeffries [Thu, 16 Jan 2014 00:24:34 +0000 (13:24 +1300)] 
Revert and replace rev.13234

Clang dentifies the StoreIOBuffer parameter as unsigned,
  error: comparison of unsigned expression < 0 is always false

11 years agoBug 4008: HttpHeader warnOnError should be an int not a bool
Will Roberts [Wed, 15 Jan 2014 23:57:54 +0000 (12:57 +1300)] 
Bug 4008: HttpHeader warnOnError should be an int not a bool

11 years agoCleanup: Fix StoreIOBuffer initialization cases
Amos Jeffries [Wed, 15 Jan 2014 02:11:05 +0000 (15:11 +1300)] 
Cleanup: Fix StoreIOBuffer initialization cases

When StoreIOBuffer isconstructed with an invalid (negative) size for the
content data mark it as an error immedately and set a valid length of
zero bytes.

Also, remove some unnecessary code in store_client.cc resulting.

  Detected by Coverity Scan. Issue 434132.

11 years agoCleanup: Improve testACLMaxUserIP NULL checks
Amos Jeffries [Wed, 15 Jan 2014 01:59:19 +0000 (14:59 +1300)] 
Cleanup: Improve testACLMaxUserIP NULL checks

  Detected by Coverity Scan. Issue 1140358.

11 years agoCleanup: ICAP adaptation pointer handling
Amos Jeffries [Wed, 15 Jan 2014 01:54:19 +0000 (14:54 +1300)] 
Cleanup: ICAP adaptation pointer handling

Divert unlikely but possible request NULL pointer into the Must()
condition handler for missing History data.

 Detected by Coverity Scan. Issue 740365.

11 years agoFix rfcnb library potential NULL pointer dereference
Amos Jeffries [Wed, 15 Jan 2014 01:23:14 +0000 (14:23 +1300)] 
Fix rfcnb library potential NULL pointer dereference

Malformed RFCNB packet may lead to crash.

 Detected by Coverity Scan. Issue 740355.

11 years agoFix memory leak in peer cache Digest exchange
Amos Jeffries [Tue, 14 Jan 2014 21:29:20 +0000 (10:29 +1300)] 
Fix memory leak in peer cache Digest exchange

 Detected by Coverity Scan. Issue 1094115.

11 years agoFix MemMapSlot constructor initialization of expiry TTL
Amos Jeffries [Tue, 14 Jan 2014 21:16:23 +0000 (10:16 +1300)] 
Fix MemMapSlot constructor initialization of expiry TTL

Also, restyle MemMap constructor initialization list.

  Detected by Coverity Scan. Issue 1153961.

11 years agoShuffle coverity marker
Francesco Chemolli [Tue, 14 Jan 2014 20:36:03 +0000 (21:36 +0100)] 
Shuffle coverity marker

11 years agoMark a behavior detected by Coverity as defect as intentional
Francesco Chemolli [Tue, 14 Jan 2014 17:18:08 +0000 (18:18 +0100)] 
Mark a behavior detected by Coverity as defect as intentional

11 years agoBug 3986: assertion failed due to incorrect error page buffer size
Amos Jeffries [Mon, 13 Jan 2014 21:03:45 +0000 (10:03 +1300)] 
Bug 3986: assertion failed due to incorrect error page buffer size

errorpage.cc:1307:
   "(size_t)content->contentSize() == strlen(content->content())"

11 years agoSMP SSL session cache implementation
Christos Tsantilas [Sun, 12 Jan 2014 17:51:12 +0000 (19:51 +0200)] 
SMP SSL session cache implementation

This patch implement SSL session cache sharing across SMP workers using shared
memory. The following new squid configuration options added:

 - The "sslproxy_session_cache_size" option which sets the cache size to use
   for ssl session. Example usage:
     sslproxy_session_cache_size 4 MB

 - The "sslproxy_session_ttl" option which defines the time in seconds the
   ssl session is valid. Example usage:
     sslproxy_session_ttl  600

This is a Measurement Factory project

11 years agoSMP shared cache with timeouts for squid
Christos Tsantilas [Sun, 12 Jan 2014 17:15:45 +0000 (19:15 +0200)] 
SMP shared cache with timeouts for squid

This patch investigates the Ipc::MemMap class which is a shared cache with
timeouts for use with squid SMP.

TODO: Ipc::MemMap class has similar interfaces and functionality with the
Ipc::StoreMap class. These two classes should implemented as kid classes of
an Ipc::SharedCache class which encompass features from Ipc::MemMap and
Ipc::StoreMap classes.

This is a Measurement Factory project

11 years agoCoverity defect 1151594: side-effect in assertion in CollapsedForwarding
Francesco Chemolli [Fri, 10 Jan 2014 19:01:04 +0000 (20:01 +0100)] 
Coverity defect 1151594: side-effect in assertion in CollapsedForwarding

11 years agoDocument and enforce invariant on Format::Token.divisor
Francesco Chemolli [Fri, 10 Jan 2014 15:50:03 +0000 (16:50 +0100)] 
Document and enforce invariant on Format::Token.divisor

11 years agoFix coding ambiguity in store_repl_heap.cc and heap.h
Francesco Chemolli [Fri, 10 Jan 2014 15:46:59 +0000 (16:46 +0100)] 
Fix coding ambiguity in store_repl_heap.cc and heap.h

11 years agoDocs: fix various doxygen compiler issues
Amos Jeffries [Sat, 11 Jan 2014 01:35:50 +0000 (17:35 -0800)] 
Docs: fix various doxygen compiler issues

11 years agoSquidNew: don't redefine new and delete on clang
Francesco Chemolli [Thu, 9 Jan 2014 13:53:54 +0000 (14:53 +0100)] 
SquidNew: don't redefine new and delete on clang

11 years agoFix include guard in include/rfc1123.h
Francesco Chemolli [Thu, 9 Jan 2014 13:52:08 +0000 (14:52 +0100)] 
Fix include guard in include/rfc1123.h

11 years agoFix header-guard in include/uudecode.h
Francesco Chemolli [Thu, 9 Jan 2014 13:11:42 +0000 (14:11 +0100)] 
Fix header-guard in include/uudecode.h

11 years agoFix header-guards in compat/os/hpux.h
Francesco Chemolli [Thu, 9 Jan 2014 13:04:32 +0000 (14:04 +0100)] 
Fix header-guards in compat/os/hpux.h

11 years agoBug 3996: Malformed DNS reply leads to crash
Susant Sahani [Thu, 9 Jan 2014 20:27:49 +0000 (12:27 -0800)] 
Bug 3996: Malformed DNS reply leads to crash

11 years agoBug 3927: tests/testRock fatal.cc required
Amos Jeffries [Thu, 9 Jan 2014 01:07:56 +0000 (18:07 -0700)] 
Bug 3927: tests/testRock fatal.cc required

11 years agoDisable error page translation by default in builds
Amos Jeffries [Sun, 5 Jan 2014 20:19:06 +0000 (12:19 -0800)] 
Disable error page translation by default in builds

There is no need for every build from VCS to have fresh translations.

Enable explicitly for snapshot and release scripts instead so that
translated template files are still available online and pre-translated
in the distributed packages.

11 years agoCleanup: remove ClientSocketContextNew() wrapper function
Amos Jeffries [Sun, 5 Jan 2014 19:49:23 +0000 (11:49 -0800)] 
Cleanup: remove ClientSocketContextNew() wrapper function

This wrapper function for the ClientSocketContext default constructor
is better performed as an explicit parametered constructor which
prevents accidental use of the default constructor leading to invalid
state after creation (a context always requires connectino and parent
pointers).

11 years agoCleanup: remove useless makesnmplib variable from build
Amos Jeffries [Wed, 8 Jan 2014 04:29:04 +0000 (21:29 -0700)] 
Cleanup: remove useless makesnmplib variable from build

Squid coding guidelines require automake variables to use naming pattern
ENABLE_* and there is already ENABLE_SNMP defined with intended overlap
of usage. We can drop this unusual variable completely.

11 years agoCentrally destroy all explicit and implicit ACLs to avoid destruction segfaults
Alex Rousskov [Mon, 6 Jan 2014 20:55:13 +0000 (13:55 -0700)] 
Centrally destroy all explicit and implicit ACLs to avoid destruction segfaults
during reconfiguration.

Group ACLs created later may use other ACLs created earlier and vice versa, a
group ACL created earlier may use other ACLs created later. The latter is
possible when an ACL (e.g., A2 below) is declared when the group already
exists:

  acl A1 src 127.0.0.1
  acl Group all-of A1
  acl A2 src 127.0.0.2
  acl Group all-of A2

Thus, the group (i.e., InnerNode) ACL destructor may access already deleted
children regardless of the global ACL deletion order (FIFO or LIFO with
respect to ACL creation). Instead of relying on the deletion order to protect
InnerNode, we remove the InnerNode ACL destructor completely and rely on a
global set of registered ACLs to destroy all ACLs.

The old code was destroying all explicit ACLs in the same centralized fashion.
We now add implicit ACLs (commonly used by InnerNodes) to the centralized
destruction sequence. We added a new destruction-dedicated container to avoid
messing with the by-name ACL search that Config.aclList global is used for.
This new container will become unnecessary once we start refcounting ACLs.

11 years agoRelease Notes update for 2.5
Amos Jeffries [Sun, 5 Jan 2014 03:04:03 +0000 (19:04 -0800)] 
Release Notes update for 2.5

11 years agoAdd logformat code %>rd to log client URL domain name
Amos Jeffries [Sun, 5 Jan 2014 02:56:31 +0000 (18:56 -0800)] 
Add logformat code %>rd to log client URL domain name

Logging the Host header or the full URL have been the only ways to log
the domain name requested by the client. However full URL may contain
far too many unwanted bytes and Host header many contain a host:port
very different to the URL.

 This work is sponsored by Brendan Kearney

11 years agoBug 3995: compile error on CentOS 5 with GCC 4.1.2
Reinhard Sojka [Mon, 6 Jan 2014 01:10:00 +0000 (14:10 +1300)] 
Bug 3995: compile error on CentOS 5 with GCC 4.1.2

11 years agoMerge from CharacterSet
Francesco Chemolli [Sun, 5 Jan 2014 21:59:17 +0000 (22:59 +0100)] 
Merge from CharacterSet

11 years agoRemoved CharacterSet::CRLF and clarified some comments
Francesco Chemolli [Sun, 5 Jan 2014 21:58:13 +0000 (22:58 +0100)] 
Removed CharacterSet::CRLF and clarified some comments

11 years agoMerged from trunk
Francesco Chemolli [Sun, 5 Jan 2014 13:07:44 +0000 (14:07 +0100)] 
Merged from trunk

11 years agoMerge storeentry-refactor, fix store unit test
Francesco Chemolli [Fri, 3 Jan 2014 17:52:35 +0000 (18:52 +0100)] 
Merge storeentry-refactor, fix store unit test

11 years agoBaseMultiQueue is virtual but had no virtual destructor
Francesco Chemolli [Fri, 3 Jan 2014 11:13:52 +0000 (12:13 +0100)] 
BaseMultiQueue is virtual but had no virtual destructor

11 years agoGot rid of Store.cci
Francesco Chemolli [Fri, 3 Jan 2014 10:32:53 +0000 (11:32 +0100)] 
Got rid of Store.cci

11 years agoFix SBuf::rfind
Amos Jeffries [Thu, 2 Jan 2014 23:03:20 +0000 (00:03 +0100)] 
Fix SBuf::rfind

11 years agoMerged from trunk
Francesco Chemolli [Thu, 2 Jan 2014 17:12:37 +0000 (18:12 +0100)] 
Merged from trunk

11 years agoFix SBuf and SBufList unit tests linkage
Francesco Chemolli [Thu, 2 Jan 2014 16:01:57 +0000 (17:01 +0100)] 
Fix SBuf and SBufList unit tests linkage