Time to commit some stuff to the CVS repository

From: Henrik Nordstrom <hno@dont-contact.us>
Date: Thu, 20 Apr 2000 21:50:59 +0200

I plan on committing the following list of patches and related fixes
unless already committed to the main CVS repository. You will be given
10 days to review this list and send any objections (motivation
required) or comments. If I havent received any objection with a
reasonable motiviation before Sun Apr 30 21:50:20 CEST 2000 the patches
will be commited.

Squid-2.3.STABLE1: strict ip_authenticate_ttl option
Changed ip_authenticate_ttl to have an strict option, enforcing that the
user comes from one IP address only.
(not exacly this patch, but a slight variation of it using a on/off
directive instead of negative TTL value)

Squid-2.3.STABLE1: Handle NULL characters in the server reply headers
Squid failed to detect the end of the servers HTTP headers if the server
wronly responds with headers containing a NULL character. This could
cause abnormal amount of used cache_mem during the request. (the server
in question was mp3 streaming, virtuallu unlimited in size)

Squid-2.2.STABLE5: Persistent POST's blocking memory
Persistent POST requests could block quite a bit of memory by not
releasing request state data until the client connection was closed.

Squid-2.3.STABLE1: icons and auth_modules/SMB object directory
Installation of icons and auth_modules/SMB failed if building in a
separate object directory outside the sources.

Squid-2.3.STABLE1: myport and redirector_access
Added support for myport ACL to redirector_access

Squid-2.3.STABLE1: Add content-length on cache hits if none
Add a content-length header to cache hits if none was sent by the origin
server.

Squid-2.3.DEVEL3: Major update of squid.conf template generation
A major update on how Squid is generated from cf.data.pre and some
related changes.

Squid-2.3.DEVEL3: Show FTP server messages
Show all FTP server messages in generated error pages or top level
directory listing. Main purpose is to make sure all information is
available when a login is denied due to to many users or a closed
mirror.

Squid-2.3.DEVEL3: Configurable DNS retransmission interval
Added squid.conf parameters for DNS retransmissions.

Squid-2.3.DEVEL3: Reset "round-robin" counters every 5 minutes
Reset "round-robin" peer selection counters every 5 minutes to speed up
recovery when a dead peer has come on line again ("round-robin" is
implemented by "least-frequently-used", which without this patch gets
stronly biased to the previously dead peer).

Squid-2.3.DEVEL3: httpd_accel_single_host
Added simplified support for running Squid as a accelerator in front of
a single server with multiple domains/sites.

Squid-2.3.DEVEL3: FTP log level adjustment for ignored "errors"
Use log level 3 on ignored read-"errors" like EAGAIN (was 1).

Squid-2.3.DEVEL3: Range request could cause bandwidth spikes
Range requests to servers/objects not supporting range requests could
cause bandwidth spikes and/or negative hit ratio.

Squid-2.2.DEVEL3: The last aclDomainCompare bugs squeezed
This patch fixes some remaining aclDomainCompare issues where Squid gave
more "is a subdomain of" warnings than it needed to.

Squid-2.2.STABLE5: ipc hello test fails on some platforms/compilers
A missing \0 string terminator could on some platforms/compilers cause
squid to fail the hello test used when starting child processes.

Squid-2.3.DEVEL2: ProgrammersGuide PS output to file, not printer
Send Programming-Guide postscript format to the intended destination
file instead of directly to the printer (or whatever configuered as
default output for dvips)

Squid-2.3.STABLE1: FreeBSD 3.3 statfs
FreeBSD requires sys/mount.h for statfs().

Squid-2.3.DEVEL3: HEAD and ftp://...
Support HEAD ftp://.. requests without fetching the whole object.

Squid-2.3.DEVEL2: Purge ipcache on reload/PURGE
Purge negatively cached ipcache entries on reload to allow end users to
quickly purge sporious errors, and have the PURGE method also purge
ipcache to allow the cache administrator to manually purge important
entries on DNS updates.

Squid-2.2.STABLE4: Include request in helper statistics
Include the request sent in helper statistics to allow the administrator
to find out why the helper processes are busy.

Squid-2.3.DEVEL3: Restart helpers when rotating logs
Restart helper processes when rotating logs, to have cache.log properly
rotated.

Squid-2.2.STABLE4: helpers and open filedescriptors
Make sure all unneeded filedescriptors is properly closed when starting
helper processes.

Squid-2.3.STABLE1: Delay pid file removal until shutdown
Delay removal of the pid file until Squid is fully shut down. This is to
allow scripts to monitor the pid file waiting for Squid to shut down.

Squid-2.3.DEVEL2: Release unused store entries during rebuild
Squid locked all "released" store entries in memory during the rebuild
procedure, even such entries not needed in the "LateRelease" procedure.
Also, during a dirty rebuild a lot of store entries got locked up which
never was queued for "LateRelease", causing a huge memory leak.

Squid-2.3.DEVEL2: Free cache_mem objects during cache rebuild
Squid locked objects in cache_mem to no apparent reason other than
causing the cache_mem usage to grow huge during cache rebuilds.

Squid-2.3.DEVEL3: proxy_auth_regex and ident_regex ACL types
This patch adds proxy_auth_regex and ident_regex ACL types

Squid-2.3.DEVEL2: CONNECT was not under the control of miss_access
Adds miss_access control to CONNECT method.

Squid-2.3.STABLE1: Make no_cache a full-blown aclNBCheck
no_cache was a fast ACL check, which serverely limits which acl types
that can be reliably used. This patch extends it to a full blown
aclNBCheck which allows all of the ACL types to be used like in
http_access.

Squid-2.3.DEVEL2: cache_swap_log name based on cache_dir name
Allow %s to be used in cache_swap_log to build a log file name based on
the cache_dir name instead of numbering the files according to their
corresponding cache_dir location in squid.conf. This is very useful if
you'd like to be able to add or remove cache directories while using
cache_swap_log to have the index files stored outside the cache
directories.

Squid-2.2.STABLE4: Async-IO segfaults if AIO_PROPER_MUTEX isn't set
Async-IO on Linux segfaults in condition variables if given high load
and AIO_PROPER_MUTEX isn't set. This was seen on a SMP Alpha Linux
2.2.10-ac12 box. I knew there was a reason why I made the
AIO_PROPER_MUTEX code a long time ago..

Squid-2.2.STABLE5: Log destination IP on DIRECT
This patch logs the destination IP as part of the hierarchy tag in
access.log when going direct. This has been requested by a number of
people from accounting reasons, and logging the hostname is mostly
redundant as it is part of the URL as well.

Squid-2.3.DEVEL2: Show usable filesystem space in cachemgr, not raw
Change cachemgr Store Directory Stats to show space available to Squid
rather than raw filesystem space (some space are available to root only)
Also extend the support for this on Linux.

Squid-2.2.STABLE3: Persistent connections request_timeout
Persistent connections used a hardcoded timeout of 15 seconds instead of
request_timeout as documented in squid.conf.

Squid-2.2.STABLE2: delay pools, large initial level
It is a bit to easy to get a integer overflow when using delay pools for
limiting daily download. This patch changes the initial calculation to
use floating point math, allowing a initial pool size of up to 2^31-1.

Squid-2.3.DEVEL3: allow-miss cache_peer option
allow-miss cache peer option to disable the use of "only-if-cached" on
requests to siblings. This can be useful in some peering arrangements
where icp_hit_stale is enabled.

Squid-2.2.STABLE2: Don't swap out objects > maximum_object_size
Don't start swapping out objects with a known size larger than
maximum_object_size. Previously Squid would swap out these objects and
mark it as private once maximum_object_size was hit.

Squid-2.3.DEVEL2: ICP timeout selection
This is an attempt to fix the dynamic ICP timeout selection when one is
peering with remote parents and have some close-by siblings with a much
lower ICP rtt. This is done by preferring to calculate the ICP timeout
based on parents only (based on siblings if there is no alive parents)

Squid-2.2.DEVEL3: Don't allow netdb selection to bypass never_direct
Netdb selection could bypass never_direct and cause Squid to go direct
to an origin site even if never_direct allow was in effect.

Squid-2.2.STABLE3: nonhierarchical_direct squid.conf directive
Adds a new squid.conf directive: nonhierachical_direct. This controls if
requests Squid classifies as non-hierarchical (matches
hierarchy_stoplist or non-cachable request type) should go direct if
possible, or if parents should be used on such requests. Also improved
parent selection for never_direct (selects all available parents incase
the primary one should fail).

Squid-2.3.DEVEL2: Improved TCP dead peer detection & failover
A major adjustment of how Squid detects a failing TCP peer and how
connections is retried when it fails to connect.

Squid-2.2.DEVEL3: Improved ICP dead peer detection
Some minor adjustments of ICP dead peer detection to make it behave well
on startup and low load servers. Also lessens the amount of queries sent
to dead peers.

I will also commit some of the Makefile cleanup changes that currently
only are in the CVS repository on SourceForge. This is primary in the
authentication modules directories.

/Henrik
Received on Thu Apr 20 2000 - 13:53:24 MDT

This archive was generated by hypermail pre-2.1.9 : Tue Dec 09 2003 - 16:12:23 MST