]> git.ipfire.org Git - thirdparty/squid.git/log
thirdparty/squid.git
9 years agoFix cache_peer login=PASS(THRU) after CVE-2015-5400
Amos Jeffries [Sat, 26 Sep 2015 03:04:01 +0000 (20:04 -0700)] 
Fix cache_peer login=PASS(THRU) after CVE-2015-5400

The patch for CVE-2015-5400 converts all non-200 peer responses
into 502 Bad Gateway responses when relaying a CONNECT to a peer.

This happens to break login=PASS and login=PASSTHRU behaviour
which relies on the 401 and 407 status being relayed transparently.

We need to relay the auth server responses as-is when login= is
set to PASS or PASSTHRU but then unconditionally close the
connections to prevent CVE-2015-5400 from occuring.

9 years agoBoilerplate: copyright updates by Francesco Chemolli
Amos Jeffries [Sat, 26 Sep 2015 00:01:47 +0000 (17:01 -0700)] 
Boilerplate: copyright updates by Francesco Chemolli

9 years agoBug 4208: more than one port in wccp2_service_info line causes error
Guy Helmer [Fri, 25 Sep 2015 23:16:48 +0000 (16:16 -0700)] 
Bug 4208: more than one port in wccp2_service_info line causes error

9 years agoRelicense smb_lm auth helper to GPLv2+
Francesco Chemolli [Fri, 25 Sep 2015 15:22:47 +0000 (17:22 +0200)] 
Relicense smb_lm auth helper to GPLv2+

9 years agoRelicense ntlm_fake_auth.pl to GPLv2+
Francesco Chemolli [Fri, 25 Sep 2015 15:21:44 +0000 (17:21 +0200)] 
Relicense ntlm_fake_auth.pl to GPLv2+

9 years agoRework wordlistDestroy and refine documentation for wordlist as suggested by Alex
Francesco Chemolli [Fri, 25 Sep 2015 12:27:33 +0000 (14:27 +0200)] 
Rework wordlistDestroy and refine documentation for wordlist as suggested by Alex

9 years agoSourceFormat Enforcement
Source Maintenance [Fri, 25 Sep 2015 06:12:10 +0000 (06:12 +0000)] 
SourceFormat Enforcement

9 years agoSMP: regster worker listening ports one by one
Alex Rousskov [Fri, 25 Sep 2015 05:17:33 +0000 (22:17 -0700)] 
SMP: regster worker listening ports one by one

When oeprating with many listening ports workers can flood the UDS
queue buffers and run into a timeout waiting for the coordinator to
respond.

To prevent that we for a queue and wait for each port to get a
response before registering the next.

9 years agoBug 4328: %un format code does not work for external ACLs in credentials-fetching...
Steve Hill [Fri, 25 Sep 2015 05:07:55 +0000 (22:07 -0700)] 
Bug 4328: %un format code does not work for external ACLs in credentials-fetching rules

9 years agoCrypto-NG: cleanup and optimize CRL handling
Amos Jeffries [Thu, 24 Sep 2015 21:08:23 +0000 (14:08 -0700)] 
Crypto-NG: cleanup and optimize CRL handling

Certificate Revokation Lists have gone through several iterations
of logic redesign leading to duplicated code and non-optimal I/O.
Client contexts were loading CRL directly from disk into the
context on every new context creation. Whereas the server contexts
were loading into an OpenSSL STACK_OF structure and adding from
memory instead of disk. This later design is more performant.

* Move the pre-loaded CRL set to Security::PeerOptions and store
  in a std::list structure as LockingPointer which will deallocate
  as needed on shutdwown and reconfigure.
  This depends on trunk rev.14304

* Replace the client context disk I/O with the pre-loaded CRL list

* Add GnuTLS CRL list types. Though at this point GnuTLS does not
  pre-load the CRL files.

9 years agoBug 4323: Netfilter broken cross-includes with Linux 4.2
Francesco Chemolli [Thu, 24 Sep 2015 13:05:37 +0000 (06:05 -0700)] 
Bug 4323: Netfilter broken cross-includes with Linux 4.2

9 years agoFix eCAP compile after rev.14305
Amos Jeffries [Thu, 24 Sep 2015 03:22:41 +0000 (20:22 -0700)] 
Fix eCAP compile after rev.14305

9 years agoSourceFormat Enforcement
Source Maintenance [Wed, 23 Sep 2015 18:11:57 +0000 (18:11 +0000)] 
SourceFormat Enforcement

9 years agoBug 4304: PeerConnector.cc:743 "!callback" assertion.
Alex Rousskov [Wed, 23 Sep 2015 15:58:25 +0000 (18:58 +0300)] 
Bug 4304: PeerConnector.cc:743 "!callback" assertion.

When no ssl_bump rules match, Squid may throw a "a rule with the final
action must have matched" exception:

Must(finalAction == Ssl::bumpSplice || finalAction == Ssl::bumpBump ||
     finalAction == Ssl::bumpTerminate);

After the exception is thrown, Squid attempts to wind down the affected
transaction (as it should), but the code either quits with an unhandled
exception error or hits the !callback assertion, depending on whether
the async job processing was in place when the exception was hit (which
depends on whether non-blocking/slow ssl_bump ACLs were active).

The attached patch does three things:

1. Teaches Squid to guess the final ssl_bump action when no ssl_bump
rules match. The final guessed action is "bump" if the last non-final
action was "stare" and "splice" otherwise. I suspect that the older
Squid code attempted to do something like that, but that code may have
been lost when we taught Squid to ignore impossible ssl_bump actions.

2. Protects ssl_bump-checking code from quitting with an unhandled
exception error.

3. Converts the fatal !callback assertion into [hopefully less damaging]
transaction error, with a BUG message logged to cache.log.

More work may be needed to investigate other exceptions, especially
Must(!csd->serverBump() || csd->serverBump()->step <= Ssl::bumpStep2);

This is a Measurement Factory project

9 years agoPortbility fix: filter register keyword from gperf output
Francesco Chemolli [Tue, 22 Sep 2015 17:29:23 +0000 (19:29 +0200)] 
Portbility fix: filter register keyword from gperf output

9 years agoMove gperf invocation for RegisteredHeadersHash to source-maintenance.sh
Francesco Chemolli [Tue, 22 Sep 2015 12:00:37 +0000 (14:00 +0200)] 
Move gperf invocation for RegisteredHeadersHash to source-maintenance.sh
Portability fixes for non-GNU make.

9 years agoeCAP: Return unknown body size for bodies with unknown body sizes.
Alex Rousskov [Mon, 21 Sep 2015 18:17:38 +0000 (12:17 -0600)] 
eCAP: Return unknown body size for bodies with unknown body sizes.

Previously, unsigned -1 size was returned for those bodies.
Old adapters relying on that buggy behavior will now throw:

  !"attempt to use unknown libecap::BodySize size"

Such adapters should check libecap::BodySize::known() before
using the libecap::Body::bodySize() value.

9 years agoAdd assigment and move operators to LockingPointer
Amos Jeffries [Mon, 21 Sep 2015 14:26:03 +0000 (07:26 -0700)] 
Add assigment and move operators to LockingPointer

These operators are required to use LockingPointer instances in STL
containers and unlike TidyPointer the LockingPointer can do them safely
due to the lock preventing premature deletions.

9 years agoCleanup: Migrate StoreEntry to using MEMPROXY_CLASS
Francesco Chemolli [Mon, 21 Sep 2015 14:02:38 +0000 (16:02 +0200)] 
Cleanup: Migrate StoreEntry to using MEMPROXY_CLASS

9 years agoImplement default constructor for hash_link.
Francesco Chemolli [Mon, 21 Sep 2015 13:48:18 +0000 (15:48 +0200)] 
Implement default constructor for hash_link.

9 years agoRemove custom pool chunk size for StoreEntry.
Francesco Chemolli [Mon, 21 Sep 2015 13:19:28 +0000 (15:19 +0200)] 
Remove custom pool chunk size for StoreEntry.

As an historic optimization StoreEntry uses a custom pool chunk size of 2MB.
Knowledge of the actual benefits from this optimization has been lost in time,
and it's not possible to accurately measure its actual impact in all load
scenarios; at the same time this optimization is blocking other potentially
useful developments.
This change is therefore considered a potential performance regression in
some load scenarios.

9 years agonegotiate_wrapper: Fix memory leaks
Amos Jeffries [Thu, 17 Sep 2015 23:48:47 +0000 (16:48 -0700)] 
negotiate_wrapper: Fix memory leaks

 Detected by Coverity Scan. Issues 13245641324565.

9 years agoPrep for 3.5.9
Amos Jeffries [Thu, 17 Sep 2015 12:43:20 +0000 (05:43 -0700)] 
Prep for 3.5.9

9 years agontlm_smb_lm_auth: ignore empty NTresponse field
Amos Jeffries [Thu, 17 Sep 2015 12:30:35 +0000 (05:30 -0700)] 
ntlm_smb_lm_auth: ignore empty NTresponse field

9 years agoBug 4309: Fix the presence of extensions detection in SSL Hello messages
Christos Tsantilas [Wed, 16 Sep 2015 08:43:18 +0000 (11:43 +0300)] 
Bug 4309: Fix the presence of extensions detection in SSL Hello messages

RFC5246 section 7.4.1.3 (Server Hello) says:

   The presence of extensions can be detected by determining whether
   there are bytes following the compression_method field at the end of
   the ServerHello.

Current parsing Hello code checks whether there are bytes in the whole SSL
message. It does not account for the fact that the message may contain more than
just ServerHello.
This patch fixes this issue and try to improve the related code to avoid related
problems in the future.

This is a Measurement Factory project

9 years agoauthor: Alex Rousskov <rousskov@measurement-factory.com>
Christos Tsantilas [Wed, 16 Sep 2015 08:40:32 +0000 (11:40 +0300)] 
author: Alex Rousskov <rousskov@measurement-factory.com>
Bug 4309: Squid crashed when Skype login

Do not assume that (char << 8) cannot overflow a short integer.
Be more consistent with storing certificate-related lengths.

9 years agoSourceFormat Enforcement
Source Maintenance [Mon, 14 Sep 2015 18:11:56 +0000 (18:11 +0000)] 
SourceFormat Enforcement

9 years agoSNI to ICAP via 2nd CONNECT part2
Christos Tsantilas [Mon, 14 Sep 2015 18:02:04 +0000 (21:02 +0300)] 
SNI to ICAP via 2nd CONNECT part2

Wrap inside #if USE_OPENSSL/#endif the SSL related code to allow squid build
when openSSL library is disabled.

9 years agoSNI to ICAP via 2nd CONNECT
Christos Tsantilas [Mon, 14 Sep 2015 17:00:19 +0000 (20:00 +0300)] 
SNI to ICAP via 2nd CONNECT

When Squid decides to splice a connection in the step2 SSL bumping step
sends a second fake CONNECT request to the ICAP/eCAP for adaptation.

This patch fixes squid to use the SNI information when sending the second
CONNECT request, if it is available.

This is a Measurement Factory project

9 years agoCrypto-NG: replace Ssl::X509_Pointer with Security::CertPointer
Amos Jeffries [Mon, 14 Sep 2015 16:25:05 +0000 (09:25 -0700)] 
Crypto-NG: replace Ssl::X509_Pointer with Security::CertPointer

* shuffle LockingPointer to libsecurity.la
  along with supporting macros in security/forward.h

* add GnuTLS and library agnostic definitions of Security::CertPointer

9 years agoFix uninitialized members in class HeaderTableRecord
Amos Jeffries [Fri, 11 Sep 2015 02:24:31 +0000 (19:24 -0700)] 
Fix uninitialized members in class HeaderTableRecord

 Detected by Coverity Scan. Issues 13237501323751

9 years agoBug 4292: negotiate_wrapper: Unreleased Resources
Amos Jeffries [Fri, 11 Sep 2015 02:16:06 +0000 (19:16 -0700)] 
Bug 4292: negotiate_wrapper: Unreleased Resources

FILE* handles need to be closed on exit. Shuffle the processing loop logics
to a static function to avoid code duplication from all the requires close
points.

Also, use the available global flag debug_enabled instead of local variable
to avoid having to pass it down explicitly.

9 years agoBug 4284: missing sanity checks for malloc
Amos Jeffries [Mon, 7 Sep 2015 17:44:33 +0000 (10:44 -0700)] 
Bug 4284: missing sanity checks for malloc

9 years agoBug 3618: ntlm_smb_lm_auth rejects correct passwords
Amos Jeffries [Mon, 7 Sep 2015 17:13:58 +0000 (10:13 -0700)] 
Bug 3618: ntlm_smb_lm_auth rejects correct passwords

9 years agonegotiate_kerberos_auth: producing empty group= kv-pairs
Amos Jeffries [Mon, 7 Sep 2015 10:24:31 +0000 (03:24 -0700)] 
negotiate_kerberos_auth: producing empty group= kv-pairs

9 years agoSourceFormat Enforcement
Source Maintenance [Sun, 6 Sep 2015 00:12:11 +0000 (00:12 +0000)] 
SourceFormat Enforcement

9 years agoRefactor HttpHeader into gperf-generated perfect hash
Francesco Chemolli [Sat, 5 Sep 2015 18:52:17 +0000 (20:52 +0200)] 
Refactor HttpHeader into gperf-generated perfect hash

9 years agoImplement EnumIterator
Francesco Chemolli [Sat, 5 Sep 2015 11:28:21 +0000 (13:28 +0200)] 
Implement EnumIterator

9 years agoUpdate mk-string-arrays.awk to support c++-style enums
Francesco Chemolli [Sat, 5 Sep 2015 11:27:59 +0000 (13:27 +0200)] 
Update mk-string-arrays.awk to support c++-style enums

9 years agoQuieten UFS cache maintenance skipped warnings
Amos Jeffries [Fri, 4 Sep 2015 19:54:07 +0000 (12:54 -0700)] 
Quieten UFS cache maintenance skipped warnings

The maintenance loop cycles once per second. On long DIRTY cache rebuilds
this can reult in a lot of log mesages at level 1.

* reduce the messages to L=3 except once per minute allow one at L=1

* perform the under-size limit check first to allow completely silent
  skipping when no maintenance would have taken place anyway.

9 years agoFix CONNECT request debugging 11,2 traces
Amos Jeffries [Wed, 2 Sep 2015 14:17:07 +0000 (07:17 -0700)] 
Fix CONNECT request debugging 11,2 traces

Using the MemBuf::buf directly is not great, but it does have a properly
terminated c-string in this instance. We cannot use Raw() interface
because that is for output at DBG_DATA levels and will only display the
buffer name as if that was the raw traffic bytes at 11,2.
Which negates the entire purpose of this 11,2 output.

9 years agoUpdate release script after rev.14240
Amos Jeffries [Wed, 2 Sep 2015 02:20:45 +0000 (19:20 -0700)] 
Update release script after rev.14240

9 years agoPrep for 3.5.8
Amos Jeffries [Tue, 1 Sep 2015 19:32:54 +0000 (12:32 -0700)] 
Prep for 3.5.8

9 years agoSupport splice for SSLv3 and TLSv1 sessions that start with an SSLv2 Hello
Alex Rousskov [Tue, 1 Sep 2015 09:07:03 +0000 (02:07 -0700)] 
Support splice for SSLv3 and TLSv1 sessions that start with an SSLv2 Hello

Such sessions are created, for example, by some SSL clients using OpenSSL
v0.9.8 with default options. This does _not_ re-enable SSLv2 sessions.
Just enacts the permitted exception for Hello messages in RFC 6176

9 years agoSourceLayout: rename fs/rock/RockForward.h to fs/rock/forward.h
Amos Jeffries [Mon, 31 Aug 2015 13:59:41 +0000 (06:59 -0700)] 
SourceLayout: rename fs/rock/RockForward.h to fs/rock/forward.h

To bring in line with layout guidelines.

9 years agoMissing piece of rev.14275
Amos Jeffries [Mon, 31 Aug 2015 13:58:48 +0000 (06:58 -0700)] 
Missing piece of rev.14275

9 years agoMerge cleanups branch: split most of typedefs.h
Francesco Chemolli [Mon, 31 Aug 2015 09:58:00 +0000 (11:58 +0200)] 
Merge cleanups branch: split most of typedefs.h

9 years agoPackable API: Rename StoreEntryStream to PackableStream
Amos Jeffries [Mon, 31 Aug 2015 09:38:51 +0000 (02:38 -0700)] 
Packable API: Rename StoreEntryStream to PackableStream

PackableStream has some implicit new properties different from
the original StoreEntryStream type:

* lack of Store.h dependency

* ability to stream into a MemBuf if its creator desires that

Meaning PackableStream can be used in a wider range of the code
without increasing library dependencies.

9 years agoFix some comments
Francesco Chemolli [Mon, 31 Aug 2015 09:20:20 +0000 (11:20 +0200)] 
Fix some comments

9 years agoSource maintenance
Francesco Chemolli [Mon, 31 Aug 2015 09:16:27 +0000 (11:16 +0200)] 
Source maintenance

9 years agoAudit round 2
Francesco Chemolli [Mon, 31 Aug 2015 08:01:10 +0000 (10:01 +0200)] 
Audit round 2

9 years agoMerged from trunk
Francesco Chemolli [Mon, 31 Aug 2015 07:34:35 +0000 (09:34 +0200)] 
Merged from trunk

9 years agoAudit round
Francesco Chemolli [Mon, 31 Aug 2015 06:17:22 +0000 (08:17 +0200)] 
Audit round

9 years agoFix regression in rev.14268
Amos Jeffries [Sun, 30 Aug 2015 20:36:48 +0000 (13:36 -0700)] 
Fix regression in rev.14268

My bad cut-n-paste resulted in wrong locking sequence.
Fixing that reveals that the validity check on the return
result triggers cases of cbdata 'locks > 0' assertions.
The validity test is not currently needed by the fastCheck
code which preserves the value. So removing for now.

9 years agoRevert enum-related changes
Francesco Chemolli [Sun, 30 Aug 2015 16:56:24 +0000 (18:56 +0200)] 
Revert enum-related changes

9 years agoMerged from trunk
Francesco Chemolli [Sun, 30 Aug 2015 02:07:21 +0000 (04:07 +0200)] 
Merged from trunk

9 years agoDocs: update arp ACL text
Amos Jeffries [Sun, 30 Aug 2015 01:07:47 +0000 (18:07 -0700)] 
Docs: update arp ACL text

9 years agoSourceLayout: shuffle kb_t to ByteCounter in libbase
Amos Jeffries [Sun, 30 Aug 2015 00:26:47 +0000 (17:26 -0700)] 
SourceLayout: shuffle kb_t to ByteCounter in libbase

Also, move kb_incr() logic to ByteCounter operator +=

 There are no logic changes in this patch.

9 years agoRename lowSBufHash to SBufHashCommon_
Francesco Chemolli [Sat, 29 Aug 2015 23:57:45 +0000 (01:57 +0200)] 
Rename lowSBufHash to SBufHashCommon_

9 years agoIncrease UFS removal rate to 300/s
Amos Jeffries [Sat, 29 Aug 2015 18:01:56 +0000 (11:01 -0700)] 
Increase UFS removal rate to 300/s

... by request of testers who report 250+ as better for current high
performance traffic needs.

9 years agoBetter alternative to rev.14267
Alex Rousskov [Sat, 29 Aug 2015 17:59:28 +0000 (10:59 -0700)] 
Better alternative to rev.14267

Encapsulate the accessList pointer change logic so that it can be kept
consistent and CBDATA operations are not exposed to callers.

9 years agoAdd missing forward declaration of StoreEntry in errorpage.h
Francesco Chemolli [Sat, 29 Aug 2015 16:56:11 +0000 (18:56 +0200)] 
Add missing forward declaration of StoreEntry in errorpage.h

9 years agoAdded missing forward declaration in errorpage.h
Francesco Chemolli [Sat, 29 Aug 2015 15:39:13 +0000 (17:39 +0200)] 
Added missing forward declaration in errorpage.h

9 years agoFix Makefile.am to include fs/forward.h where needed
Francesco Chemolli [Sat, 29 Aug 2015 08:06:21 +0000 (10:06 +0200)] 
Fix Makefile.am to include fs/forward.h where needed

9 years agoMove store_client_t from enums.h to Store.h
Francesco Chemolli [Sat, 29 Aug 2015 07:57:35 +0000 (09:57 +0200)] 
Move store_client_t from enums.h to Store.h

9 years agoMoved mem_status_t and store_status_t to Store.h
Francesco Chemolli [Fri, 28 Aug 2015 22:28:04 +0000 (00:28 +0200)] 
Moved mem_status_t and store_status_t to Store.h

9 years agoMoved fd_type, FD_READ, FD_WRITE from enums.h to fd.h
Francesco Chemolli [Fri, 28 Aug 2015 20:52:14 +0000 (22:52 +0200)] 
Moved fd_type, FD_READ, FD_WRITE from enums.h to fd.h

9 years agoRemove no longer needed includes of typedefs.h
Francesco Chemolli [Fri, 28 Aug 2015 20:51:08 +0000 (22:51 +0200)] 
Remove no longer needed includes of typedefs.h

9 years agoRemove no longer needed includes of typedefs.h
Francesco Chemolli [Fri, 28 Aug 2015 20:50:41 +0000 (22:50 +0200)] 
Remove no longer needed includes of typedefs.h

9 years agoRemoved useless StoreEntry forward declaration in typedefs.h
Francesco Chemolli [Fri, 28 Aug 2015 20:11:03 +0000 (22:11 +0200)] 
Removed useless StoreEntry forward declaration in typedefs.h

9 years agoMoved cache_key from typedefs.h to store_key_md5.h
Francesco Chemolli [Fri, 28 Aug 2015 20:03:05 +0000 (22:03 +0200)] 
Moved cache_key from typedefs.h to store_key_md5.h

9 years agoRemoved unused statefulhelper::IsAvailable and OnEmptyQueue and related typedefs...
Francesco Chemolli [Fri, 28 Aug 2015 19:14:45 +0000 (21:14 +0200)] 
Removed unused statefulhelper::IsAvailable and OnEmptyQueue and related typedefs and code

9 years agoMove STABH from typedefs.h to MemObject.h
Francesco Chemolli [Fri, 28 Aug 2015 19:01:03 +0000 (21:01 +0200)] 
Move STABH from typedefs.h to MemObject.h

9 years agoRemoved useless QS declaration
Francesco Chemolli [Fri, 28 Aug 2015 18:48:31 +0000 (20:48 +0200)] 
Removed useless QS declaration

9 years agoMoved READ_HANDLER from typedefs.h to fde.h
Francesco Chemolli [Fri, 28 Aug 2015 18:42:11 +0000 (20:42 +0200)] 
Moved READ_HANDLER from typedefs.h to fde.h

9 years agoRemoved unused definition of UH
Francesco Chemolli [Fri, 28 Aug 2015 18:31:13 +0000 (20:31 +0200)] 
Removed unused definition of UH

9 years agoMoved time_msec_t from typedefs.h to SquidTime.h
Francesco Chemolli [Fri, 28 Aug 2015 18:29:16 +0000 (20:29 +0200)] 
Moved time_msec_t from typedefs.h to SquidTime.h

9 years agoMoved mb_size_t from typedefs.h to MemBuf.h
Francesco Chemolli [Fri, 28 Aug 2015 18:11:54 +0000 (20:11 +0200)] 
Moved mb_size_t from typedefs.h to MemBuf.h

9 years agoMoved FQDNH declaration from typedefs.h to fqdncache.h
Francesco Chemolli [Fri, 28 Aug 2015 18:02:41 +0000 (20:02 +0200)] 
Moved FQDNH declaration from typedefs.h to fqdncache.h

9 years agoMove PF declaration from typedefs.h to comm/forward.h
Francesco Chemolli [Fri, 28 Aug 2015 15:16:42 +0000 (17:16 +0200)] 
Move PF declaration from typedefs.h to comm/forward.h

9 years agoMoved FREE declaration from typedefs.h to mem/forward.h
Francesco Chemolli [Fri, 28 Aug 2015 14:43:37 +0000 (16:43 +0200)] 
Moved FREE declaration from typedefs.h to mem/forward.h

9 years agoMoved snmp-related variable_list from typedefs.h to snmp_core.h
Francesco Chemolli [Fri, 28 Aug 2015 13:58:29 +0000 (15:58 +0200)] 
Moved snmp-related variable_list from typedefs.h to snmp_core.h

9 years agoMove nfmark_t and tos_t declarations to ip/forward.h
Francesco Chemolli [Fri, 28 Aug 2015 13:31:03 +0000 (15:31 +0200)] 
Move nfmark_t and tos_t declarations to ip/forward.h

9 years agoBug 3696: crash when client delay pools are activated
Amos Jeffries [Fri, 28 Aug 2015 13:20:53 +0000 (06:20 -0700)] 
Bug 3696: crash when client delay pools are activated

9 years agoMoved sfileno and sdirno from typedefs.h to fs/forward.h
Francesco Chemolli [Fri, 28 Aug 2015 12:28:07 +0000 (14:28 +0200)] 
Moved sfileno and sdirno from typedefs.h to fs/forward.h

9 years agoRemoved unused CommWriteStateData and fde::wstate
Francesco Chemolli [Fri, 28 Aug 2015 09:57:38 +0000 (11:57 +0200)] 
Removed unused CommWriteStateData and fde::wstate

9 years agoMerged from trunk
Francesco Chemolli [Fri, 28 Aug 2015 09:12:49 +0000 (11:12 +0200)] 
Merged from trunk

9 years agomoved HLPSONEQ and HLPSAVAIL from typedefs.h to helper.h, SIGHDLR to tools.h, STDIRSE...
Francesco Chemolli [Fri, 28 Aug 2015 08:26:26 +0000 (10:26 +0200)] 
moved HLPSONEQ and HLPSAVAIL from typedefs.h to helper.h, SIGHDLR to tools.h, STDIRSELECT to SwapDir.h and removed unused STVLDCB HLPCMDOPTS

9 years agoSourceLayout: shuffle MemMeter into libmem and Mem:: namespace
Amos Jeffries [Thu, 27 Aug 2015 21:44:42 +0000 (14:44 -0700)] 
SourceLayout: shuffle MemMeter into libmem and Mem:: namespace

* move the memMeter.h file to src/mem/Meter.h

* move the helper #define macros logic to class members

* provide accessors to make all class members private

There are no logic changes in this patch.

9 years agoMoved typedefs.h:WRITE_HANDLER to fde.h, and ERCB to errorpage.h
Francesco Chemolli [Thu, 27 Aug 2015 16:53:12 +0000 (18:53 +0200)] 
Moved typedefs.h:WRITE_HANDLER to fde.h, and ERCB to errorpage.h

9 years agoRemove unnecessary typedefs.h:DOCB, DCCB, DUCB
Francesco Chemolli [Thu, 27 Aug 2015 16:46:02 +0000 (18:46 +0200)] 
Remove unnecessary typedefs.h:DOCB, DCCB, DUCB

9 years agoRemove unnecessary typedefs.h:DTCB
Francesco Chemolli [Thu, 27 Aug 2015 16:34:23 +0000 (18:34 +0200)] 
Remove unnecessary typedefs.h:DTCB

9 years agoRemove unneeded typedefs.h:FOCB
Francesco Chemolli [Thu, 27 Aug 2015 16:12:53 +0000 (18:12 +0200)] 
Remove unneeded typedefs.h:FOCB

9 years agoBug 4306: build portability fix in Kerberos helpers
Patrick Welche [Thu, 27 Aug 2015 08:06:38 +0000 (01:06 -0700)] 
Bug 4306: build portability fix in Kerberos helpers

9 years agoBug 3553: cache_swap_high ignored and maxCapacity used instead
Amos Jeffries [Wed, 26 Aug 2015 17:51:18 +0000 (10:51 -0700)] 
Bug 3553: cache_swap_high ignored and maxCapacity used instead

Also, to make matters worse the amount of objects (max 70) being purged on
each of the 1-second maintenance loops was far too small for the traffic
speeds of up to 20k RPS now being processed by proxies.

This fixes the cache_swap_high behaviour to closer match what is documented
at present, although some documentatino does say it cleans all the way down
to the low-water mark. Which appears never to have been true in regards to
one cycle but would occur over several of the proxy speed was not too high.

With this updated algorithm there is almost no limit to how far the
aggressiveness can scale, but it is linear at 200 objects per multiple of the
gap between low- and high- watermark.

SwapDir::maintain is now fairly well documented and debug traces added. With
several TODO ideas for future improvement also documented in the method code.

9 years agoRevert c++11 override keyword detection support
Francesco Chemolli [Wed, 26 Aug 2015 15:32:31 +0000 (17:32 +0200)] 
Revert c++11 override keyword detection support

9 years agoImplement and use detection of compiler support for c++11 override keyword
Francesco Chemolli [Wed, 26 Aug 2015 14:20:57 +0000 (16:20 +0200)] 
Implement and use detection of compiler support for c++11 override keyword

9 years agoDocs: release notes update for C++11 compilers
Amos Jeffries [Wed, 26 Aug 2015 13:53:33 +0000 (06:53 -0700)] 
Docs: release notes update for C++11 compilers

Intel ICC sadly does not meet the 'full C++11 support' claim:

/usr/include/c++/4.8.2/tuple(1075): error: "pair" is not a nonstatic data
member or base class of class "std::pair<T, Base>"

9 years agoRemove GCC 2.x and 3.x detection and support
Amos Jeffries [Wed, 26 Aug 2015 10:05:35 +0000 (03:05 -0700)] 
Remove GCC 2.x and 3.x detection and support

C++11 support is now required and the detection for that should error
far more nicely for these old compilers than these $GCCVER hacks

9 years agoFix leftover issues in some Makefile.am files
Francesco Chemolli [Wed, 26 Aug 2015 09:14:13 +0000 (11:14 +0200)] 
Fix leftover issues in some Makefile.am files