]> git.ipfire.org Git - thirdparty/squid.git/log
thirdparty/squid.git
18 years agoBootstrapped
serassio [Fri, 22 Dec 2006 03:13:34 +0000 (03:13 +0000)] 
Bootstrapped

18 years agoBug #1853: Support for ARP ACL on NetBSD
serassio [Fri, 22 Dec 2006 03:12:26 +0000 (03:12 +0000)] 
Bug #1853: Support for ARP ACL on NetBSD

Patch provided by Jaromir Dolecek

18 years agoBootstrapped
serassio [Fri, 22 Dec 2006 03:02:13 +0000 (03:02 +0000)] 
Bootstrapped

18 years agoBug #1853: Support for ARP ACL on NetBSD
serassio [Fri, 22 Dec 2006 03:01:00 +0000 (03:01 +0000)] 
Bug #1853: Support for ARP ACL on NetBSD

Patch provided by Jaromir Dolecek

18 years agoKill the obsolete -V command line option. Not working, and not in line
hno [Thu, 21 Dec 2006 07:34:51 +0000 (07:34 +0000)] 
Kill the obsolete -V command line option. Not working, and not in line
with current squid.conf syntax.

18 years agowccp2_router config fixes. Should not need to specify the port.
hno [Thu, 14 Dec 2006 08:36:01 +0000 (08:36 +0000)] 
wccp2_router config fixes. Should not need to specify the port.

in fact the port is currently ignored completely, but the config
type (sockaddr_in_list) did not understand host specifications alone
only port or host:port).

Now sockaddr_in_list supports port, host:port and host.
Fully numeric host names without domain is not supported.

18 years agoBootstrapped
hno [Mon, 11 Dec 2006 08:10:48 +0000 (08:10 +0000)] 
Bootstrapped

18 years agoBuild the POP3 helper Makefile
hno [Sun, 10 Dec 2006 13:03:24 +0000 (13:03 +0000)] 
Build the POP3 helper Makefile

18 years agoBug #1839: Cosmetic debug message cleanup in peerHandleHtcpReply.
hno [Sun, 10 Dec 2006 12:25:53 +0000 (12:25 +0000)] 
Bug #1839: Cosmetic debug message cleanup in peerHandleHtcpReply.

18 years agoBootstrapped
hno [Sun, 10 Dec 2006 08:10:48 +0000 (08:10 +0000)] 
Bootstrapped

18 years agoSimple POP3 basic auth helper querying a POP3 server
hno [Sun, 10 Dec 2006 06:28:23 +0000 (06:28 +0000)] 
Simple POP3 basic auth helper querying a POP3 server

18 years agoBug #1832: Error building squid-2.6.STABLE5 using --enable-truncate
serassio [Sun, 26 Nov 2006 03:12:38 +0000 (03:12 +0000)] 
Bug #1832: Error building squid-2.6.STABLE5 using --enable-truncate

18 years agoRemove old/undefined variable from the profiling code.
adrian [Wed, 22 Nov 2006 15:07:10 +0000 (15:07 +0000)] 
Remove old/undefined variable from the profiling code.

18 years agoAdd profiling points into the fd code to note how long is being spent in syscalls.
adrian [Wed, 22 Nov 2006 14:43:26 +0000 (14:43 +0000)] 
Add profiling points into the fd code to note how long is being spent in syscalls.

18 years agoFix off-by-one in the kqueue event assembly code; remove silly extra comments from...
adrian [Wed, 22 Nov 2006 13:08:32 +0000 (13:08 +0000)] 
Fix off-by-one in the kqueue event assembly code; remove silly extra comments from when I was <20..

18 years agoAdd in explicit typecast to silence gcc 4.x printf warnings under FreeBSD
adrian [Wed, 22 Nov 2006 13:07:54 +0000 (13:07 +0000)] 
Add in explicit typecast to silence gcc 4.x printf warnings under FreeBSD

18 years agoHigh-res profiling changes - nested profiling, recursive profiling and profiling...
adrian [Wed, 22 Nov 2006 13:07:16 +0000 (13:07 +0000)] 
High-res profiling changes - nested profiling, recursive profiling and profiling points

* change the timekeeping to use a fixed-size stack of times rather than
  directly referencing the time counter structs
* start/stop the previous level timers during profiling stop/start
  (someone could probably turned the UNACCOUNTED timer into the "level 0 timer"
  taking out the special cases..)
* Add in some more profiling points which'll surface in later commits.

18 years agoAdd support for the weight= parameter to round-robin peers
hno [Wed, 22 Nov 2006 06:37:50 +0000 (06:37 +0000)] 
Add support for the weight= parameter to round-robin peers

18 years agoBug #1823: ntlm_auth/SMB/ntlm_auth.c fails to compile on some platforms due to a...
hno [Thu, 9 Nov 2006 23:45:49 +0000 (23:45 +0000)] 
Bug #1823: ntlm_auth/SMB/ntlm_auth.c fails to compile on some platforms due to a syntax error

18 years agoBug #1805: assertion failed: StatHist.c:195: "D[i] >= 0"
hno [Thu, 9 Nov 2006 23:35:32 +0000 (23:35 +0000)] 
Bug #1805: assertion failed: StatHist.c:195: "D[i] >= 0"

triggered by querying the cacheHttpNhSvcTime SNMP table, either directly or
indirectly by walking the cacheRequestByteRatio (the OID just before).

18 years agoBootstrapped
hno [Wed, 8 Nov 2006 08:10:47 +0000 (08:10 +0000)] 
Bootstrapped

18 years agoRemove extra newline in redirect message sent by deny_info http://... aclname
hno [Tue, 7 Nov 2006 10:00:52 +0000 (10:00 +0000)] 
Remove extra newline in redirect message sent by deny_info http://... aclname

18 years agoMinor adjustment of the release process to match how the changesets is generated
hno [Tue, 7 Nov 2006 09:20:04 +0000 (09:20 +0000)] 
Minor adjustment of the release process to match how the changesets is generated

18 years agoAdd back the -CVS signature on the version number in CVS
hno [Tue, 7 Nov 2006 09:13:40 +0000 (09:13 +0000)] 
Add back the -CVS signature on the version number in CVS

18 years agoUpdate Changelog in preparation for the PRE release. SQUID_3_0_PRE5
adrian [Tue, 7 Nov 2006 08:22:29 +0000 (08:22 +0000)] 
Update Changelog in preparation for the PRE release.

18 years agoBootstrapped
hno [Tue, 7 Nov 2006 08:10:48 +0000 (08:10 +0000)] 
Bootstrapped

18 years agoPRE4-CVS -> PRE5 preparation
adrian [Mon, 6 Nov 2006 12:14:06 +0000 (12:14 +0000)] 
PRE4-CVS -> PRE5 preparation

18 years agoBug #1799: Harmless 1 byte buffer overflow on long hostnames in /etc/hosts
hno [Sun, 5 Nov 2006 00:10:43 +0000 (00:10 +0000)] 
Bug #1799: Harmless 1 byte buffer overflow on long hostnames in /etc/hosts

18 years agoAdd client source port logformat tag >p
hno [Sat, 4 Nov 2006 22:44:58 +0000 (22:44 +0000)] 
Add client source port logformat tag >p

by Gary Lau

18 years agoBug #1817: Assertion failure assert(buflen >= copy_sz) in htcp.c htcpBuildAuth()
hno [Sat, 4 Nov 2006 21:15:22 +0000 (21:15 +0000)] 
Bug #1817: Assertion failure assert(buflen >= copy_sz) in htcp.c htcpBuildAuth()

could trigger on certain oversized requests when using HTCP

18 years agoBootstrapped
hno [Thu, 2 Nov 2006 08:10:48 +0000 (08:10 +0000)] 
Bootstrapped

18 years agoBootstrapped
serassio [Thu, 2 Nov 2006 02:56:33 +0000 (02:56 +0000)] 
Bootstrapped

18 years agoFix make check after changes for Bugs #1719 and #1695
serassio [Thu, 2 Nov 2006 02:55:29 +0000 (02:55 +0000)] 
Fix make check after changes for Bugs #1719 and #1695

18 years agoAdd support for wccpv2 mask assignment
serassio [Thu, 2 Nov 2006 02:22:10 +0000 (02:22 +0000)] 
Add support for wccpv2 mask assignment

Forwrd port of 2.6 changes.

18 years agoBootstrapped after adding new source files in src/ICAP
wessels [Wed, 1 Nov 2006 06:33:37 +0000 (06:33 +0000)] 
Bootstrapped after adding new source files in src/ICAP

18 years ago - Many ICAP fixes from Alex Rousskov accumulated on the
wessels [Wed, 1 Nov 2006 06:30:55 +0000 (06:30 +0000)] 
- Many ICAP fixes from Alex Rousskov accumulated on the
  sourceforge squid3-icap branch since 2006/10, including:

        - Polished ICAP service selection code and implemented bypass of
          optional services. The code implements icap_class
          configuration directive which is currently used as a "set of
          interchangeable ICAP services". Squid2 and current squid.conf
          may imply otherwise.

        - Support Transfer-* ICAP OPTIONS response header. If Squid
          knows that a service does not want the URL, Squid will not use
          the service, even if it is an essential service with
          bypass=0. Note that we may make this decision before we know
          what the service wants. Eventually, ACLs should initiate and
          wait for the OPTIONS transaction for yet-unprobed services.

        - When ICAP transactions fail to connect to the service many
          times, the service is suspended until the next OPTIONS
          update. The limit is currently hard-coded to 10. Suspended
          service is a down service and will be skipped by the ACL
          service selection algorithm.

        - Rewrote the code updating ICAP service options. We no longer
          mark the service being updated as "down". Only presence of
          valid and fresh options is important. We also try to update
          the options before they expire to avoid any service downtime
          or use of stale options.

        - Report interesting changes in the ICAP service state, some
          with debugging level one to alert the cache administrator.

        - When cloning a request during an ICAP 204 "No Content" REQMOD
          response, preserve the client address so that the rest of the
          code has access to it. This change appears to fix Squid Bug
          #1712.

        - After ICAP 100 Continue, expect new ICAP headers instead of
          HTTP headers. Reset ICAP message object to be ready to parse
          ICAP headers again. (Tsantilas Christos
          <chtsanti@users.sourceforge.net>)

        - The ieof HTTP chunk-extension was written after chunk-data
          instead of being written after the chunk-size. (Tsantilas
          Christos <chtsanti@users.sourceforge.net>)

        - Merged common code from the ICAPClientReqmodPrecache and
          ICAPClientReqmodPrecache classes into the newly added
          ICAPClientVector class.  The specific vectors do not have a
          common owner (yet?) because ServerStateData and
          ClientHttpRequest do not have a common base class. Thus,
          ICAPClientVector has to rely on its kids to communicate with
          their owners. However, at least 50% of the logic was common
          and has been moved. Eventually, we may want to create a
          simple ICAPOwner API that ServerStateData and
          ClientHttpRequest can implement and ICAPClientVector can rely
          on. This will make the code simpler and more efficient.  The
          big merge was motivated by a couple of bugs that were found
          in one vector class but that did not exist or behaved
          differently in the other vector, mostly likely due to natural
          diversion of used-to-be identical code.

        - Rewrote communication between a server-side ICAPClient*mod*
          vector and its owner.  When a server-side ICAPClient*mod*
          vector was notifying its owner of more adapted data, the
          owner could delete the vector (by calling icap->ownerAbort)
          if the store entry was not willing to accept the data.  The
          same deletion could happen when a vector was notifying the
          owner of a successful termination. In all those cases, the
          vector did not expect to be deleted and could continue to do
          something, causing segmentation faults.  Now, when more data
          is available, the vector calls its owner and checks the
          return value of the call. If it is false, the vector knows it
          has been deleted and quits. When vector terminates, it calls
          its owner and trusts the owner to always delete the vector.
          The "check return value and quit" design is not perfect, but
          we are paying the price for isolating the vectors from their
          owners while using direct calls between them (instead of
          MsgPipe or a similar less efficient indirect approach we use
          elsewhere).

        - Renamed doIcap to startIcap and moved more common code there.
          Changed its return type to bool. We now handle three cases
          when ICAP ACLs call back:  1) No service was selected
          (because there was no applicable service or because all
          applicable services were broken and optional). We proceed as
          if ICAP was not configured.  2) The selected essential
          service is broken. This is a fatal transaction error and we
          return an "ICAP protocol error" HTTP error response. We could
          proceed with the ICAP stuff, but it saves a lot of cycles to
          abort early.  3) The selected service is not broken. We
          proceed with the ICAP stuff.  The old code did not detect
          case #2, even though there was code to handle that case (with
          dangerous XXX suggestions that are now gone).  The code
          should probably be polished further to move common ftp/http
          logic from icapAclCheckDone()s into ServerStateData.

        - Make sure there is an accept callback when we are accepting.
          If there is no callback and we accept, we will silently leak
          the accepted FD.  When we are running out of FDs, there is
          often no accept callback.  The old code, when running out of
          FDs, would create lots of "orphaned" or "forgotten" FDs that
          will eventually get into a CLOSED_WAIT state and remain there
          until Squid quits.  The new code does not call accept() if
          there is no accept callback and does not register the accept
          FD for reading if the AcceptLimiter is deferring, because
          when the AcceptLimiter kicks in, it will register the accept
          FD for reading. There are most likely other places/cases
          where accept FD should not be registered for reading.

        - When an exception is caught, mark the ICAP connection as
          non-reusable so that it is not recycled while a write is
          pending but simply closed instead. Our write callback will
          still be called, unfortunately, because there is no way to
          clear the callback without invalidating its data (i.e., the
          transaction pointer).  This change prevents pconn.cc:253:
          "!comm_has_incomplete_write(fd)" assertion from firing when
          things go wrong (e.g., the ICAP server cannot be contacted to
          retrieve OPTIONS).  Not all exceptions caught by the ICAP
          xaction should lead to the ICAP connection termination, but
          it is very difficult if not impossible to reliably detect
          exceptional conditions when it is safe to reuse the ICAP
          connection, and it is probably not worth it anyway.

        - Added Tsantilas Christos <chtsanti@users.sourceforge.net>
          to CONTRIBUTORS for fixing ICAP bugs.

        - Polished debugging.

18 years agoWindows port: Correctly identify Windows Vista and Windows Server Longhorn
serassio [Mon, 30 Oct 2006 01:14:52 +0000 (01:14 +0000)] 
Windows port: Correctly identify Windows Vista and Windows Server Longhorn

18 years agoBootstrapped
hno [Fri, 27 Oct 2006 06:10:47 +0000 (06:10 +0000)] 
Bootstrapped

18 years agoBootstrapped
serassio [Fri, 27 Oct 2006 01:55:41 +0000 (01:55 +0000)] 
Bootstrapped

18 years agoBug #1778: Build error on Irix using SGI MipsPRO compiler
serassio [Fri, 27 Oct 2006 01:53:48 +0000 (01:53 +0000)] 
Bug #1778: Build error on Irix using SGI MipsPRO compiler

Avoid some unwanted compiler warning

18 years agoBug #1778: Build error on Irix using SGI MipsPRO compiler
serassio [Fri, 27 Oct 2006 01:42:24 +0000 (01:42 +0000)] 
Bug #1778: Build error on Irix using SGI MipsPRO compiler

Single bit field must be unsigned

18 years agoAlex reports getting coredumps (with high debugging) at process
wessels [Tue, 24 Oct 2006 10:48:10 +0000 (10:48 +0000)] 
Alex reports getting coredumps (with high debugging) at process
exit because debug_log got closed, but was not set to NULL.  Seems
like we should not call fclose() before exit so that destructors
can write debugging if necessary.  The file will be closed anyway
when the process truly exits.

18 years agoNeed to #include helper.h in dns.cc for --disable-internal-dns
wessels [Fri, 20 Oct 2006 11:34:20 +0000 (11:34 +0000)] 
Need to #include helper.h in dns.cc for --disable-internal-dns

18 years agobugfix: In clientProcessRequest(), the call to connNoteUseOfBuffer() was
wessels [Thu, 19 Oct 2006 07:39:40 +0000 (07:39 +0000)] 
bugfix: In clientProcessRequest(), the call to connNoteUseOfBuffer() was
moved from the beginning to the end of the function.  This broke request
body processing because "conn->in.notYetUsed" was wrong at the time
of BodyReader creation.  As a workaround we now subtract http->req_sz
from conn->in.notYetUsed when telling the BodyReader how much
data there is on the socket.

18 years agominor nit: format intro comments and GPL text to fit within 80 columns
wessels [Thu, 19 Oct 2006 06:35:35 +0000 (06:35 +0000)] 
minor nit: format intro comments and GPL text to fit within 80 columns
and match all the other source code files.

18 years agoBug #1778: Build error on Irix using SGI MipsPRO compiler
serassio [Sat, 14 Oct 2006 19:43:18 +0000 (19:43 +0000)] 
Bug #1778: Build error on Irix using SGI MipsPRO compiler

Temporary build workaround waiting for Robert's definitive fix

18 years agoBug #1778: Build error on Irix using SGI MipsPRO compiler
serassio [Sat, 14 Oct 2006 19:34:29 +0000 (19:34 +0000)] 
Bug #1778: Build error on Irix using SGI MipsPRO compiler

Single bit field must be unsigned

18 years agoRemoving port 563 from the default SSL_ports and Safe_ports ACLs
wessels [Fri, 13 Oct 2006 02:46:42 +0000 (02:46 +0000)] 
Removing port 563 from the default SSL_ports and Safe_ports ACLs
under the assumption that this port (for secure NNTP) is very
rarely used through Squid, and that allowing it by default increases
the chance that it can be abused for generic tunneling.

18 years agoBug #1794: Allow 00:00-24:00 time specifications even if redundant
hno [Mon, 9 Oct 2006 18:43:02 +0000 (18:43 +0000)] 
Bug #1794: Allow 00:00-24:00 time specifications even if redundant

00:00-23:59 covers all 24 hours of the day, but it's easier to use 24:00.

18 years agoBug #1775: cachemgr storedir segfault with cache_dir null
serassio [Sun, 8 Oct 2006 19:34:09 +0000 (19:34 +0000)] 
Bug #1775: cachemgr storedir segfault with cache_dir null

18 years agoForward port of patches for Bug #1719 and Bug #1695 from 2.6.
serassio [Sun, 8 Oct 2006 19:10:34 +0000 (19:10 +0000)] 
Forward port of patches for Bug #1719 and Bug #1695 from 2.6.

Bug #1719: Incorrect error message on invalid cache_peer specifications

aborted with an assertion on the first request instead of rejecting the
configuration as invalid.

Bug #1695: http_port and other directives accept invalid ports

This patch rejects invalid port specifications in http_port and numerous
other directives as invalid.

18 years agoFix more stupid off-by-one errors parsing the request line.
adrian [Mon, 2 Oct 2006 18:08:20 +0000 (18:08 +0000)] 
Fix more stupid off-by-one errors parsing the request line.

18 years agoInclude missing profiling defines.
adrian [Mon, 2 Oct 2006 17:39:46 +0000 (17:39 +0000)] 
Include missing profiling defines.

18 years agoRemove another instance of temporary string abuse.
adrian [Mon, 2 Oct 2006 17:35:39 +0000 (17:35 +0000)] 
Remove another instance of temporary string abuse.

18 years agoReduce a couple of obvious string copies by using String references and filling them.
adrian [Mon, 2 Oct 2006 15:52:06 +0000 (15:52 +0000)] 
Reduce a couple of obvious string copies by using String references and filling them.

18 years agoOnly enforce HTTP version if we parsed a full request line.
adrian [Mon, 2 Oct 2006 12:03:23 +0000 (12:03 +0000)] 
Only enforce HTTP version if we parsed a full request line.

18 years agoDon't try parsing a blank request!
adrian [Mon, 2 Oct 2006 08:22:22 +0000 (08:22 +0000)] 
Don't try parsing a blank request!

18 years agoAdd in a missing \n for the Squid access log format routine.
adrian [Mon, 2 Oct 2006 08:21:50 +0000 (08:21 +0000)] 
Add in a missing \n for the Squid access log format routine.

18 years agoFix/Add request-line parser debugging; fix bug with pipelined connection parsing
adrian [Mon, 2 Oct 2006 07:34:18 +0000 (07:34 +0000)] 
Fix/Add request-line parser debugging; fix bug with pipelined connection parsing

The unparsed request buffer was being relocated before the headers were being
parsed. That was fine - the request parsing used to happen with a copy of the
buffer - but now a copy isn't being made. The buffer relocation needed to be
changed to happen after the request was parsed.

18 years agoFix an off-by-one bug in the UFS code. Thanks go to valgrind!
adrian [Mon, 2 Oct 2006 07:31:59 +0000 (07:31 +0000)] 
Fix an off-by-one bug in the UFS code. Thanks go to valgrind!

18 years agoBug #1782: Memory leak in ncsa_auth on password changes
serassio [Mon, 2 Oct 2006 00:40:29 +0000 (00:40 +0000)] 
Bug #1782: Memory leak in ncsa_auth on password changes

Forward port of a 2.6 patch.

18 years agoSlightly change the request line demarcation logic a little in an attempt to find
adrian [Sun, 1 Oct 2006 23:27:10 +0000 (23:27 +0000)] 
Slightly change the request line demarcation logic a little in an attempt to find
'badly parsed' lines.

18 years agoAdd in some more refresh-related debugging
adrian [Sun, 1 Oct 2006 23:26:34 +0000 (23:26 +0000)] 
Add in some more refresh-related debugging

18 years agoUpdated .cvsignore file
serassio [Sat, 30 Sep 2006 23:16:24 +0000 (23:16 +0000)] 
Updated .cvsignore file

18 years agoBug #1784: access_log syslog results in blanks syslog lines between every access...
serassio [Sat, 30 Sep 2006 22:51:41 +0000 (22:51 +0000)] 
Bug #1784: access_log syslog results in blanks syslog lines between every access log entry.

workaround: define a custom log format.

Forward port of 2.6 patch.

18 years agoAdd profiling points for the string library.
adrian [Thu, 28 Sep 2006 13:33:59 +0000 (13:33 +0000)] 
Add profiling points for the string library.

18 years agoAdd in profiling points for header parsing and cleaning.
adrian [Thu, 28 Sep 2006 13:13:12 +0000 (13:13 +0000)] 
Add in profiling points for header parsing and cleaning.

18 years agoAdd more profiling points
adrian [Thu, 28 Sep 2006 07:04:54 +0000 (07:04 +0000)] 
Add more profiling points

18 years agoCreate "inlined" Macro versions of the offset functions with the new request parser
adrian [Wed, 27 Sep 2006 19:47:53 +0000 (19:47 +0000)] 
Create "inlined" Macro versions of the offset functions with the new request parser

18 years agoAdd profiling for the new request line parser
adrian [Wed, 27 Sep 2006 19:31:02 +0000 (19:31 +0000)] 
Add profiling for the new request line parser

18 years agoReplace the client-side request line parser
adrian [Wed, 27 Sep 2006 19:17:52 +0000 (19:17 +0000)] 
Replace the client-side request line parser

* remove the 'inbuf' copy during parsing;
* .. but create a 'url' temporary copy for now since the *URL() routines
  in client_side.cc expect a mutable zero-terminated string;
  I looked into it and it won't take much work to rework those routines
  to take an immutable buffer.

18 years agoBootstrapped
hno [Wed, 27 Sep 2006 06:10:48 +0000 (06:10 +0000)] 
Bootstrapped

18 years agoVarious changes to break out the request parsing state and remove extra malloc/copies
adrian [Tue, 26 Sep 2006 21:19:22 +0000 (21:19 +0000)] 
Various changes to break out the request parsing state and remove extra malloc/copies
* Create a HttpParser structure to encapsulate the current parsing state
* Add some functions to return the current request/header length with some checks
  (which are expensive and should be inlined later once the code is proven to
  work.)
* Use the connection buffer rather than a temporary buffer to parse the request
  headers, saving a malloc and copy (the 'prefix' buffer)

18 years agoBack out other unrelated change
hno [Tue, 26 Sep 2006 20:46:16 +0000 (20:46 +0000)] 
Back out other unrelated change

18 years agoLink Squid SNMP library as a .a library directly to avoid conflicts with
hno [Tue, 26 Sep 2006 20:45:00 +0000 (20:45 +0000)] 
Link Squid SNMP library as a .a library directly to avoid conflicts with
system libraries

18 years agoDo some small changes to the HTTP parser and client side code to (eventually) save...
adrian [Tue, 26 Sep 2006 19:30:09 +0000 (19:30 +0000)] 
Do some small changes to the HTTP parser and client side code to (eventually) save on strlen() and similar calls

18 years agotcp-banger2 support for status validation and custom HTTP headers
hno [Tue, 26 Sep 2006 18:31:11 +0000 (18:31 +0000)] 
tcp-banger2 support for status validation and custom HTTP headers

18 years agoAdd in more profiling points to identify CPU usage
adrian [Mon, 25 Sep 2006 21:04:06 +0000 (21:04 +0000)] 
Add in more profiling points to identify CPU usage

18 years agoAdd in a missing check for whether the new dlink-based pending comm callbacks are...
adrian [Sat, 23 Sep 2006 13:16:07 +0000 (13:16 +0000)] 
Add in a missing check for whether the new dlink-based pending comm callbacks are ready

18 years agoBug #1769: near-hit and filedescriptor usage missing in SNMP MIB
hno [Fri, 22 Sep 2006 08:48:51 +0000 (08:48 +0000)] 
Bug #1769: near-hit and filedescriptor usage missing in SNMP MIB

Add cacheHttpNhSvcTime, cacheCurrentFileDescrCnt & cacheCurrentFileDescrMax
to the SNMP mib.

18 years agoBug #1774: ncsa_auth support for cramfs timestamps
hno [Fri, 22 Sep 2006 08:18:35 +0000 (08:18 +0000)] 
Bug #1774: ncsa_auth support for cramfs timestamps

18 years agoICAP cleanup of some cbdataReference misunderstanding.
hno [Thu, 21 Sep 2006 04:26:24 +0000 (04:26 +0000)] 
ICAP cleanup of some cbdataReference misunderstanding.

cbdataReference should only be used to create additional callback references
to a cbdata object. The owner of the object is the owner and has automatic
rights to the object, and should not call cbdataReference.

18 years agoClean up cbdataReference() use to comply with the API and make GCC happy
hno [Thu, 21 Sep 2006 04:15:00 +0000 (04:15 +0000)] 
Clean up cbdataReference() use to comply with the API and make GCC happy

18 years agoModify StoreEntry::write() probe to not overlap but still give accurate call numbers
adrian [Wed, 20 Sep 2006 20:25:05 +0000 (20:25 +0000)] 
Modify StoreEntry::write() probe to not overlap but still give accurate call numbers

18 years agoAdd in more profiling points
adrian [Wed, 20 Sep 2006 17:38:13 +0000 (17:38 +0000)] 
Add in more profiling points

18 years agoAdd profiling points for Membuf::grow, ::append and ::consume
adrian [Wed, 20 Sep 2006 14:13:38 +0000 (14:13 +0000)] 
Add profiling points for Membuf::grow, ::append and ::consume

18 years agoAdditional hi-res probes
adrian [Wed, 20 Sep 2006 12:29:10 +0000 (12:29 +0000)] 
Additional hi-res probes

18 years agoBypass the expensive check to the allocator getStats() when obtaining inuse data
adrian [Wed, 20 Sep 2006 06:59:26 +0000 (06:59 +0000)] 
Bypass the expensive check to the allocator getStats() when obtaining inuse data

A lot of busy code calls getStats() to get the inuse values when calculating
queue length (diskthreads) and store memory use for object memory expiry.
This was destroying performance.

The changes implement a "shortcut" to obtain the inuse values for both the
malloc and mempool allocator. getStats() is still expensive for mempools
(as it does GC before updating all the statistics to get accurate information)
but code has been modified to not use getStats() where all it wanted was
inuse info.

18 years agoFix a forgotten change during recent comm layer rework
serassio [Tue, 19 Sep 2006 23:17:52 +0000 (23:17 +0000)] 
Fix a forgotten change during recent comm layer rework

18 years agoFirst part of a comm layer rework
adrian [Tue, 19 Sep 2006 13:56:57 +0000 (13:56 +0000)] 
First part of a comm layer rework

* Remove new-style CommWrite, CommFill
* Add in a low-overhead C replacement for comm_read and comm_write
* Remove the difference between comm_write and comm_old_write; everything
  is back to using the same API for now
* create a simple C-based read/write IO callback mechanism, used by
  comm_read and comm_write

Whats left to do:

* convert accept/connect to using the new C-based read/write IO callback
  mechanism (and remove the requirement to allocate/free transient
  structures)
* rework the deferred read manager code somewhat
* then, remove the new-style CommRead code and use comm_read + whatever
  the deferred read manager has become
* remove whats not being used

18 years agoUn-astyle a flags definition
adrian [Tue, 19 Sep 2006 13:52:06 +0000 (13:52 +0000)] 
Un-astyle a flags definition

18 years agoBug #1768: Redundant DNS PTR lookups
hno [Tue, 19 Sep 2006 05:17:19 +0000 (05:17 +0000)] 
Bug #1768: Redundant DNS PTR lookups

Fix PTR lookup cache management to find pending queries.

18 years agoBug #1760: FTP related memory leak
hno [Tue, 19 Sep 2006 05:14:46 +0000 (05:14 +0000)] 
Bug #1760: FTP related memory leak

A small memory leak was found in the handling of certain ftp requests

18 years agoBug #1758: HEAD on ftp:// URLs always returned 200 OK.
hno [Tue, 19 Sep 2006 05:13:21 +0000 (05:13 +0000)] 
Bug #1758: HEAD on ftp:// URLs always returned 200 OK.

The FTP gateway took a little to narrow shortcut when processing HEAD
requests, not even verifying that the file esists (only directory).

18 years agoBug #1770: wccp2_weight directive
hno [Tue, 19 Sep 2006 05:05:43 +0000 (05:05 +0000)] 
Bug #1770: wccp2_weight directive

The WCCP2 implementation was missing weighted assignment, useful when the farm
is built from unequally powered servers.

18 years agoBootstrapped
hno [Sun, 17 Sep 2006 06:10:47 +0000 (06:10 +0000)] 
Bootstrapped

18 years agoaio_win32.cc and aiops_win32.cc must be compiled only on MinGW
serassio [Sun, 17 Sep 2006 02:44:21 +0000 (02:44 +0000)] 
aio_win32.cc and aiops_win32.cc must be compiled only on MinGW

18 years agoPortability fix: use memset() instead of deprecated bzero()
serassio [Sat, 16 Sep 2006 02:49:49 +0000 (02:49 +0000)] 
Portability fix: use memset() instead of deprecated bzero()

18 years agoFix a typo in recent commit
serassio [Sat, 16 Sep 2006 02:40:29 +0000 (02:40 +0000)] 
Fix a typo in recent commit

18 years agoFix astyle munging of flags.
adrian [Fri, 15 Sep 2006 23:30:13 +0000 (23:30 +0000)] 
Fix astyle munging of flags.