wessels [Thu, 8 Jan 1998 04:16:25 +0000 (04:16 +0000)]
From: Henrik Nordstrom <hno@hem.passagen.se>
* Symlink destinations in FTP listings
* @SQUID_PTHREAD_LIB@ and not @PTHREADLIB@ when linking squid, to only
link in -lpthreads when async-io is used.
* --enable-kill-parent-hack instead of --enable-kill-parent
New changes
* -D_REENTRANT when compiling with pthreads (--enable-async-io)
* Disable use of SIGUSR1,2 when using linuxthreads (-lpthreads on linux)
linuxthreads uses these two signals internally, since there is no
other available signals to use..
wessels [Wed, 7 Jan 1998 01:12:22 +0000 (01:12 +0000)]
Fixed up 'fooConnectionsClose()' functions. created icpConnectionsClose()
and clientHttpConnectionsClose(). For the UDP sockets, fixed a
bug which caused us to try closing the same FD twice.
wessels [Tue, 6 Jan 1998 07:27:40 +0000 (07:27 +0000)]
From: Henrik Nordstrom <hno@hem.passagen.se>
Here is one big patch, with all the changes I have sent for beta8 that
was not in beta10 and some new ones.
Added remaining options to configure
--enable-new-storekey=[sha|md5(|url)] (was --enable-hashkey)
--enable-acltree
--enable-icmp
--enable-delay-hack
--enable-useragent-log
--enable-kill-parent (this should be named -hack)
--enable-snmp
--enable-time-hack
--enable-cachemgr-hostname[=hostname] (new)
--enable-arp-acl (new)
Added Doug Lea malloc-2.6.4 to the distribution, so that people easily
can try a decent malloc package if they syspect their malloc is broken.
--enable-dlmalloc
Let configure determine witch parts that needs to be compiled,
instead of wrapping the sourcefiles in #ifdef
Moved all the --enable... to the beginning of configure.
Deleted src/options.h. This does NOT work well together with autoconf. I
have instead moved the comments to acconfig.h, and added a small header
with some instructions on how the thing can be configured (all is
visible in include/autoconfig.h[.in]).
Some malloc()/free() calls replaced with x-versions.
Made XMALLOC_DEBUG_COUNT working again. Requires a small stub function
for client and cachemgr.cgi (lib/stub_memaccount.c).
wessels [Mon, 5 Jan 1998 07:45:43 +0000 (07:45 +0000)]
- Changed algorithm for determining alive/dead state of peers.
Instead of using a fixed number of unacknowledged ICP replies,
it is now based on timeouts. If there are no ICP replies
received from a peer within 'dead_peer_timeout' seconds, then
we call it dead.
- Added calls to getCurrentTime() in comm_{select,poll}_incoming().
- Fixed shutdown bug when the incoming and outgoing ICP socket is
the same file descriptor.
wessels [Sat, 3 Jan 1998 12:27:17 +0000 (12:27 +0000)]
We were erroneously assuming that non-200 replies would have a content-length
if there were a reply body. RFC 2068 does not require this. If there is
no content-length, then we can't have a persistent connection.
wessels [Sat, 3 Jan 1998 05:03:40 +0000 (05:03 +0000)]
- Fixed some dnsserver-related reconfigure bugs. Need to
use cbdataLock, etc in fqdncache.c. Also don't want to
use ipcacheQueueDrain() and fqdncacheQueueDrain().
wessels [Sat, 3 Jan 1998 01:15:32 +0000 (01:15 +0000)]
From: "Michael O'Reilly" <michael@metal.iinet.net.au>
here's a patch to fix it. (The threads library is closing FD 0 for
some reason on the fork(). It's a bug in the threads library, but this
is a work around.. )
wessels [Sat, 3 Jan 1998 01:04:21 +0000 (01:04 +0000)]
Tail-chasing because struct rusage not defined on Solaris. The real
problem was 'typedef void struct' instead of 'typedef struct'. However,
we also now have a configure test for 'struct rusage' instead of
just using HAVE_GETRUSAGE.
wessels [Thu, 1 Jan 1998 12:48:38 +0000 (12:48 +0000)]
- Fix bug from Henrik's patch. We can't set the FD timeout after
calling clientReadRequest() because the FD might be closed by then.
- Add an assertion in commSetTimeout() that the FD be open.
wessels [Thu, 1 Jan 1998 07:05:52 +0000 (07:05 +0000)]
From: Henrik Nordstrom <hno@hem.passagen.se>
The client request processing (with this patch) is as follows:
1. Read request data from the client into a buffer
2. If the queue of pending objects is less than 2, then process the
buffer and queue objects for delivery.
3. Immediately restart request processing when a object is delivered,
since we might have read additional requests into the buffer.
wessels [Thu, 1 Jan 1998 06:55:12 +0000 (06:55 +0000)]
From: Henrik Nordstrom <hno@hem.passagen.se>
strdup on the request buffer is not a great idea
* The buffer can contain NULL bytes.
* Unneded overhead
memmove does the job much better, and without corrupting the data on the
way.