]> git.ipfire.org Git - thirdparty/squid.git/log
thirdparty/squid.git
15 years agoOnly one process (called the "primary" process) should handle WCCP. In SMP
Alex Rousskov [Sat, 5 Jun 2010 19:08:44 +0000 (13:08 -0600)] 
Only one process (called the "primary" process) should handle WCCP. In SMP
mode, this is the Coordinator process.

Identified several commonly use process kinds and added the corresponding
Iam*Process() tests to avoid duplicating complex conditions throughout the
code. Note that kinds are not mutually exclusive. For example, a primary
process is also the master process and the worker process when running
in a no-daemon mode.

15 years agoReplaced blocking comm_open_listener() call for incoming and outgoing SNMP
Alex Rousskov [Sat, 5 Jun 2010 18:32:22 +0000 (12:32 -0600)] 
Replaced blocking comm_open_listener() call for incoming and outgoing SNMP
ports with Ipc::StartListening calls, to use the "shared listen" feature when
doing SMP.

15 years agoReplaced blocking comm_open_listener() call for HTTPS ports with
Alex Rousskov [Mon, 24 May 2010 20:09:03 +0000 (14:09 -0600)] 
Replaced blocking comm_open_listener() call for HTTPS ports with
Ipc::StartListening calls, to use the "shared listen" feature when doing SMP.

Moved common HTTP and HTTPS port opening code into OpenedHttpSocket() and
AddOpenedHttpSocket().

15 years agoDocument that comm_open_uds() only supports FD_MSGHDR I/O.
Alex Rousskov [Tue, 4 May 2010 15:34:46 +0000 (09:34 -0600)] 
Document that comm_open_uds() only supports FD_MSGHDR I/O.

15 years agoReplaced blocking comm_open_listener() call for HTTP ports with
Alex Rousskov [Sun, 2 May 2010 19:15:48 +0000 (13:15 -0600)] 
Replaced blocking comm_open_listener() call for HTTP ports with
Ipc::StartListening calls to use the "shared listen" feature when doing SMP.

TODO: convert HTTPS code the same way.

15 years agoSupport a "shared listen" concept when multiple concurrent processes listen
Alex Rousskov [Sun, 2 May 2010 18:49:25 +0000 (12:49 -0600)] 
Support a "shared listen" concept when multiple concurrent processes listen
on the same socket. The Coordinator is responsible for opening and caching
listening sockets, using comm_open_listener() parameters supplied by remote
callers. Sendmsg/recvmsg is used to shovel socket descriptors from Coordinator
to remote callers.

If SMP is not enabled, we call the local comm_open_listener() as usual but
return the results asynchronously to avoid making SMP/nonSMP special in
the caller code.

15 years agoDo not stop on the first error to be compatible with "make -k check".
Alex Rousskov [Sun, 2 May 2010 18:09:21 +0000 (12:09 -0600)] 
Do not stop on the first error to be compatible with "make -k check".

If we stop on the first error, it becomes very difficult to test your
changes with "make check" when somebody else broke some other code.

15 years ago#include "config.h" because "make check" does not.
Alex Rousskov [Sun, 2 May 2010 17:58:46 +0000 (11:58 -0600)] 
#include "config.h" because "make check" does not.

15 years agoDo not open HTTP/etc listening sockets for Coordinator because it should
Alex Rousskov [Sun, 2 May 2010 01:49:37 +0000 (19:49 -0600)] 
Do not open HTTP/etc listening sockets for Coordinator because it should
not do anything other than process coordination.

15 years agoPolished comm_import_opened() description.
Alex Rousskov [Sun, 2 May 2010 01:42:47 +0000 (19:42 -0600)] 
Polished comm_import_opened() description.

15 years agoAdded comm_import_opened() to update Comm state after getting a comm_open()
Alex Rousskov [Sun, 2 May 2010 01:37:34 +0000 (19:37 -0600)] 
Added comm_import_opened() to update Comm state after getting a comm_open()
FD from another process. While both FDs point to the same kernel object, Squid
internal tables are local to each process and need to be maintained
separately.

15 years agoAdded whole-object comparison method so that IpAddress objects can be
Alex Rousskov [Sun, 2 May 2010 01:20:05 +0000 (19:20 -0600)] 
Added whole-object comparison method so that IpAddress objects can be
properly sorted and used as std::map index.

Existing IpAddress comparison operators do not work well because they only
compare IP addresses (and incorrectly compare "none" and/or "any" IP
addresses).

15 years agoAdded previously forgotten sources.
Alex Rousskov [Sat, 1 May 2010 23:47:46 +0000 (17:47 -0600)] 
Added previously forgotten sources.

15 years agoFixed IpAddress port printing for ports higher than 9999:
Alex Rousskov [Sat, 1 May 2010 04:12:07 +0000 (22:12 -0600)] 
Fixed IpAddress port printing for ports higher than 9999:
snprintf includes zero-terminator in its size limit, so 7
rather than 6 bytes are needed to snprintf a colon followed
by 5 port digits.

Whether the bug has any runtime effects in the current code,
I do not know, but I did waste a few hours following
misleading debugging output.

15 years agoMoved comm_openex code tail into comm_init_opened and comm_apply_flags for
Alex Rousskov [Fri, 30 Apr 2010 21:48:12 +0000 (15:48 -0600)] 
Moved comm_openex code tail into comm_init_opened and comm_apply_flags for
future reuse.

No runtime changes are expected, except we no longer leak FDs when
commSetNonBlocking fails.

15 years agoFixed IPC message size calculation typo that led to gardbage in messages.
Alex Rousskov [Fri, 30 Apr 2010 18:01:29 +0000 (12:01 -0600)] 
Fixed IPC message size calculation typo that led to gardbage in messages.

15 years agoImplemented basic file descriptor exchange between IPC Strand and Coordinator.
Alex Rousskov [Thu, 29 Apr 2010 22:35:11 +0000 (16:35 -0600)] 
Implemented basic file descriptor exchange between IPC Strand and Coordinator.
Tested using on-disk file. The test hack will be removed.

Fixed Port code to allow it to receive more than one message with varying
msghdr buffer configurations. We must [re]allocate all msghdr buffers before
every read/recvmsg() call.

15 years agoSwitched from sendto/recvfrom to sendmsg/recvmsg for UDS I/O. Replaced
Alex Rousskov [Thu, 29 Apr 2010 20:12:03 +0000 (14:12 -0600)] 
Switched from sendto/recvfrom to sendmsg/recvmsg for UDS I/O. Replaced
inlined sendto/recvfrom hacks with FD_WRITE/READ_METHOD-based code.

A common msghdr-based interface allows us to use the same API for regular
IPC messages and for future messages that pass socket descriptors. While
msghdr allows for complex vector-based scatter/gather I/O, the IPC code
limits complexity by using a single-element I/O vector and a control message
part dedicated to passing descriptors.

Added a temporary hack to block-sleep between IPC message sending attempts so
that we do not use up all the allowed attempts in a short period of time. The
hack will be replace with a non-blocking addEvent-based sleep.

15 years agoDo not check pid file unless we are a master process. Kids processes start and
Alex Rousskov [Mon, 26 Apr 2010 20:57:11 +0000 (14:57 -0600)] 
Do not check pid file unless we are a master process. Kids processes start and
run when the pid file may point to a live Squid process.

There are some must-be-single processes like Coordinator, but it is probably
better to manage their uniqueness differently because there may be many kinds
of must-be-single processes.

15 years agoDesignate one process to maintain the PID file. Coordinator does that
Alex Rousskov [Mon, 26 Apr 2010 07:53:14 +0000 (01:53 -0600)] 
Designate one process to maintain the PID file. Coordinator does that
when Squid runs in SMP mode. The only kid does it when running "mono".
The master process does it when not daemonizing. This change allows SMP
Squid to work with a single PID file.

Broadcast management signals from Coordinator to kids. This change
makes both "squid -k ..." and "kill `cat <PID file>`" work for SMP Squid.

15 years agoAdded IPC Strand and Coordinator classes. Strands are jobs responsible
Alex Rousskov [Mon, 26 Apr 2010 07:09:03 +0000 (01:09 -0600)] 
Added IPC Strand and Coordinator classes. Strands are jobs responsible
for registering Squid processes or threads with the central Coordinator
job. Coordinator will broadcast control signals and shared ports to
Strands.

Added a simple hierarchy of inter-process communication (IPC) classes to
support Coordinator and Strands.

Print current process number (KidIdentifier) when writing debug messages.
This allows to easily isolate per-process progress even when using a single
cache.log.

15 years agoIPC patch
root [Fri, 16 Apr 2010 11:06:18 +0000 (18:06 +0700)] 
IPC patch

15 years agoMoved Kid and Kids classes from src/main.cc to src/ipc/, creating libipc.
Alex Rousskov [Tue, 30 Mar 2010 21:54:40 +0000 (15:54 -0600)] 
Moved Kid and Kids classes from src/main.cc to src/ipc/, creating libipc.

Removed update_port hack(). Squid.conf macros and conditionals can now
be used to specify unique http_ports, cache_dirs, etc. for Squid processes.

15 years agoAdded if-statement documentation.
Alex Rousskov [Fri, 26 Mar 2010 13:52:36 +0000 (07:52 -0600)] 
Added if-statement documentation.

15 years agoSupport if-statements in squid.conf. Supported conditions are int=int,true,false
Alex Rousskov [Fri, 26 Mar 2010 13:35:54 +0000 (07:35 -0600)] 
Support if-statements in squid.conf. Supported conditions are int=int,true,false

if condition
  ...
[else
  ...]
endif

15 years agoCannot use String as a global due to memory pool dependencies.
Alex Rousskov [Fri, 26 Mar 2010 13:34:04 +0000 (07:34 -0600)] 
Cannot use String as a global due to memory pool dependencies.

15 years agoAdded ${process_name} and ${process_number} SMP macros.
Alex Rousskov [Tue, 16 Mar 2010 04:28:30 +0000 (22:28 -0600)] 
Added ${process_name} and ${process_number} SMP macros.
Substitutions in the main process are not documented and may need more work.

15 years agoExplained that we loop to collect all stopped kids before we go to sleep.
Alex Rousskov [Thu, 4 Mar 2010 21:05:11 +0000 (14:05 -0700)] 
Explained that we loop to collect all stopped kids before we go to sleep.

15 years agoChanged project version tag in AC_INIT() to reflect SMP branch location
Alex Rousskov [Thu, 4 Mar 2010 06:38:33 +0000 (23:38 -0700)] 
Changed project version tag in AC_INIT() to reflect SMP branch location
and minimize confusion with official sources.

15 years agoStart a configurable number of "main" Squid processes. Each process
Alex Rousskov [Thu, 4 Mar 2010 06:25:18 +0000 (23:25 -0700)] 
Start a configurable number of "main" Squid processes. Each process
does what a regular Squid daemon does. Listening conflicts are resolved
using a temporary hack (incrementing the port number for each process).

Restart dying processes as needed, maintaining the old overall daemon
restart logic and quitting on frequent repeated failures or successful
daemon completion.

Needs more work to polish restarting code, to share common resources
such as listening ports, to unify reporting, including logging. CPU
core affinity and process specialization need to be configurable.

15 years agoMerged from parent (trunk r10303).
Alex Rousskov [Thu, 4 Mar 2010 01:05:50 +0000 (18:05 -0700)] 
Merged from parent (trunk r10303).

15 years agoFull Surrogate/1.0 support
Amos Jeffries [Wed, 3 Mar 2010 09:38:49 +0000 (22:38 +1300)] 
Full Surrogate/1.0 support

This enables the Surrogate-Control header fields for HTTP reverse proxies
in general. Not only those with ESI capability.

Limited to use by reverse-proxies only, and some added security to strip
Surrogate headers better at the border.

15 years agoSourceFormat Enforcement
Automatic source maintenance [Mon, 1 Mar 2010 01:13:17 +0000 (18:13 -0700)] 
SourceFormat Enforcement

15 years agoUse POSIX ipv6 constants & macros
Henrik Nordstrom [Sun, 28 Feb 2010 22:06:05 +0000 (23:06 +0100)] 
Use POSIX ipv6 constants & macros

15 years agoMigrate various IpAddress internal constants to private static members
Henrik Nordstrom [Sun, 28 Feb 2010 22:04:23 +0000 (23:04 +0100)] 
Migrate various IpAddress internal constants to private static members

15 years agoCorrect IPv4-mapped prefix, broken in rev 10247 Use POSIX tests for IPv6 address...
Henrik Nordstrom [Sun, 28 Feb 2010 20:57:35 +0000 (21:57 +0100)] 
Correct IPv4-mapped prefix, broken in rev 10247 Use POSIX tests for IPv6 address detections.

15 years agoCorrect IPv4-mapped prefix, broken in rev 10247 Use POSIX tests for IPv6 address...
Henrik Nordstrom [Sun, 28 Feb 2010 20:48:31 +0000 (21:48 +0100)] 
Correct IPv4-mapped prefix, broken in rev 10247 Use POSIX tests for IPv6 address detections.

15 years agoSourceFormat Enforcement
Automatic source maintenance [Fri, 26 Feb 2010 01:13:20 +0000 (18:13 -0700)] 
SourceFormat Enforcement

15 years agoAssociate external acl message with the request
Henrik Nordstrom [Thu, 25 Feb 2010 23:00:39 +0000 (00:00 +0100)] 
Associate external acl message with the request

this change associates external acl message with the request just as
is done with the log message, tags etc. Was in a global variable.

The old global variable is still there as a fallback, but can probably
be removed.

15 years agoAuthor: Steve Snyder <swsnyder@snydernet.net>
Amos Jeffries [Thu, 25 Feb 2010 21:44:03 +0000 (10:44 +1300)] 
Author: Steve Snyder <swsnyder@snydernet.net>
Bug 2869: Remove unused external reference

15 years agoAuthor: Adam Ciarcinski
Amos Jeffries [Thu, 25 Feb 2010 03:28:39 +0000 (16:28 +1300)] 
Author: Adam Ciarcinski
Bug 2866: Support OpenSSL 1.0

Port of patches provided by Adam Ciarcinski to fix build issues with
recent versions of OpenSSL in Apache on NetBSD.

15 years agoSourceFormat Enforcement
Automatic source maintenance [Thu, 25 Feb 2010 01:13:21 +0000 (18:13 -0700)] 
SourceFormat Enforcement

15 years agoAuthor: Diego Woitasen <diegows@xtech.com.ar>
Amos Jeffries [Thu, 25 Feb 2010 00:27:32 +0000 (13:27 +1300)] 
Author: Diego Woitasen <diegows@xtech.com.ar>
Bug 2507: squid_ldap_group: Strip Domain name separated by +

15 years agoTypo in release notes
Amos Jeffries [Wed, 24 Feb 2010 13:00:30 +0000 (02:00 +1300)] 
Typo in release notes

15 years agoBug 2787: unknown/unexpected status code messages
Amos Jeffries [Wed, 24 Feb 2010 11:19:05 +0000 (00:19 +1300)] 
Bug 2787: unknown/unexpected status code messages

15 years agoBug #2818: Random unix_group crash at startup due to uninitialized pointer reference
Henrik Nordstrom [Wed, 24 Feb 2010 10:19:20 +0000 (11:19 +0100)] 
Bug #2818: Random unix_group crash at startup due to uninitialized pointer reference

The group array was not properly initialized.

This patch also removes the limitation of 10 groups.

15 years agoPrep for 3.1.0.17
Amos Jeffries [Wed, 24 Feb 2010 09:31:49 +0000 (22:31 +1300)] 
Prep for 3.1.0.17

15 years agoCorrect FAQ link
Amos Jeffries [Wed, 24 Feb 2010 09:30:01 +0000 (22:30 +1300)] 
Correct FAQ link

15 years agoCorrect macro wrappers for UDP logger
Amos Jeffries [Wed, 24 Feb 2010 08:36:16 +0000 (21:36 +1300)] 
Correct macro wrappers for UDP logger

15 years agoBug 2616: reduce IdleConnList::removeFD messages
Amos Jeffries [Wed, 24 Feb 2010 06:06:54 +0000 (19:06 +1300)] 
Bug 2616: reduce IdleConnList::removeFD messages

15 years agoTypo in revno10283
Amos Jeffries [Sat, 20 Feb 2010 04:31:04 +0000 (17:31 +1300)] 
Typo in revno10283

15 years agoAuthor: Joao Alves Neto <alves_joao@hotmail.com>
Amos Jeffries [Sat, 20 Feb 2010 03:05:46 +0000 (16:05 +1300)] 
Author: Joao Alves Neto <alves_joao@hotmail.com>
NTLMv2 support for fake NTLM helper.

15 years agoSourceFormat Enforcement
Automatic source maintenance [Mon, 15 Feb 2010 01:13:05 +0000 (18:13 -0700)] 
SourceFormat Enforcement

15 years agoAuthor: Serassio Guido <serassio@squid-cache.org>
Amos Jeffries [Sun, 14 Feb 2010 05:36:46 +0000 (18:36 +1300)] 
Author: Serassio Guido <serassio@squid-cache.org>
Windows port: Update mswin_check_ad_group to version 2.0

The global groups support was rewritten, now is based on ADSI.
New Features:
 - support for Domain Local, Domain Global ad Universal groups
 - full group nesting support

This helper, like the previous version, can be compiled only using
Microsoft Visual Studio because some needed library are not available
on MSYS+MinGW or Cygwin.

15 years agoUndo unintended digest change in 10279 (will come back later in another change)
Henrik Nordstrom [Sun, 14 Feb 2010 00:09:05 +0000 (01:09 +0100)] 
Undo unintended digest change in 10279 (will come back later in another change)

15 years agohelper protocol concurrency=0 is the old protocol, not =1
Henrik Nordstrom [Sat, 13 Feb 2010 09:16:30 +0000 (10:16 +0100)] 
helper protocol concurrency=0 is the old protocol, not =1

part 2, auth helper settings defaults

15 years agohelper protocol concurrency=0 is the old protocol, not =1
Henrik Nordstrom [Sat, 13 Feb 2010 00:00:53 +0000 (01:00 +0100)] 
helper protocol concurrency=0 is the old protocol, not =1

concurrency=1 actaully means new protocol with a single channel...
not what the old helpers expect..

15 years agoLanguage: Afrikaans
Amos Jeffries [Fri, 12 Feb 2010 12:40:04 +0000 (01:40 +1300)] 
Language: Afrikaans

15 years agoPrep for 3.0.STABLE24
Amos Jeffries [Fri, 12 Feb 2010 12:00:49 +0000 (01:00 +1300)] 
Prep for 3.0.STABLE24

15 years agoManuals: some polish and updates
Amos Jeffries [Fri, 12 Feb 2010 11:40:48 +0000 (00:40 +1300)] 
Manuals: some polish and updates

15 years agoAuthor: Various Translators
Amos Jeffries [Fri, 12 Feb 2010 11:16:51 +0000 (00:16 +1300)] 
Author: Various Translators
Language Updates: Error templates general update.

15 years agoUpdated translation files
Amos Jeffries [Fri, 12 Feb 2010 11:07:03 +0000 (00:07 +1300)] 
Updated translation files

15 years agoMerge from trunk
Amos Jeffries [Fri, 12 Feb 2010 11:00:13 +0000 (00:00 +1300)] 
Merge from trunk

15 years agomove squid.8.in
Amos Jeffries [Fri, 12 Feb 2010 10:57:42 +0000 (23:57 +1300)] 
move squid.8.in

15 years agoTypo in rev10272
Amos Jeffries [Thu, 11 Feb 2010 23:48:51 +0000 (12:48 +1300)] 
Typo in rev10272

15 years agoBring bug 2858 fix inline with other TCP handling code.
Amos Jeffries [Thu, 11 Feb 2010 11:07:42 +0000 (00:07 +1300)] 
Bring bug 2858 fix inline with other TCP handling code.

15 years agoAuthor: Kieran Whitbread <k.j.whitbread@qmul.ac.uk>
Amos Jeffries [Wed, 10 Feb 2010 22:29:49 +0000 (11:29 +1300)] 
Author: Kieran Whitbread <k.j.whitbread@qmul.ac.uk>
Bug 2858: Segment violation in HTCP

15 years agoRemove tidyHtml from the template generation tools.
Amos Jeffries [Wed, 10 Feb 2010 11:40:58 +0000 (00:40 +1300)] 
Remove tidyHtml from the template generation tools.

While nice, It introduces several problems:

 * any syntax errors at all in the translation text causes a blank
   translated text file to be produced. Without any error code.

 * automatically downgrades the HTML content-type meta to "us-ascii"
   despite the input and output both actually being UTF-8

 * added dependency for building.

It's used automatically by the translate toolkit from 1.5.0 so
needs to be expicitly disabled when present.

15 years agoAuthor: Markus Moeller <huaraz@moeller.plus.com>
Henrik Nordstrom [Tue, 9 Feb 2010 20:04:44 +0000 (21:04 +0100)] 
Author: Markus Moeller <huaraz@moeller.plus.com>
squid_kerb_auth logging clarification

add ERROR, WARNING, etc to the logging messages.

15 years agoAdd adapted_http_access option. Port of http_access2 from Squid-2
Amos Jeffries [Sun, 7 Feb 2010 03:38:46 +0000 (16:38 +1300)] 
Add adapted_http_access option. Port of http_access2 from Squid-2

15 years agoAuthor: Henrik Nordstrom <hno@squid-cache.org>
Amos Jeffries [Sat, 6 Feb 2010 06:32:11 +0000 (19:32 +1300)] 
Author: Henrik Nordstrom <hno@squid-cache.org>
Clean up use of httpReplySetHeaders to be consistent across the code, and
remove the unneeded http_version argument.

Ported from 2.7

15 years agoTypo in multicastsiblings parse
Amos Jeffries [Sat, 6 Feb 2010 00:13:14 +0000 (13:13 +1300)] 
Typo in multicastsiblings parse

15 years agoAuthor: Jean-Gabriel Dick <jean-gabriel.dick@curie.fr>
Amos Jeffries [Fri, 5 Feb 2010 23:27:27 +0000 (12:27 +1300)] 
Author: Jean-Gabriel Dick <jean-gabriel.dick@curie.fr>
Bug 1843: multicast-siblings cache_peer option for optimising multicast ICP relations

'multicast-siblings' : this option is meant to be used only for cache peers of
type "multicast". It instructs Squid that ALL members of this multicast group
have "sibling" relationship with it, not "parent".  This is an optimization
that avoids useless multicast queries to a multicast group when the requested
object would be fetched only from a "parent" cache, anyway.  It's useful, e.g.,
when configuring a pool of redundant Squid proxies, being members of the same
multicast group.

15 years agoRemoved unused callWhenReady() API. Only ICAP services need it, for now.
Alex Rousskov [Thu, 4 Feb 2010 23:09:37 +0000 (16:09 -0700)] 
Removed unused callWhenReady() API. Only ICAP services need it, for now.

15 years agoCorrect HTML syntax in ca.po strings
Amos Jeffries [Thu, 4 Feb 2010 05:35:55 +0000 (18:35 +1300)] 
Correct HTML syntax in ca.po strings

15 years agoAuthor: James Brotchie <brotchie@gmail.com>
Amos Jeffries [Wed, 3 Feb 2010 12:36:21 +0000 (01:36 +1300)] 
Author: James Brotchie <brotchie@gmail.com>
Port of X509 certificate alias-domain handling from 2.7.

15 years agoPrep for 3.0.STABLE23
Amos Jeffries [Tue, 2 Feb 2010 09:15:04 +0000 (22:15 +1300)] 
Prep for 3.0.STABLE23

15 years agobasic_smb_auth is C++, adjust make flags accordingly. Also clean up string types...
Henrik Nordstrom [Mon, 1 Feb 2010 14:30:22 +0000 (15:30 +0100)] 
basic_smb_auth is C++, adjust make flags accordingly. Also clean up string types a bit to make g++ happier

15 years agoPrep for 3.1.0.16
Amos Jeffries [Mon, 1 Feb 2010 01:33:17 +0000 (14:33 +1300)] 
Prep for 3.1.0.16

15 years agoPrep for 3.0.STABLE22
Amos Jeffries [Mon, 1 Feb 2010 01:01:47 +0000 (14:01 +1300)] 
Prep for 3.0.STABLE22

15 years agoAuthor: Marko <mr_4u2@yahoo.com>
Amos Jeffries [Sun, 31 Jan 2010 06:50:25 +0000 (19:50 +1300)] 
Author: Marko <mr_4u2@yahoo.com>
Bug 2496: Downloading some variants in full before relaying

AKA, assertion failed: comm.cc:115: "ccb->active == false"
if the client disconnected before download finished arriving.

15 years agoAuthor: Graham Keeling <graham@equiinet.com>
Amos Jeffries [Sun, 31 Jan 2010 06:20:21 +0000 (19:20 +1300)] 
Author: Graham Keeling <graham@equiinet.com>
WCCPv1 not connecting to router correctly

I am coming across a problem with WCCPv1...

squid-2.5 connects to UDP port 2048, I get replies, and everything else then works.

squid-3.1 looks like it is trying to connect to UDP port 0 on the cisco.
[and fails to work]

I have looked at the src/wccp.c for squid-2.5, and it is clear that the port is
being set to 2048 for the connection to the router.
I have also looked at the source for 2.6, 2.7 and 3.0 (src/wccp.cc for this
version).
In all those, it appears to be setting the port on the outgoing connection.

However, in the 3.1 source, it doesn't.

15 years agoPolished %>ha description.
Alex Rousskov [Sat, 30 Jan 2010 04:40:16 +0000 (21:40 -0700)] 
Polished %>ha description.

15 years agoReleas notes for %ha option
Amos Jeffries [Sat, 30 Jan 2010 00:55:45 +0000 (13:55 +1300)] 
Releas notes for %ha option

15 years agoAuthor: Frank Schmirler <squid@schmirler.de>
Amos Jeffries [Sat, 30 Jan 2010 00:30:56 +0000 (13:30 +1300)] 
Author: Frank Schmirler <squid@schmirler.de>
Bug 2851: Connection pinning fails when using a peer

15 years agoChange the "virgin" term to "original".
Christos Tsantilas [Fri, 29 Jan 2010 18:03:03 +0000 (20:03 +0200)] 
Change the "virgin" term to "original".

virgin has a sexual connotation in some cultures, and can be confusing
in a way that is avoidable.

15 years agoSourceFormat Enforcement
Automatic source maintenance [Fri, 29 Jan 2010 01:13:09 +0000 (18:13 -0700)] 
SourceFormat Enforcement

15 years agoAdd the http::>ha format code and make http::>h log virgin request headers
Christos Tsantilas [Thu, 28 Jan 2010 20:37:10 +0000 (22:37 +0200)] 
Add the http::>ha format code and make http::>h log virgin request headers

This patch:
 - Modify the existin "http::>h format code to log HTTP request headers
   before any adaptation and redirection
 - Add the new format code "http::>ha" which allow the user to log HTTP
   request header or header fields after adaptation and redirection.

This is a Measurement Factory project.

15 years agoDisplay cache_peer name option in CacheMgr config
Amos Jeffries [Mon, 25 Jan 2010 00:20:12 +0000 (13:20 +1300)] 
Display cache_peer name option in CacheMgr config

15 years agoSourceFormat Enforcement
Automatic source maintenance [Sun, 24 Jan 2010 01:13:07 +0000 (18:13 -0700)] 
SourceFormat Enforcement

15 years agoAuthor: Michael van Elst
Amos Jeffries [Sat, 23 Jan 2010 06:02:26 +0000 (19:02 +1300)] 
Author: Michael van Elst
Use POSIX tests for IPv6 address detections.

15 years agoAfrikaans has a moderator
Amos Jeffries [Sat, 23 Jan 2010 03:27:59 +0000 (16:27 +1300)] 
Afrikaans has a moderator

15 years agoSourceFormat Enforcement
Automatic source maintenance [Fri, 22 Jan 2010 01:13:11 +0000 (18:13 -0700)] 
SourceFormat Enforcement

15 years agoBug 2553: X-Forwarded-For with IPv6 address not handled correctly
Amos Jeffries [Thu, 21 Jan 2010 13:06:48 +0000 (02:06 +1300)] 
Bug 2553: X-Forwarded-For with IPv6 address not handled correctly

Also, remove the port from consideration. It is meaningless on indirect
client address.

15 years agoFix build errors when XFF compounds with other features
Amos Jeffries [Thu, 21 Jan 2010 12:48:36 +0000 (01:48 +1300)] 
Fix build errors when XFF compounds with other features

Some squid.conf options require XFF and other component wrappers to build
properly.

This fixes ICAP and Delay Pools clash which appeared in testing. Other
multiple-component wrapping can be done in identical fashion

15 years agoAuthor: Wolfgang Nothdurft <wolfgang@linogate.de>
Amos Jeffries [Thu, 21 Jan 2010 10:22:02 +0000 (23:22 +1300)] 
Author: Wolfgang Nothdurft <wolfgang@linogate.de>
Bug 2731: Add follow_x_forwarded_for support to ICAP

Pass the indirect client address to the ICAP server using X-Client-IP.

15 years agoAuthor: Wolfgang Nothdurft <wolfgang@linogate.de>
Amos Jeffries [Thu, 21 Jan 2010 10:01:16 +0000 (23:01 +1300)] 
Author: Wolfgang Nothdurft <wolfgang@linogate.de>
Bug 2730: Regressions in follow_x_forwarded_for since Squid-2

Two Major Regressions:

* Omitted testing for trust of the directly connecting client.
  this is critical is trusting the header content itself.
  The absence permitted remote clients to forge X-Forwarded-For
  and gain access to resources through Squid.
  (mitigated by the following)

* Bad logic in implementing the trust model resulted in any XFF
  headers containing untrusted IPs to be dropped in their entirety.
  This resulted in clients transiting more than one proxy heirarchy to
  be incorrectly logged and reported in the second.

Some polish alterations to the existing logics:

* Testing the direct client address for trust means the testing must be
  fully async 'slow'. Thus avoiding the memory leaks found on occasion.

* acl_uses_indirect_client is not strictly needed to test multiple levels
  of X-Forwarded-For properly. The entire list of IPs are now always
  tested until on untrusted is found or an ACL failure occurs.

15 years agoMore portable rfc1035 unit test
Amos Jeffries [Thu, 21 Jan 2010 07:59:51 +0000 (20:59 +1300)] 
More portable rfc1035 unit test

15 years agoAdd warnings explaining Invalid Response errors generated by Squid
Amos Jeffries [Thu, 21 Jan 2010 05:46:20 +0000 (18:46 +1300)] 
Add warnings explaining Invalid Response errors generated by Squid

15 years agoBump AIO debug sync message down a level
Amos Jeffries [Wed, 20 Jan 2010 23:51:58 +0000 (12:51 +1300)] 
Bump AIO debug sync message down a level