%SRCPORT, %MYPORT, %MYADDR
New format tags for matching client TCP connection details
grace=N
defines a grace period on external acl cache entries. If the entry has less
then the grace period left when being refercenced then a new lookup is
initiated but without waiting for the reply.
hno [Sat, 28 Jun 2003 04:42:08 +0000 (04:42 +0000)]
* ext_user acl type to match user name returned by external acl
* cleanup of how external acls present a user name to the
Squid core to make the code more logical and fix a
minor security issues if there is downstream proxies.
* concept of password returned by external acl type. Integrated
with login= cache_peer option to have the password forwarded
to peers (both proxies and origin type peers)
hno [Sat, 28 Jun 2003 04:32:30 +0000 (04:32 +0000)]
* ext_user acl type to match user name returned by external acl
* cleanup of how external acls present a user name to the
Squid core to make the code more logical and fix a
minor security issues if there is downstream proxies.
* concept of password returned by external acl type. Integrated
with login= cache_peer option to have the password forwarded
to peers (both proxies and origin type peers)
robertc [Thu, 26 Jun 2003 18:51:57 +0000 (18:51 +0000)]
Summary: Convert mem_hdr to the use of a splay.
Keywords:
* Add a dataRange() method to mem_node, to allow direct access to the range
available.
* Add mem_node::deleteSelf().
* Update copyright on stmem.[cc|h].
* Test new mem_node methods.
* Add Splay::end() method and test.
* Add mem_hdr::unlink().
* Remove mem_hdr::unlinkHead(), mem_hdr::getHighest.., mem_hdr::head and mem_hdr::tail.
* Remove mem_node::next.
* Introduce mem_hdr::dump().
* Introduce mem_hdr::size().
* Introduce mem_hdr::start().
* Make mem_hdr::getBlockContainingLocation() public.
wessels [Wed, 25 Jun 2003 03:08:02 +0000 (03:08 +0000)]
changing type of cacheMesh.cachePeerTable.cachePeerEntry.cachePeerPingsSent
and cachePeerPingsAcked to match the MIB. Was ASN_INTEGER, is not
SMI_COUNTER32.
robertc [Tue, 24 Jun 2003 18:42:25 +0000 (18:42 +0000)]
Summary: Profiling additions.
Keywords:
* Added an eventRun profiler hook.
* Added a store_client profiler hook, surrounding kick_reads.
Prevented reentrancy.
* Added a storeDirCallback profiler hook.
Refactored to reduce variable scope.
* Added a profiler hook to comm_calliocallback.
Refactored to reduce variable scope.
* Added surrounding hooks to the read,accept,write and fill
comm callback callers.
* Added profiling hook around HttpStateData::readReply.
* Added profiling hook around HttpStateData::processReplyData.
* Added profiling hook around StoreEntry::write.
* Added profiling hook around storeGetMemSpace.
* Added profiling hook around MemObject::write.
* Added profiling hook around storeWriteComplete.
* Added profiling hook around mem_hdr::write.
robertc [Tue, 24 Jun 2003 18:30:59 +0000 (18:30 +0000)]
Summary: mem_hdr testing and corrections.
Keywords:
* Introduce operator < for mem_nodes, to provide ordering.
* Create a mem_hdr constructor and destructor.
* bugfix: writing before the lowest offset was broken.
* Reuse the Range template for mem_hdr::hasContigousContentRange.
* Prepare splay trees for replacing the list of mem_nodes.
wessels [Mon, 23 Jun 2003 22:49:13 +0000 (22:49 +0000)]
Regarding store_check_cachable_stats, put check for 'wrong_content_length'
before 'not_entry_cachable' because objects with ENTRY_BAD_LEGNTH
also always have ENTRY_CACHABLE cleared and nothing ever gets counted
as 'wrong_content_length'.
robertc [Mon, 23 Jun 2003 20:13:03 +0000 (20:13 +0000)]
Summary: comm cleanups.
Keywords:
* Add a FIXME comment in disabled client_side code where fd abstraction is broken.
* fde.rwstate is actually specific to writes - rename to wstate.
* The warning about rwstate should be a fatal, as it leads to incorrect callbacks occuring.
disabling persistent connections will disable this bug - so a fatal is no impediment to testers.
robertc [Mon, 23 Jun 2003 18:03:07 +0000 (18:03 +0000)]
Summary: CBData reference callback pointers in comm_read and related..
Keywords:
We were not cbdata referencing user supplied pointers. This allows user supplied data to be freed before we call back. Still TODO: check for cbdataReferenceValid upon callback.
robertc [Mon, 23 Jun 2003 17:14:52 +0000 (17:14 +0000)]
Summary: Fix segv in RefCount operator=.
Keywords:
When a cycle is broken for refcounted objects, if the breaking smart pointer is in one of the cycled objects, and is freed as a result, we could end up assigned to freed RAM.
robertc [Mon, 23 Jun 2003 16:39:52 +0000 (16:39 +0000)]
Summary: Callback event loop was busted.
Keywords:
The comms callback event loop was not dereferencing the dlink_node correctly, leading to comparing the sequence number to a pointer. Once again, typecasts leads to bugs :[.
* Increment sequence number on each loop.
* Compare to the event's record sequence number.
* Add a virtual destructor to CommCallbackData to remove some (spurious) warnings that apply to the synthetic constructor under -some- gcc's.
wessels [Mon, 23 Jun 2003 06:41:31 +0000 (06:41 +0000)]
parseEtcHosts() does not properly handle comments. It looks for comments
(#) only at the beginning of the line, but they can appear anywhere.
This fix uses strtok() to terminate the buffer at the first comment
character.
robertc [Sun, 22 Jun 2003 13:47:43 +0000 (13:47 +0000)]
Summary: Ensure that pconns start with no recorded fd's.
Keywords:
Ensure that pconns start with no recorded fd's. Technically, this isn't needed, as cbdata is meant to return cleared memory, but it's good practice to explicitly initialise required values. (And, as we get more C++ syntax, the compiler will optimise that as part of operator new).
* Add accessor and mutator methods storeEntry().
* Find all mutations, and convert to using the mutator.
* Bugfix libTrie for --disable-inline builds.
* Make ClientHttpRequest::memObject() const inline.
* Introduce removeClientStoreReference to clientReplyContext to
manage the encapsulation.
* Add needed MemObject.h header includes to gopher, ftp and wais.cc.
robertc [Fri, 20 Jun 2003 04:25:18 +0000 (04:25 +0000)]
Summary: Fixup GNUregex.c to meet current gcc warning checks.
Keywords:
Fixup GNUregex.c to meet current gcc warning checks. Mostly K&R->ANSI protoypes, as well as a const correctness issue exposed by the correct prototypes;
hno [Fri, 20 Jun 2003 01:02:33 +0000 (01:02 +0000)]
2003-05-21 01:51 hno
Bug #644: strListGetItem() failed to account for quoting, causing digest
authentication to fail on URLs with comma and possibly other odd HTTP
parsing errors.
hno [Fri, 20 Jun 2003 00:56:59 +0000 (00:56 +0000)]
2003-05-18 23:49 hno
2003-05-24 13:08 robertc
Bug #630: digest authentication and buggy browsers
This patch does four things:
* correct signalling of stale digest nonces
* auth_param digest check-nonce-count off option to completely
disable the nonce count check. Needed to work around Konqueror and
certain other broken digest qop implementations.
* auth_param digest post_workaround on to work around certain
broken browsers sending POST requests with a GET digest response
* changes the default of nonce_strictness to off. It is to early to
use strict nonce count increase by one checks, and even in the long
run this is probably not wanted. Enforcing increase by one does not
really add to security, only complexity.
hno [Thu, 19 Jun 2003 23:34:10 +0000 (23:34 +0000)]
2003-05-29 04:59 wessels
Remove confusing "cache_dir diskd" line in cache_dir documentation.
It is apparently left over from a version that is quite old by now.
The correct usage for diskd is given later in the section.
robertc [Thu, 19 Jun 2003 19:11:59 +0000 (19:11 +0000)]
Summary: Gcc-3.3 tidyups.
Keywords:
* Gave lib/ the same AM CXX and CFLAGS as src/
* In mempool, extract method on the free cache cleanup, and use a more correct type for Free, to avoid a warning on our use of 'type punned' pointers.
* Make squid_rn_inithead typesafe, and adjust usage throughout.
* rfc1738_do_escape needed adjustment for the use of char comparison with 0xFF.
* Make ACL Request/Reply HeaderStrategy singleton instance variable a pointer rather than instance to allow for stricter scoping rules.
* VectorMap<Key,Value>::indexUsed (unsigned char const index) had a tautology assert.
robertc [Mon, 9 Jun 2003 11:09:34 +0000 (11:09 +0000)]
Summary: parseConfigFile had a const correctness flaw.
Keywords:
Summary: parseConfigFile had a const correctness flaw. It used a char * pointer to handle the result of a strrchr, which on some platforms leads to compiler warnings. Refactored to avoid this.
robertc [Mon, 9 Jun 2003 10:41:36 +0000 (10:41 +0000)]
Summary: Refactor urlHostname.
Keywords:
urlHostname reused the same variable for both constant and non-constant operations. This leads to warnings on some compilers. Refactored urlHostname to be a class, allowing greater flexability, and to use appropriate const corrent variables for accessing strchr() results.
hno [Thu, 29 May 2003 04:36:46 +0000 (04:36 +0000)]
Unified the bootstrap.sh scripts to make sure there is no mismatches
in autotool versions between the main sources and libTrie. As it was
the version used in libTrie was very old and failed to find compatible
versions if not the system default..