wessels [Wed, 25 Feb 1998 04:17:01 +0000 (04:17 +0000)]
- Added more bytes in/out and service time tracking. There is one pair
of byte counters for the server-side (http,ftp,gopher,wais,ssl,pass).
- Also separately track cache hits, misses, and not-modified replies.
- Try to track ICP query service time, but this may not be implemented
right.
- Removed '60min' average, now we have 5 minutes max
wessels [Tue, 24 Feb 1998 23:39:22 +0000 (23:39 +0000)]
From: "Michael O'Reilly" <michael@metal.iinet.net.au>
so I've added the patch below, which checks the make sure the write
request really does match the data passed back from the async IO
call.
note that I haven't actually rebooted with this patch yet, so
'provisional' is an understatement.
rousskov [Mon, 23 Feb 1998 20:03:01 +0000 (20:03 +0000)]
- Cache Manager got new Web interface (cachemgr.cgi). New .cgi script forwards
basic authentication from browser to squid. Cachemgr.cgi now recognizes
"action protection" types described below.
- Added better recognition of available protection for actions in Cache
Manager. Actions are classified as "public" (no password needed),
"protected" (must specify a valid password), "disabled" (those with a
"disable" password in squid.conf), and "hidden" (actions that require a
password, but do not have corresponding cachemgr_passwd entry in squid.conf).
rousskov [Sun, 22 Feb 1998 01:46:28 +0000 (01:46 +0000)]
Removed USE_ALEX_CODE configuration warning.
Added simple context-based debugging to debug.c. Currently, the context is
defined as a constant string. Context reporting is triggered by debug() calls.
Context debugging routines print minimal amount of information sufficient to
describe current context. The interface will be enhanced in the future.
rousskov [Sat, 21 Feb 1998 11:22:04 +0000 (11:22 +0000)]
Started to describe alex_2 changes. The follwoing entries were added to
ChangeLog. These are some of the low level changes coming from thealex_2 branch.
- Replaced _http_reply with HttpReply. HttpReply is a stand-alone object
that is responsible for parsing, swapping, and comm_writing of HTTP
replies. Moved these functions from various modules into HttpReply
module.
- Added HttpStatusLine, HttpHeader, HttpBody.
- All HTTP headers are now parsed and stored in a "compiled" form in the
HttpHeader object. This allows for a great flexibility in header
processing and builds basis for support of yet unsupported HTTP headers.
- Added Packer, a memory/store redirector with a printf interface. Packer
allows to comm_write() or swap() an object using a single routine.
- Added MemBuf, a auto-growing memory buffer with printf capabilities.
MemBuf replaces most of old local buffers for compiling text messages.
- Added MemPool that maintains a pre-allocated pool of opaque objects.
Used to eliminate memory thrashing when allocating small objects (e.g.
field-names and field-value in http headers).
wessels [Sat, 21 Feb 1998 04:04:50 +0000 (04:04 +0000)]
little rewriting needed for disk write callbacks. The callback
may close the FD, so it must be the last thing we do in
that function. Fixed cbdata leak.
wessels [Sat, 21 Feb 1998 01:47:06 +0000 (01:47 +0000)]
- Unescape URL-path in urlParse() so jokers can't bypass ACLs. Complain
if the resulting URL still has a % character in it.
- Other cleanup; removed some #ifdef'd code
wessels [Wed, 18 Feb 1998 08:00:43 +0000 (08:00 +0000)]
From: Henrik Nordstrom <hno@hem.passagen.se>
Squid-1.2.beta15: Show memory map as a tree
Part of my beta14 memory map patch did not make it into beta15.
Here are the missing pieces.
wessels [Wed, 18 Feb 1998 07:38:53 +0000 (07:38 +0000)]
From: Henrik Nordstrom <hno@hem.passagen.se>
Here is a patch that adds support for PORT and default mode FTP data
channel.
1. Try PASV
2. If that fails, try PORT
3. If all fails, fall back on using the default data channel (same local
port as used by the control connection).
Now I think the FTP gateway in Squid is fylly compliant with RFC 1738
(URL) and STD 9 (FTP) for fetching files and directory listings.
FTP PUT support remains to be done. As I said earlier the hard part here
is in client_side.c: to get request bodies down to the protocols in a
clean manner.
wessels [Wed, 18 Feb 1998 06:28:22 +0000 (06:28 +0000)]
From Henrik
This patch adds a automatic adjustment of RESERVED_FD when we fail to
create sockets. This functionality mentioned in the comments in
comm_open, but there was no code implementing it...
wessels [Wed, 18 Feb 1998 02:08:34 +0000 (02:08 +0000)]
From: "Michael O'Reilly" <michael@metal.iinet.net.au>
Required, becuase the contents of errno are undefined unless the
previous library call returned an error. Errno is NOT cleared on a
successful library call.
wessels [Wed, 18 Feb 1998 01:15:22 +0000 (01:15 +0000)]
Fixed NULL pointer bug from a storeClientCopy callback. We sort of
overloaded "size < 0" for these callbacks. Sometimes its a store-side
failure (didn't open swap file), and sometimes its a client-side
cancellation. If its cancelled from the client side we check that
http->entry != NULL before proceeding with the request.
wessels [Sat, 14 Feb 1998 01:26:52 +0000 (01:26 +0000)]
From Henrik Nordstrom
- A built in memory leak detector. Activated when compiled with
--enable-xmalloc-debug-trace. Squid-1.2.beta14: Option -m to turn on
malloc tracing
- The printing of the memory tracing is turned on by using the -m option
when starting squid, or by setting the global variable xmalloc_trace to
true from a debugger. A useful GDB macro:
define malloc_info
printf "Allocation %d from %s:%d size %d\n", \
malloc_number($arg0), malloc_file_name($arg0), \
malloc_line_number($arg0), mallocblksize($arg0)
end
wessels [Sat, 14 Feb 1998 00:47:38 +0000 (00:47 +0000)]
From: Henrik Nordstrom <hno@hem.passagen.se>
This patch changes the content-type for type specified ftp transfers to
type=i -> application/octet-stream
type=a -> text/plain