Fix coding ambiguity in store_repl_heap.cc and heap.h
Document and enforce invariant on Format::Token.divisor
Coverity defect 1151594: side-effect in assertion in CollapsedForwarding
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
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
Bug 3986: assertion failed due to incorrect error page buffer size

errorpage.cc:1307:
   "(size_t)content->contentSize() == strlen(content->content())"
Mark a behavior detected by Coverity as defect as intentional
Shuffle coverity marker
Fix MemMapSlot constructor initialization of expiry TTL

Also, restyle MemMap constructor initialization list.

  Detected by Coverity Scan. Issue 1153961.
Fix memory leak in peer cache Digest exchange

 Detected by Coverity Scan. Issue 1094115.
Fix rfcnb library potential NULL pointer dereference

Malformed RFCNB packet may lead to crash.

 Detected by Coverity Scan. Issue 740355.
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.
Cleanup: Improve testACLMaxUserIP NULL checks

  Detected by Coverity Scan. Issue 1140358.
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.
Bug 4008: HttpHeader warnOnError should be an int not a bool
Revert and replace rev.13234

Clang dentifies the StoreIOBuffer parameter as unsigned,
  error: comparison of unsigned expression < 0 is always false
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.
Docs: update refresh_pattern internal documentation
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.
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.