Bug #1223: Make the use of the %m error page to return auth info
messages
This patch extends the helper protocols for Basic and Digest to provide
some basic information in error responses, and makes use of the error
response already included in the NTLM helper protocol, making these
messages available as %m in error pages. Can be used if desired to
indicate why a login failed. The exact messages returned is helper
dependent.
Bug #1223: Make the use of the %m error page to return auth info
messages
This patch extends the helper protocols for Basic and Digest to provide
some basic information in error responses, and makes use of the error
response already included in the NTLM helper protocol, making these
messages available as %m in error pages. Can be used if desired to
indicate why a login failed. The exact messages returned is helper
dependent.
Bug #1094: Fix for CVE-1999-0710: cachemgr malicouse use
This patch adds access controls to the cachemgr.cgi script, preventing
it from being abused to reach other servers than allowed in a local
configuration file.
IPv6 preparation by Rafael Martinez Torres <rafael.martinez@novagnet.com>
- This patch does change literally the term IN_ADDR by in_addr in all the
files containing this term, except the file "inet_ntoa.c", the only one
not including "config.h" (either direct or undirectly).
- The correposding "defines" are in config.h . They are guarded by "INET6"
define, (#ifdef INET6), so branches others that squid3-ipv6 should not be
affected in their compilations.
- Enhance performance by zero-copy writes, enabled by making the mem
nodes reference counted.
- Implement ASYNC_CLOSE define, default to off.
- Remove unused aioFDWasClosed call
- Kill warning about event notification filedescriptors still
being open on shutdown.
Also optimizes slightly by initializing the squidaio layer early,
avoiding the need to check if initialized in each and every call.
hno [Tue, 29 Mar 2005 04:44:12 +0000 (04:44 +0000)]
Crude implementation of ESIParser registry, making ESIParser.cc
independent of the available parsers, indirectly solving the
libxml2/expat conflict and preparing for easy buildtime selection of the
available parsers.
serassio [Thu, 10 Mar 2005 03:02:06 +0000 (03:02 +0000)]
Bug #321: Squid date handling fails to handle several slightly
nonconforming date formats in use on the Internet today.
There is many servers sending non-conforming dates outside the formats
documented in RFC2616. This patch simplifies the date parser allowing
Squid to process dates is a number of other "odd" formats. The benefit
of doing this is that it allows Squid to properly cache objects from
these servers.
serassio [Sun, 27 Feb 2005 23:36:06 +0000 (23:36 +0000)]
Bug #1210: 403 replies and many other server generated errors should not
be retried. (RFC2616)
Retrying these is a slight violation to the RFC, even if it may be
useful in certain complex hierarchy cases to work around
misconfigured or malfunctioning peers.
This patch adds a new squid.conf directive "retry_on_error" to revert
back to the old mode of aggressively retry requests on errors.
serassio [Tue, 8 Feb 2005 05:30:15 +0000 (05:30 +0000)]
Added configure test to see if -lepoll is available when using --enable-epoll:
-lepoll is not needed (and may be not present) on kernel 2.6 platforms
with newest glibc, but may be needed on systems updated from 2.4 to 2.6
kernel still using old glibc.
wessels [Sat, 29 Jan 2005 05:54:16 +0000 (05:54 +0000)]
Bug #1217: Buffer overflow in WCCP recvfrom() call
The length argument of the WCCP recvfrom() call is
larger than it should be. An attacker may send a
larger-than-normal WCCP packet and overflow a buffer.
serassio [Fri, 28 Jan 2005 16:23:41 +0000 (16:23 +0000)]
Bug #1189: buffer overflow bug in gopherToHTML()
Yet another buffer overflow bug in gopherToHTML(). This one is similar
to others already found and the same solution is used. If a potential
overflow is detected, the excess input is simply lost.
serassio [Fri, 28 Jan 2005 16:05:25 +0000 (16:05 +0000)]
Bug #1190: Denial of service with forged WCCP messages
WCCP_I_SEE_YOU messages contain a 'number of caches' field which
should be between 1 and 32. Values outside that range may
crash Squid if WCCP is enabled, and if an attacker can
spoof UDP packets with the WCCP router's IP address.
This patch drops and logs WCCP_I_SEE_YOU messages if the number of
caches is less than 1 or greater than 32.
serassio [Fri, 28 Jan 2005 02:57:09 +0000 (02:57 +0000)]
Bug #1212: helper leak on squid -k reconfigure
HelperShutdown does not actually shutdown any helper.
The problem was originated during the forward port of fixes from bug #1118.
This patch also adds a debug message "shutting down".