Henrik Nordström's Squid work -> Squid development and new features
My Squid development page
NOTE: This information is mostly outdated. For current developments see http://devel.squid-cache.org where development is now done in a more cooperative manner, and due to the higher degree of openness in the Squid development the need for these "personal" pages no longer exists. The page still exists for reference purposes as not all my old patches have made it into the the new development model yet, but will eventually go away completely.
Patches are listed in reverse order with the newest first, so if you have trouble applying a patch it is very likely that it depends on another patch further down in the list.
The Squid version number of the patch does not actually matter that much. All it indicates is what Squid version I used when I made the patch.
- Normal patch
- Point patches
These patches requires further work to apply to the current Squid
version. I plan on looking into the details when I get the time to do it..
If any of this looks useful to you then please help me do it and send the
updated patch file to me (or if
you don't know how it should be done, ask me to update the patch).
Squid-2.3.DEVEL2: Solaris X86 and dlmalloc
Configure forced dlmalloc for Solaris X86 twice. This patch removes
one of the tests (unneded, didn't do anything but echo it was detected)
Squid-2.2.STABLE4: dns_restart option to keep dnsserver in bay
Adds dns_restart option to have dnsservers periodically restart
themselves to purge memory. This is to work around apparent leaks in
dnsserver (or the resolver librarby). dnsserver processes has seen
growing from a few MB up to 50MB in size.
Squid-2.2.STABLE4: Higher helper limit to avoid dns queue assertion
Allow for a larger backlog of requests to helper processes such as
dnsserver. Squid will abort with a assertion failure if the backlog grows
to large. This patch changes the limit from 2*n_helpers to 5*n_helpers
Squid-2.2.STABLE4: Disable pipeline prefetching
Disable parallell fetches of pipelined requests. There seems to be
serious problems if something goes wrong with the second request while
the first one is being processed, so the safest bet is to disable this
prefetching of pipelined requests for the time being.
Squid-2.2.STABLE4: Async-IO sync fixes
Async IO sync operation was somewhat incomplete. There could be some
operations pending when the sync completed.
Also, operations needs to be synced when switching user-id's, or it
is uncertain which userid the operations get executed as.
Squid-2.2.STABLE4: Some tuning of Async-IO code
This patch makes some tuning of the Async-IO code to
avoid wasting threads on operations which usually does not
block. It also reverts to using unlinkd for unlinks even when
using async-io due to some load balancing troubles. This can
be tuned in include/config.h if you'd like to.
Squid-2.4.STABLE5: proxy_auth and spaces in username or password
Squid-2.2.STABLE3: proxy_auth and spaces in username or password
This patch adds support for spaces in the username or password by
encoding unsafe characters before calling the authenticator. Please note
that this patch breaks compability with any existing authenticator modules
and you need to URL unescape the username and password prior to processing
or authentication will fail if unsafe characters is used in the username
Squid-2.2.STABLE3: Don't give ICP/Digest HIT on non-200 objects
There is a common false hit condition with objects with a
HTTP status other than 200 (HTTP_OK). These will cause false
hits if a client sends a If-Modified-Since request.
This patch makes a minor change to the on-disk store, and may or may
not be fully compatible with future Squid releases. Don't use this patch
unless you are prepared to clean your cache on next upgrade.
These patches are patches which require more work to be used in the current Squid releases, but which in my opinion is a step in the right direction for the design. They are kept here mostly for reference and as a reminder.
These patches are not actively maintained, and is provided as a reference only. Don't apply these to your Squid.
© 1999-2000 Henrik Nordström <firstname.lastname@example.org>.