r804 - trunk/varnish-cache

des at projects.linpro.no des at projects.linpro.no
Fri Aug 11 10:41:23 CEST 2006


Author: des
Date: 2006-08-11 10:41:23 +0200 (Fri, 11 Aug 2006)
New Revision: 804

Added:
   trunk/varnish-cache/ChangeLog
Log:
Regenerate.


Added: trunk/varnish-cache/ChangeLog
===================================================================
--- trunk/varnish-cache/ChangeLog	2006-08-11 08:40:25 UTC (rev 803)
+++ trunk/varnish-cache/ChangeLog	2006-08-11 08:41:23 UTC (rev 804)
@@ -0,0 +1,6806 @@
+2006-08-11 08:40  des
+
+ * trunk/varnish-cache/svn2cl.xsl:
+
+   Widen left and right margins, and add a blank line between the paths and
+   the message.
+
+2006-08-11 08:35  des
+
+ * trunk/varnish-cache/svn2cl.xsl:
+
+   Print the message separately from the paths to avoid strange wrapping.
+
+2006-08-11 08:34  des
+
+ * trunk/varnish-cache/svn2cl.xsl:
+
+   This is the XSL stylesheet used to generate the ChangeLog.
+
+2006-08-11 08:25  des
+
+ * trunk/varnish-cache/Makefile.am:
+
+   Include LICENSE and autogen.sh in the dist tarball.
+
+2006-08-11 08:25  des
+
+ * trunk/varnish-cache/lib/libcompat/Makefile.am:
+
+   Don't install libcompat.a.
+
+2006-08-11 08:24  des
+
+ * trunk/varnish-cache/INSTALL, trunk/varnish-cache/README:
+
+   Add a README and installation instructions.
+
+2006-08-11 07:35  phk
+
+ * trunk/varnish-cache/include/http_headers.h:
+
+   Don't filter Cache-Control out in replies from backend.
+
+2006-08-11 07:35  phk
+
+ * trunk/varnish-cache/bin/varnishd/tcp.c:
+
+   Fix protocol family selection logic to also work on
+   a FreeBSD machine with now IPv6.
+   
+   Remember to also free the addrinfo in case of success.
+
+2006-08-11 07:33  phk
+
+ * trunk/varnish-cache/bin/varnishd/varnishd.c:
+
+   Bail if we don't get a listening socket.
+
+2006-08-11 07:12  phk
+
+ * trunk/varnish-cache/bin/varnishd/mgt_vcc.c:
+
+   Missed one: Only include compat headers if necessary
+
+2006-08-11 07:11  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache_acceptor.c,
+   trunk/varnish-cache/bin/varnishd/flint.lnt,
+   trunk/varnish-cache/bin/varnishd/flint.sh,
+   trunk/varnish-cache/bin/varnishd/mgt_child.c,
+   trunk/varnish-cache/bin/varnishd/mgt_cli.c,
+   trunk/varnish-cache/bin/varnishd/storage_file.c,
+   trunk/varnish-cache/bin/varnishd/tcp.c:
+
+   Pull in ../../config.h when running flexelint.
+   
+   Only include compat headers if we need them.
+
+2006-08-11 07:03  phk
+
+ * trunk/varnish-cache/bin/varnishd/mgt_cli.c:
+
+   Fix indentation
+
+2006-08-11 07:02  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache_acceptor.c:
+
+   Remove unused variable.
+
+2006-08-11 07:01  phk
+
+ * trunk/varnish-cache/bin/varnishd/flint.sh:
+
+   Point at KQUEUE version of acceptor by default.
+
+2006-08-11 07:01  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache_pass.c:
+
+   Fix an assert so it actually has a chance of firing: (an unsigned is
+   always >= 0)
+
+2006-08-10 13:03  des
+
+ * trunk/varnish-cache/bin/varnishd/cache_pass.c:
+
+   Rewrite pass_chunked().
+
+2006-08-10 11:48  andersb
+
+ * trunk/varnish-cache/bin/varnishncsa/varnishncsa.c:
+
+   Got the requesttime right this time.
+   
+   I am noticing free()'s that are freeing empty variables/pointers. Have
+   to find where is happens.
+   Also noticing IP adresses not set correctly.
+   
+   Still load of debugcode.
+
+2006-08-10 11:10  andersb
+
+ * trunk/varnish-cache/bin/varnishncsa/varnishncsa.c:
+
+   Updated to work with new inner workings (ReqStart, ReqEnd, sbuf
+   replacement etc).
+   
+   Code now compiles.
+
+2006-08-10 08:56  des
+
+ * trunk/varnish-cache/bin/varnishd/tcp.c:
+
+   FreeBSD needs <netinet/in.h> for IPPROTO_IPV6 and IPV6_V6ONLY.
+
+2006-08-10 07:38  andersb
+
+ * trunk/varnish-cache/bin/varnishncsa/varnishncsa.c:
+
+   Added some more meat to the program. Loads of debug code still on.
+   
+   Next step is to add the correct time. It's a bit tricky, and I haven't
+   gotten it right just yet.
+
+2006-08-09 14:49  des
+
+ * trunk/varnish-cache/bin/varnishd/cache_acceptor.c,
+   trunk/varnish-cache/configure.ac:
+
+   Add an epoll()-based acceptor for Linux 2.6. Simple empirical tests
+   indicate
+   that epoll() performs significantly better than poll() (less CPU usage).
+
+2006-08-09 12:38  des
+
+ * trunk/varnish-cache/bin/varnishd/cache_center.c:
+
+   Clear reference to backend when we release our VCL reference.
+
+2006-08-09 11:24  des
+
+ * trunk/varnish-cache/bin/varnishd/cache_vrt.c,
+   trunk/varnish-cache/include/vcl_returns.h,
+   trunk/varnish-cache/include/vrt_obj.h,
+   trunk/varnish-cache/lib/libvcl/vcc_compile.c,
+   trunk/varnish-cache/lib/libvcl/vcc_gen_obj.tcl,
+   trunk/varnish-cache/lib/libvcl/vcc_obj.c:
+
+   Add support for using separate backends for separate virtual hosts:
+   
+   - remove the obj.backend variable, which is not connected to anything.
+   - define a req.backend variable and implement l/r functions for it
+   - complete / correct support for setting / comparing backend values
+
+2006-08-09 11:22  des
+
+ * trunk/varnish-cache/bin/varnishd/cache.h,
+   trunk/varnish-cache/bin/varnishd/cache_http.c:
+
+   Cosmetic: redefine HTTP_HDR_* as an enum and rename MAX_HTTP_HDRS to
+   HTTP_HDR_MAX.
+
+2006-08-09 09:36  des
+
+ * trunk/varnish-cache/bin/varnishd/cache_acceptor.c,
+   trunk/varnish-cache/bin/varnishd/heritage.h,
+   trunk/varnish-cache/bin/varnishd/tcp.c:
+
+   Rewrite open_tcp(): use only one listening socket. Try for a combined
+   IPv6 / IPv4 socket; if IPv6 is not available, fall back to an IPv4 socket.
+
+2006-08-08 14:52  des
+
+ * trunk/varnish-cache/lib/libvarnishapi/shmlog.c:
+
+   While FreeBSD defaults to MAP_SHARED, Linux requires either MAP_SHARED or
+   MAP_PRIVATE to be specified. Do so.
+
+2006-08-08 14:00  des
+
+ * trunk/varnish-cache/bin/varnishd/Makefile.am,
+   trunk/varnish-cache/configure.ac:
+
+   Autodetect the need to link against libdl for dlopen().
+
+2006-08-08 12:57  des
+
+ * trunk/varnish-cache/bin/varnishd/mgt_child.c,
+   trunk/varnish-cache/configure.ac,
+   trunk/varnish-cache/include/Makefile.am,
+   trunk/varnish-cache/include/compat/setproctitle.h,
+   trunk/varnish-cache/lib/libcompat/Makefile.am,
+   trunk/varnish-cache/lib/libcompat/setproctitle.c:
+
+   Add a setproctitle() stub to libcompat.
+
+2006-08-08 12:57  des
+
+ * trunk/varnish-cache/bin/varnishd/cache_acceptor.c:
+
+   #include "compat/srandomdev.h" for srandomdev()
+
+2006-08-08 12:55  des
+
+ * trunk/varnish-cache/include/compat/vis.h,
+   trunk/varnish-cache/lib/libcompat/vis.c:
+
+   Expand keywords.
+
+2006-08-08 12:46  des
+
+ * trunk/varnish-cache/bin/varnishd/storage_file.c,
+   trunk/varnish-cache/configure.ac:
+
+   #include <sys/vfs.h> for fstatfs if it is available.
+
+2006-08-08 12:45  des
+
+ * trunk/varnish-cache/configure.ac:
+
+   Now that we define _GNU_SOURCE, the asprintf() / vasprintf() hack is no
+   longer required.
+
+2006-08-08 12:42  des
+
+ * trunk/varnish-cache/configure.ac:
+
+   Defining _GNU_SOURCE gives us native asprintf() and strptime() on glibc
+   systems, and has no effect on FreeBSD.
+
+2006-08-08 12:31  des
+
+ * trunk/varnish-cache/bin/varnishlog/Makefile.am,
+   trunk/varnish-cache/bin/varnishlog/varnishlog.c,
+   trunk/varnish-cache/bin/varnishncsa/Makefile.am,
+   trunk/varnish-cache/bin/varnishncsa/varnishncsa.c,
+   trunk/varnish-cache/bin/varnishstat/Makefile.am,
+   trunk/varnish-cache/bin/varnishtop/Makefile.am,
+   trunk/varnish-cache/bin/varnishtop/varnishtop.c,
+   trunk/varnish-cache/configure.ac,
+   trunk/varnish-cache/include/Makefile.am,
+   trunk/varnish-cache/include/compat/vis.h,
+   trunk/varnish-cache/lib/libcompat/Makefile.am,
+   trunk/varnish-cache/lib/libcompat/vis.c:
+
+   Bring in FreeBSD's version of vis(3), strvis(3) and strvisx(3).
+
+2006-08-08 12:15  des
+
+ * trunk/varnish-cache/configure.ac,
+   trunk/varnish-cache/include/Makefile.am,
+   trunk/varnish-cache/include/compat/srandomdev.h,
+   trunk/varnish-cache/lib/libcompat/Makefile.am,
+   trunk/varnish-cache/lib/libcompat/srandomdev.c:
+
+   Add a simple srandomdev() implementation inspired by the one in FreeBSD.
+
+2006-08-08 09:15  des
+
+ * trunk/varnish-cache/bin/varnishd/cache_acceptor.c:
+
+   The correct header for poll() is <poll.h>, not <sys/poll.h> like the Linux
+   man page says (poll() is an XSI extension in SUSv[23])
+
+2006-08-08 07:47  des
+
+ * trunk/varnish-cache/bin/varnishd/cache_acceptor.c,
+   trunk/varnish-cache/configure.ac:
+
+   Autodetect the availability of kqueue() and / or poll().
+
+2006-08-08 07:47  des
+
+ * trunk/varnish-cache/bin/varnishstat/varnishstat.c:
+
+   #include "libvarnish.h" for varnish_version().
+
+2006-08-08 07:36  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache.h,
+   trunk/varnish-cache/bin/varnishd/cache_pool.c,
+   trunk/varnish-cache/bin/varnishd/cache_response.c:
+
+   Add back sendfile support (under #ifdef HAVE_SENDFILE) but don't engage
+   it for small objects on the suspicion that it has highish setup cost.
+
+2006-08-08 07:17  des
+
+ * trunk/varnish-cache/bin/varnishd/mgt_cli.c,
+   trunk/varnish-cache/bin/varnishd/mgt_vcc.c,
+   trunk/varnish-cache/bin/varnishd/storage_file.c,
+   trunk/varnish-cache/bin/varnishd/tcp.c,
+   trunk/varnish-cache/include/Makefile.am,
+   trunk/varnish-cache/include/compat,
+   trunk/varnish-cache/include/compat.h,
+   trunk/varnish-cache/include/compat/asprintf.h,
+   trunk/varnish-cache/include/compat/strlcat.h,
+   trunk/varnish-cache/include/compat/strlcpy.h,
+   trunk/varnish-cache/include/compat/vasprintf.h,
+   trunk/varnish-cache/lib/libcompat/asprintf.c,
+   trunk/varnish-cache/lib/libcompat/strlcat.c,
+   trunk/varnish-cache/lib/libcompat/strlcpy.c,
+   trunk/varnish-cache/lib/libcompat/vasprintf.c,
+   trunk/varnish-cache/lib/libvcl/vcc_compile.c:
+
+   Split compat.h into one header per function to avoid issues with e.g. the
+   vasprintf() prototype needing <stdarg.h> even when it isn't used.
+
+2006-08-08 07:15  des
+
+ * trunk/varnish-cache/bin/varnishncsa/Makefile.am,
+   trunk/varnish-cache/bin/varnishstat/Makefile.am:
+
+   varnish{ncsa,stat} also need librt.
+
+2006-08-08 07:03  des
+
+ * trunk/varnish-cache/bin/varnishd/Makefile.am,
+   trunk/varnish-cache/bin/varnishd/hash_classic.c,
+   trunk/varnish-cache/configure.ac:
+
+   Attempt to detect the availability of RSA's MD5 implementation, and the
+   need to link against libmd to get it.
+   Attempt to detect the need for linking against librt to get
+   clock_gettime().
+
+2006-08-08 07:01  phk
+
+ * trunk/varnish-cache/bin/varnishd/hash_classic.c:
+
+   Fix braino
+
+2006-08-08 06:39  phk
+
+ * trunk/varnish-cache/bin/varnishd/hash_classic.c:
+
+   Default to 4096 buckets and 256 mutexes
+
+2006-08-08 06:38  phk
+
+ * trunk/varnish-cache/bin/varnishd/hash_classic.c:
+
+   Use crc32 hash by default, MD5 is a compile time option
+
+2006-08-08 06:37  phk
+
+ * trunk/varnish-cache/bin/varnishd/flint.lnt:
+
+   lbv_assert never returns
+
+2006-08-07 21:08  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache_acceptor.c,
+   trunk/varnish-cache/bin/varnishd/varnishd.c,
+   trunk/varnish-cache/lib/libvcl/vcc_compile.c,
+   trunk/varnish-cache/lib/libvcl/vcc_token.c:
+
+   64bit changes
+
+2006-08-07 21:01  phk
+
+ * trunk/varnish-cache/configure.ac:
+
+   Add -Wformat and remove -fno-inline which disables it.
+
+2006-08-07 21:01  phk
+
+ * trunk/varnish-cache/lib/libvarnish/assert.c:
+
+   Fix printf format error
+
+2006-08-07 20:50  phk
+
+ * trunk/varnish-cache/bin/varnishncsa/varnishncsa.c,
+   trunk/varnish-cache/configure.ac:
+
+   Update to new shmlog tag
+
+2006-08-07 20:47  phk
+
+ * trunk/varnish-cache/lib/libvcl/vcc_acl.c,
+   trunk/varnish-cache/lib/libvcl/vcc_compile.c,
+   trunk/varnish-cache/lib/libvcl/vcc_priv.h,
+   trunk/varnish-cache/lib/libvcl/vcc_token.c:
+
+   Eliminate use of extensible printf
+
+2006-08-07 20:24  phk
+
+ * trunk/varnish-cache/bin/varnishd/mgt_child.c,
+   trunk/varnish-cache/bin/varnishd/mgt_cli.c,
+   trunk/varnish-cache/bin/varnishd/varnishd.c:
+
+   Improve the "-d" and "-d -d" facilities.
+   
+   When we close a CLI and it had fd# 0 and/or fd#1, reopen these
+   as /dev/null so the will not be reused for the CLI pipe to the
+   child on next restart, otherwise stdout/stderr output from the
+   manager would get sent there and confuse the clients CLI reader.
+   
+   Don't double free a pointer to the CLI buffer.
+   
+   Accept non-zero results from cli_readres() errors are non-fatal.
+   
+   Use stderr more consistently for manager debugging.
+
+2006-08-07 18:33  phk
+
+ * trunk/varnish-cache/bin/varnishd/varnishd.c:
+
+   An assert to catch silly errors.
+
+2006-08-07 17:27  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache_acceptor.c,
+   trunk/varnish-cache/bin/varnishd/cache_center.c,
+   trunk/varnish-cache/include/shmlog_tags.h:
+
+   Rename SHMlog tags for consistency
+   XID -> ReqStart
+   ReqServTime -> ReqEnd
+
+2006-08-07 17:18  phk
+
+ * trunk/varnish-cache/bin/varnishd/varnishd.c:
+
+   Remove printf extensions used for development debugging
+
+2006-08-07 17:18  phk
+
+ * trunk/varnish-cache/include/libvarnish.h:
+
+   Make assert do the right thing
+
+2006-08-07 17:15  phk
+
+ * trunk/varnish-cache/lib/libvcl/vcc_token.c:
+
+   Clean up #includes
+
+2006-08-07 17:10  phk
+
+ * trunk/varnish-cache/include/libvarnish.h,
+   trunk/varnish-cache/lib/libvarnish/assert.c:
+
+   Call __assert() lbv_assert() instead.
+
+2006-08-07 17:08  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache_acceptor.c,
+   trunk/varnish-cache/bin/varnishd/cache_backend.c,
+   trunk/varnish-cache/bin/varnishd/cache_expire.c,
+   trunk/varnish-cache/bin/varnishd/cache_fetch.c,
+   trunk/varnish-cache/bin/varnishd/cache_hash.c,
+   trunk/varnish-cache/bin/varnishd/cache_pool.c,
+   trunk/varnish-cache/bin/varnishd/cache_response.c,
+   trunk/varnish-cache/bin/varnishd/cache_vcl.c,
+   trunk/varnish-cache/bin/varnishd/hash_simple_list.c,
+   trunk/varnish-cache/bin/varnishd/rfc2616.c,
+   trunk/varnish-cache/lib/libvarnish/assert.c:
+
+   quench warnings related to libvarnish.h
+
+2006-08-07 16:45  des
+
+ * trunk/varnish-cache/configure.ac:
+
+   Don't trust the documentation - when it says "additional headers", it
+   actually means "additional code to place before main() in the test program"
+
+2006-08-07 16:42  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache.h,
+   trunk/varnish-cache/bin/varnishd/cache_session.c,
+   trunk/varnish-cache/bin/varnishd/hash_classic.c,
+   trunk/varnish-cache/bin/varnishd/mgt.h,
+   trunk/varnish-cache/bin/varnishd/mgt_child.c,
+   trunk/varnish-cache/bin/varnishd/mgt_cli.c,
+   trunk/varnish-cache/bin/varnishd/mgt_event.c,
+   trunk/varnish-cache/bin/varnishd/mgt_vcc.c,
+   trunk/varnish-cache/bin/varnishd/shmlog.c,
+   trunk/varnish-cache/bin/varnishd/storage_file.c,
+   trunk/varnish-cache/bin/varnishd/tcp.c,
+   trunk/varnish-cache/bin/varnishd/varnishd.c,
+   trunk/varnish-cache/bin/varnishlog/varnishlog.c,
+   trunk/varnish-cache/bin/varnishncsa/varnishncsa.c,
+   trunk/varnish-cache/bin/varnishtester/varnishtester.c,
+   trunk/varnish-cache/bin/varnishtop/varnishtop.c,
+   trunk/varnish-cache/include/libvarnish.h,
+   trunk/varnish-cache/lib/libvarnish/Makefile.am,
+   trunk/varnish-cache/lib/libvarnish/argv.c,
+   trunk/varnish-cache/lib/libvarnish/assert.c:
+
+   Add our own assert in libvarnish.h
+   
+   Include libvarnish.h from cache.h and mgt.h
+
+2006-08-07 16:29  des
+
+ * trunk/varnish-cache/bin/varnishlog/varnishlog.c,
+   trunk/varnish-cache/bin/varnishncsa/varnishncsa.c:
+
+   #include "libvarnish.h" for varnish_version().
+
+2006-08-07 16:26  des
+
+ * trunk/varnish-cache/bin/varnishd/storage_file.c,
+   trunk/varnish-cache/lib/libvcl/vcc_compile.c:
+
+   #include "compat.h" for asprintf().
+
+2006-08-07 16:24  des
+
+ * trunk/varnish-cache/bin/varnishlog/varnishlog.c,
+   trunk/varnish-cache/bin/varnishncsa/varnishncsa.c,
+   trunk/varnish-cache/bin/varnishtop/varnishtop.c,
+   trunk/varnish-cache/lib/libvcl/vcc_acl.c,
+   trunk/varnish-cache/lib/libvcl/vcc_compile.c,
+   trunk/varnish-cache/lib/libvcl/vcc_token.c:
+
+   vsb.h is not a system header.
+
+2006-08-07 16:23  des
+
+ * trunk/varnish-cache/bin/varnishtop/varnishtop.c:
+
+   #include "libvarnish.h" for varnish_version().
+
+2006-08-07 16:23  des
+
+ * trunk/varnish-cache/bin/varnishd/mgt_vcc.c:
+
+   #include "compat.h" for asprintf(). Sort includes.
+
+2006-08-07 16:20  des
+
+ * trunk/varnish-cache/bin/varnishd/varnishd.c:
+
+   Define INFTIM if it isn't already.
+
+2006-08-07 16:20  des
+
+ * trunk/varnish-cache/bin/varnishd/storage_file.c:
+
+   Spell SIZE_MAX correctly.
+
+2006-08-07 16:17  des
+
+ * trunk/varnish-cache/bin/varnishd/mgt_event.c:
+
+   Define INFTIM if it isn't already.
+
+2006-08-07 16:17  des
+
+ * trunk/varnish-cache/bin/varnishd/mgt_cli.c:
+
+   #include <compat.h> for asprintf().
+
+2006-08-07 16:15  phk
+
+ * trunk/varnish-cache/bin/varnishd/mgt_cli.c:
+
+   Handle CLI trouble with the childproc
+
+2006-08-07 16:14  phk
+
+ * trunk/varnish-cache/include/cli.h,
+   trunk/varnish-cache/lib/libvarnish/cli_common.c:
+
+   Add CLIS_COMMS errno (400) and return an error text as well.
+
+2006-08-07 16:11  des
+
+ * trunk/varnish-cache/bin/varnishd/tcp.c, trunk/varnish-cache/configure.ac:
+
+   Check whether we have accept filters before trying to use them.
+
+2006-08-07 16:05  phk
+
+ * trunk/varnish-cache/lib/libvarnish/cli_common.c:
+
+   Handle read errors on the cli pipes.
+
+2006-08-07 15:54  des
+
+ * trunk/varnish-cache/configure.ac:
+
+   Improve descriptions of HAVE_ASPRINTF / HAVE_VASPRINTF.
+
+2006-08-07 15:54  phk
+
+ * trunk/varnish-cache/lib/libvarnish/vsb.c:
+
+   Quench warnings.
+
+2006-08-07 15:51  des
+
+ * trunk/varnish-cache/include/compat.h,
+   trunk/varnish-cache/lib/libcompat/vasprintf.c:
+
+   My idiocy knows no bounds. Make sure this actually builds.
+
+2006-08-07 15:47  des
+
+ * trunk/varnish-cache/configure.ac:
+
+   Improve detection of the presence and usability of asprintf() /
+   vasprintf().
+
+2006-08-07 15:42  des
+
+ * trunk/varnish-cache/include/compat.h:
+
+   paste-o.
+
+2006-08-07 15:24  des
+
+ * trunk/varnish-cache/configure.ac,
+   trunk/varnish-cache/include/compat.h,
+   trunk/varnish-cache/lib/libcompat/Makefile.am,
+   trunk/varnish-cache/lib/libcompat/asprintf.c,
+   trunk/varnish-cache/lib/libcompat/strlcat.c,
+   trunk/varnish-cache/lib/libcompat/strlcpy.c,
+   trunk/varnish-cache/lib/libcompat/vasprintf.c:
+
+   Add implementations of asprintf(3) and vasprintf(3).
+
+2006-08-07 15:09  des
+
+ * trunk/varnish-cache/include/libvarnish.h:
+
+   Relucantly include <time.h> for time_t. We'll have to clean up our header
+   files at some point.
+
+2006-08-07 15:08  des
+
+ * trunk/varnish-cache/bin/varnishd/shmlog.c:
+
+   Remove redundant definition of __assert().
+
+2006-08-07 15:00  des
+
+ * trunk/varnish-cache/include/libvarnish.h:
+
+   TIM_{format,parse}() are used unconditionally, so declare them
+   unconditionally.
+
+2006-08-07 15:00  des
+
+ * trunk/varnish-cache/bin/varnishd/cache.h:
+
+   Sort includes, add <stdint.h> for uint64_t.
+
+2006-08-07 14:55  des
+
+ * trunk/varnish-cache/lib/libvcl/vcc_compile.c:
+
+   Eliminate __unused.
+
+2006-08-07 14:52  des
+
+ * trunk/varnish-cache/lib/libvarnish/cli_common.c:
+
+   Sort includes, add <stdint.h> for uintptr_t.
+
+2006-08-07 12:42  des
+
+ * trunk/varnish-cache/lib/libvarnish/vsb.3:
+
+   Define str-Lb-libvarnish so ".Lb libvarnish" will work. This should be in
+   a shared file somewhere with some soelim magic in the Makefile, but don't
+   bother right now - the file isn't installed anyway.
+
+2006-08-07 12:35  des
+
+ * trunk/varnish-cache/bin/varnishd/varnishd.c,
+   trunk/varnish-cache/bin/varnishlog/varnishlog.c,
+   trunk/varnish-cache/bin/varnishncsa/Makefile.am,
+   trunk/varnish-cache/bin/varnishncsa/varnishncsa.c,
+   trunk/varnish-cache/bin/varnishstat/Makefile.am,
+   trunk/varnish-cache/bin/varnishstat/varnishstat.c,
+   trunk/varnish-cache/bin/varnishtop/varnishtop.c,
+   trunk/varnish-cache/include/libvarnish.h,
+   trunk/varnish-cache/lib/libvarnish/Makefile.am,
+   trunk/varnish-cache/lib/libvarnish/version.c:
+
+   Add a -V option (display version and exit) to all programs.
+
+2006-08-07 11:09  des
+
+ * trunk/varnish-cache/bin/varnishd/Makefile.am,
+   trunk/varnish-cache/bin/varnishd/cache.h,
+   trunk/varnish-cache/bin/varnishd/cache_cli.c,
+   trunk/varnish-cache/bin/varnishd/cache_response.c,
+   trunk/varnish-cache/bin/varnishd/cache_vrt_re.c,
+   trunk/varnish-cache/bin/varnishd/flint.lnt,
+   trunk/varnish-cache/bin/varnishd/mgt_cli.c,
+   trunk/varnish-cache/bin/varnishd/mgt_vcc.c,
+   trunk/varnish-cache/bin/varnishd/varnishd.c,
+   trunk/varnish-cache/bin/varnishlog/Makefile.am,
+   trunk/varnish-cache/bin/varnishlog/varnishlog.c,
+   trunk/varnish-cache/bin/varnishncsa/Makefile.am,
+   trunk/varnish-cache/bin/varnishncsa/varnishncsa.c,
+   trunk/varnish-cache/bin/varnishtop/Makefile.am,
+   trunk/varnish-cache/bin/varnishtop/varnishtop.c,
+   trunk/varnish-cache/configure.ac,
+   trunk/varnish-cache/include/Makefile.am,
+   trunk/varnish-cache/include/cli_common.h,
+   trunk/varnish-cache/include/libvcl.h,
+   trunk/varnish-cache/include/sbuf.h, trunk/varnish-cache/include/vrt.h,
+   trunk/varnish-cache/include/vsb.h,
+   trunk/varnish-cache/lib/Makefile.am, trunk/varnish-cache/lib/libsbuf,
+   trunk/varnish-cache/lib/libvarnish/Makefile.am,
+   trunk/varnish-cache/lib/libvarnish/cli_common.c,
+   trunk/varnish-cache/lib/libvarnish/vsb.3,
+   trunk/varnish-cache/lib/libvarnish/vsb.c,
+   trunk/varnish-cache/lib/libvcl/vcc_acl.c,
+   trunk/varnish-cache/lib/libvcl/vcc_compile.c,
+   trunk/varnish-cache/lib/libvcl/vcc_compile.h,
+   trunk/varnish-cache/lib/libvcl/vcc_fixed_token.c,
+   trunk/varnish-cache/lib/libvcl/vcc_token.c:
+
+   Fold libsbuf into libvarnish, with s/sbuf/vsb/g.
+
+2006-08-07 10:46  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache_pipe.c:
+
+   Timeout pipe connections after 600 seconds.
+
+2006-08-07 10:40  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache_acceptor.c:
+
+   Use a 600 second timeout, 120 second is too little.
+
+2006-08-07 09:21  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache_acceptor.c:
+
+   Set SO_SNDTIMEO to 120 seconds
+
+2006-08-07 08:42  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache.h,
+   trunk/varnish-cache/bin/varnishd/cache_response.c,
+   trunk/varnish-cache/bin/varnishd/stevedore.h,
+   trunk/varnish-cache/bin/varnishd/storage_file.c,
+   trunk/varnish-cache/bin/varnishd/storage_malloc.c:
+
+   First step of slow client handling: Lose the stevedore function
+   for sending and instead record the fd+off_t in the storage object.
+   
+   This eliminates sendfile from storage_file.c, next step is to put
+   it back in the generic code in cache_response.c
+
+2006-08-07 05:52  des
+
+ * trunk/varnish-cache/bin/varnishd/cache_cli.c,
+   trunk/varnish-cache/bin/varnishd/mgt_cli.c,
+   trunk/varnish-cache/bin/varnishd/mgt_vcc.c,
+   trunk/varnish-cache/bin/varnishd/varnishd.c,
+   trunk/varnish-cache/lib/libvarnish/cli_common.c:
+
+   Update #include directives.
+
+2006-08-07 05:49  des
+
+ * trunk/varnish-cache/bin/varnishd/cache_cli.c,
+   trunk/varnish-cache/bin/varnishd/mgt_cli.c,
+   trunk/varnish-cache/bin/varnishd/mgt_cli.h,
+   trunk/varnish-cache/bin/varnishd/mgt_event.c,
+   trunk/varnish-cache/bin/varnishd/mgt_vcc.c,
+   trunk/varnish-cache/include/binary_heap.h,
+   trunk/varnish-cache/include/cli_priv.h,
+   trunk/varnish-cache/include/miniobj.h,
+   trunk/varnish-cache/include/stats.h,
+   trunk/varnish-cache/include/varnish/assert.h,
+   trunk/varnish-cache/include/vrt.h,
+   trunk/varnish-cache/lib/libvarnish/argv.c,
+   trunk/varnish-cache/lib/libvarnish/binary_heap.c,
+   trunk/varnish-cache/lib/libvarnish/cli.c,
+   trunk/varnish-cache/lib/libvarnish/time.c,
+   trunk/varnish-cache/lib/libvarnishapi/varnish_debug.c,
+   trunk/varnish-cache/lib/libvarnishapi/varnish_log.c,
+   trunk/varnish-cache/lib/libvarnishapi/varnish_util.c:
+
+   Expand keywords.
+
+2006-08-07 05:49  des
+
+ * trunk/varnish-cache/bin/varnishd/Makefile.am,
+   trunk/varnish-cache/bin/varnishd/common_cli.c,
+   trunk/varnish-cache/bin/varnishd/common_cli.h,
+   trunk/varnish-cache/include/Makefile.am,
+   trunk/varnish-cache/include/cli_common.h,
+   trunk/varnish-cache/lib/libvarnish/Makefile.am,
+   trunk/varnish-cache/lib/libvarnish/cli_common.c:
+
+   Move common_cli.[ch] out of varnishd, and rename them to cli_common.[ch].
+
+2006-08-07 05:47  des
+
+ * trunk/varnish-cache/bin/varnishd/Makefile.am:
+
+   List headers in noinst_HEADERS instead of SOURCES.
+
+2006-08-07 00:21  andersb
+
+ * trunk/varnish-cache/bin/varnishncsa/varnishncsa.c:
+
+   Fresh start after study of output from varnishlog -o.
+   
+   First off is IP adress logging and clearing.
+
+2006-08-06 17:00  des
+
+ * trunk/varnish-cache:
+
+   Add compile to svn:ignore.
+
+2006-08-06 16:55  phk
+
+ * trunk/varnish-cache/bin/varnishlog/varnishlog.c:
+
+   Make
+   -w -
+   work as expected.
+
+2006-08-06 15:02  des
+
+ * trunk/varnish-cache/bin/varnishlog/Makefile.am,
+   trunk/varnish-cache/bin/varnishncsa/Makefile.am,
+   trunk/varnish-cache/bin/varnishstat/Makefile.am,
+   trunk/varnish-cache/bin/varnishtester/Makefile.am,
+   trunk/varnish-cache/bin/varnishtop/Makefile.am,
+   trunk/varnish-cache/lib/libcompat/Makefile.am,
+   trunk/varnish-cache/lib/libsbuf/Makefile.am,
+   trunk/varnish-cache/lib/libvarnish/Makefile.am,
+   trunk/varnish-cache/lib/libvarnishapi/Makefile.am,
+   trunk/varnish-cache/lib/libvcl/Makefile.am:
+
+   Systematically include config.h.
+
+2006-08-06 14:33  des
+
+ * trunk/varnish-cache/bin/varnishd/Makefile.am:
+
+   Forcibly include config.h.
+
+2006-08-06 13:51  des
+
+ * trunk/varnish-cache/configure.ac:
+
+   Change version to "trunk" until I can figure out a way to have it reflect
+   the current date.
+
+2006-08-06 13:49  des
+
+ * trunk/varnish-cache/configure.ac:
+
+   Include -pipe in CFLAGS.
+   Reduce optimization level to -O when debugging.
+
+2006-08-06 12:51  des
+
+ * trunk/varnish-cache:
+
+   Adjust directory properties.
+
+2006-08-06 12:49  des
+
+ * trunk/varnish-cache/bin/varnishlog,
+   trunk/varnish-cache/bin/varnishncsa,
+   trunk/varnish-cache/bin/varnishstat,
+   trunk/varnish-cache/bin/varnishtester,
+   trunk/varnish-cache/bin/varnishtop, trunk/varnish-cache/lib/libcompat,
+   trunk/varnish-cache/lib/libsbuf, trunk/varnish-cache/lib/libvcl:
+
+   Adjust directory properties.
+
+2006-08-06 12:26  des
+
+ * trunk/varnish-cache/bin/varnishd/Makefile.am,
+   trunk/varnish-cache/bin/varnishlog/Makefile.am,
+   trunk/varnish-cache/bin/varnishncsa/Makefile.am,
+   trunk/varnish-cache/bin/varnishstat/Makefile.am:
+
+   Add missing headers and man pages.
+
+2006-08-06 12:26  des
+
+ * trunk/varnish-cache/autogen.sh:
+
+   We no longer have any CONFIG_SUBDIRS.
+
+2006-08-06 12:25  des
+
+ * trunk/varnish-cache/include/Makefile.am:
+
+   Add missing headers.
+
+2006-08-06 12:23  des
+
+ * trunk/varnish-cache/Makefile.am:
+
+   Umm, *really* retire libevent.
+
+2006-08-06 12:23  des
+
+ * trunk/varnish-cache/Makefile.am, trunk/varnish-cache/configure.ac,
+   trunk/varnish-cache/contrib:
+
+   Retire libevent.
+
+2006-08-06 12:20  des
+
+ * trunk/varnish-cache/bin/Makefile.am, trunk/varnish-cache/configure.ac:
+
+   Fully disconnect varnishtester.
+
+2006-08-06 00:44  andersb
+
+ * trunk/varnish-cache/bin/varnishncsa/varnishncsa.c:
+
+   I have realized that I have major structure problems. I will have to
+   study varnishlog output a bit more to understand it better.
+   
+   May wanna start clean again, and use hardearned knowledge to make
+   better and more robust structure.
+
+2006-08-05 22:43  andersb
+
+ * trunk/varnish-cache/bin/varnishncsa/varnishncsa.c:
+
+   Checks show that my IP adress checker is very restrictive and probably
+   deletes other loglines. We still bleeds null lines also.
+   
+   This will have to be cleaned up.
+
+2006-08-05 22:12  andersb
+
+ * trunk/varnish-cache/bin/varnishncsa/varnishncsa.c:
+
+   Loglines with no IP should no longer appear. That also cleared all
+   lines containing a null. Not sure if my check for IP is to harsly
+   implemented and cleans to much.
+
+2006-08-05 21:35  andersb
+
+ * trunk/varnish-cache/bin/varnishncsa/varnishncsa.c:
+
+   Centralized the stringwriting at last, also started memory cleanup.
+
+2006-08-05 21:11  andersb
+
+ * trunk/varnish-cache/bin/varnishncsa/varnishncsa.c:
+
+   Added user, loginname, statuscode (200, 304 etc.), byte and referer to
+   make a logline compliant. User and loginname is hardcoded. Referer and
+   User-agen is unclean. Timecode is not working. This version leaks
+   memory bigtime, and is not ready for alpha yet.
+
+2006-08-05 20:52  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache_center.c:
+
+   For consistency: Go to deliver state instead of delivering locally.
+
+2006-08-05 18:11  phk
+
+ * trunk/varnish-cache/include/vcl.h,
+   trunk/varnish-cache/include/vcl_returns.h,
+   trunk/varnish-cache/include/vrt.h,
+   trunk/varnish-cache/lib/libvcl/vcc_compile.c,
+   trunk/varnish-cache/lib/libvcl/vcc_fixed_token.c:
+
+   Make vcl methods call their defaults as a last resort.
+   
+   Fix the location table so it knows about the default code too.
+
+2006-08-05 17:30  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache_pool.c:
+
+   And that is not a good idea either.
+
+2006-08-05 17:30  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache_pool.c:
+
+   This was not a valid test.
+
+2006-08-05 17:04  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache.h,
+   trunk/varnish-cache/bin/varnishd/cache_cli.c,
+   trunk/varnish-cache/bin/varnishd/cache_pool.c:
+
+   Add some undocumented code to look for something that worries me.
+
+2006-08-05 16:41  phk
+
+ * trunk/varnish-cache/bin/varnishd/mgt_child.c:
+
+   Issue error message for CLI::start and CLI::stop if child is
+   not in a legal state for command.
+
+2006-08-05 16:32  phk
+
+ * trunk/varnish-cache/bin/varnishd/mgt_child.c:
+
+   Also trap SIGTERM
+
+2006-08-05 16:31  phk
+
+ * trunk/varnish-cache/bin/varnishd/varnishd.c:
+
+   More work on the debug stunt
+
+2006-08-05 15:55  phk
+
+ * trunk/varnish-cache/bin/varnishd/mgt_child.c,
+   trunk/varnish-cache/bin/varnishd/mgt_vcc.c:
+
+   Plug memory leaks related to starting/stopping child.
+
+2006-08-05 15:40  phk
+
+ * trunk/varnish-cache/bin/varnishd/mgt_child.c:
+
+   Replace client_should_run with a 5 state enum to avoid races if multiple
+   CLI sources yell at the same time.
+
+2006-08-05 15:38  phk
+
+ * trunk/varnish-cache/bin/varnishd/mgt_cli.c:
+
+   Bail if the cli pipe is not ready
+
+2006-08-05 15:38  phk
+
+ * trunk/varnish-cache/bin/varnishd/varnishd.c:
+
+   Polish the debugstunt and make it possible to avoid it.
+
+2006-08-05 15:35  phk
+
+ * trunk/varnish-cache/bin/varnishd/mgt_event.c:
+
+   We don't disturb ourselves.
+
+2006-08-05 14:24  phk
+
+ * trunk/varnish-cache/bin/varnishd/common_cli.c,
+   trunk/varnish-cache/bin/varnishd/mgt.h,
+   trunk/varnish-cache/bin/varnishd/mgt_child.c,
+   trunk/varnish-cache/bin/varnishd/mgt_cli.c,
+   trunk/varnish-cache/bin/varnishd/mgt_event.c,
+   trunk/varnish-cache/bin/varnishd/mgt_vcc.c:
+
+   More defensive coding and a couple of bugs less.
+
+2006-08-05 14:22  phk
+
+ * trunk/varnish-cache/lib/libvarnish/binary_heap.c:
+
+   More defensive coding.
+
+2006-08-05 12:45  phk
+
+ * trunk/varnish-cache/bin/varnishd/common_cli.c,
+   trunk/varnish-cache/bin/varnishd/common_cli.h,
+   trunk/varnish-cache/bin/varnishd/mgt_cli.c:
+
+   Add a timeout to reads from the child CLI pipe so we don't hang
+   for ever.
+
+2006-08-05 12:24  phk
+
+ * trunk/varnish-cache/bin/varnishd/flint.lnt:
+
+   Improve.
+
+2006-08-05 12:24  phk
+
+ * trunk/varnish-cache/bin/varnishd/mgt_child.c:
+
+   Style cleanup.
+   
+   remove two unused variables.
+
+2006-08-05 12:24  phk
+
+ * trunk/varnish-cache/bin/varnishd/mgt_cli.c:
+
+   Remove unused include
+   
+   Fix function arg type
+
+2006-08-05 12:23  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache_expire.c:
+
+   Make sanity check of binheap permanent and fix style accordingly.
+
+2006-08-05 12:23  phk
+
+ * trunk/varnish-cache/bin/varnishd/common_cli.c:
+
+   Remove unused include
+   
+   free buffer on error.
+
+2006-08-05 12:22  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache_cli.c:
+
+   Make sure we don't overflow the line buffer
+   
+   Remove unused #include
+
+2006-08-05 12:20  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache.h,
+   trunk/varnish-cache/bin/varnishd/cache_vcl.c:
+
+   Remove unused "ip" from backend.
+   
+   Make VCL_Load static, and give it a NULL check.
+
+2006-08-05 12:19  phk
+
+ * trunk/varnish-cache/bin/varnishd/common_cli.h:
+
+   Cleanup unused stuff
+
+2006-08-05 12:19  phk
+
+ * trunk/varnish-cache/bin/varnishd/mgt.h:
+
+   Remove prototypes for no longer existing functions
+
+2006-08-05 12:18  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache_acceptor.c,
+   trunk/varnish-cache/bin/varnishd/cache_http.c,
+   trunk/varnish-cache/bin/varnishd/cache_main.c,
+   trunk/varnish-cache/bin/varnishd/cache_pipe.c:
+
+   Remove unused includes
+
+2006-08-05 12:17  phk
+
+ * trunk/varnish-cache/bin/varnishd/flint.sh:
+
+   don't search libevent for includes
+
+2006-08-05 12:17  phk
+
+ * trunk/varnish-cache/bin/varnishd/mgt_event.c:
+
+   style fix
+
+2006-08-05 12:16  phk
+
+ * trunk/varnish-cache/bin/varnishd/mgt_vcc.c:
+
+   Rename struct vcls to vclprog
+
+2006-08-05 11:44  phk
+
+ * trunk/varnish-cache/bin/varnishd/cli_common.c:
+
+   remove old file
+
+2006-08-05 11:16  phk
+
+ * trunk/varnish-cache/bin/varnishd/mgt.h,
+   trunk/varnish-cache/bin/varnishd/mgt_child.c,
+   trunk/varnish-cache/bin/varnishd/mgt_cli.c,
+   trunk/varnish-cache/bin/varnishd/mgt_vcc.c:
+
+   Change manager to use mgt_event.h instead of threads to be lazy thread
+   developer compatible.
+   
+   POSIX, no surprise, doesn't really tell what should happen to a threaded
+   process which forks and consequently implemenations vary somewhat,
+   from Solaris which seems to Do The Right Thing, via Linux where it
+   works "most of the time" and to FreeBSD which more or less actively
+   sabotages any such attempt.
+   
+   Grin and live with it...
+
+2006-08-05 11:13  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache_cli.c:
+
+   Remove pthread.h include, it's included in cache.h
+
+2006-08-05 11:12  phk
+
+ * trunk/varnish-cache/bin/varnishd/mgt_event.c:
+
+   Remove debugging printfs
+
+2006-08-05 11:08  phk
+
+ * trunk/varnish-cache/bin/varnishd/mgt_event.c:
+
+   More bugfixes
+
+2006-08-05 11:07  phk
+
+ * trunk/varnish-cache/lib/libvarnish/binary_heap.c:
+
+   Add assert
+
+2006-08-05 10:31  phk
+
+ * trunk/varnish-cache/bin/varnishd/mgt_event.c,
+   trunk/varnish-cache/bin/varnishd/mgt_event.h:
+
+   bugfixes
+
+2006-08-05 09:27  phk
+
+ * trunk/varnish-cache/bin/varnishd/mgt_event.c,
+   trunk/varnish-cache/bin/varnishd/mgt_event.h:
+
+   Add signal support.
+
+2006-08-05 08:49  phk
+
+ * trunk/varnish-cache/bin/varnishd/mgt_event.c,
+   trunk/varnish-cache/bin/varnishd/mgt_event.h:
+
+   bugfixes
+
+2006-08-05 08:19  phk
+
+ * trunk/varnish-cache/bin/varnishd/Makefile.am,
+   trunk/varnish-cache/bin/varnishd/mgt_event.c,
+   trunk/varnish-cache/bin/varnishd/mgt_event.h:
+
+   Add a miniature event engine based on poll(2).
+   
+   It's general enough to find other uses, but right now it's only for
+   the manager process.
+
+2006-08-05 01:17  andersb
+
+ * trunk/varnish-cache/bin/varnishncsa/varnishncsa.c:
+
+   Got the IP, Request and User-Agent sorted out. Working on the time
+
+2006-08-04 20:03  phk
+
+ * trunk/varnish-cache/lib/libvarnishapi/shmlog.c:
+
+   Initialize all directions to "opposite" for -b and -c to avoid
+   spurious first entries.
+
+2006-08-04 19:42  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache_center.c:
+
+   Use id for printing
+
+2006-08-04 19:36  phk
+
+ * trunk/varnish-cache/include/stat_field.h:
+
+   Stats field changes
+
+2006-08-04 19:36  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache.h,
+   trunk/varnish-cache/bin/varnishd/cache_acceptor.c,
+   trunk/varnish-cache/bin/varnishd/cache_backend.c,
+   trunk/varnish-cache/bin/varnishd/cache_center.c,
+   trunk/varnish-cache/bin/varnishd/cache_pass.c,
+   trunk/varnish-cache/bin/varnishd/cache_pipe.c,
+   trunk/varnish-cache/bin/varnishd/cache_response.c,
+   trunk/varnish-cache/bin/varnishd/cache_session.c:
+
+   More comprehensive performance stats and a few asserts, just in case.
+
+2006-08-04 11:10  phk
+
+ * trunk/varnish-cache/bin/varnishd/mgt.h,
+   trunk/varnish-cache/bin/varnishd/mgt_child.c,
+   trunk/varnish-cache/bin/varnishd/mgt_cli.c,
+   trunk/varnish-cache/bin/varnishd/mgt_cli.h,
+   trunk/varnish-cache/bin/varnishd/mgt_vcc.c:
+
+   Now that we keep track of loaded VCLs in the manager, we might
+   as well allow their manipulation also when the child is not
+   running.
+
+2006-08-04 10:54  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache.h,
+   trunk/varnish-cache/bin/varnishd/cache_cli.c,
+   trunk/varnish-cache/bin/varnishd/cache_vcl.c,
+   trunk/varnish-cache/bin/varnishd/mgt_cli.c,
+   trunk/varnish-cache/bin/varnishd/mgt_cli.h,
+   trunk/varnish-cache/bin/varnishd/mgt_vcc.c,
+   trunk/varnish-cache/include/cli.h, trunk/varnish-cache/include/vcl.h,
+   trunk/varnish-cache/lib/libvcl/vcc_fixed_token.c,
+   trunk/varnish-cache/lib/libvcl/vcc_gen_fixed_token.tcl:
+
+   Redo VCL program handling.
+   
+   Keep track of all loaded VCL programs in the manager and tell the
+   child to load them via VCL.
+   
+   Don't start he acceptor thread until a "start" command cones down
+   the CLI.
+   
+   XXX: Right now we leak stuff when a VCL program is dicarded
+
+2006-08-04 10:23  phk
+
+ * trunk/varnish-cache/bin/varnishd/Makefile.am,
+   trunk/varnish-cache/bin/varnishd/cache_cli.c,
+   trunk/varnish-cache/bin/varnishd/cache_main.c,
+   trunk/varnish-cache/bin/varnishd/cache_vcl.c,
+   trunk/varnish-cache/bin/varnishd/heritage.h,
+   trunk/varnish-cache/bin/varnishd/mgt.h,
+   trunk/varnish-cache/bin/varnishd/mgt_child.c,
+   trunk/varnish-cache/bin/varnishd/mgt_cli.c,
+   trunk/varnish-cache/bin/varnishd/mgt_cli.h,
+   trunk/varnish-cache/bin/varnishd/mgt_vcc.c,
+   trunk/varnish-cache/bin/varnishd/varnishd.c:
+
+   Redo our management of compiled VCL programs:
+   
+   Take default_vcl out of heritage.
+   
+   Keep track of all compiled VCL files and delete them at
+   exit.
+   
+   After starting child, use CLI to load all vcl programs
+   and then issue "start" via the CLI.
+   
+   In the cacher, don't start the acceptor until we get
+   a start command.
+
+2006-08-04 09:19  phk
+
+ * trunk/varnish-cache/bin/varnishd/Makefile.am,
+   trunk/varnish-cache/bin/varnishd/mgt.h,
+   trunk/varnish-cache/bin/varnishd/mgt_vcc.c,
+   trunk/varnish-cache/bin/varnishd/varnishd.c:
+
+   Move VCL compiler related stuff to mgt_vcc.c
+
+2006-08-04 09:06  phk
+
+ * trunk/varnish-cache/bin/varnishd/varnishd.c:
+
+   Remove old cli related stuff, it now lives elsewhere
+
+2006-08-04 09:06  phk
+
+ * trunk/varnish-cache/bin/varnishd/mgt_cli.c:
+
+   reimplement CLI stats
+
+2006-08-04 07:21  phk
+
+ * trunk/varnish-cache/bin/varnishd/mgt.h,
+   trunk/varnish-cache/bin/varnishd/mgt_child.c,
+   trunk/varnish-cache/bin/varnishd/mgt_cli.c:
+
+   Implement CLI ping in manager, this is a "per hop" command.
+   
+   Add mgt_cli_askchild() function to poke the CLI interface to
+   the child.
+   
+   Use it to ping the child every second.
+
+2006-08-04 07:20  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache_cli.c,
+   trunk/varnish-cache/bin/varnishd/common_cli.c,
+   trunk/varnish-cache/bin/varnishd/common_cli.h:
+
+   Move cli_func_ping to common_cli
+
+2006-08-04 07:19  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache_main.c:
+
+   SIGCHLD has already been taken care of earlier.
+
+2006-08-04 06:53  phk
+
+ * trunk/varnish-cache/bin/varnishd/common_cli.c,
+   trunk/varnish-cache/bin/varnishd/common_cli.h,
+   trunk/varnish-cache/bin/varnishd/mgt_cli.c,
+   trunk/varnish-cache/include/cli.h:
+
+   Change the CLI protocol in a subtle but useful way:
+   
+   The first line of the response has a fixed format ("%-3d %-8u\n")
+   and consequently fixed length (CLI_LINE0_LEN == 13).
+   
+   This makes parsing responses more efficient. Add a function
+   in common_cli to do so.
+
+2006-08-04 06:23  phk
+
+ * trunk/varnish-cache/bin/varnishd/mgt_cli.c:
+
+   (Re)Implement passthru of cli commands, we can now talk with the
+   cache process again.
+
+2006-08-04 06:21  phk
+
+ * trunk/varnish-cache/include/cli.h:
+
+   Add CLIS_CANT status code for when something is valid but currently
+   impossible.
+
+2006-08-04 06:21  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache_cli.c:
+
+   Typo: write cli result to correct pipe.
+
+2006-08-03 23:42  andersb
+
+ * trunk/varnish-cache/bin/varnishncsa/varnishncsa.c:
+
+   Placed a new sbuf_clear at a more strategic place. It got cluttered
+   when a host left without SessionClose of SessionReuse.
+
+2006-08-03 22:01  andersb
+
+ * trunk/varnish-cache/bin/varnishncsa/varnishncsa.c:
+
+   Got a workaround for IP adress fetching. If we connect logger while
+   Varnish is running, we won't catch the IP from SessionOpen since it's
+   already done that. Workaround is to catch the IP from SessionReuse if
+   IP of session is NULL
+
+2006-08-03 19:21  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache_fetch.c:
+
+   Fix copy&paste bug in fetch_chunked.
+
+2006-08-03 19:20  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache_fetch.c:
+
+   Sanitycheck that the length of an object adds up, right when we
+   fetch it.
+
+2006-08-03 11:46  phk
+
+ * trunk/varnish-cache/bin/varnishd/mgt_child.c:
+
+   Imlement stopping and restarting of child process.
+   
+   Not as useful as it will be yet, see ticket 22
+
+2006-08-03 11:45  phk
+
+ * trunk/varnish-cache/bin/varnishd/varnishd.c:
+
+   Make the pipe-stunt debug process smarter.
+
+2006-08-03 10:37  phk
+
+ * trunk/varnish-cache/bin/Makefile.am:
+
+   Take varnishtester out of the loop until it can be de-libevented
+
+2006-08-03 10:37  phk
+
+ * trunk/varnish-cache/bin/varnishd/mgt_cli.c:
+
+   Add stop command as well.
+
+2006-08-03 10:16  andersb
+
+ * trunk/varnish-cache/bin/varnishncsa/varnishncsa.c:
+
+   Think I have found a program structure that works. Filling in bits to
+   build logline.
+
+2006-08-03 09:45  phk
+
+ * trunk/varnish-cache/Makefile.am, trunk/varnish-cache/autogen.sh,
+   trunk/varnish-cache/bin/varnishtester/Makefile.am:
+
+   Remove libevent from the picture.
+
+2006-08-03 09:45  phk
+
+ * trunk/varnish-cache/bin/varnishd/Makefile.am,
+   trunk/varnish-cache/bin/varnishd/cache_cli.c,
+   trunk/varnish-cache/bin/varnishd/cache_main.c,
+   trunk/varnish-cache/bin/varnishd/cli_common.c,
+   trunk/varnish-cache/bin/varnishd/cli_event.c,
+   trunk/varnish-cache/bin/varnishd/cli_event.h,
+   trunk/varnish-cache/bin/varnishd/common_cli.c,
+   trunk/varnish-cache/bin/varnishd/common_cli.h,
+   trunk/varnish-cache/bin/varnishd/mgt.h,
+   trunk/varnish-cache/bin/varnishd/mgt_child.c,
+   trunk/varnish-cache/bin/varnishd/mgt_cli.c,
+   trunk/varnish-cache/bin/varnishd/varnishd.c:
+
+   Rip out the old CLI handling and start over, more or less.
+   
+   Still bits missing.
+
+2006-08-03 06:45  phk
+
+ * trunk/varnish-cache/bin/varnishd/Makefile.am,
+   trunk/varnish-cache/bin/varnishd/cache.h,
+   trunk/varnish-cache/bin/varnishd/cache_cli.c,
+   trunk/varnish-cache/bin/varnishd/cache_main.c,
+   trunk/varnish-cache/bin/varnishd/cli_event.h:
+
+   Rework the cache process CLI handling:
+   
+   We are only accepting CLI from the pipes in heritage, so simply
+   run a loop reading those, dispatching lines as we see them.
+   
+   Export CLI_cmds[] so that the management process can see it,
+   we might as well take advantage of the shared binary where we can.
+
+2006-08-02 22:53  andersb
+
+ * trunk/varnish-cache/bin/varnishncsa/varnishncsa.c:
+
+   Added SessionReuse so I now write a logline for SessionClose and
+   SessionReuse.
+
+2006-08-02 22:33  andersb
+
+ * trunk/varnish-cache/bin/varnishncsa/varnishncsa.c:
+
+   Starting to get the structure right (I think). Thx for the NULL on
+   each string Poul-Hennning :)
+
+2006-08-02 20:59  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache_expire.c:
+
+   Add an assert, just in case.
+
+2006-08-02 20:54  phk
+
+ * trunk/varnish-cache/lib/libvarnish/binary_heap.c:
+
+   Fix a bug when deleting items in the binheap
+
+2006-08-02 19:12  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache_session.c:
+
+   log StatAddr with fd=0 to avoid out-of-order confusion
+
+2006-08-02 18:17  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache_acceptor.c:
+
+   Allow ENOENT on removing kqueue events, a close will have drained
+   them already.
+
+2006-08-02 18:12  phk
+
+ * trunk/varnish-cache/bin/varnishd/varnishd.c:
+
+   Tell daemon(3) to not chdir in debugging mode so we can find our core
+   dumps.
+
+2006-08-02 17:45  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache_center.c:
+
+   Enter pass mode through the front door.
+
+2006-08-02 17:27  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache_center.c:
+
+   More asserts, sp->vbc this time.
+
+2006-08-02 15:55  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache_pass.c:
+
+   Remember to clear sp->vbc
+
+2006-08-02 13:28  phk
+
+ * trunk/varnish-cache/bin/varnishd/mgt_child.c,
+   trunk/varnish-cache/bin/varnishd/varnishd.c:
+
+   Don my plumbers outfit and twist a lot of pipes into shape:
+   
+   When -d(ebug) is specified we fork before calling daemon.
+   
+   The parent process becomes a miniature cat(1) program which connects
+   stdin/stdout with the management process stdin/stdout.
+   
+   It also knows that SIGINT should be passed on to the management process
+   in order to make it DTRT.
+   
+   Any other cause of death for this "debugger" process will (once I
+   teach the CLI about it) not affect the running varnish and therefore
+   it will be possible to start varnish in debugging mode, tweak things
+   a bit and CTRL-D and leave it running in the properly daemon(3)'ed
+   background.
+   
+   The reason for this rather complicated bit of pipework is that we
+   can not call daemon(3) once we have started any threads (only the
+   calling thread survives) and we would loose our parent relationship
+   to the cache process also.
+
+2006-08-02 12:05  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache_acceptor.c:
+
+   Typo: Also monitor remote sockets with the poll based acceptor.
+
+2006-08-02 11:58  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache.h,
+   trunk/varnish-cache/bin/varnishd/cache_backend.c,
+   trunk/varnish-cache/bin/varnishd/cache_fetch.c,
+   trunk/varnish-cache/bin/varnishd/cache_main.c,
+   trunk/varnish-cache/bin/varnishd/cache_vrt.c:
+
+   Remove the libevent from the backend pool manager.
+   
+   Simplify the logic here while we're at it.
+
+2006-08-02 11:18  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache_http.c:
+
+   Add <stdarg.h> include
+
+2006-08-02 11:17  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache_pipe.c:
+
+   Remove unused struct.
+
+2006-08-02 10:53  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache.h,
+   trunk/varnish-cache/bin/varnishd/cache_backend.c:
+
+   Simplify backend connection memory management.
+
+2006-08-02 10:40  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache.h,
+   trunk/varnish-cache/bin/varnishd/cache_acceptor.c:
+
+   Replace libevent based acceptor with poll(2) based acceptor.
+
+2006-08-02 09:34  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache.h,
+   trunk/varnish-cache/bin/varnishd/cache_acceptor.c,
+   trunk/varnish-cache/bin/varnishd/cache_http.c:
+
+   Bite the bullet and write an alternate acceptor which uses kqueue
+   directly instead of libevent.
+   
+   Degeneralize the header reading code in cache_http.c which seems to
+   be cleaner anyway.
+   
+   An #ifdef at the top of cache_acceptor.c selects which implementation
+   you want: libevent or kqueue.
+
+2006-08-02 07:23  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache.h,
+   trunk/varnish-cache/bin/varnishd/cache_pipe.c,
+   trunk/varnish-cache/bin/varnishd/cache_pool.c:
+
+   Convert pipe to use poll(2) on the two filedescriptors it cares about
+   and eliminate the per-workerthread event engine entirely.
+
+2006-08-02 07:07  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache.h,
+   trunk/varnish-cache/bin/varnishd/cache_acceptor.c,
+   trunk/varnish-cache/bin/varnishd/cache_fetch.c,
+   trunk/varnish-cache/bin/varnishd/cache_http.c,
+   trunk/varnish-cache/bin/varnishd/cache_pass.c:
+
+   I have nothing but circumstantial evidence that libevent is involved
+   in the current stack corruption I see, but we might as well avoid
+   using it where we can:
+   
+   Don't engage the eventengine when we talk to the backend, just call
+   read(2) directly.
+
+2006-08-02 04:57  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache_hash.c,
+   trunk/varnish-cache/bin/varnishd/hash_classic.c:
+
+   More miniobj paranoia
+
+2006-08-01 19:48  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache_http.c:
+
+   More miniobj checks
+
+2006-08-01 17:54  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache_fetch.c:
+
+   More miniobj checks
+
+2006-08-01 16:42  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache_acceptor.c,
+   trunk/varnish-cache/bin/varnishd/cache_http.c,
+   trunk/varnish-cache/bin/varnishd/flint.lnt:
+
+   More miniobj checks
+
+2006-08-01 16:26  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache_response.c:
+
+   more miniobj checks
+
+2006-08-01 15:09  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache_vrt.c,
+   trunk/varnish-cache/bin/varnishd/cache_vrt_acl.c,
+   trunk/varnish-cache/bin/varnishd/cache_vrt_re.c:
+
+   Flinting.
+
+2006-08-01 15:08  phk
+
+ * trunk/varnish-cache/bin/varnishd/storage_file.c:
+
+   Make 32bit limitation work better.
+
+2006-08-01 15:08  phk
+
+ * trunk/varnish-cache/bin/varnishd/hash_classic.c:
+
+   Fixx off by one error.
+
+2006-08-01 14:53  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache_fetch.c,
+   trunk/varnish-cache/bin/varnishd/storage_file.c:
+
+   Add miniobj checks om SMF and STORAGE
+
+2006-08-01 12:38  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache.h,
+   trunk/varnish-cache/bin/varnishd/cache_backend.c,
+   trunk/varnish-cache/bin/varnishd/cache_fetch.c:
+
+   This is getting too longhaired: Give backend connections another
+   http header which we can use to build the object headers in.
+
+2006-08-01 12:04  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache_fetch.c:
+
+   Experiment: don't use req's workspace to build object http header.
+
+2006-08-01 09:39  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache.h,
+   trunk/varnish-cache/bin/varnishd/cache_acceptor.c,
+   trunk/varnish-cache/bin/varnishd/cache_fetch.c,
+   trunk/varnish-cache/bin/varnishd/cache_hash.c,
+   trunk/varnish-cache/bin/varnishd/cache_pool.c,
+   trunk/varnish-cache/bin/varnishd/cache_response.c,
+   trunk/varnish-cache/bin/varnishd/cache_vrt.c,
+   trunk/varnish-cache/bin/varnishd/rfc2616.c,
+   trunk/varnish-cache/include/shmlog_tags.h:
+
+   Record timestamp when we have received completed HTTP request header,
+   and define this as the "start of request timestamp".
+   
+   Define "end of request timestamp" as when we are ready to transmit
+   HTTP header back.
+   
+   SHMlog the start and difference between start and stop with ReqServTime
+   tag.
+   
+   Keep track of idle sessions using CLOCK_MONOTONIC to avoid trouble
+   here should our clock get stepped.
+
+2006-07-31 22:21  andersb
+
+ * trunk/varnish-cache/bin/varnishncsa/varnishncsa.c:
+
+   Added some more toying with the data. All is still a mess, and I am
+   not sure of structure yet. PHK is also doing changes in areas that
+   will be needed.
+
+2006-07-31 22:09  phk
+
+ * trunk/varnish-cache/bin/varnishd/shmlog.c,
+   trunk/varnish-cache/bin/varnishlog/varnishlog.c,
+   trunk/varnish-cache/lib/libvarnishapi/shmlog.c:
+
+   Always NUL terminate shmlog entries.
+
+2006-07-31 21:49  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache.h,
+   trunk/varnish-cache/bin/varnishd/cache_fetch.c,
+   trunk/varnish-cache/bin/varnishd/cache_http.c,
+   trunk/varnish-cache/bin/varnishd/cache_response.c,
+   trunk/varnish-cache/bin/varnishlog/varnishlog.c,
+   trunk/varnish-cache/include/shmlog_tags.h:
+
+   Create three groups of seven SHMlog tags:
+   
+   {Rx,Tx,Obj}{Request,Response,Status,URL,Protocol,Header,LostHeader}
+   
+   And log http header munching accordingly.
+
+2006-07-31 21:46  phk
+
+ * trunk/varnish-cache/bin/varnishd/hash_classic.c:
+
+   Remove unused variable
+
+2006-07-31 21:37  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache_session.c:
+
+   addr might be NULL if we are called from the prefetcher.
+
+2006-07-31 21:04  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache.h,
+   trunk/varnish-cache/bin/varnishd/cache_center.c,
+   trunk/varnish-cache/bin/varnishd/cache_fetch.c,
+   trunk/varnish-cache/bin/varnishd/cache_http.c,
+   trunk/varnish-cache/bin/varnishd/cache_pass.c,
+   trunk/varnish-cache/bin/varnishd/cache_response.c:
+
+   Add http_ClrHeader() and cure an unintended bug-oid its use exposes:
+   we checked if the request is a GET long after we should have.
+
+2006-07-31 20:38  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache.h,
+   trunk/varnish-cache/bin/varnishd/cache_http.c,
+   trunk/varnish-cache/bin/varnishd/cache_response.c:
+
+   Add a http_SetResp() function for constructing HTTP responses (like 304).
+   
+   Eliminate the header index from http_SetHeader() which is no unused.
+
+2006-07-31 20:27  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache.h,
+   trunk/varnish-cache/bin/varnishd/cache_fetch.c,
+   trunk/varnish-cache/bin/varnishd/cache_http.c,
+   trunk/varnish-cache/include/shmlog_tags.h:
+
+   Log the headers we store in the object under ObjHeader so that
+   we don't get two confusing batches of TxHeader in the sessions logentries.
+
+2006-07-31 19:18  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache_center.c:
+
+   Fix the dot-graph
+
+2006-07-31 14:50  andersb
+
+ * trunk/varnish-cache/bin/varnishncsa/varnishncsa.c:
+
+   Initial commit of real structure. This code will print the User-Agent.
+
+2006-07-31 07:26  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache.h,
+   trunk/varnish-cache/bin/varnishd/cache_http.c,
+   trunk/varnish-cache/bin/varnishd/cache_response.c:
+
+   Introduce http_SetHeader() for setting a http header to a const string,
+   no need to waste time printf'ing in this case, and no need to waste
+   workspace.
+
+2006-07-31 07:13  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache_http.c:
+
+   Don't fill more than half the workspace with received data, we need to
+   have space for composing the reply as well.
+   
+   Without this fix, the entire workspace could be filled with pipelined
+   requests and we would have no space to compose the reply.
+
+2006-07-31 06:36  des
+
+ * trunk/varnish-cache/bin/Makefile.am,
+   trunk/varnish-cache/bin/varnishncsa,
+   trunk/varnish-cache/bin/varnishncsa/Makefile.am,
+   trunk/varnish-cache/bin/varnishncsa/varnishncsa.1,
+   trunk/varnish-cache/bin/varnishncsa/varnishncsa.c,
+   trunk/varnish-cache/configure.ac:
+
+   Clone varnishncsa off of varnishlog. Anders will hack on it to produce
+   NCSA-style (common / combined) logs.
+
+2006-07-31 06:24  des
+
+ * trunk/varnish-cache/bin/varnishd/hash_classic.c:
+
+   Unbreak build.
+
+2006-07-28 13:41  phk
+
+ * trunk/varnish-cache/bin/varnishlog/varnishlog.c:
+
+   "HEAD" has 4 characters.
+
+2006-07-24 10:13  phk
+
+ * trunk/varnish-cache/lib/libvcl/vcl_compile.c:
+
+   remove this file (again)
+
+2006-07-22 22:01  phk
+
+ * trunk/varnish-cache/bin/varnishd/hash_classic.c:
+
+   reorg a little bit.
+
+2006-07-22 21:20  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache.h,
+   trunk/varnish-cache/bin/varnishd/cache_center.c,
+   trunk/varnish-cache/bin/varnishd/cache_http.c,
+   trunk/varnish-cache/bin/varnishd/cache_pass.c,
+   trunk/varnish-cache/bin/varnishd/cache_pool.c,
+   trunk/varnish-cache/bin/varnishd/cache_response.c,
+   trunk/varnish-cache/bin/varnishd/stevedore.h,
+   trunk/varnish-cache/bin/varnishd/storage_file.c,
+   trunk/varnish-cache/bin/varnishd/storage_malloc.c:
+
+   Eliminate redundant args from stevedore->send()
+   
+   Have WRK_Write() and friends return number of bytes (we can't use
+   WRK_Flush() as that may act on both header and body).
+   
+   Collect more stats.
+
+2006-07-22 20:57  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache.h,
+   trunk/varnish-cache/bin/varnishd/cache_acceptor.c,
+   trunk/varnish-cache/bin/varnishd/cache_center.c,
+   trunk/varnish-cache/bin/varnishd/cache_pool.c,
+   trunk/varnish-cache/bin/varnishd/cache_response.c,
+   trunk/varnish-cache/bin/varnishd/cache_session.c,
+   trunk/varnish-cache/include/shmlog_tags.h,
+   trunk/varnish-cache/include/stat_field.h:
+
+   Add per address, per session and total statistics.
+   
+   We (will) collect data in unlocked per workerthread accumulators
+   and whenever the workerthread leaves the session, we charge the
+   bill to the srcaddr (issuing a StatAddr shmrecord), to the session
+   and to the global counters in the stats struct.
+   
+   When sessions die we issue a StatSess shmrecord.
+   
+   StatAddr and StatSess has the same format:
+   address
+   port (always zero for StatAddr)
+   duration (seconds)
+   #sessions
+   #requests
+   #pipe
+   #pass
+   #fetch
+   #hdrbytes
+   #bodybytes
+
+2006-07-22 16:55  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache_fetch.c:
+
+   Make sure there always is a Host: header in fetch requests.
+   
+   We fill it in with backend.hostname, but this may not be optimal
+   (direct IP# etc etc) so VCL should be able to override it.
+
+2006-07-22 16:26  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache_center.c:
+
+   Action pass from vcl_hit() needs to go to STP_PASS
+
+2006-07-22 16:15  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache.h,
+   trunk/varnish-cache/bin/varnishd/cache_fetch.c,
+   trunk/varnish-cache/bin/varnishd/cache_http.c:
+
+   Always use GET and HTTP/1.1 against the backend for fetch
+
+2006-07-22 13:58  phk
+
+ * trunk/varnish-cache/bin/varnishlog/varnishlog.c:
+
+   exit after error
+
+2006-07-22 12:00  phk
+
+ * trunk/varnish-cache/bin/varnishd/Makefile.am,
+   trunk/varnish-cache/bin/varnishd/cache_vrt_re.c,
+   trunk/varnish-cache/include/vrt.h,
+   trunk/varnish-cache/lib/libvcl/vcc_compile.c,
+   trunk/varnish-cache/lib/libvcl/vcc_compile.h,
+   trunk/varnish-cache/lib/libvcl/vcc_fixed_token.c:
+
+   Implement regexp matching of strings in VCL.
+   
+   For now we default to REG_EXTENDED, but it might make sense
+   to let the user control this flag and the case sensitivity.
+   
+   Another concern is the stringification of regexps, it may lead
+   to backslash madness. Maybe we should define '...' string types
+   also and do no backslash substitution in those at all.
+
+2006-07-22 10:41  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache_vrt_acl.c,
+   trunk/varnish-cache/include/shmlog_tags.h,
+   trunk/varnish-cache/include/vcl_returns.h,
+   trunk/varnish-cache/include/vrt.h,
+   trunk/varnish-cache/lib/libvcl/vcc_acl.c,
+   trunk/varnish-cache/lib/libvcl/vcc_fixed_token.c:
+
+   Change the acl syntax slightly: the ( ... ) should enclose all of
+   the rule (ie: also ! and /mask if present).
+   
+   Implement matching for IPv4.
+   
+   Acl tests are shmlogged as follows (doc candidate):
+   
+   shmlog tag: VCL_actl
+   
+   "NO_MATCH $acl"
+   client did not match access list $acl
+   "FAIL $acl $rule"
+   getaddrinfo(3) failed on $rule which had a '!'
+   "MATCH $acl $rule"
+   client matched $rule
+   "NEG_MATCH $acl $rule"
+   client matched negated (!) $rule
+
+2006-07-22 10:35  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache.h,
+   trunk/varnish-cache/bin/varnishd/cache_session.c:
+
+   Store the socket address in the session
+
+2006-07-22 09:38  phk
+
+ * trunk/varnish-cache/bin/varnishd/Makefile.am,
+   trunk/varnish-cache/bin/varnishd/cache_vrt.c,
+   trunk/varnish-cache/bin/varnishd/cache_vrt_acl.c,
+   trunk/varnish-cache/include/vcl.h,
+   trunk/varnish-cache/include/vcl_returns.h,
+   trunk/varnish-cache/include/vrt.h,
+   trunk/varnish-cache/include/vrt_obj.h,
+   trunk/varnish-cache/lib/libvcl/vcc_acl.c,
+   trunk/varnish-cache/lib/libvcl/vcc_compile.c,
+   trunk/varnish-cache/lib/libvcl/vcc_compile.h,
+   trunk/varnish-cache/lib/libvcl/vcc_fixed_token.c,
+   trunk/varnish-cache/lib/libvcl/vcc_gen_fixed_token.tcl:
+
+   VCL compiler:
+   add two sbufs for "init" and "fini" actions.
+   
+   VCL ACLs: Change syntax and implementation as follows.
+   
+   ACL Syntax now works the following way:
+   
+   acl $name {
+   ! ( "myhost.com" ) ;
+   "10.0.0.1" /8 ;
+   }
+   
+   The '!' means not. If the address matches the rest of the rule
+   the address does NOT match the acl and the search terminates here.
+   
+   Enclosing the string in paranthesis means that the rule will be ignored
+   if the string cannot be converted to an address (with getaddrinfo).
+   
+   When a string can not be looked up, and is not enclosed in a
+   paranthesis, a positive rule (ie: without !) will not match and a
+   negative rule (with !) will match.
+   
+   A mask can always be supplied, no matter the style of the string
+   given, so it is possible to do things like:
+   
+   { "fw.ourcompany.dom" / 24 }
+   
+   Which means "any host on the same /24 subnet as fw.ourcompany.dom".
+   
+   
+   Unfortunately getaddrinfo() does not return a TTL for the results,
+   in the future we may want to use some kind of timeout to refresh
+   the lookups.
+
+2006-07-22 08:02  phk
+
+ * trunk/varnish-cache/include/vrt_obj.h,
+   trunk/varnish-cache/lib/libvcl/Makefile.am,
+   trunk/varnish-cache/lib/libvcl/vcc_acl.c,
+   trunk/varnish-cache/lib/libvcl/vcc_compile.c,
+   trunk/varnish-cache/lib/libvcl/vcc_compile.h,
+   trunk/varnish-cache/lib/libvcl/vcc_gen_obj.tcl,
+   trunk/varnish-cache/lib/libvcl/vcc_obj.c:
+
+   Split IP/ACL compilation into vcc_acl.c
+
+2006-07-21 22:12  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache_http.c,
+   trunk/varnish-cache/bin/varnishd/cache_vrt.c,
+   trunk/varnish-cache/bin/varnishd/storage_file.c:
+
+   Unless the user specifies an explicit size, don't use more than 2GB
+   on 32 bit architectures to avoid running out of address room
+   
+   Make FlexeLint happy.
+
+2006-07-21 21:57  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache.h,
+   trunk/varnish-cache/bin/varnishd/cache_vcl.c,
+   trunk/varnish-cache/include/vcl_returns.h,
+   trunk/varnish-cache/lib/libvcl/vcc_compile.c,
+   trunk/varnish-cache/lib/libvcl/vcc_compile.h,
+   trunk/varnish-cache/lib/libvcl/vcc_fixed_token.c,
+   trunk/varnish-cache/lib/libvcl/vcc_gen_fixed_token.tcl,
+   trunk/varnish-cache/lib/libvcl/vcc_token.c:
+
+   Make FlexeLint happier
+
+2006-07-21 21:42  phk
+
+ * trunk/varnish-cache/autogen.phk:
+
+   Drop this one now.
+
+2006-07-21 21:28  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache_vrt.c,
+   trunk/varnish-cache/bin/varnishd/rfc2616.c:
+
+   Implement TTL adjustment from VCL
+   
+   Log in shmem where the TTL came from (doc-candidate):
+   
+   696613561 RFC 900 1153517009 1153517014 1153517914 900 0
+   | | | | | | | |
+   | | | | | | | age
+   | | | | | | max-age
+   | | | | | Expires: header
+   | | | | Date: header
+   | | | "now"
+   | | TTL relative to "now"
+   | who set the TTL
+   xid of object
+   
+   or
+   
+   696613561 VCL 20 1153517009
+   | | | |
+   | | | "now"
+   | | TTL relative to "now"
+   | who set the TTL
+   xid of object
+
+2006-07-21 21:13  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache_vrt.c,
+   trunk/varnish-cache/include/vrt_obj.h,
+   trunk/varnish-cache/lib/libvcl/vcc_gen_obj.tcl,
+   trunk/varnish-cache/lib/libvcl/vcc_obj.c:
+
+   More VRT work.
+   
+   Use macros for trivial objects which are just a field in a struct.
+
+2006-07-21 21:01  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache_vrt.c,
+   trunk/varnish-cache/include/vrt.h:
+
+   Update VRT to minimal functional level again
+
+2006-07-21 20:51  phk
+
+ * trunk/varnish-cache/include/vrt_obj.h,
+   trunk/varnish-cache/lib/libvcl/vcc_gen_obj.tcl,
+   trunk/varnish-cache/lib/libvcl/vcc_obj.c:
+
+   Use const char* for safety
+
+2006-07-21 20:45  phk
+
+ * trunk/varnish-cache/include/binary_heap.h,
+   trunk/varnish-cache/include/miniobj.h,
+   trunk/varnish-cache/include/stat_field.h,
+   trunk/varnish-cache/include/stats.h,
+   trunk/varnish-cache/include/vcl.h,
+   trunk/varnish-cache/include/vcl_returns.h:
+
+   Update
+
+2006-07-21 20:44  phk
+
+ * trunk/varnish-cache/include/vrt_obj.h:
+
+   This file is generated.
+
+2006-07-21 20:43  phk
+
+ * trunk/varnish-cache/lib/libvcl/Makefile.am,
+   trunk/varnish-cache/lib/libvcl/vcc_compile.c,
+   trunk/varnish-cache/lib/libvcl/vcc_compile.h,
+   trunk/varnish-cache/lib/libvcl/vcc_gen_fixed_token.tcl,
+   trunk/varnish-cache/lib/libvcl/vcc_gen_obj.tcl,
+   trunk/varnish-cache/lib/libvcl/vcc_obj.c,
+   trunk/varnish-cache/lib/libvcl/vcc_token.c:
+
+   Automate generation of tables and prototypes for the objects which
+   VCL programs can manipulate.
+
+2006-07-21 18:12  phk
+
+ * trunk/varnish-cache/lib/libvcl/Makefile.am,
+   trunk/varnish-cache/lib/libvcl/vcc_compile.c,
+   trunk/varnish-cache/lib/libvcl/vcc_compile.h,
+   trunk/varnish-cache/lib/libvcl/vcc_fixed_token.c,
+   trunk/varnish-cache/lib/libvcl/vcc_gen_fixed_token.tcl,
+   trunk/varnish-cache/lib/libvcl/vcc_obj.c,
+   trunk/varnish-cache/lib/libvcl/vcc_priv.h,
+   trunk/varnish-cache/lib/libvcl/vcc_token.c,
+   trunk/varnish-cache/lib/libvcl/vcc_token_defs.h,
+   trunk/varnish-cache/lib/libvcl/vcl_fixed_token.c,
+   trunk/varnish-cache/lib/libvcl/vcl_gen_fixed_token.tcl,
+   trunk/varnish-cache/lib/libvcl/vcl_priv.h,
+   trunk/varnish-cache/lib/libvcl/vcl_token_defs.h:
+
+   Move things over to the correct "VCC" prefix.
+   
+   Split some stuff into separate files while we're at it.
+
+2006-07-21 16:25  phk
+
+ * trunk/varnish-cache/include/http_headers.h:
+
+   update comment
+
+2006-07-21 16:15  phk
+
+ * trunk/varnish-cache/bin/varnishd/rfc2616.c,
+   trunk/varnish-cache/include/shmlog_tags.h:
+
+   Properly log TTL calculation to shmem
+
+2006-07-21 16:06  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache_http.c:
+
+   Fix formatting of responses.
+
+2006-07-21 16:05  phk
+
+ * trunk/varnish-cache/bin/varnishd/rfc2616.c:
+
+   Log TTL calculation on the right fd
+
+2006-07-21 15:25  phk
+
+ * trunk/varnish-cache/bin/varnishlog/varnishlog.c,
+   trunk/varnish-cache/bin/varnishtop/varnishtop.c,
+   trunk/varnish-cache/include/varnishapi.h,
+   trunk/varnish-cache/lib/libvarnishapi/shmlog.c:
+
+   Work on logtailer api a bit:
+   
+   By default, start at the last entry in shared memory. To dump the
+   entire segment from the start, specify '-d' option.
+   
+   Terminate programs when '-r $file' reaches EOF
+
+2006-07-21 12:18  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache.h,
+   trunk/varnish-cache/bin/varnishd/cache_expire.c,
+   trunk/varnish-cache/bin/varnishd/cache_fetch.c,
+   trunk/varnish-cache/bin/varnishd/cache_http.c,
+   trunk/varnish-cache/bin/varnishd/cache_pool.c,
+   trunk/varnish-cache/bin/varnishd/cache_session.c,
+   trunk/varnish-cache/bin/varnishd/flint.lnt:
+
+   Cleanup
+
+2006-07-21 12:08  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache_backend.c:
+
+   Magic check on struct vbe
+
+2006-07-21 12:06  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache_backend.c:
+
+   Better name
+
+2006-07-21 11:55  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache.h,
+   trunk/varnish-cache/bin/varnishd/cache_center.c,
+   trunk/varnish-cache/bin/varnishd/cache_fetch.c,
+   trunk/varnish-cache/bin/varnishd/cache_hash.c,
+   trunk/varnish-cache/bin/varnishd/cache_http.c,
+   trunk/varnish-cache/bin/varnishd/cache_pass.c,
+   trunk/varnish-cache/bin/varnishd/cache_pool.c,
+   trunk/varnish-cache/bin/varnishd/cache_response.c,
+   trunk/varnish-cache/include/http_headers.h,
+   trunk/varnish-cache/include/stat_field.h:
+
+   Convert fetch, insert and deliver to use new HTTP header munging code.
+   
+   Remove sbuf from workerthread, it is only used in the Error handling
+   now and it will probably not even survive that in the long run.
+
+2006-07-21 10:44  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache.h,
+   trunk/varnish-cache/bin/varnishd/cache_center.c,
+   trunk/varnish-cache/bin/varnishd/cache_pass.c,
+   trunk/varnish-cache/bin/varnishd/cache_pipe.c,
+   trunk/varnish-cache/bin/varnishd/cache_pool.c:
+
+   Make pipe use the new http manipulation.
+
+2006-07-21 09:32  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache.h,
+   trunk/varnish-cache/bin/varnishd/cache_center.c,
+   trunk/varnish-cache/bin/varnishd/cache_hash.c,
+   trunk/varnish-cache/bin/varnishd/cache_http.c,
+   trunk/varnish-cache/bin/varnishd/cache_pass.c,
+   trunk/varnish-cache/bin/varnishd/cache_pool.c,
+   trunk/varnish-cache/bin/varnishd/cache_response.c,
+   trunk/varnish-cache/bin/varnishd/cache_vrt.c,
+   trunk/varnish-cache/include/http_headers.h:
+
+   HTTP header munging part (N of M)
+   
+   NB: Only pass mode (lightly) tested right now.
+   
+   Give up on the three element array per header and use a two element struct
+   instead, it reduces obfuscation and removes risk of pointer fandango.
+   
+   Introduce #defined filtercontrol in http_headers.h, use them in a new
+   field. Only Pass is there for now.
+   
+   Use the http-workspace for building headers instead of sbuf.
+   
+   Move uiovec handling to cache_pool.c where it more naturally belongs
+   and so we can use it on both backends and sessions.
+   
+   Add http header munging functiosn for copying, printf'ing, filtering and
+   writing headers.
+
+2006-07-21 07:18  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache.h,
+   trunk/varnish-cache/bin/varnishd/cache_backend.c,
+   trunk/varnish-cache/bin/varnishd/cache_http.c,
+   trunk/varnish-cache/bin/varnishd/cache_session.c,
+   trunk/varnish-cache/bin/varnishd/cache_vrt.c,
+   trunk/varnish-cache/include/shmlog_tags.h:
+
+   Rename shmlog tags for headers to RxHeader and TxHeader that's more
+   logical.
+   
+   Rename http_Init() to http_Setup() to avoid clash with HTTP_Init().
+   
+   Remove unused variable
+
+2006-07-20 22:08  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache.h,
+   trunk/varnish-cache/bin/varnishd/cache_backend.c,
+   trunk/varnish-cache/bin/varnishd/cache_center.c,
+   trunk/varnish-cache/bin/varnishd/cache_fetch.c,
+   trunk/varnish-cache/bin/varnishd/cache_hash.c,
+   trunk/varnish-cache/bin/varnishd/cache_http.c,
+   trunk/varnish-cache/bin/varnishd/cache_main.c,
+   trunk/varnish-cache/bin/varnishd/cache_pass.c,
+   trunk/varnish-cache/bin/varnishd/cache_response.c,
+   trunk/varnish-cache/bin/varnishd/cache_session.c,
+   trunk/varnish-cache/bin/varnishd/cache_vrt.c,
+   trunk/varnish-cache/bin/varnishd/heritage.h,
+   trunk/varnish-cache/bin/varnishd/rfc2616.c,
+   trunk/varnish-cache/bin/varnishd/varnishd.c,
+   trunk/varnish-cache/include/shmlog_tags.h,
+   trunk/varnish-cache/lib/libvcl/vcl_compile.c:
+
+   Yet another refinement to the way we store and deal with HTTP headers.
+   
+   Record a triplet of {start, data, end} for all HTTP data items.
+   
+   This represents a regrettable uglification of the sourcecode, but
+   most of it compiles out to constants and the runtime benefits will
+   be worth it.
+   
+   Generate H_FOO magic strings for all the headers we know about.
+   These strings have a length as first char and always ends in ':'.
+   
+   Also genereate H_FOO format strings in VCL compiler.
+   
+   Mandate (with assert) that header references happen using H_FOO strings.
+   
+   Make number of allowed HTTP headers a compile time constant (32)
+   but make the workspace a run-time variable (4096).
+   
+   Introduce new SHM tag for dumping aborted HTTP protocol requests.
+
+2006-07-20 15:10  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache_expire.c:
+
+   Add XXX comment
+
+2006-07-20 14:46  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache_expire.c,
+   trunk/varnish-cache/include/stat_field.h:
+
+   Keep an eye on deathrow
+
+2006-07-20 14:40  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache_fetch.c,
+   trunk/varnish-cache/bin/varnishd/cache_response.c:
+
+   More asserts
+
+2006-07-20 14:23  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache_hash.c:
+
+   We need to check the TTL here also, if a (sequence of) slow client(s)
+   manages to hold the document referenced, the prefetcher may never
+   get lucky with it and it will linger here much past last sell date.
+
+2006-07-20 13:42  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache_center.c,
+   trunk/varnish-cache/bin/varnishd/cache_pool.c:
+
+   Only reference srcaddr on first request on session
+
+2006-07-20 13:39  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache_session.c:
+
+   Be more paranoid about srcaddr
+
+2006-07-20 13:33  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache_session.c:
+
+   upd
+
+2006-07-20 13:29  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache_session.c,
+   trunk/varnish-cache/include/stat_field.h:
+
+   Keep track of active source addresses
+
+2006-07-20 12:03  phk
+
+ * trunk/varnish-cache/bin/varnishtop/varnishtop.c:
+
+   Add -1 option that stops comparison after first field.
+   
+   Useful with commands like:
+   
+   varnishtop -i header -1
+   varnishtop -i srcaddr -1
+   
+   where the variable part of the entry is less relevant.
+
+2006-07-20 10:10  phk
+
+ * trunk/varnish-cache/bin/varnishstat/varnishstat.c:
+
+   Show also average since start
+
+2006-07-20 09:58  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache_http.c:
+
+   Hmm, that was a bad idea.
+
+2006-07-20 09:42  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache_http.c:
+
+   Loop till we have everything.
+
+2006-07-20 09:29  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache.h,
+   trunk/varnish-cache/bin/varnishd/cache_fetch.c,
+   trunk/varnish-cache/bin/varnishd/cache_http.c,
+   trunk/varnish-cache/bin/varnishd/cache_response.c:
+
+   Implement "If-Modified-Since" conditional queries
+
+2006-07-20 08:29  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache.h,
+   trunk/varnish-cache/bin/varnishd/cache_center.c,
+   trunk/varnish-cache/bin/varnishd/cache_response.c:
+
+   Remove explicit worker thread arguments.
+
+2006-07-20 08:25  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache.h,
+   trunk/varnish-cache/bin/varnishd/cache_acceptor.c,
+   trunk/varnish-cache/bin/varnishd/cache_center.c,
+   trunk/varnish-cache/bin/varnishd/cache_pass.c,
+   trunk/varnish-cache/bin/varnishd/cache_response.c:
+
+   Move the delivery functions from acceptor to response
+
+2006-07-19 21:16  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache_pool.c,
+   trunk/varnish-cache/include/stat_field.h:
+
+   Rework the worker thread pool logic slightly, we were leaking
+   threads before.
+
+2006-07-19 21:14  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache_main.c,
+   trunk/varnish-cache/bin/varnishd/shmlog.c,
+   trunk/varnish-cache/bin/varnishstat/varnishstat.c,
+   trunk/varnish-cache/include/stats.h:
+
+   Include a "start_time" timestamp in the stats and teach varnishstats
+   to print it in curses mode.
+   
+   Some polishing and cleanup.
+
+2006-07-19 20:07  phk
+
+ * trunk/varnish-cache/bin/varnishd/varnishd.c:
+
+   Use insert_pass in vcl_fetch() so we cache the uncacheability.
+
+2006-07-19 20:06  phk
+
+ * trunk/varnish-cache/bin/varnishd/storage_file.c:
+
+   Don't explode on trim's to zero size.
+   
+   Real fix should (maybe) be to callers
+
+2006-07-19 19:49  phk
+
+ * trunk/varnish-cache/bin/varnishtop/varnishtop.c:
+
+   Update only once per second.
+
+2006-07-19 19:48  phk
+
+ * trunk/varnish-cache/bin/varnishd/varnishd.c:
+
+   Make sure width and precision arguments to printf %*.*s are ints.
+
+2006-07-19 19:47  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache_session.c:
+
+   Don't panic on NULL srcaddr, but revisit later when we know the
+   details. Is it the Prefetcher ?
+
+2006-07-19 19:45  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache_session.c:
+
+   Delete the right list item.
+
+2006-07-19 19:45  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache_center.c:
+
+   Don't bother determining if we should close if we already have done so.
+   Also: we may not have valid headers if cache_http.c threw a 400.
+
+2006-07-19 19:43  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache_http.c:
+
+   Make sure hp->v is NUL terminated.
+
+2006-07-19 12:37  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache.h,
+   trunk/varnish-cache/bin/varnishd/cache_backend.c,
+   trunk/varnish-cache/bin/varnishd/cache_center.c,
+   trunk/varnish-cache/bin/varnishd/cache_expire.c,
+   trunk/varnish-cache/bin/varnishd/cache_hash.c,
+   trunk/varnish-cache/bin/varnishd/cache_http.c,
+   trunk/varnish-cache/bin/varnishd/cache_pool.c,
+   trunk/varnish-cache/bin/varnishd/cache_session.c,
+   trunk/varnish-cache/bin/varnishd/cache_vrt.c,
+   trunk/varnish-cache/bin/varnishd/hash_classic.c:
+
+   Use miniobj.h to catch pointer trouble
+
+2006-07-19 12:36  phk
+
+ * trunk/varnish-cache/include/miniobj.h:
+
+   Add miniobj.h for debugging
+
+2006-07-19 11:53  phk
+
+ * trunk/varnish-cache/bin/varnishd/rfc2616.c:
+
+   Avoid the Error path for now.
+
+2006-07-19 11:11  phk
+
+ * trunk/varnish-cache/bin/varnishd/rfc2616.c:
+
+   handle 302 for now.
+
+2006-07-19 08:33  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache_pool.c:
+
+   Properly zero the worker structure when we start a thread.
+
+2006-07-18 13:47  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache_session.c:
+
+   eliminate debugging
+
+2006-07-18 13:19  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache_expire.c:
+
+   Delete binheap root by it's index.
+   
+   Expect a refcount of one (the one holding the object in the hash)
+
+2006-07-18 13:18  phk
+
+ * trunk/varnish-cache/lib/libvarnish/binary_heap.c:
+
+   Fix the Parent calculation
+
+2006-07-18 12:46  phk
+
+ * trunk/varnish-cache/lib/libvarnish/binary_heap.c:
+
+   Set the index of deleted elements to zero
+
+2006-07-18 12:40  phk
+
+ * trunk/varnish-cache/lib/libvarnish/binary_heap.c:
+
+   Move the root index from zero to one
+
+2006-07-18 12:29  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache_fetch.c:
+
+   Remove the deref/unbusy stuff from FetchBody() it's done in central.c
+
+2006-07-18 12:28  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache_hash.c:
+
+   Assert that object is busy when we call unbusy
+
+2006-07-18 12:27  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache.h,
+   trunk/varnish-cache/bin/varnishd/cache_http.c:
+
+   Use a void * for http_Read()'s buffer
+
+2006-07-18 10:48  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache_pass.c:
+
+   Braino this time.
+
+2006-07-18 10:45  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache_pass.c:
+
+   typo
+
+2006-07-18 10:45  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache.h,
+   trunk/varnish-cache/bin/varnishd/cache_center.c,
+   trunk/varnish-cache/bin/varnishd/cache_fetch.c,
+   trunk/varnish-cache/bin/varnishd/cache_hash.c,
+   trunk/varnish-cache/bin/varnishd/cache_http.c,
+   trunk/varnish-cache/bin/varnishd/cache_pass.c,
+   trunk/varnish-cache/bin/varnishd/cache_pipe.c:
+
+   Add http_Read() which reads from a socket but soaks up any prefeched
+   tail first and use it all the places where this logic was explicit
+   before.
+   
+   Fix Refcounting on objects when we insert/deliver
+
+2006-07-18 10:32  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache_pass.c:
+
+   Use bigger buffersizes for pass mode
+   
+   Terminate the sbuf with the reply headers properly.
+
+2006-07-18 09:02  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache.h,
+   trunk/varnish-cache/bin/varnishd/cache_acceptor.c,
+   trunk/varnish-cache/bin/varnishd/cache_center.c,
+   trunk/varnish-cache/bin/varnishd/cache_hash.c,
+   trunk/varnish-cache/bin/varnishd/cache_http.c,
+   trunk/varnish-cache/bin/varnishd/cache_vrt.c:
+
+   Retire the http_GetReq(), http_GetURL() and http_GetProto() accessor
+   functions now that struct http is out of the closet.
+
+2006-07-18 08:52  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache_center.c:
+
+   polish
+
+2006-07-18 08:51  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache_pipe.c:
+
+   zero means 'all' to http_GetTail()
+
+2006-07-14 13:54  phk
+
+ * trunk/varnish-cache/bin/varnishtester/varnishtester.c:
+
+   use space to separate host and port in -b
+
+2006-07-14 13:52  phk
+
+ * trunk/varnish-cache/bin/varnishd/varnishd.c:
+
+   Use space to separate host and port in backend spec.
+   
+   Polish usage message a bit.
+
+2006-07-14 13:33  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache.h,
+   trunk/varnish-cache/bin/varnishd/cache_acceptor.c,
+   trunk/varnish-cache/bin/varnishd/cache_center.c,
+   trunk/varnish-cache/bin/varnishd/cache_hash.c,
+   trunk/varnish-cache/bin/varnishd/cache_pool.c,
+   trunk/varnish-cache/bin/varnishd/steps.h:
+
+   When during a lookup we encounter a busy object, queue the session on
+   the objects waitinglist and disembark the worker thread so it can do
+   something sensible in the mean time.
+   
+   This feature is unimportant in normal operation, but crucial to
+   resource management if a popular URL suddenly takes a long time to
+   reply from the backend.
+   
+   Without this bit if semi-nasty code, we would tie up one worker
+   thread per client while waiting for the backend to come to it's
+   senses.
+
+2006-07-14 12:47  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache_acceptor.c,
+   trunk/varnish-cache/bin/varnishd/cache_center.c:
+
+   Have the acceptor launch the session into STP_RECV
+
+2006-07-14 12:45  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache.h,
+   trunk/varnish-cache/bin/varnishd/cache_center.c,
+   trunk/varnish-cache/bin/varnishd/cache_pool.c:
+
+   Use the fact that we have the worker thread in struct sess now.
+   
+   Move initial and final processing into cnt_recv() and cnt_done()
+
+2006-07-14 12:30  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache_center.c:
+
+   Have the states tell us if we are done yet with their return value,
+   so that we can implement disembarking the worker thread of the object
+   is busy.
+
+2006-07-14 12:22  phk
+
+ * trunk/varnish-cache/bin/varnishd/shmlog.c,
+   trunk/varnish-cache/include/shmlog.h:
+
+   Put a starttime in shmem so varnishstat can show average rates.
+
+2006-07-14 12:12  phk
+
+ * trunk/varnish-cache/bin/varnishd/shmlog.c:
+
+   Flexelint'ing, found a spurious ';'
+
+2006-07-14 12:05  phk
+
+ * trunk/varnish-cache/bin/varnishd/shmlog.c,
+   trunk/varnish-cache/include/shmlog.h:
+
+   More SHM creation polishing
+
+2006-07-14 11:44  phk
+
+ * trunk/varnish-cache/bin/varnishd/shmlog.c:
+
+   Better and more paranoid SHMEM creation logic
+
+2006-07-14 11:42  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache_session.c:
+
+   propset Id
+
+2006-07-14 11:20  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache.h,
+   trunk/varnish-cache/bin/varnishd/cache_acceptor.c,
+   trunk/varnish-cache/bin/varnishd/cache_center.c,
+   trunk/varnish-cache/bin/varnishd/cache_pass.c,
+   trunk/varnish-cache/bin/varnishd/cache_pipe.c,
+   trunk/varnish-cache/bin/varnishd/cache_session.c,
+   trunk/varnish-cache/include/shmlog_tags.h,
+   trunk/varnish-cache/include/stat_field.h:
+
+   Change "client" to "srcaddr", it's more descriptive.
+   
+   Add srcaddr management and start charging bytes to the srcaddr.
+
+2006-07-14 10:34  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache.h,
+   trunk/varnish-cache/bin/varnishd/cache_acceptor.c,
+   trunk/varnish-cache/bin/varnishd/cache_backend.c,
+   trunk/varnish-cache/bin/varnishd/common.h,
+   trunk/varnish-cache/bin/varnishd/tcp.c:
+
+   Rework the way we do ascii representations of addresses
+
+2006-07-14 10:16  phk
+
+ * trunk/varnish-cache/bin/varnishd/Makefile.am,
+   trunk/varnish-cache/bin/varnishd/cache.h,
+   trunk/varnish-cache/bin/varnishd/cache_acceptor.c,
+   trunk/varnish-cache/bin/varnishd/cache_center.c,
+   trunk/varnish-cache/bin/varnishd/cache_main.c,
+   trunk/varnish-cache/bin/varnishd/cache_session.c:
+
+   Move session management to new file (cache_session, SES prefix) in
+   preparation of adding client tracking.
+   
+   Move the iovec's from the session to the worker and give the session
+   a pointer to the worker so we can avoid passing it around as argument.
+
+2006-07-12 23:30  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache_hash.c,
+   trunk/varnish-cache/bin/varnishd/cache_http.c,
+   trunk/varnish-cache/bin/varnishd/cache_main.c,
+   trunk/varnish-cache/bin/varnishd/cache_pass.c,
+   trunk/varnish-cache/bin/varnishd/cache_pipe.c,
+   trunk/varnish-cache/bin/varnishd/cache_pool.c,
+   trunk/varnish-cache/bin/varnishd/cache_vrt.c,
+   trunk/varnish-cache/bin/varnishd/cli_event.c,
+   trunk/varnish-cache/bin/varnishd/flint.lnt,
+   trunk/varnish-cache/bin/varnishd/flint.sh,
+   trunk/varnish-cache/bin/varnishd/rfc2616.c,
+   trunk/varnish-cache/bin/varnishd/shmlog.c,
+   trunk/varnish-cache/bin/varnishd/varnishd.c:
+
+   More Flexelinting
+
+2006-07-12 22:52  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache.h,
+   trunk/varnish-cache/bin/varnishd/cache_acceptor.c,
+   trunk/varnish-cache/bin/varnishd/cache_backend.c,
+   trunk/varnish-cache/bin/varnishd/cache_ban.c,
+   trunk/varnish-cache/bin/varnishd/cache_center.c,
+   trunk/varnish-cache/bin/varnishd/cache_expire.c,
+   trunk/varnish-cache/bin/varnishd/cache_fetch.c,
+   trunk/varnish-cache/bin/varnishd/cache_http.c,
+   trunk/varnish-cache/bin/varnishd/cache_pass.c,
+   trunk/varnish-cache/bin/varnishd/cache_pipe.c,
+   trunk/varnish-cache/bin/varnishd/cache_pool.c,
+   trunk/varnish-cache/bin/varnishd/cache_response.c,
+   trunk/varnish-cache/bin/varnishd/flint.lnt,
+   trunk/varnish-cache/bin/varnishd/mgt_child.c:
+
+   More flexelinting.
+   
+   No bugs so far.
+
+2006-07-12 22:07  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache_backend.c:
+
+   Flexelint harder.
+
+2006-07-12 22:01  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache_acceptor.c,
+   trunk/varnish-cache/bin/varnishd/cache_backend.c,
+   trunk/varnish-cache/bin/varnishd/flint.lnt,
+   trunk/varnish-cache/bin/varnishd/varnishd.c:
+
+   Give this file a flexelinting
+
+2006-07-12 22:01  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache.h:
+
+   Improve the INCOMPL() macro.
+
+2006-07-12 20:21  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache_vcl.c:
+
+   More polishing.
+
+2006-07-12 19:28  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache.h,
+   trunk/varnish-cache/bin/varnishd/cache_center.c,
+   trunk/varnish-cache/bin/varnishd/cache_expire.c,
+   trunk/varnish-cache/bin/varnishd/cache_main.c,
+   trunk/varnish-cache/bin/varnishd/cache_vcl.c:
+
+   Move sessmtx to cache_vcl.c and call it vcl_mtx.
+   
+   Clean up naming for consistency while here.
+
+2006-07-12 15:07  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache.h,
+   trunk/varnish-cache/bin/varnishd/cache_center.c,
+   trunk/varnish-cache/bin/varnishd/cache_fetch.c,
+   trunk/varnish-cache/bin/varnishd/cache_hash.c,
+   trunk/varnish-cache/bin/varnishd/cache_pass.c,
+   trunk/varnish-cache/include/shmlog_tags.h,
+   trunk/varnish-cache/include/stat_field.h:
+
+   Implement "insert_pass" mode where we cache that an entity must be passed.
+
+2006-07-12 14:13  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache_center.c:
+
+   Make Pass possible from vcl_hit()
+
+2006-07-12 13:28  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache_ban.c,
+   trunk/varnish-cache/bin/varnishd/cache_expire.c,
+   trunk/varnish-cache/bin/varnishd/cache_response.c,
+   trunk/varnish-cache/bin/varnishd/cache_vrt.c,
+   trunk/varnish-cache/bin/varnishd/common.h,
+   trunk/varnish-cache/bin/varnishd/hash_classic.c,
+   trunk/varnish-cache/bin/varnishd/hash_slinger.h,
+   trunk/varnish-cache/bin/varnishd/rfc2616.c,
+   trunk/varnish-cache/bin/varnishd/steps.h,
+   trunk/varnish-cache/bin/varnishd/stevedore.h,
+   trunk/varnish-cache/bin/varnishd/storage_file.c:
+
+   Enable Id keyword
+
+2006-07-12 13:28  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache_center.c:
+
+   First stab at implementing pass in vcl_miss()
+
+2006-07-12 13:27  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache_hash.c:
+
+   Add explanation for locking, some minor polishing.
+
+2006-07-12 12:04  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache_fetch.c,
+   trunk/varnish-cache/bin/varnishd/cache_hash.c,
+   trunk/varnish-cache/bin/varnishd/hash_classic.c,
+   trunk/varnish-cache/bin/varnishd/hash_simple_list.c,
+   trunk/varnish-cache/bin/varnishd/hash_slinger.h:
+
+   Hash on both URL and Host header. If no host header, hash on URL twice.
+
+2006-07-12 11:48  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache_center.c,
+   trunk/varnish-cache/bin/varnishd/cache_pass.c:
+
+   Make Pass work again
+
+2006-07-12 11:45  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache_center.c:
+
+   Make pipe work again
+
+2006-07-12 08:56  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache.h,
+   trunk/varnish-cache/bin/varnishd/cache_main.c,
+   trunk/varnish-cache/bin/varnishd/cache_vcl.c:
+
+   Fix CLI "config.load"
+
+2006-07-12 08:44  phk
+
+ * trunk/varnish-cache/bin/varnishtester/varnishtester.c:
+
+   Always insert a backend when vcl is compiled.
+   
+   Respect '#' comments in script file.
+
+2006-07-12 08:34  phk
+
+ * trunk/varnish-cache/bin/varnishd/varnishd.c,
+   trunk/varnish-cache/include/libvcl.h,
+   trunk/varnish-cache/lib/libvcl/vcl_compile.c:
+
+   Teach the VCL compiler about default functions, so that users will
+   not have to copy&paste the default methods if they have no special
+   requirements for a particular method.
+   
+   No such facility exists for backends, so a backend description is
+   now the minumum VCL program.
+   
+   When we initialize the VCL compiler we hand it a piece of source code
+   with the "default code", this must include definitions of all methods
+   named with a "default_" prefix (ie: "default_vcl_recv" etc).
+   
+   During compilation we always compile this piece of source code in (after
+   the user supplied VCL source).
+   
+   If the user did not provide a particular method, the default method is
+   used instead. The user can also call the default method directly,
+   for instance by:
+   
+   sub vcl_recv {
+   if (req.http.Expect) {
+   error;
+   }
+   call default_vcl_recv;
+   }
+   
+   Later on, this could be expanded to allow other subroutines to be
+   included in the default VCL for the users calling convenience.
+
+2006-07-12 07:45  phk
+
+ * trunk/varnish-cache/bin/varnishtester/varnishtester.c:
+
+   Pause after 'vcl' command
+
+2006-07-11 21:35  phk
+
+ * trunk/varnish-cache/bin/varnishtester/varnishtester.c:
+
+   EOF detection in libevent is buggy ?? Add exit cmd.
+   
+   Pause after cli until we see "OK"
+
+2006-07-11 21:30  phk
+
+ * trunk/varnish-cache/bin/varnishtester/varnishtester.c:
+
+   add a req command, various adjustments
+
+2006-07-11 21:04  phk
+
+ * trunk/varnish-cache/bin/varnishtester/varnishtester.c:
+
+   Add Pause() and Resume() to pace script execution
+
+2006-07-11 21:01  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache_main.c:
+
+   Add a printf when cached is ready for the benefit of varnishtester
+
+2006-07-11 20:49  phk
+
+ * trunk/varnish-cache/bin/varnishtester/varnishtester.c:
+
+   open and close commands
+
+2006-07-11 20:37  phk
+
+ * trunk/varnish-cache/bin/varnishtester/varnishtester.c:
+
+   A vcl keyword for loading a new config
+
+2006-07-11 19:29  phk
+
+ * trunk/varnish-cache/bin/varnishtester/varnishtester.c:
+
+   Add "cli" to tell varnishd things
+
+2006-07-11 19:16  phk
+
+ * trunk/varnish-cache/bin/varnishtester/varnishtester.c:
+
+   If the first char of the serve string is '!', close connection after
+   sending string.
+
+2006-07-11 19:10  phk
+
+ * trunk/varnish-cache/bin/varnishtester/varnishtester.c:
+
+   Add a server facility to act as backend for varnish
+
+2006-07-11 18:21  phk
+
+ * trunk/varnish-cache/bin/varnishtester/varnishtester.c:
+
+   Minimal ability to start and stop a varnishd
+
+2006-07-11 18:16  phk
+
+ * trunk/varnish-cache/bin/varnishd/mgt.h,
+   trunk/varnish-cache/bin/varnishd/mgt_child.c,
+   trunk/varnish-cache/bin/varnishd/varnishd.c:
+
+   Give 'exit' CLI command some bite. we may want to be more careful
+   later on.
+
+2006-07-11 17:53  phk
+
+ * trunk/varnish-cache/bin/varnishd/varnishd.c:
+
+   Unbuffer stdout/stderr
+
+2006-07-11 17:23  phk
+
+ * trunk/varnish-cache/bin/Makefile.am,
+   trunk/varnish-cache/bin/varnishtester,
+   trunk/varnish-cache/bin/varnishtester/Makefile.am,
+   trunk/varnish-cache/bin/varnishtester/varnishtester.c,
+   trunk/varnish-cache/configure.ac:
+
+   Add stub varnishtester program
+
+2006-07-11 16:31  phk
+
+ * trunk/varnish-cache/bin/varnishd/varnishd.c:
+
+   Start the cache process automatically, I've gotten tired of typing
+   "start" :-)
+
+2006-07-11 16:25  phk
+
+ * trunk/varnish-cache/bin/varnishd/varnishd.c:
+
+   Allow backend to be specified as "host:port" to -b
+
+2006-07-11 16:17  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache_center.c:
+
+   add short descriptive comments to each state
+
+2006-07-11 16:10  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache.h,
+   trunk/varnish-cache/bin/varnishd/cache_center.c,
+   trunk/varnish-cache/bin/varnishd/cache_fetch.c:
+
+   Distribute code from FetchSession almost correctly
+
+2006-07-11 16:03  phk
+
+ * trunk/varnish-cache/include/vcl_returns.h,
+   trunk/varnish-cache/lib/libvcl/vcl_fixed_token.c,
+   trunk/varnish-cache/lib/libvcl/vcl_gen_fixed_token.tcl,
+   trunk/varnish-cache/lib/libvcl/vcl_token_defs.h:
+
+   Add "insert_pass" action in VCL
+
+2006-07-11 15:54  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache_center.c:
+
+   Make things work again by stuffing the old functions into the new
+   state engine.
+
+2006-07-11 15:18  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache_center.c:
+
+   This commit breaks warnish temporarily:
+   
+   Insert the new master state engine.
+   
+   A dot(1) graph is embedded in the source code and can be extracted
+   with:
+   
+   sed -n '/^DOT/s///p' cache_center.c | dot -Tps > /tmp/_.ps
+
+2006-07-11 13:31  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache.h,
+   trunk/varnish-cache/bin/varnishd/steps.h:
+
+   Add enum for major procesing steps
+
+2006-07-11 12:31  phk
+
+ * trunk/varnish-cache/bin/varnishd/Makefile.am,
+   trunk/varnish-cache/bin/varnishd/cache.h,
+   trunk/varnish-cache/bin/varnishd/cache_center.c,
+   trunk/varnish-cache/bin/varnishd/cache_pool.c:
+
+   Start centralizing the flow of requests through varnish so we get
+   one source file with the highest level of policy.
+
+2006-07-11 12:30  phk
+
+ * trunk/varnish-cache/lib/libvarnishapi/shmlog.c:
+
+   Make -b and -c less nonsensical when not specified
+
+2006-07-11 12:00  phk
+
+ * trunk/varnish-cache/bin/varnishd/varnishd.c:
+
+   Pipe requests which come with an Expect header.
+   
+   XXX: document that
+   error 417 "expectation failed"
+   might be a more sensible policy.
+
+2006-07-11 11:41  des
+
+ * trunk/varnish-cache/bin/varnishlog/varnishlog.1:
+
+   Document -b and -c, and bump date.
+
+2006-07-11 11:36  phk
+
+ * trunk/varnish-cache/include/varnishapi.h,
+   trunk/varnish-cache/lib/libvarnishapi/shmlog.c:
+
+   Add -b[ackend] and -c[lient] generic options to logtailers
+
+2006-07-11 07:38  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache_response.c:
+
+   Add 500 messages.
+
+2006-07-11 07:30  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache.h,
+   trunk/varnish-cache/bin/varnishd/cache_fetch.c,
+   trunk/varnish-cache/bin/varnishd/cache_http.c,
+   trunk/varnish-cache/bin/varnishd/cache_pass.c,
+   trunk/varnish-cache/bin/varnishd/cache_pool.c,
+   trunk/varnish-cache/include/stat_field.h:
+
+   Split http_Dissect() into http_DissectRequest() and http_DissectResponse()
+
+2006-07-11 06:30  des
+
+ * trunk/varnish-cache/bin/varnishd/varnishd.1:
+
+   Add cross-references and a commented-out STANDARDS section.
+
+2006-07-11 06:28  des
+
+ * trunk/varnish-cache/include/shmlog_tags.h:
+
+   Add a note to update varnishlog(1) whenever this list changes.
+
+2006-07-11 06:27  des
+
+ * trunk/varnish-cache/bin/varnishstat/varnishstat.1:
+
+   Add cross-references.
+
+2006-07-11 06:26  des
+
+ * trunk/varnish-cache/bin/varnishlog/varnishlog.1:
+
+   Document the -C, -I, -X, -i, -x options.
+   Add a list of log entry tags.
+   Add cross-references to varnishd(1) and varnishstat(1).
+
+2006-07-10 21:54  phk
+
+ * trunk/varnish-cache/bin/Makefile.am,
+   trunk/varnish-cache/bin/varnishtop,
+   trunk/varnish-cache/bin/varnishtop/Makefile.am,
+   trunk/varnish-cache/bin/varnishtop/varnishtop.c,
+   trunk/varnish-cache/configure.ac:
+
+   Add varnishtop log-tailer.
+   
+   
+   Try these:
+   
+   varnishtop -i url
+   
+   varhishtop -i header -C -I '^user-agent:'
+   
+   varhishtop -i header -C -I '^user-agent:' -X MSIE
+   
+   varhishtop -i header -C -I '^user-agent:.*MSIE'
+   
+   varhishtop -i header -C -I '^user-agent:.*java'
+   
+   You can also run them on the logfiles from the live test:
+   
+   zcat _vlog21.gz | varnishtop -r - -i header ...
+   
+   
+
+2006-07-10 21:49  phk
+
+ * trunk/varnish-cache/lib/libvarnishapi/shmlog.c:
+
+   Fix so that both -I and -X can be specified
+
+2006-07-10 20:49  phk
+
+ * trunk/varnish-cache/include/varnishapi.h,
+   trunk/varnish-cache/lib/libvarnishapi/shmlog.c:
+
+   Implement -C, -I <regex> and -X <regex> generic options
+
+2006-07-10 20:27  phk
+
+ * trunk/varnish-cache/bin/varnishlog/varnishlog.c,
+   trunk/varnish-cache/include/varnishapi.h,
+   trunk/varnish-cache/lib/libvarnishapi/shmlog.c:
+
+   Add tag names array to libvarnishapi, everybody is going to need it.
+   
+   Implement -i tag[,tag ...] and -x tag[,tag ...] generic arguments.
+
+2006-07-10 19:54  phk
+
+ * trunk/varnish-cache/bin/varnishlog/varnishlog.c,
+   trunk/varnish-cache/bin/varnishstat/varnishstat.c,
+   trunk/varnish-cache/include/varnishapi.h,
+   trunk/varnish-cache/lib/libvarnishapi/shmlog.c:
+
+   Improve libvarnishapi interface to shared memory:
+   
+   Add function VSL_OpenStats() which directly returns a pointer
+   to the varnish_stats structure.
+   
+   Add opaque VSL_data structure as handle to the log-tailer functions.
+   
+   Add generic argument parsing function for all log-tailers.
+   
+   Add support for generic "-r <file>" option.
+
+2006-07-10 15:02  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache_pool.c,
+   trunk/varnish-cache/include/stat_field.h:
+
+   More statistics about worker threads.
+
+2006-07-10 14:52  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache.h,
+   trunk/varnish-cache/bin/varnishd/cache_acceptor.c,
+   trunk/varnish-cache/bin/varnishd/cache_main.c,
+   trunk/varnish-cache/bin/varnishd/cache_pool.c,
+   trunk/varnish-cache/bin/varnishd/heritage.h,
+   trunk/varnish-cache/bin/varnishd/varnishd.c,
+   trunk/varnish-cache/bin/varnishlog/varnishlog.c,
+   trunk/varnish-cache/include/shmlog_tags.h,
+   trunk/varnish-cache/include/stat_field.h:
+
+   Rewrite the worker thread pool code.
+   
+   Assign prefix WRK to the worker pool.
+   
+   Introduce a struct workreq since the prefetcher (when it happens) will
+   not have a session to pass in.
+   
+   The worker threads get a cond_var each and are hung from a list in
+   most recently used order.
+   
+   When a request is queued and the worker thread list is not empty,
+   tickle the cond_var of the first one.
+   
+   If no threads were availble the max number of threads is not reached,
+   try to start another worker thread.
+   
+   If the max was reached or the start filed (likely due to out of memory)
+   indicate overflow and let the existing pool deal with it.
+   
+   Create only the minimum requested number of threads initially.
+   
+   Allow specification of the timeout before a dynamic worker thread commits
+   suicide to be specified with -w.
+   
+   Default parameters are -w1,UINT_MAX,10 {min, max, timeout}
+
+2006-07-10 13:59  phk
+
+ * trunk/varnish-cache/bin/varnishd/mgt_child.c,
+   trunk/varnish-cache/bin/varnishd/varnishd.c:
+
+   use explicit eventbase.
+
+2006-07-10 13:58  phk
+
+ * trunk/varnish-cache/contrib/libevent/event.c:
+
+   Don't ever set current_base in our version of libevent in order to flush
+   out any bugs it might cause.
+
+2006-07-10 13:48  phk
+
+ * trunk/varnish-cache/bin/varnishd/shmlog.c:
+
+   Dump errno and strerror in assert
+
+2006-07-10 12:00  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache.h,
+   trunk/varnish-cache/bin/varnishd/cache_backend.c:
+
+   Rework the "connect to backend logic".
+   
+   Avoid calling getaddrinfo() for every connect by catching the result
+   in the backend structure.
+   
+   Minimize number of socket/connect calls by caching the last good
+   address in the backend structure.
+   
+   If all addresses in the cached getaddrinfo() result fails, call
+   getaddrinfo() again (to catch DNS changes) and try the list again.
+
+2006-07-10 11:24  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache.h,
+   trunk/varnish-cache/bin/varnishd/cache_acceptor.c,
+   trunk/varnish-cache/bin/varnishd/cache_backend.c,
+   trunk/varnish-cache/bin/varnishd/common.h,
+   trunk/varnish-cache/bin/varnishd/tcp.c:
+
+   Move sockaddr->ascii conversion to tcp.c
+   
+   shmlog both ends of backend connections.
+
+2006-07-10 10:56  phk
+
+ * trunk/varnish-cache/bin/varnishd/Makefile.am,
+   trunk/varnish-cache/bin/varnishd/cache.h,
+   trunk/varnish-cache/bin/varnishd/cache_shmlog.c,
+   trunk/varnish-cache/bin/varnishd/cache_shmlog.h,
+   trunk/varnish-cache/bin/varnishd/common.h,
+   trunk/varnish-cache/bin/varnishd/mgt.h,
+   trunk/varnish-cache/bin/varnishd/shmlog.c:
+
+   Be more consistent.
+   
+   cache_shmlog.c contains stuff for both cache and mgt, so remove the
+   cache_ prefix.
+   
+   Rename cache_shmlog.h to common.h and put joint stuff there.
+
+2006-07-10 10:31  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache_pass.c,
+   trunk/varnish-cache/bin/varnishd/cache_pipe.c:
+
+   put backend session linkage in shmemlog for pipe and pass
+
+2006-07-10 10:06  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache_http.c:
+
+   Polish HTTP reception a little bit
+
+2006-07-10 10:05  phk
+
+ * trunk/varnish-cache/bin/varnishd/heritage.h,
+   trunk/varnish-cache/bin/varnishd/varnishd.c:
+
+   Drop the max length of first line, it's too expensive to enforce.
+
+2006-07-10 09:52  phk
+
+ * trunk/varnish-cache/lib/libvarnishapi/shmlog.c:
+
+   Fix cosmetic warning
+
+2006-07-10 09:51  phk
+
+ * trunk/varnish-cache/bin/varnishstat/varnishstat.c:
+
+   Silence cosmetic warning.
+
+2006-07-10 09:48  phk
+
+ * trunk/varnish-cache/lib/libvarnish/time.c,
+   trunk/varnish-cache/lib/libvcl/vcl_compile.c:
+
+   Fix cosmetic warnings
+
+2006-07-10 09:47  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache.h,
+   trunk/varnish-cache/bin/varnishd/cache_acceptor.c,
+   trunk/varnish-cache/bin/varnishd/cache_backend.c,
+   trunk/varnish-cache/bin/varnishd/cache_ban.c,
+   trunk/varnish-cache/bin/varnishd/cache_expire.c,
+   trunk/varnish-cache/bin/varnishd/cache_fetch.c,
+   trunk/varnish-cache/bin/varnishd/cache_http.c,
+   trunk/varnish-cache/bin/varnishd/cache_main.c,
+   trunk/varnish-cache/bin/varnishd/cache_pass.c,
+   trunk/varnish-cache/bin/varnishd/cache_pipe.c,
+   trunk/varnish-cache/bin/varnishd/cache_shmlog.c,
+   trunk/varnish-cache/bin/varnishd/cache_shmlog.h,
+   trunk/varnish-cache/bin/varnishd/cache_vcl.c,
+   trunk/varnish-cache/bin/varnishd/cli_event.c,
+   trunk/varnish-cache/bin/varnishd/mgt.h,
+   trunk/varnish-cache/bin/varnishd/mgt_child.c,
+   trunk/varnish-cache/bin/varnishd/tcp.c,
+   trunk/varnish-cache/bin/varnishd/varnishd.c:
+
+   Fix a bunch warnings, all cosmetic.
+   
+   I'm using __unused for now, if we need to use something different
+   we can do a find/replace.
+
+2006-07-10 09:28  phk
+
+ * trunk/varnish-cache/bin/varnishlog/varnishlog.c:
+
+   Silence some warnings
+
+2006-07-10 09:07  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache.h,
+   trunk/varnish-cache/bin/varnishd/cache_acceptor.c,
+   trunk/varnish-cache/bin/varnishd/cache_fetch.c,
+   trunk/varnish-cache/bin/varnishd/cache_http.c,
+   trunk/varnish-cache/bin/varnishd/cache_pass.c,
+   trunk/varnish-cache/include/stat_field.h:
+
+   Allocate struct http as part of the session allocation.
+   
+   Remove http_New() and http_Delete()
+
+2006-07-10 08:41  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache.h,
+   trunk/varnish-cache/bin/varnishd/cache_backend.c,
+   trunk/varnish-cache/bin/varnishd/cache_http.c,
+   trunk/varnish-cache/bin/varnishd/heritage.h,
+   trunk/varnish-cache/bin/varnishd/varnishd.c:
+
+   Add heritage.mem_http_headers which is the maximum number of headers
+   we recognize.
+   
+   Add http_Init() which initializes struct http given sufficient space.
+   
+   Respect heritage mem_* values in http_New() (while we still have it)
+   
+   Allocate backend connections (vbe_conn) with super allocation with
+   space for http and workspace.
+
+2006-07-10 08:10  phk
+
+ * trunk/varnish-cache/bin/varnishd/heritage.h,
+   trunk/varnish-cache/bin/varnishd/varnishd.c:
+
+   Put three memory allocation hints into heritage:
+   
+   mem_http_1_line (512)
+   Maximum length of the reqeust/response line of a HTTP message
+   There is no point in filling the entire buffer with junk if
+   we get a preposterously long first line.
+   mem_http_header (4096)
+   Maximum length of entire HTTP header. If we overflow this
+   we return 400.
+   mem_workspace (currently 0)
+   In the future this will be the space we use for constructing
+   headers to send and edits done from VCL.
+
+2006-07-10 07:54  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache.h,
+   trunk/varnish-cache/bin/varnishd/cache_backend.c,
+   trunk/varnish-cache/bin/varnishd/cache_fetch.c,
+   trunk/varnish-cache/bin/varnishd/cache_pass.c,
+   trunk/varnish-cache/bin/varnishd/cache_pipe.c:
+
+   Take the vbe_conn (backend connection) structure out of the closet.
+
+2006-07-10 07:07  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache_fetch.c:
+
+   Turn a comment into english
+
+2006-07-10 07:04  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache.h:
+
+   More sensible order of pointers
+
+2006-07-09 21:21  phk
+
+ * trunk/varnish-cache/include/http_headers.h:
+
+   Don't pass cache-control through.
+
+2006-07-09 21:01  phk
+
+ * trunk/varnish-cache/bin/varnishlog/varnishlog.c:
+
+   Add a -h opt which modifies -o to remove "trivial" entries.
+   
+   Trivial are
+   {GET,HEAD} which gets a hit and returns 200
+   {GET,HEAD} which gets a miss, fetches, inserts and returns 200
+
+2006-07-09 09:16  des
+
+ * trunk/varnish-cache/configure.ac:
+
+   Don't use braces where they aren't needed.
+   Let automake know about config.h.
+   Bump version number to mark that we have passed the first live test.
+
+2006-07-09 07:13  des
+
+ * trunk/varnish-cache/bin/varnishd/Makefile.am,
+   trunk/varnish-cache/include/Makefile.am,
+   trunk/varnish-cache/lib/libvcl/Makefile.am:
+
+   List header files so they are included in the distribution tarball.
+
+2006-07-09 06:35  des
+
+ * trunk/varnish-cache/configure.ac:
+
+   Use the modern version of AM_INIT_AUTOMAKE, allowing automake to deduce the
+   correct distribution name.
+
+2006-07-08 20:29  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache.h,
+   trunk/varnish-cache/bin/varnishd/cache_http.c,
+   trunk/varnish-cache/bin/varnishd/cache_shmlog.c:
+
+   A few edits for FlexeLint
+
+2006-07-08 20:19  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache.h,
+   trunk/varnish-cache/bin/varnishd/cache_acceptor.c,
+   trunk/varnish-cache/bin/varnishd/cache_backend.c,
+   trunk/varnish-cache/bin/varnishd/cache_ban.c,
+   trunk/varnish-cache/bin/varnishd/cache_expire.c,
+   trunk/varnish-cache/bin/varnishd/cache_fetch.c,
+   trunk/varnish-cache/bin/varnishd/cache_hash.c,
+   trunk/varnish-cache/bin/varnishd/cache_http.c,
+   trunk/varnish-cache/bin/varnishd/cache_main.c,
+   trunk/varnish-cache/bin/varnishd/cache_pass.c,
+   trunk/varnish-cache/bin/varnishd/cache_pipe.c,
+   trunk/varnish-cache/bin/varnishd/cache_pool.c,
+   trunk/varnish-cache/bin/varnishd/cache_shmlog.c,
+   trunk/varnish-cache/bin/varnishd/cache_vcl.c,
+   trunk/varnish-cache/bin/varnishd/cache_vrt.c,
+   trunk/varnish-cache/bin/varnishd/hash_classic.c,
+   trunk/varnish-cache/bin/varnishd/hash_simple_list.c,
+   trunk/varnish-cache/bin/varnishd/rfc2616.c,
+   trunk/varnish-cache/bin/varnishd/storage_file.c,
+   trunk/varnish-cache/bin/varnishd/storage_malloc.c:
+
+   Sanitize #includes a bit in the cache process by moving fundamental
+   #includes to cache.h
+
+2006-07-08 20:18  phk
+
+ * trunk/varnish-cache/bin/varnishd/flint.lnt:
+
+   Silence a bogus warning
+
+2006-07-08 19:54  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache.h,
+   trunk/varnish-cache/bin/varnishd/cache_http.c:
+
+   Move struct http into cache.h
+   
+   The original reasoning for having it private to cache_http.c was
+   to avoid pollution with event.h related structures but since that
+   pollution is happening other ways anyway, the cost is too high.
+   
+   Include pthread.h, sys/time.h, and event.h from cache.h
+
+2006-07-08 19:46  des
+
+ * trunk/varnish-cache/configure.ac:
+
+   Add --enable-debugging-symbols which enables debugging sysmbols and
+   disables
+   inlining and builtins.
+
+2006-07-08 19:27  des
+
+ * trunk/varnish-cache/lib/libvcl/vcl_compile.c:
+
+   Fix "set backend.port".
+
+2006-07-08 19:25  des
+
+ * trunk/varnish-cache/autogen.des:
+
+   My version.
+
+2006-07-08 19:25  des
+
+ * trunk/varnish-cache/autogen.phk:
+
+   Expand keywords.
+
+2006-07-07 08:40  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache_pipe.c:
+
+   Close gracefully in pipe mode
+
+2006-07-07 07:48  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache_acceptor.c:
+
+   Set SO_LINGER to zero
+
+2006-07-07 07:25  phk
+
+ * trunk/varnish-cache/bin/varnishd/tcp.c:
+
+   Tell why bind(2) fails
+
+2006-07-07 07:22  phk
+
+ * trunk/varnish-cache/bin/varnishd/varnishd.c:
+
+   Pipe anything different from HEAD & GET
+
+2006-07-07 07:22  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache_http.c:
+
+   Don't filter headers in Pipe mode
+
+2006-07-07 07:22  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache_pipe.c:
+
+   Fix pipe mode
+
+2006-07-07 07:22  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache_acceptor.c:
+
+   Remove debugging printf
+
+2006-07-07 07:15  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache.h,
+   trunk/varnish-cache/bin/varnishd/cache_acceptor.c,
+   trunk/varnish-cache/bin/varnishd/cache_pool.c:
+
+   Time idle TCP connections out after 30 seconds
+
+2006-07-07 06:29  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache.h,
+   trunk/varnish-cache/bin/varnishd/cache_http.c,
+   trunk/varnish-cache/bin/varnishd/cache_pool.c:
+
+   Dump our buffer as Debug if we have HTTP header trouble.
+   
+   Issue 400 for HTTP header buffer overflow.
+
+2006-07-07 06:27  phk
+
+ * trunk/varnish-cache/bin/varnishlog/varnishlog.c:
+
+   Strvis(3) debug data.
+
+2006-07-06 22:33  phk
+
+ * trunk/varnish-cache/include/http_headers.h:
+
+   Filter out Content-Range headers.
+
+2006-07-06 21:57  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache_acceptor.c:
+
+   Always log the numeric code as "Status"
+
+2006-07-06 21:57  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache_pool.c:
+
+   Log the found objects XID when we have a hash-hit.
+
+2006-07-06 21:56  phk
+
+ * trunk/varnish-cache/include/shmlog_tags.h:
+
+   Add shmem tag for Hits
+
+2006-07-06 21:47  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache.h,
+   trunk/varnish-cache/bin/varnishd/cache_fetch.c,
+   trunk/varnish-cache/bin/varnishd/cache_http.c,
+   trunk/varnish-cache/bin/varnishd/cache_pool.c,
+   trunk/varnish-cache/bin/varnishd/cache_response.c:
+
+   Refuse all requests without a protocol field with a 400
+   
+   Implement a function to say "400" with.
+
+2006-07-06 21:04  phk
+
+ * trunk/varnish-cache/bin/varnishd/Makefile.am,
+   trunk/varnish-cache/bin/varnishd/cache_response.c:
+
+   Add cache_response for yelling at clients
+
+2006-07-06 21:03  phk
+
+ * trunk/varnish-cache/bin/varnishlog/varnishlog.c:
+
+   Also flush ordered after the long timeout.
+
+2006-07-06 21:00  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache_http.c:
+
+   Strengthen HTTP parsing
+
+2006-07-06 20:29  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache_expire.c:
+
+   Make sure the grim reaper doesn't touch busy objects either.
+
+2006-07-06 20:26  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache_expire.c:
+
+   The grim reaper needs to wait for objects refcount to drop to zero.
+
+2006-07-06 20:23  phk
+
+ * trunk/varnish-cache/bin/varnishlog/varnishlog.c:
+
+   Improvements to flush things at timeout and at the end etc.
+
+2006-07-06 13:40  phk
+
+ * trunk/varnish-cache/bin/varnishd/storage_file.c:
+
+   Silence typical broken client connection messages and move the
+   interesting ones to shmem
+
+2006-07-06 13:33  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache_pass.c:
+
+   Fix braino in Pass handling
+
+2006-07-06 13:27  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache_http.c:
+
+   Skip space before request/response
+
+2006-07-06 13:02  des
+
+ * trunk/varnish-cache/bin/varnishstat/Makefile.am,
+   trunk/varnish-cache/bin/varnishstat/varnishstat.1:
+
+   Add a rudimentary man page.
+
+2006-07-06 11:18  phk
+
+ * trunk/varnish-cache/autogen.phk:
+
+   My version.
+
+2006-07-06 10:18  phk
+
+ * trunk/varnish-cache/bin/varnishstat/varnishstat.c:
+
+   Add exponential hitrate displays (with -c)
+
+2006-07-06 09:31  des
+
+ * trunk/varnish-cache/bin/varnishlog/Makefile.am,
+   trunk/varnish-cache/bin/varnishlog/varnishlog.1:
+
+   Add a rudimentary man page.
+
+2006-07-06 09:31  des
+
+ * trunk/varnish-cache/bin/varnishd/varnishd.1:
+
+   Expand keywords
+
+2006-07-06 09:13  des
+
+ * trunk/varnish-cache/bin/varnishd/Makefile.am,
+   trunk/varnish-cache/bin/varnishd/varnishd.1:
+
+   Add a rudimentary man page.
+
+2006-07-06 09:08  phk
+
+ * trunk/varnish-cache/bin/varnishd/tcp.c:
+
+   Only complain if accept_filters fail
+
+2006-07-06 09:06  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache_http.c:
+
+   Remove debugging code.
+
+2006-07-06 09:00  phk
+
+ * trunk/varnish-cache/bin/varnishlog/varnishlog.c:
+
+   Add -r file and -w file options.
+   
+   These read/write from/to a binary file.
+
+2006-07-06 08:45  phk
+
+ * trunk/varnish-cache/bin/varnishd/varnishd.c:
+
+   Increas shmem size to 8M
+
+2006-07-06 08:45  phk
+
+ * trunk/varnish-cache/bin/varnishd/tcp.c:
+
+   Add accept filters
+
+2006-07-06 08:43  des
+
+ * trunk/varnish-cache/bin/varnishd/cache_shmlog.c,
+   trunk/varnish-cache/bin/varnishd/storage_file.c,
+   trunk/varnish-cache/lib/libvarnishapi/shmlog.c:
+
+   Portability: don't use non-portable mmap(2) flags.
+
+2006-07-06 08:43  des
+
+ * trunk/varnish-cache/bin/varnishd/cache_acceptor.c:
+
+   Portability: Linux does not have SO_NOSIGPIPE.
+
+2006-07-06 08:41  des
+
+ * trunk/varnish-cache/bin/varnishd/cache_backend.c,
+   trunk/varnish-cache/bin/varnishd/mgt_child.c,
+   trunk/varnish-cache/bin/varnishd/varnishd.c,
+   trunk/varnish-cache/lib/libvarnish/argv.c:
+
+   Portability: cast unused parameters to void instead of marking them
+   __unused.
+
+2006-07-06 08:32  phk
+
+ * trunk/varnish-cache/bin/varnishd/rfc2616.c:
+
+   404 handling
+
+2006-07-06 08:07  des
+
+ * trunk/varnish-cache/bin/varnishd/cache_backend.c:
+
+   Use <sys/ioctl.h> instead of <sys/filio.h> to get both the prototype for
+   ioctl(2) and the definition of FIONREAD.
+
+2006-07-05 14:40  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache_http.c:
+
+   Fix off by one
+
+2006-07-05 14:40  phk
+
+ * trunk/varnish-cache/bin/varnishd/storage_file.c:
+
+   printf format
+
+2006-07-05 13:54  phk
+
+ * trunk/varnish-cache/bin/varnishstat/varnishstat.c:
+
+   Calculate rate as signed.
+
+2006-07-05 13:44  phk
+
+ * trunk/varnish-cache/bin/varnishd/storage_file.c:
+
+   Assert non-null first
+
+2006-07-05 13:19  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache_acceptor.c:
+
+   Send "Connection: close" if not HTTP/1.1
+
+2006-07-05 13:13  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache_acceptor.c,
+   trunk/varnish-cache/bin/varnishd/cache_backend.c,
+   trunk/varnish-cache/bin/varnishd/cache_fetch.c,
+   trunk/varnish-cache/bin/varnishd/cache_hash.c,
+   trunk/varnish-cache/bin/varnishd/cache_http.c,
+   trunk/varnish-cache/bin/varnishd/storage_file.c,
+   trunk/varnish-cache/include/stat_field.h:
+
+   Add more stats
+
+2006-07-05 13:09  phk
+
+ * trunk/varnish-cache/bin/varnishd/storage_file.c:
+
+   Some asserts to guard against trouble.
+
+2006-07-05 12:17  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache_http.c:
+
+   Another pipeline fix: don't clobber a pipelined partial header
+
+2006-07-05 11:42  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache_fetch.c:
+
+   Don't lead http header
+
+2006-07-05 11:09  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache_acceptor.c:
+
+   Free the session memory correctly
+
+2006-07-05 10:59  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache_hash.c:
+
+   Free the right header.
+
+2006-07-05 10:55  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache_hash.c:
+
+   Don't leak objects headers
+
+2006-07-05 10:01  phk
+
+ * trunk/varnish-cache/include/http_headers.h:
+
+   Suppress Accept-Ranges for now.
+
+2006-07-05 09:59  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache_acceptor.c:
+
+   Create an X-Varnish header and put the XID there.
+
+2006-07-05 09:56  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache_acceptor.c,
+   trunk/varnish-cache/bin/varnishd/stevedore.h,
+   trunk/varnish-cache/bin/varnishd/storage_file.c:
+
+   Send headers with sendfile
+
+2006-07-05 09:44  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache.h,
+   trunk/varnish-cache/bin/varnishd/cache_acceptor.c,
+   trunk/varnish-cache/bin/varnishd/cache_fetch.c,
+   trunk/varnish-cache/bin/varnishd/cache_pool.c,
+   trunk/varnish-cache/bin/varnishd/rfc2616.c:
+
+   Add Age and Via header to responses.
+   
+   Change arguments to vca_write_obj() (It should really be
+   "send_repsonse()" ?)
+   Store received age and time entered into cache in object.
+   Generate Age: and Via: headers as part of response.
+
+2006-07-05 09:32  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache_acceptor.c,
+   trunk/varnish-cache/bin/varnishd/cache_fetch.c,
+   trunk/varnish-cache/bin/varnishd/cache_pool.c:
+
+   Unify logging in the response handling
+
+2006-07-05 09:11  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache_pool.c:
+
+   log responsecode and length
+
+2006-07-05 09:10  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache.h,
+   trunk/varnish-cache/bin/varnishd/cache_fetch.c,
+   trunk/varnish-cache/bin/varnishd/rfc2616.c:
+
+   Log reponse code and object length
+
+2006-07-05 09:08  phk
+
+ * trunk/varnish-cache/include/shmlog_tags.h:
+
+   Add Length tag
+
+2006-07-05 08:08  phk
+
+ * trunk/varnish-cache/bin/varnishstat/varnishstat.c:
+
+   Show also rate in curses display
+
+2006-07-05 07:45  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache_shmlog.c:
+
+   Be more conservative about wraparound and take them up front in all cases.
+
+2006-07-04 22:08  phk
+
+ * trunk/varnish-cache/bin/varnishd/rfc2616.c:
+
+   Implement our TTL calculation.
+   
+   A first quick check against the weird timestamps from the VG frontend
+   squids indicates sensible behaviour.
+
+2006-07-04 21:34  phk
+
+ * trunk/varnish-cache/bin/varnishd/rfc2616.c:
+
+   Long comment describing how TTL calculation will be done.
+   
+   Review encouraged.
+
+2006-07-04 20:00  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache.h,
+   trunk/varnish-cache/bin/varnishd/cache_acceptor.c,
+   trunk/varnish-cache/bin/varnishd/cache_fetch.c,
+   trunk/varnish-cache/bin/varnishd/cache_http.c,
+   trunk/varnish-cache/bin/varnishd/cache_pass.c,
+   trunk/varnish-cache/bin/varnishd/cache_pipe.c,
+   trunk/varnish-cache/bin/varnishd/cache_pool.c,
+   trunk/varnish-cache/bin/varnishd/cache_shmlog.c:
+
+   Fix HEAD requests:
+   
+   Make modes to http_BuildSbuf descriptive enums.
+   Send GET to backend also for HEAD requests.
+   Don't return body for HEAD requests.
+
+2006-07-04 19:36  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache_http.c:
+
+   Fix pipelining.
+   
+   A braino in http_Dissect() resulted in an off-by-one error
+   (protected with assert now)
+   
+   Move any remaning bytes in buffer to front and check for
+   a complete header before arming the eventloop on the
+   session.
+
+2006-07-04 14:45  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache_http.c:
+
+   Make room for protective terminating NUL
+
+2006-07-04 14:19  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache_backend.c:
+
+   retry backend open, log diagnostics
+
+2006-07-04 14:18  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache_main.c:
+
+   load VCL earlier
+
+2006-07-04 14:18  phk
+
+ * trunk/varnish-cache/bin/varnishd/storage_file.c:
+
+   Lock with a mutex
+
+2006-07-04 13:45  phk
+
+ * trunk/varnish-cache/bin/varnishlog/varnishlog.c:
+
+   Shorter sleeps: 1s -> 50msec
+
+2006-07-04 13:44  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache_shmlog.c:
+
+   Fix off by one error during wraparound.
+
+2006-07-04 09:28  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache.h,
+   trunk/varnish-cache/bin/varnishd/cache_http.c,
+   trunk/varnish-cache/bin/varnishd/cache_pool.c:
+
+   Close non HTTP/1.1 request connections
+
+2006-07-04 09:21  phk
+
+ * trunk/varnish-cache/lib/libvcl/vcl_compile.c:
+
+   Add missing '%'
+
+2006-07-03 19:45  phk
+
+ * trunk/varnish-cache/bin/varnishd/storage_file.c:
+
+   My workaround for the missing OFF_T_MAX definition was not safe,
+   use a hardcoded "1<<30" which is.
+
+2006-07-03 19:35  phk
+
+ * trunk/varnish-cache/contrib/libevent/event.c:
+
+   I have grumbled about the evilness of "current_base" before, and this just
+   proves the point: If two threads call event_init() at the same time,
+   they will both stomp on the same memory via current_base, and in all
+   likelyhood, neither of them will manage to get the job done properly.
+   
+   Instead work on a local variable and don't assign to current_base
+   until the setup is complete.
+   
+   This should be submitted to Niels Provos
+
+2006-07-03 18:35  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache.h,
+   trunk/varnish-cache/bin/varnishd/cache_acceptor.c:
+
+   Handle IPv6 address -> string conversion too
+
+2006-07-03 18:03  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache_expire.c:
+
+   Close race condition
+
+2006-07-03 17:59  phk
+
+ * trunk/varnish-cache/bin/varnishd/hash_classic.c:
+
+   Better arg checking
+
+2006-07-03 15:01  phk
+
+ * trunk/varnish-cache/lib/libvarnish/binary_heap.c:
+
+   more asserts
+
+2006-07-03 14:39  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache.h,
+   trunk/varnish-cache/bin/varnishd/cache_acceptor.c:
+
+   avoid const poison
+
+2006-07-03 14:39  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache_ban.c:
+
+   Include pthread.h
+
+2006-07-03 14:37  phk
+
+ * trunk/varnish-cache/bin/varnishd/storage_file.c,
+   trunk/varnish-cache/bin/varnishd/storage_malloc.c:
+
+   s/unsigned/size_t/
+
+2006-07-03 14:36  phk
+
+ * trunk/varnish-cache/bin/varnishd/hash_simple_list.c:
+
+   s/init/start/
+
+2006-07-03 12:41  phk
+
+ * trunk/varnish-cache/bin/varnishd/Makefile.am,
+   trunk/varnish-cache/bin/varnishd/cache.h,
+   trunk/varnish-cache/bin/varnishd/cache_fetch.c,
+   trunk/varnish-cache/bin/varnishd/cache_hash.c,
+   trunk/varnish-cache/bin/varnishd/cache_pool.c,
+   trunk/varnish-cache/bin/varnishd/hash_classic.c,
+   trunk/varnish-cache/bin/varnishd/hash_simple_list.c,
+   trunk/varnish-cache/bin/varnishd/hash_slinger.h,
+   trunk/varnish-cache/bin/varnishd/heritage.h,
+   trunk/varnish-cache/bin/varnishd/mgt.h,
+   trunk/varnish-cache/bin/varnishd/rfc2616.c,
+   trunk/varnish-cache/bin/varnishd/varnishd.c:
+
+   Add another hash-method with better real-world survival chances: A classic
+   bucketed hash table of lists. Hash is MD5. Number of buckets and number
+   of mutexes can be configured at command line.
+
+2006-07-03 08:30  des
+
+ * trunk/varnish-cache/configure.ac:
+
+   Replace --enable-wall and --enable-pedantic with
+   --enable-developer-warnings,
+   which is roughly equivalent to FreeBSD's WARNS level 5 or 6.
+
+2006-07-01 05:44  phk
+
+ * trunk/varnish-cache/include/http_headers.h:
+
+   Mark more headers as not end-to-end
+
+2006-06-30 20:22  phk
+
+ * trunk/varnish-cache/lib/libvarnishapi/shmlog.c:
+
+   Forgot to add shmlog.c (reminded by des@)
+
+2006-06-30 20:21  phk
+
+ * trunk/varnish-cache/include/queue.h:
+
+   Add TAILQ_FOREACH_SAFE()
+
+2006-06-30 20:17  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache.h,
+   trunk/varnish-cache/bin/varnishd/cache_fetch.c,
+   trunk/varnish-cache/bin/varnishd/rfc2616.c:
+
+   move all policy to rfc2616.c
+
+2006-06-30 13:44  des
+
+ * trunk/varnish-cache/bin/varnishd/cache.h,
+   trunk/varnish-cache/bin/varnishd/cache_acceptor.c,
+   trunk/varnish-cache/bin/varnishd/cache_fetch.c,
+   trunk/varnish-cache/bin/varnishd/cache_hash.c,
+   trunk/varnish-cache/bin/varnishd/cache_pass.c,
+   trunk/varnish-cache/bin/varnishd/cache_pipe.c,
+   trunk/varnish-cache/bin/varnishd/cache_vcl.c,
+   trunk/varnish-cache/bin/varnishd/cache_vrt.c,
+   trunk/varnish-cache/bin/varnishd/hash_simple_list.c,
+   trunk/varnish-cache/bin/varnishd/storage_file.c,
+   trunk/varnish-cache/bin/varnishd/storage_malloc.c,
+   trunk/varnish-cache/include/stats.h:
+
+   Consistently use our own copy of queue.h.
+
+2006-06-30 11:20  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache_fetch.c:
+
+   Fix object length double accounting in chunked fetch
+
+2006-06-30 09:14  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache_vcl.c:
+
+   Delete compiled VCL file after we tried to load it.
+
+2006-06-29 19:19  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache.h,
+   trunk/varnish-cache/bin/varnishd/cache_expire.c,
+   trunk/varnish-cache/bin/varnishd/cache_hash.c,
+   trunk/varnish-cache/include/shmlog_tags.h:
+
+   Log objects banned to shmlog
+
+2006-06-29 19:06  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache.h,
+   trunk/varnish-cache/bin/varnishd/cache_expire.c:
+
+   Track objects heap-position
+
+2006-06-29 17:09  phk
+
+ * trunk/varnish-cache/bin/varnishd/Makefile.am,
+   trunk/varnish-cache/bin/varnishd/cache.h,
+   trunk/varnish-cache/bin/varnishd/cache_ban.c,
+   trunk/varnish-cache/bin/varnishd/cache_hash.c,
+   trunk/varnish-cache/bin/varnishd/cache_main.c:
+
+   Add the ability to instantly ban/purge all cached objects matching
+   a given regexp.
+
+2006-06-29 15:14  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache_vcl.c,
+   trunk/varnish-cache/bin/varnishd/cache_vrt.c,
+   trunk/varnish-cache/bin/varnishlog/varnishlog.c,
+   trunk/varnish-cache/include/shmlog_tags.h:
+
+   Improve shm-logging of VCL activity
+
+2006-06-29 14:37  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache.h,
+   trunk/varnish-cache/bin/varnishd/cache_expire.c,
+   trunk/varnish-cache/bin/varnishd/cache_fetch.c,
+   trunk/varnish-cache/include/shmlog_tags.h:
+
+   Tag objects with their origin session xid and log it when we clean up.
+
+2006-06-29 13:04  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache.h,
+   trunk/varnish-cache/bin/varnishd/cache_backend.c,
+   trunk/varnish-cache/bin/varnishd/cache_fetch.c,
+   trunk/varnish-cache/bin/varnishd/cache_http.c,
+   trunk/varnish-cache/bin/varnishd/cache_pass.c,
+   trunk/varnish-cache/bin/varnishd/cache_pipe.c,
+   trunk/varnish-cache/bin/varnishd/cache_pool.c,
+   trunk/varnish-cache/include/shmlog_tags.h:
+
+   Add a unique transaction-ID to each request, and register it in the
+   shmlog so we can match backend transactions with client transactions.
+
+2006-06-28 21:38  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache_fetch.c:
+
+   Convince flexelint that we know what we do with some asserts
+
+2006-06-28 21:33  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache_shmlog.c:
+
+   Put a mutex around the shmlog writes, I've seen my first race.
+
+2006-06-28 21:18  phk
+
+ * trunk/varnish-cache/bin/varnishlog/Makefile.am,
+   trunk/varnish-cache/bin/varnishlog/varnishlog.c:
+
+   Add a -o argument which sorts the log into transactions before output,
+   this is a fair bit easier to chew through than the raw log (the default)
+
+2006-06-28 21:03  phk
+
+ * trunk/varnish-cache/bin/varnishstat/Makefile.am,
+   trunk/varnish-cache/bin/varnishstat/varnishstat.c:
+
+   Use shmlog api from libvarnishapi
+
+2006-06-28 20:58  phk
+
+ * trunk/varnish-cache/bin/varnishlog/Makefile.am,
+   trunk/varnish-cache/bin/varnishlog/varnishlog.c:
+
+   Use SHMLOG api in libvarnishapi
+
+2006-06-28 20:58  phk
+
+ * trunk/varnish-cache/include/varnishapi.h,
+   trunk/varnish-cache/lib/libvarnishapi/Makefile.am:
+
+   Add SHMLOG opening and walking functions to libvarnishapi
+
+2006-06-28 17:46  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache.h,
+   trunk/varnish-cache/bin/varnishd/cache_acceptor.c,
+   trunk/varnish-cache/bin/varnishd/cache_fetch.c,
+   trunk/varnish-cache/bin/varnishd/cache_pool.c:
+
+   Be more consistent about which headers we send back.
+   
+   Start 5 threads in the worker pool.
+
+2006-06-28 16:59  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache_fetch.c:
+
+   Construct our own Content-length header, no matter which of the
+   three (straight, chunked, eof) modes we used to fetch the object.
+
+2006-06-28 16:58  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache_http.c:
+
+   Don't finish the sbuf in mode 3
+
+2006-06-28 16:57  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache_acceptor.c:
+
+   Assert that the lengths of the storage for the object add up.
+
+2006-06-28 16:57  phk
+
+ * trunk/varnish-cache/include/http_headers.h:
+
+   Don't pass Content-Lenght through, we build it ourselves
+
+2006-06-28 16:20  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache.h,
+   trunk/varnish-cache/bin/varnishd/cache_fetch.c,
+   trunk/varnish-cache/bin/varnishd/cache_http.c,
+   trunk/varnish-cache/bin/varnishd/cache_pass.c,
+   trunk/varnish-cache/bin/varnishd/cache_pipe.c:
+
+   Pass fd to shmemlog
+
+2006-06-28 16:19  phk
+
+ * trunk/varnish-cache/include/shmlog_tags.h:
+
+   add tag for generated headers
+
+2006-06-28 16:19  phk
+
+ * trunk/varnish-cache/include/http_headers.h:
+
+   Don't pass If-* headers to backend
+
+2006-06-28 16:14  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache_vrt.c:
+
+   Apply correct fd in Shmemlog
+
+2006-06-28 16:04  phk
+
+ * trunk/varnish-cache/bin/varnishd/storage_file.c:
+
+   Fix buglets, include test-driver.
+
+2006-06-28 11:29  phk
+
+ * trunk/varnish-cache/bin/varnishstat/Makefile.am,
+   trunk/varnish-cache/bin/varnishstat/varnishstat.c:
+
+   Give varnishstat a "-c" option to use curses to continously refresh
+
+2006-06-28 11:21  phk
+
+ * trunk/varnish-cache/bin/Makefile.am,
+   trunk/varnish-cache/bin/varnishstat,
+   trunk/varnish-cache/bin/varnishstat/Makefile.am,
+   trunk/varnish-cache/bin/varnishstat/varnishstat.c,
+   trunk/varnish-cache/configure.ac:
+
+   Add varnishstat program
+
+2006-06-28 10:31  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache_fetch.c:
+
+   304's don't have a body
+
+2006-06-28 10:30  phk
+
+ * trunk/varnish-cache/bin/varnishd/storage_file.c:
+
+   Implement ->trim()
+
+2006-06-28 09:39  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache_acceptor.c,
+   trunk/varnish-cache/bin/varnishd/cache_backend.c,
+   trunk/varnish-cache/bin/varnishd/cache_pool.c,
+   trunk/varnish-cache/include/stat_field.h:
+
+   More stats counters
+
+2006-06-28 09:21  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache.h,
+   trunk/varnish-cache/bin/varnishd/cache_acceptor.c,
+   trunk/varnish-cache/bin/varnishd/cache_shmlog.c,
+   trunk/varnish-cache/bin/varnishd/mgt.h,
+   trunk/varnish-cache/bin/varnishd/varnishd.c,
+   trunk/varnish-cache/include/shmlog.h,
+   trunk/varnish-cache/include/stat_field.h,
+   trunk/varnish-cache/include/stats.h:
+
+   Add statistics counter support.
+   
+   stat_field.h defines the counter fields with name, type, (printf)format
+   and description.
+   
+   stats.h defines a structure with these fields.
+   
+   shmlog.h makes the structure part of the shared memory logs header.
+   
+   Implent the "stats" CLI word in the management process.
+
+2006-06-26 19:25  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache.h,
+   trunk/varnish-cache/bin/varnishd/cache_expire.c:
+
+   Call VCL to decide discard/prefetch for near-expiry objects.
+   
+   Put discard objects on deathrow where they will be culled from
+   in sequence.
+   
+   (prefetch not implemented yet)
+
+2006-06-26 19:24  phk
+
+ * trunk/varnish-cache/bin/varnishd/rfc2616.c:
+
+   A temporary hack to deal with very old Date: headers until we figure
+   out what's going on.
+
+2006-06-26 19:23  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache_fetch.c:
+
+   Implement HTTP/1.0 style fetching.
+
+2006-06-26 17:06  phk
+
+ * trunk/varnish-cache/bin/varnishd/storage_malloc.c:
+
+   Another little tweak
+
+2006-06-26 16:31  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache_vcl.c:
+
+   Dump numeric handling also, until we figure out trouble.
+
+2006-06-26 16:30  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache_hash.c:
+
+   typo
+
+2006-06-26 16:19  phk
+
+ * trunk/varnish-cache/bin/varnishd/storage_malloc.c:
+
+   Make this work again: record the stevedore in the storage object.
+
+2006-06-26 14:33  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache.h,
+   trunk/varnish-cache/bin/varnishd/cache_expire.c,
+   trunk/varnish-cache/bin/varnishd/cache_fetch.c,
+   trunk/varnish-cache/bin/varnishd/cache_hash.c,
+   trunk/varnish-cache/bin/varnishd/cache_pool.c,
+   trunk/varnish-cache/bin/varnishd/hash_simple_list.c:
+
+   Start releasing objects when they expire
+
+2006-06-26 14:00  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache.h,
+   trunk/varnish-cache/bin/varnishd/cache_hash.c,
+   trunk/varnish-cache/bin/varnishd/hash_simple_list.c:
+
+   Move a bit more responsibility into the hash-slinger to get a cleaner
+   interface.
+
+2006-06-26 08:58  phk
+
+ * trunk/varnish-cache/bin/varnishd/Makefile.am,
+   trunk/varnish-cache/bin/varnishd/cache.h,
+   trunk/varnish-cache/bin/varnishd/cache_fetch.c,
+   trunk/varnish-cache/bin/varnishd/cache_hash.c,
+   trunk/varnish-cache/bin/varnishd/cache_main.c,
+   trunk/varnish-cache/bin/varnishd/cache_pool.c,
+   trunk/varnish-cache/bin/varnishd/hash_simple_list.c:
+
+   Now that we approach the time where objects have to be destroyed again,
+   we need to move the data structures into the right shape.
+   
+   Push hashing into cache_hash.c
+   
+   Add objhead structure to hold the various hits for "Vary:" headers.
+
+2006-06-24 22:11  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache_expire.c:
+
+   A little bit more work on the expiry/prefetch thing.
+
+2006-06-24 21:54  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache.h,
+   trunk/varnish-cache/bin/varnishd/cache_expire.c,
+   trunk/varnish-cache/bin/varnishd/cache_fetch.c,
+   trunk/varnish-cache/bin/varnishd/rfc2616.c:
+
+   Use ttl=0 as a "invalid TTL" flag.
+   
+   Mark objects with ttl=0 uncachable.
+   
+   Add cacheable objects to the expiry heap
+   
+   Start an expiry thread which polls the root element once per second
+
+2006-06-24 21:42  phk
+
+ * trunk/varnish-cache/bin/varnishd/rfc2616.c:
+
+   Truncate TTLs in the past to now.
+
+2006-06-24 21:09  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache.h:
+
+   Autogenerate prototypes for method calling functions
+
+2006-06-24 21:07  phk
+
+ * trunk/varnish-cache/bin/varnishd/varnishd.c,
+   trunk/varnish-cache/include/vcl.h,
+   trunk/varnish-cache/include/vcl_returns.h,
+   trunk/varnish-cache/lib/libvcl/vcl_fixed_token.c,
+   trunk/varnish-cache/lib/libvcl/vcl_gen_fixed_token.tcl,
+   trunk/varnish-cache/lib/libvcl/vcl_token_defs.h:
+
+   Add a "timeout" method to VCL, it can return "fetch" or "discard".
+
+2006-06-24 20:50  phk
+
+ * trunk/varnish-cache/lib/libvcl/vcl_compile.c,
+   trunk/varnish-cache/lib/libvcl/vcl_fixed_token.c,
+   trunk/varnish-cache/lib/libvcl/vcl_gen_fixed_token.tcl,
+   trunk/varnish-cache/lib/libvcl/vcl_token_defs.h:
+
+   Add a token type "METHOD", we use it for reference counting.
+   
+   Add a reference to the first backend {} we encounter, it is the default.
+   Add a reference to all backends assigned explicitly.
+   Add a reference to all methods.
+   
+   Enable reference check, complain if: backend, function or acl is defined
+   but not used, or used but not defined.
+
+2006-06-24 20:12  phk
+
+ * trunk/varnish-cache/lib/libvcl/vcl_compile.c:
+
+   Collapse multiline Fc and Fh calls where they fit
+
+2006-06-24 20:09  phk
+
+ * trunk/varnish-cache/lib/libvcl/vcl_compile.c:
+
+   More printf sanitation: Create to convenience functions for output to the
+   fh and fc sbufs.
+
+2006-06-24 19:50  phk
+
+ * trunk/varnish-cache/lib/libvcl/vcl_compile.c:
+
+   Cave in and use printf format extensions for printing tokens.
+   Both Linux and FreeBSD supports them anyway.
+
+2006-06-24 19:41  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache.h,
+   trunk/varnish-cache/bin/varnishd/cache_fetch.c,
+   trunk/varnish-cache/bin/varnishd/cache_pool.c,
+   trunk/varnish-cache/bin/varnishd/cache_vcl.c,
+   trunk/varnish-cache/bin/varnishd/cache_vrt.c,
+   trunk/varnish-cache/include/shmlog_tags.h,
+   trunk/varnish-cache/include/vrt.h,
+   trunk/varnish-cache/lib/libvcl/vcl_compile.c,
+   trunk/varnish-cache/lib/libvcl/vcl_fixed_token.c:
+
+   Add more shmemlog tags:
+   one for each VCL method to record the return
+   one for errors
+   one for linking a client session to a backend connection
+   Use them sensibly.
+   Put VCL name of backend into struct backend to improve log messages
+
+2006-06-22 16:17  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache.h,
+   trunk/varnish-cache/bin/varnishd/cache_pool.c,
+   trunk/varnish-cache/bin/varnishd/cache_vcl.c,
+   trunk/varnish-cache/bin/varnishd/cache_vrt.c,
+   trunk/varnish-cache/include/vcl.h,
+   trunk/varnish-cache/include/vcl_returns.h,
+   trunk/varnish-cache/include/vrt.h,
+   trunk/varnish-cache/lib/libvcl/vcl_compile.c,
+   trunk/varnish-cache/lib/libvcl/vcl_fixed_token.c,
+   trunk/varnish-cache/lib/libvcl/vcl_gen_fixed_token.tcl,
+   trunk/varnish-cache/lib/libvcl/vcl_token_defs.h:
+
+   Improve the VCL compiler in various ways:
+   
+   Generate the methods and their legal returns with the tcl script.
+   
+   Add consistency checks to make sure methods don't use illegal returns,
+   and also check called subrourtines.
+   
+   Add consistency check to complain about recursive subroutine calls.
+   
+   Add consistency check to complain about unused or undefined subroutines.
+
+2006-06-21 10:28  phk
+
+ * trunk/varnish-cache/bin/varnishd/Makefile.am,
+   trunk/varnish-cache/bin/varnishd/cache.h,
+   trunk/varnish-cache/bin/varnishd/cache_expire.c,
+   trunk/varnish-cache/bin/varnishd/cache_main.c:
+
+   Add (empty) source file for expiry/pretech code
+
+2006-06-21 10:21  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache.h,
+   trunk/varnish-cache/bin/varnishd/cache_fetch.c,
+   trunk/varnish-cache/bin/varnishd/cache_pool.c,
+   trunk/varnish-cache/bin/varnishd/rfc2616.c:
+
+   Start to respect TTL
+
+2006-06-21 10:13  phk
+
+ * trunk/varnish-cache/bin/varnishd/heritage.h,
+   trunk/varnish-cache/bin/varnishd/varnishd.c:
+
+   Add "-t default_ttl" option. 120 seconds by default.
+
+2006-06-21 09:58  phk
+
+ * trunk/varnish-cache/bin/varnishd/storage_file.c:
+
+   Quench some debugging
+
+2006-06-21 08:09  phk
+
+ * trunk/varnish-cache/include/Makefile.am,
+   trunk/varnish-cache/include/binary_heap.h,
+   trunk/varnish-cache/lib/libvarnish/Makefile.am,
+   trunk/varnish-cache/lib/libvarnish/binary_heap.c,
+   trunk/varnish-cache/lib/libvcl/vcl_fixed_token.c:
+
+   Add a binary heap implementation for keeping track of objects expiry time.
+
+2006-06-20 19:49  phk
+
+ * trunk/varnish-cache/include/vrt.h:
+
+   typo
+
+2006-06-20 19:38  phk
+
+ * trunk/varnish-cache/lib/libvcl/flint.lnt,
+   trunk/varnish-cache/lib/libvcl/flint.sh:
+
+   FlexeLint files
+
+2006-06-20 19:37  phk
+
+ * trunk/varnish-cache/lib/libvcl/vcl_compile.c:
+
+   FlexeLint cleanups
+
+2006-06-20 19:31  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache.h,
+   trunk/varnish-cache/bin/varnishd/cache_backend.c,
+   trunk/varnish-cache/bin/varnishd/cache_fetch.c,
+   trunk/varnish-cache/bin/varnishd/cache_main.c,
+   trunk/varnish-cache/bin/varnishd/cache_pipe.c,
+   trunk/varnish-cache/bin/varnishd/cache_shmlog.c,
+   trunk/varnish-cache/bin/varnishd/cli_event.c,
+   trunk/varnish-cache/bin/varnishd/flint.lnt,
+   trunk/varnish-cache/bin/varnishd/storage_file.c,
+   trunk/varnish-cache/bin/varnishd/varnishd.c:
+
+   Polish things to silence FlexeLint a bit
+
+2006-06-20 11:39  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache_backend.c,
+   trunk/varnish-cache/bin/varnishd/cache_fetch.c,
+   trunk/varnish-cache/bin/varnishd/cache_main.c,
+   trunk/varnish-cache/bin/varnishd/cache_pass.c,
+   trunk/varnish-cache/bin/varnishd/cache_pipe.c,
+   trunk/varnish-cache/bin/varnishd/cache_pool.c,
+   trunk/varnish-cache/bin/varnishd/cache_vcl.c,
+   trunk/varnish-cache/bin/varnishd/cache_vrt.c,
+   trunk/varnish-cache/bin/varnishd/hash_simple_list.c,
+   trunk/varnish-cache/bin/varnishd/rfc2616.c,
+   trunk/varnish-cache/bin/varnishd/storage_file.c,
+   trunk/varnish-cache/bin/varnishd/storage_malloc.c,
+   trunk/varnish-cache/bin/varnishd/varnishd.c,
+   trunk/varnish-cache/include/vcl.h,
+   trunk/varnish-cache/include/vcl_lang.h,
+   trunk/varnish-cache/include/vrt.h,
+   trunk/varnish-cache/lib/libvcl/vcl_fixed_token.c,
+   trunk/varnish-cache/lib/libvcl/vcl_gen_fixed_token.tcl:
+
+   Rename vcl_lang.h to vcl.h and include practically nowhere.
+   
+   Remove #include bogohandling in vcl_gen_fixed_token.tcl
+
+2006-06-20 10:31  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache.h,
+   trunk/varnish-cache/bin/varnishd/cache_acceptor.c,
+   trunk/varnish-cache/bin/varnishd/cache_http.c,
+   trunk/varnish-cache/bin/varnishd/cache_pool.c,
+   trunk/varnish-cache/bin/varnishd/cache_vrt.c,
+   trunk/varnish-cache/include/vcl_lang.h,
+   trunk/varnish-cache/include/vrt.h,
+   trunk/varnish-cache/lib/libvcl/vcl_compile.c,
+   trunk/varnish-cache/lib/libvcl/vcl_fixed_token.c:
+
+   At the expense of some complexity and a small runtime overhead,
+   isolate the compiled code from the internal structures of the cache
+   process through of VRT functions.
+
+2006-06-20 09:41  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache_vrt.c,
+   trunk/varnish-cache/include/vcl_lang.h,
+   trunk/varnish-cache/include/vrt.h,
+   trunk/varnish-cache/lib/libvcl/vcl_compile.c,
+   trunk/varnish-cache/lib/libvcl/vcl_fixed_token.c:
+
+   Work towards making struct sess opaque to the generated code.
+
+2006-06-20 09:28  phk
+
+ * trunk/varnish-cache/bin/varnishd/varnishd.c,
+   trunk/varnish-cache/include/libvcl.h,
+   trunk/varnish-cache/lib/libvcl/vcl_compile.c:
+
+   Rename the VCL compilers public functions to VCC prefix
+
+2006-06-20 09:25  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache_vrt.c,
+   trunk/varnish-cache/include/vcl_lang.h,
+   trunk/varnish-cache/include/vrt.h,
+   trunk/varnish-cache/lib/libvcl/vcl_compile.c,
+   trunk/varnish-cache/lib/libvcl/vcl_fixed_token.c:
+
+   Get rid of VCL_FARGS and VCL_PASS_ARGS macros.
+   
+   Generate VGC prefixes instead of VCL.
+
+2006-06-20 09:15  phk
+
+ * trunk/varnish-cache/bin/varnishd/Makefile.am,
+   trunk/varnish-cache/bin/varnishd/cache_vcl.c,
+   trunk/varnish-cache/bin/varnishd/cache_vrt.c,
+   trunk/varnish-cache/include/vcl_lang.h,
+   trunk/varnish-cache/include/vrt.h,
+   trunk/varnish-cache/lib/libvcl/vcl_compile.c,
+   trunk/varnish-cache/lib/libvcl/vcl_fixed_token.c,
+   trunk/varnish-cache/lib/libvcl/vcl_gen_fixed_token.tcl:
+
+   Start putting some structure in the sources relating to VCL handling:
+   
+   Split the runtime support for compiled varnish programs out and give it the
+   prefix "VRT".
+   
+   Start using the prefix "VGC" for generated code.
+   
+   Prefix "VCC" will be for the compiler and "VCL" for calling the
+   compiled and
+   loaded functions.
+
+2006-06-18 10:28  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache_vcl.c,
+   trunk/varnish-cache/include/vcl_lang.h,
+   trunk/varnish-cache/lib/libvcl/vcl_compile.c,
+   trunk/varnish-cache/lib/libvcl/vcl_fixed_token.c:
+
+   Output line+pos for counts.
+
+2006-06-18 10:19  phk
+
+ * trunk/varnish-cache/lib/libvcl/vcl_compile.c:
+
+   Insert a count-point after each conditional.
+
+2006-06-18 10:16  phk
+
+ * trunk/varnish-cache/lib/libvcl/vcl_compile.c:
+
+   Get the sense of string compares right.
+
+2006-06-18 10:12  phk
+
+ * trunk/varnish-cache/bin/varnishd/rfc2616.c:
+
+   debug printf for max-age
+
+2006-06-18 10:10  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache.h,
+   trunk/varnish-cache/bin/varnishd/cache_http.c,
+   trunk/varnish-cache/bin/varnishd/cache_vcl.c,
+   trunk/varnish-cache/include/vcl_lang.h,
+   trunk/varnish-cache/lib/libvcl/vcl_compile.c,
+   trunk/varnish-cache/lib/libvcl/vcl_fixed_token.c:
+
+   Implement req.request properly
+
+2006-06-18 10:04  phk
+
+ * trunk/varnish-cache/bin/varnishd/varnishd.c:
+
+   Pass if we spot an Authenticate or Cookie header
+
+2006-06-18 10:03  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache_vcl.c:
+
+   Add VCL function for getting HTTP header
+
+2006-06-18 10:02  phk
+
+ * trunk/varnish-cache/include/vcl_lang.h,
+   trunk/varnish-cache/lib/libvcl/vcl_compile.c,
+   trunk/varnish-cache/lib/libvcl/vcl_fixed_token.c:
+
+   Add support for investigating random HTTP headers.
+
+2006-06-18 09:16  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache.h,
+   trunk/varnish-cache/bin/varnishd/cache_fetch.c,
+   trunk/varnish-cache/bin/varnishd/cache_pool.c,
+   trunk/varnish-cache/bin/varnishd/cache_vcl.c:
+
+   Add wrappers around VCL methos so logging and checking of returned handling
+   can be centralized.
+   
+   Remove old handling callbacks.
+   
+   Call hit/miss methods instead of lookup method.
+
+2006-06-18 09:14  phk
+
+ * trunk/varnish-cache/bin/varnishd/varnishd.c:
+
+   add explicit "lookup" to recv method
+
+2006-06-18 09:11  phk
+
+ * trunk/varnish-cache/include/vcl_lang.h,
+   trunk/varnish-cache/lib/libvcl/vcl_compile.c,
+   trunk/varnish-cache/lib/libvcl/vcl_fixed_token.c,
+   trunk/varnish-cache/lib/libvcl/vcl_gen_fixed_token.tcl,
+   trunk/varnish-cache/lib/libvcl/vcl_token_defs.h:
+
+   Correctly handle \ sequences in .h files in vcl_gen_fixed_token.tcl
+   
+   Make handling a named enum, and use it as a bitmap.
+   
+   Add "lookup" reserved word
+   
+   Add VCL_done() macro to use in compiled code to set handling and drop
+   the per-handling callbacks (apart from VCL_error())
+
+2006-06-18 07:28  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache_vcl.c,
+   trunk/varnish-cache/bin/varnishd/varnishd.c,
+   trunk/varnish-cache/include/vcl_lang.h,
+   trunk/varnish-cache/lib/libvcl/vcl_compile.c,
+   trunk/varnish-cache/lib/libvcl/vcl_fixed_token.c,
+   trunk/varnish-cache/lib/libvcl/vcl_gen_fixed_token.tcl,
+   trunk/varnish-cache/lib/libvcl/vcl_token_defs.h:
+
+   Add "deliver" keyword to VCL compiler.
+   
+   Split vcl_lookup() in vcl_hit() and vcl_miss()
+
+2006-06-16 10:22  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache.h,
+   trunk/varnish-cache/bin/varnishd/cache_fetch.c,
+   trunk/varnish-cache/bin/varnishd/cache_http.c,
+   trunk/varnish-cache/bin/varnishd/cache_pool.c:
+
+   Initial http_GetHdrField() function.
+   
+   Improve chunked encoding, allocate big storage chunks and trim the
+   last one at the end, instead of one storage chunk for each chunk
+   the remote server sends.
+   
+   Call RFC2616 policy code.
+   
+   Store headers from backend in cache and return to client.
+
+2006-06-16 10:20  phk
+
+ * trunk/varnish-cache/include/vcl_lang.h,
+   trunk/varnish-cache/lib/libvcl/vcl_fixed_token.c:
+
+   Add header field to object
+
+2006-06-16 10:19  phk
+
+ * trunk/varnish-cache/include/http_headers.h:
+
+   Supress Transfer-Encoding
+
+2006-06-16 10:18  phk
+
+ * trunk/varnish-cache/bin/varnishd/Makefile.am,
+   trunk/varnish-cache/bin/varnishd/rfc2616.c:
+
+   The beginnings of rfc2616 policy implemenation.
+
+2006-06-16 10:17  phk
+
+ * trunk/varnish-cache/bin/varnishd/stevedore.h,
+   trunk/varnish-cache/bin/varnishd/storage_file.c,
+   trunk/varnish-cache/bin/varnishd/storage_malloc.c:
+
+   Add trim method to storage backends so chunked encoding can be
+   stored efficiently.
+
+2006-06-16 10:16  phk
+
+ * trunk/varnish-cache/include/libvarnish.h,
+   trunk/varnish-cache/lib/libvarnish/Makefile.am,
+   trunk/varnish-cache/lib/libvarnish/time.c:
+
+   Add time parse/format functions to libvarnish
+
+2006-06-15 08:04  phk
+
+ * trunk/varnish-cache/bin/varnishd/mgt_child.c:
+
+   less noise
+
+2006-06-15 08:04  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache_main.c:
+
+   Less noise
+
+2006-06-14 09:57  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache.h,
+   trunk/varnish-cache/bin/varnishd/cache_fetch.c,
+   trunk/varnish-cache/bin/varnishd/cache_http.c,
+   trunk/varnish-cache/bin/varnishd/cache_vcl.c:
+
+   start examining HTTP status codes from backend
+
+2006-06-14 09:39  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache.h,
+   trunk/varnish-cache/bin/varnishd/cache_acceptor.c,
+   trunk/varnish-cache/bin/varnishd/cache_fetch.c,
+   trunk/varnish-cache/bin/varnishd/cache_pool.c:
+
+   Add vca_write_obj() which writes an sbuf (as) HTTP header and the
+   object from the sessions to the client.
+
+2006-06-14 09:25  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache.h,
+   trunk/varnish-cache/bin/varnishd/cache_acceptor.c,
+   trunk/varnish-cache/bin/varnishd/cache_http.c,
+   trunk/varnish-cache/bin/varnishd/cache_pipe.c,
+   trunk/varnish-cache/bin/varnishd/cache_pool.c:
+
+   Clean up session messages a bit
+
+2006-06-14 09:23  phk
+
+ * trunk/varnish-cache/include/shmlog_tags.h:
+
+   Add HttpError tag
+
+2006-06-14 09:03  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache.h,
+   trunk/varnish-cache/bin/varnishd/cache_acceptor.c,
+   trunk/varnish-cache/bin/varnishd/cache_pipe.c,
+   trunk/varnish-cache/bin/varnishd/cache_pool.c:
+
+   Sanitize close/recycle session logic a bit.
+
+2006-06-14 08:53  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache.h,
+   trunk/varnish-cache/bin/varnishd/cache_acceptor.c,
+   trunk/varnish-cache/bin/varnishd/cache_main.c:
+
+   Initialize the cache_acceptor.c/VCA in the same manner as other parts.
+
+2006-06-14 07:21  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache_pool.c,
+   trunk/varnish-cache/bin/varnishd/stevedore.h,
+   trunk/varnish-cache/bin/varnishd/storage_file.c:
+
+   Give storage backends a "send" method.
+   
+   Let storage_file use sendfile(2) for it.
+
+2006-06-14 06:58  phk
+
+ * trunk/varnish-cache/bin/varnishd/storage_file.c:
+
+   Complete the storage_file method.
+
+2006-06-13 20:09  phk
+
+ * trunk/varnish-cache/bin/varnishd/varnishd.c:
+
+   Default to "file" stevedore from now on.
+
+2006-06-13 20:06  phk
+
+ * trunk/varnish-cache/bin/varnishd/storage_file.c:
+
+   Be more aggressive about mmap'ing memory. The size_t thing is a bogus
+   constraint in FreeBSD and we shouldn't really listen to it.
+   
+   On my laptop I can mmap 2422MB file this way.
+   
+   This may be so aggressive that it leaves insufficient address space for
+   malloc/threadstacks and other issues.
+   
+   If we find a way to pick up a platform/architecture specific limit, we
+   can enforce that along the way.
+   
+   For now people can just specify a saner and smaller "-sfile" size.
+
+2006-06-13 13:47  phk
+
+ * trunk/varnish-cache/bin/varnishd/storage_file.c:
+
+   mmap as much as the file as we are able to when the cache process opens
+   the stevedore.
+   
+   This should probably be (fine-)tuned later on as it might be too aggressive
+   when faced with user errors.
+   
+   Also, might it be possible to mmap() more than MAX_SIZE_T bytes if
+   it is done in multiple calls ?
+
+2006-06-13 13:14  phk
+
+ * trunk/varnish-cache/bin/varnishd/storage_file.c:
+
+   Calculate the size of the backing store file.
+   
+   A size can be specified in absolute terms (suffix: k, m, g, t supported),
+   but also as a percentage of the filesystems free space (suffix '%').
+   
+   If the specified size is larger than an off_t can cope, we bisect
+   repeatedly until it can.
+   
+   If the size exceeds the available space of the filesystem, we truncate
+   to 80% of the free space.
+   
+   Then round down to an integral number of blocks, sized by the larger
+   of the filesystem blocksize and the pagesize.
+   
+   This was tricker than I'd expected...
+
+2006-06-13 13:10  phk
+
+ * trunk/varnish-cache/bin/varnishd/varnishd.c:
+
+   Clone the stevedore before calling its init function and be more precise
+   about any optional arguments.
+
+2006-06-13 08:05  phk
+
+ * trunk/varnish-cache/bin/varnishd/_stevedore.h,
+   trunk/varnish-cache/bin/varnishd/cache.h,
+   trunk/varnish-cache/bin/varnishd/mgt.h,
+   trunk/varnish-cache/bin/varnishd/stevedore.h:
+
+   After having a strong cup of tea: don't name files with leading underscore
+   even though that's how FreeBSD's kernel does it. In my private world
+   a leading underscore means "junk file, remove at your pleasure".
+
+2006-06-13 08:02  phk
+
+ * trunk/varnish-cache/bin/varnishd/Makefile.am,
+   trunk/varnish-cache/bin/varnishd/mgt.h,
+   trunk/varnish-cache/bin/varnishd/storage_file.c,
+   trunk/varnish-cache/bin/varnishd/varnishd.c:
+
+   Clone the malloc stevedore to the file stevedore
+
+2006-06-13 07:59  phk
+
+ * trunk/varnish-cache/bin/varnishd/varnishd.c:
+
+   Remember to tell getopt about -s
+
+2006-06-13 07:57  phk
+
+ * trunk/varnish-cache/bin/varnishd/_stevedore.h,
+   trunk/varnish-cache/bin/varnishd/cache.h,
+   trunk/varnish-cache/bin/varnishd/cache_fetch.c,
+   trunk/varnish-cache/bin/varnishd/cache_main.c,
+   trunk/varnish-cache/bin/varnishd/heritage.h,
+   trunk/varnish-cache/bin/varnishd/mgt.h,
+   trunk/varnish-cache/bin/varnishd/storage_malloc.c,
+   trunk/varnish-cache/bin/varnishd/varnishd.c:
+
+   Put more meat on the stevedore (storage backend) interface:
+   
+   Pull the struct definition into _stevedore.h and include this from
+   cache.h and mgt.h, they both need to be able to see it.
+   
+   Add the stevedore pointer as an argument to the stevedore alloc function
+   so multiple stevedores is possible later on.
+   
+   Add the stevedore pointer to the storage object, so freeing it again is
+   possible.
+   
+   Add -s argument processing to select a given stevedore, call it's ->init
+   method and pass the stevedore in the heritage.
+   
+   In the cache process pick stevedore out from heritage, call its open
+   method.
+
+2006-06-13 07:26  phk
+
+ * trunk/varnish-cache/bin/varnishd/storage_malloc.c:
+
+   Use NULL init method
+
+2006-06-13 07:25  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache_main.c:
+
+   Allow for NULL init methods for hash and stevedore
+
+2006-05-01 12:59  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache_pool.c:
+
+   Use vca_write/vca_flush
+
+2006-05-01 12:59  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache_fetch.c:
+
+   Use vca_write/vca_flush
+
+2006-05-01 12:51  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache_pass.c:
+
+   Use vca_write/vca_flush
+
+2006-05-01 12:45  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache.h,
+   trunk/varnish-cache/bin/varnishd/cache_acceptor.c:
+
+   Add vca_write() and vca_flush(), two functions which will attempt to
+   use writev() if possible.
+   
+   vca_flush() must be called before any memory previosly given to
+   vca_write is overwritten, and after the last call to vca_write()
+
+2006-05-01 12:28  phk
+
+ * trunk/varnish-cache/bin/varnishd/flint.lnt,
+   trunk/varnish-cache/bin/varnishd/flint.sh:
+
+   Add FlexeLint files
+
+2006-05-01 12:27  phk
+
+ * trunk/varnish-cache/bin/varnishd/varnishd.c:
+
+   bandaid for name-clash
+
+2006-05-01 12:27  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache_backend.c:
+
+   Keep track of how many connections we have open
+
+2006-05-01 12:27  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache.h:
+
+   add missing extern
+
+2006-05-01 10:55  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache.h,
+   trunk/varnish-cache/bin/varnishd/cache_acceptor.c,
+   trunk/varnish-cache/bin/varnishd/cache_fetch.c,
+   trunk/varnish-cache/bin/varnishd/cache_http.c,
+   trunk/varnish-cache/bin/varnishd/cache_main.c,
+   trunk/varnish-cache/bin/varnishd/cache_pass.c,
+   trunk/varnish-cache/bin/varnishd/cache_pool.c:
+
+   Add INCOMPL() macro to mark missing code.
+   
+   Add http_HdrIs() to check if we have a given header and if we do
+   if it has a given value.
+   
+   Use it.
+   
+   Ignore SIGPIPE since SO_NOSIGPIPE doesn't work reliably, (but set
+   it on accepted TCP connections anyway).
+   
+   Update passing to match fetching, including a chunked encoding method.
+
+2006-05-01 07:54  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache_backend.c:
+
+   Add yet another thread with an event engine to monitor idle backend
+   connections and clean them out if the backend closes.
+
+2006-05-01 07:53  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache_fetch.c:
+
+   Centralize "Connection: close" handling from the backend.
+   
+   Loop until we have the entire chunk in chunked encoding
+
+2006-04-25 09:32  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache_backend.c,
+   trunk/varnish-cache/bin/varnishd/cache_fetch.c,
+   trunk/varnish-cache/bin/varnishd/cache_http.c:
+
+   test backend connections at allocation time.
+   
+   General bush-wacking in the fetch code.
+
+2006-04-25 09:31  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache_pass.c,
+   trunk/varnish-cache/bin/varnishd/cache_pipe.c:
+
+   Fix argument to http_BuildSbuf
+
+2006-04-25 09:30  phk
+
+ * trunk/varnish-cache/bin/varnishd/mgt_child.c:
+
+   Keep alive often enough
+
+2006-04-25 08:17  phk
+
+ * trunk/varnish-cache/bin/varnishlog/varnishlog.c:
+
+   Make width colum wider and decimal
+
+2006-04-25 08:17  phk
+
+ * trunk/varnish-cache/include/shmlog_tags.h,
+   trunk/varnish-cache/include/vcl_lang.h,
+   trunk/varnish-cache/lib/libvcl/vcl_fixed_token.c:
+
+   Add new shmlog tags and handling states
+
+2006-04-25 08:14  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache_fetch.c,
+   trunk/varnish-cache/bin/varnishd/cache_pool.c:
+
+   Implement a rudimentary chunked Transfer-Encoding
+
+2006-04-25 07:10  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache_http.c:
+
+   reset header count before we dissect
+
+2006-04-25 07:04  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache_backend.c,
+   trunk/varnish-cache/bin/varnishd/cache_fetch.c:
+
+   Track backend connections in shmem log
+
+2006-04-25 06:52  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache_http.c:
+
+   Add an end pointer so allocation size can be changed on the fly
+
+2006-04-25 06:48  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache_fetch.c,
+   trunk/varnish-cache/bin/varnishd/cache_pool.c:
+
+   Move shmlog entry, remove debugging
+
+2006-04-25 06:16  phk
+
+ * trunk/varnish-cache/bin/varnishd/Makefile.am,
+   trunk/varnish-cache/bin/varnishd/cache.h,
+   trunk/varnish-cache/bin/varnishd/cache_acceptor.c,
+   trunk/varnish-cache/bin/varnishd/cache_fetch.c,
+   trunk/varnish-cache/bin/varnishd/cache_http.c,
+   trunk/varnish-cache/bin/varnishd/cache_httpd.c,
+   trunk/varnish-cache/bin/varnishd/cache_pass.c,
+   trunk/varnish-cache/bin/varnishd/cache_pipe.c,
+   trunk/varnish-cache/bin/varnishd/cache_pool.c,
+   trunk/varnish-cache/bin/varnishd/cache_vcl.c,
+   trunk/varnish-cache/bin/varnishd/varnishd.c,
+   trunk/varnish-cache/include/http_headers.h,
+   trunk/varnish-cache/include/shmlog_tags.h,
+   trunk/varnish-cache/include/vcl_lang.h,
+   trunk/varnish-cache/lib/libvcl/vcl_compile.c,
+   trunk/varnish-cache/lib/libvcl/vcl_fixed_token.c:
+
+   Redo http header storage and processing
+
+2006-04-24 19:10  phk
+
+ * trunk/varnish-cache/bin/varnishd/varnishd.c:
+
+   Add an indecisive comment
+
+2006-04-24 19:09  phk
+
+ * trunk/varnish-cache/include/http_headers.h:
+
+   Sort and annotate
+
+2006-04-19 06:38  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache_fetch.c:
+
+   Loop until we have read it all
+
+2006-04-19 06:34  phk
+
+ * trunk/varnish-cache/bin/varnishd/Makefile.am,
+   trunk/varnish-cache/bin/varnishd/cache.h,
+   trunk/varnish-cache/bin/varnishd/cache_fetch.c,
+   trunk/varnish-cache/bin/varnishd/cache_pool.c,
+   trunk/varnish-cache/bin/varnishd/hash_simple_list.c,
+   trunk/varnish-cache/bin/varnishlog/varnishlog.c,
+   trunk/varnish-cache/include/shmlog_tags.h,
+   trunk/varnish-cache/include/vcl_lang.h,
+   trunk/varnish-cache/lib/libvcl/vcl_fixed_token.c:
+
+   Implement enough of FetchSession and DeliverSession that we can actually
+   deliver a cached object.
+
+2006-04-18 08:23  phk
+
+ * trunk/varnish-cache/bin/varnishd/Makefile.am,
+   trunk/varnish-cache/bin/varnishd/cache.h,
+   trunk/varnish-cache/bin/varnishd/cache_main.c,
+   trunk/varnish-cache/bin/varnishd/cache_pool.c,
+   trunk/varnish-cache/bin/varnishd/cache_vcl.c,
+   trunk/varnish-cache/include/vcl_lang.h,
+   trunk/varnish-cache/lib/libvcl/vcl_fixed_token.c:
+
+   Add busyflag and strorage link to objects.
+   
+   Initialize default hasher and stevedore.
+   
+   Give each workerthread an object pointer to be kept populated with
+   a template object for when lookups miss and need to insert one.
+   
+   Add libmd to get MD5, (choice of hash-algorithm to be revisited later)
+   
+   Implement lookup, begin on fetch.
+
+2006-04-18 07:34  phk
+
+ * trunk/varnish-cache/bin/varnishd/Makefile.am,
+   trunk/varnish-cache/bin/varnishd/cache.h,
+   trunk/varnish-cache/bin/varnishd/hash_simple_list.c,
+   trunk/varnish-cache/bin/varnishd/storage_malloc.c:
+
+   Add trivial malloc backed storage backend.
+
+2006-04-12 08:58  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache.h,
+   trunk/varnish-cache/bin/varnishd/cache_pool.c,
+   trunk/varnish-cache/bin/varnishd/cache_vcl.c,
+   trunk/varnish-cache/bin/varnishd/varnishd.c,
+   trunk/varnish-cache/include/cli.h,
+   trunk/varnish-cache/include/cli_priv.h,
+   trunk/varnish-cache/include/libvcl.h,
+   trunk/varnish-cache/include/shmlog.h,
+   trunk/varnish-cache/include/vcl_lang.h,
+   trunk/varnish-cache/lib/libvcl/vcl_compile.c,
+   trunk/varnish-cache/lib/libvcl/vcl_fixed_token.c,
+   trunk/varnish-cache/lib/libvcl/vcl_gen_fixed_token.tcl,
+   trunk/varnish-cache/lib/libvcl/vcl_priv.h,
+   trunk/varnish-cache/lib/libvcl/vcl_token_defs.h:
+
+   Implement the three function VCL model in the compiler.
+
+2006-04-12 08:56  phk
+
+ * trunk/varnish-cache/include/http_headers.h:
+
+   Add ETag: header
+
+2006-04-11 08:28  phk
+
+ * trunk/varnish-cache/bin/varnishd/Makefile.am,
+   trunk/varnish-cache/bin/varnishd/cache.h,
+   trunk/varnish-cache/bin/varnishd/cache_main.c,
+   trunk/varnish-cache/bin/varnishd/cache_shmlog.c,
+   trunk/varnish-cache/bin/varnishd/cache_vcl.c,
+   trunk/varnish-cache/bin/varnishd/cli_event.c,
+   trunk/varnish-cache/bin/varnishd/cli_event.h,
+   trunk/varnish-cache/bin/varnishd/hash_simple_list.c,
+   trunk/varnish-cache/bin/varnishd/heritage.h,
+   trunk/varnish-cache/bin/varnishd/mgt.h,
+   trunk/varnish-cache/bin/varnishd/tcp.c:
+
+   Beginnings of the object lookup stuff: A simple list based
+   implementation to get things moving.
+
+2006-04-06 10:01  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache_pass.c:
+
+   Close or recycle backend connections as appropriate
+
+2006-04-06 10:00  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache.h,
+   trunk/varnish-cache/bin/varnishd/cache_backend.c:
+
+   Add VBE_RecycleFd() function to recycle backend connections
+
+2006-04-06 09:59  phk
+
+ * trunk/varnish-cache/include/http_headers.h,
+   trunk/varnish-cache/lib/libvcl/vcl_fixed_token.c:
+
+   Pass Content-Encoding header
+
+2006-04-06 09:38  phk
+
+ * trunk/varnish-cache/bin/varnishlog/Makefile.am,
+   trunk/varnish-cache/bin/varnishlog/varnishlog.c:
+
+   Output the fd in decimal instead of hex.
+   
+   Do Id Keyword
+
+2006-04-06 09:33  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache_httpd.c,
+   trunk/varnish-cache/bin/varnishd/cache_pass.c,
+   trunk/varnish-cache/bin/varnishd/cache_pipe.c,
+   trunk/varnish-cache/include/vcl_lang.h,
+   trunk/varnish-cache/lib/libvcl/vcl_fixed_token.c:
+
+   Rename hdr_end to a more sensible rcv_ptr which points to the first
+   unaccounted for character in the buffer.
+   
+   Do Id Keyword
+
+2006-04-06 09:30  phk
+
+ * trunk/varnish-cache/include/shmlog_tags.h:
+
+   Add shmlog tags for pipe and pass handling
+
+2006-04-06 09:11  phk
+
+ * trunk/varnish-cache/include/shmlog_tags.h:
+
+   Log tag for session reuse.
+   
+   Do Id Keyword
+
+2006-04-06 09:10  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache_pool.c:
+
+   Recycle sessions instead of retiring them.
+
+2006-04-06 09:09  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache_pass.c:
+
+   Prune the bits we used from the input buffer before we recycle the
+   session.
+
+2006-04-06 09:09  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache.h,
+   trunk/varnish-cache/bin/varnishd/cache_acceptor.c:
+
+   Add a vca_recycle_session() function which sticks a session back into
+   the acceptors event engine.
+   
+   Do Id keyword
+
+2006-04-06 09:08  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache_httpd.c:
+
+   Don't log the terminating NUL on response proto field.
+
+2006-04-06 08:18  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache_httpd.c:
+
+   Add an assert, remove debugging.
+
+2006-04-06 08:18  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache_pool.c:
+
+   Respect VCL choice of handling
+   
+   Do Id keyword
+
+2006-04-06 08:16  phk
+
+ * trunk/varnish-cache/bin/varnishd/mgt_child.c:
+
+   Don't attempt to restart child process (yet).
+   
+   Add Id Keyword handling
+
+2006-04-06 08:15  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache_pass.c:
+
+   It's cheaper to pipe than to pass, so if the client indicates
+   "Connection: close", pipe instead of passing.
+
+2006-04-06 07:50  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache_pass.c,
+   trunk/varnish-cache/bin/varnishd/cache_pipe.c:
+
+   Use HttpdBuildSbuf()
+   
+   Enable Id keyword
+
+2006-04-06 07:50  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache.h,
+   trunk/varnish-cache/bin/varnishd/cache_httpd.c:
+
+   Add a function to (re)build a HTTP request or response into an sbuf.
+   
+   Enable Id keyword
+
+2006-04-05 10:33  phk
+
+ * trunk/varnish-cache/autogen.sh:
+
+   Eliminate leaked developer hacks.
+
+2006-04-05 09:40  phk
+
+ * trunk/varnish-cache/autogen.sh,
+   trunk/varnish-cache/bin/varnishd/cache.h,
+   trunk/varnish-cache/bin/varnishd/cache_httpd.c,
+   trunk/varnish-cache/bin/varnishd/cache_pass.c,
+   trunk/varnish-cache/bin/varnishd/cache_pipe.c,
+   trunk/varnish-cache/bin/varnishd/cache_pool.c:
+
+   Account for the last byte of the header.
+
+2006-04-04 10:35  des
+
+ * trunk/varnish-cache/configure.ac,
+   trunk/varnish-cache/lib/libcompat/Makefile.am,
+   trunk/varnish-cache/lib/libcompat/strlcat.c,
+   trunk/varnish-cache/lib/libcompat/strlcpy.c:
+
+   I can't get AM_CONDITIONAL to work properly, so use a bigger hammer.
+
+2006-04-04 10:09  des
+
+ * trunk/varnish-cache/bin/varnishd/cache_acceptor.c,
+   trunk/varnish-cache/bin/varnishd/cache_backend.c,
+   trunk/varnish-cache/bin/varnishd/cache_main.c,
+   trunk/varnish-cache/bin/varnishd/cache_pool.c,
+   trunk/varnish-cache/bin/varnishd/mgt_child.c:
+
+   More portability changes: include config.h and compat.h, get rid of
+   __unused.
+
+2006-04-04 10:08  des
+
+ * trunk/varnish-cache/bin/varnishd/Makefile.am:
+
+   Link in libcompat, and libsbuf is now static.
+
+2006-04-04 10:08  des
+
+ * trunk/varnish-cache/lib/libsbuf/Makefile.am:
+
+   Make libsbuf static.
+
+2006-04-04 10:07  des
+
+ * trunk/varnish-cache/configure.ac,
+   trunk/varnish-cache/include/Makefile.am,
+   trunk/varnish-cache/include/compat.h,
+   trunk/varnish-cache/lib/Makefile.am,
+   trunk/varnish-cache/lib/libcompat,
+   trunk/varnish-cache/lib/libcompat/Makefile.am,
+   trunk/varnish-cache/lib/libcompat/strlcat.c,
+   trunk/varnish-cache/lib/libcompat/strlcpy.c:
+
+   Add a libcompat with strlcat() and strlcpy() from OpenBSD.
+
+2006-04-04 09:05  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache.h,
+   trunk/varnish-cache/bin/varnishd/cache_httpd.c,
+   trunk/varnish-cache/bin/varnishd/cache_pass.c,
+   trunk/varnish-cache/bin/varnishlog/varnishlog.c,
+   trunk/varnish-cache/include/http_headers.h,
+   trunk/varnish-cache/include/vcl_lang.h,
+   trunk/varnish-cache/lib/libvcl/vcl_fixed_token.c:
+
+   Get pass-through working for the first request.
+   
+   Now we can start to play with multi-request sessions and all that.
+
+2006-04-04 08:20  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache.h,
+   trunk/varnish-cache/bin/varnishd/cache_httpd.c,
+   trunk/varnish-cache/bin/varnishd/cache_pass.c,
+   trunk/varnish-cache/bin/varnishd/cache_pipe.c,
+   trunk/varnish-cache/bin/varnishd/cache_pool.c,
+   trunk/varnish-cache/include/http_headers.h,
+   trunk/varnish-cache/include/shmlog_tags.h,
+   trunk/varnish-cache/include/vcl_lang.h,
+   trunk/varnish-cache/lib/libvcl/vcl_fixed_token.c:
+
+   Add HTTP response headers and processing.
+
+2006-04-04 07:46  phk
+
+ * trunk/varnish-cache/include/cli_priv.h,
+   trunk/varnish-cache/include/libvarnish.h,
+   trunk/varnish-cache/lib/libvarnish/argv.c,
+   trunk/varnish-cache/lib/libvarnish/cli.c:
+
+   Reverse constification of Argv functions. After cascading through all
+   the CLI functions we hit the fact that the evbuffer functions in libevent
+   are not properly constified.
+   
+   It's better to deconst the error messages and just "let it be known" that
+   argv[0] is const (or NULL).
+
+2006-04-04 07:30  phk
+
+ * trunk/varnish-cache/bin/varnishd/Makefile.am,
+   trunk/varnish-cache/bin/varnishd/cache_backend.c,
+   trunk/varnish-cache/bin/varnishd/cache_pass.c,
+   trunk/varnish-cache/bin/varnishd/cache_pool.c,
+   trunk/varnish-cache/include/http_headers.h,
+   trunk/varnish-cache/lib/libvcl/vcl_fixed_token.c:
+
+   Get "Pass" mode moving
+
+2006-04-04 07:29  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache.h,
+   trunk/varnish-cache/bin/varnishd/cache_acceptor.c,
+   trunk/varnish-cache/bin/varnishd/cache_httpd.c:
+
+   Make the "receive a HTTP protocol header" code generic
+
+2006-04-04 07:27  phk
+
+ * trunk/varnish-cache/include/vcl_lang.h:
+
+   Add a session callback pointer to struct sess.
+
+2006-04-04 07:26  phk
+
+ * trunk/varnish-cache/bin/varnishd/cli_event.c:
+
+   Use bufferevent_base_set() from libevent
+
+2006-04-04 07:24  phk
+
+ * trunk/varnish-cache/contrib/libevent/event.h:
+
+   Add a missing prototype until libevent people catch up.
+
+2006-04-04 07:24  phk
+
+ * trunk/varnish-cache/include/shmlog_tags.h:
+
+   Add a Debug shmemlog tag.
+
+2006-04-04 07:24  des
+
+ * trunk/varnish-cache/bin/varnishd/cache_acceptor.c,
+   trunk/varnish-cache/include/cli_priv.h,
+   trunk/varnish-cache/include/libvarnish.h,
+   trunk/varnish-cache/lib/libvarnish/argv.c,
+   trunk/varnish-cache/lib/libvarnish/cli.c,
+   trunk/varnish-cache/lib/libvcl/vcl_compile.c:
+
+   Portability tweaks: use our own sbuf.h and queue.h; get rid of
+   __DECONST; get
+   rid of digittoint() (which is pointless since ISO C guarantees that digits
+   are consecutive in the execution character set); get rid of __unused.
+   
+   Also fix a buglet in argv.c's BackSlash() (parsing of octal numbers), and
+   constify the array passed around by ParseArgv() and FreeArgv().
+
+2006-04-03 14:41  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache_httpd.c:
+
+   Move memset further up.
+
+2006-04-03 14:20  des
+
+ * trunk/varnish-cache/Makefile.am, trunk/varnish-cache/autogen.sh,
+   trunk/varnish-cache/configure.ac, trunk/varnish-cache/contrib/Makefile.am:
+
+   Hook up libevent to the build. Note that this should be made
+   conditional at
+   some later date.
+
+2006-04-03 14:04  des
+
+ * trunk/varnish-cache/contrib/libevent/WIN32-Code/provos at badschwartau.provos.org.12766:
+   
+
+   GC
+
+2006-04-03 12:05  des
+
+ * trunk/varnish-cache/contrib/libevent/sample/Makefile.in,
+   trunk/varnish-cache/contrib/libevent/test/Makefile.in:
+
+   Remove generated files which were committed by mistake.
+
+2006-04-03 11:59  des
+
+ * trunk/varnish-cache/contrib/libevent/Makefile.am,
+   trunk/varnish-cache/contrib/libevent/README,
+   trunk/varnish-cache/contrib/libevent/WIN32-Code/win32.c,
+   trunk/varnish-cache/contrib/libevent/WIN32-Prj/libevent.dsp,
+   trunk/varnish-cache/contrib/libevent/buffer.c,
+   trunk/varnish-cache/contrib/libevent/configure.in,
+   trunk/varnish-cache/contrib/libevent/devpoll.c,
+   trunk/varnish-cache/contrib/libevent/epoll.c,
+   trunk/varnish-cache/contrib/libevent/evbuffer.c,
+   trunk/varnish-cache/contrib/libevent/event.3,
+   trunk/varnish-cache/contrib/libevent/event.c,
+   trunk/varnish-cache/contrib/libevent/event.h,
+   trunk/varnish-cache/contrib/libevent/event_rpcgen.py,
+   trunk/varnish-cache/contrib/libevent/event_tagging.c,
+   trunk/varnish-cache/contrib/libevent/http.c,
+   trunk/varnish-cache/contrib/libevent/http.h,
+   trunk/varnish-cache/contrib/libevent/kqueue.c,
+   trunk/varnish-cache/contrib/libevent/log.h,
+   trunk/varnish-cache/contrib/libevent/poll.c,
+   trunk/varnish-cache/contrib/libevent/rtsig.c,
+   trunk/varnish-cache/contrib/libevent/select.c,
+   trunk/varnish-cache/contrib/libevent/signal.c,
+   trunk/varnish-cache/contrib/libevent/strlcpy.c,
+   trunk/varnish-cache/contrib/libevent/test/Makefile.am,
+   trunk/varnish-cache/contrib/libevent/test/regress.c,
+   trunk/varnish-cache/contrib/libevent/test/regress.h,
+   trunk/varnish-cache/contrib/libevent/test/regress.rpc,
+   trunk/varnish-cache/contrib/libevent/test/regress_http.c,
+   trunk/varnish-cache/contrib/libevent/test/test-weof.c,
+   trunk/varnish-cache/contrib/libevent/test/test.sh:
+
+   Update from libevent CVS trunk.
+
+2006-04-03 11:05  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache_backend.c,
+   trunk/varnish-cache/bin/varnishd/cache_httpd.c,
+   trunk/varnish-cache/bin/varnishd/cache_pipe.c,
+   trunk/varnish-cache/include/shmlog_tags.h,
+   trunk/varnish-cache/include/vcl_lang.h,
+   trunk/varnish-cache/lib/libvcl/vcl_fixed_token.c:
+
+   Segregate http header fields into a separate structure, we will
+   reuse them a few places by the looks of it.
+   
+   Add VCA_UNKNOWNHDR (=10) fields for unknown HTTP headers.
+   If more headers arrive than that, they're lost (and logged as such).
+
+2006-04-03 11:03  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache_main.c,
+   trunk/varnish-cache/bin/varnishd/cli_event.c,
+   trunk/varnish-cache/bin/varnishd/cli_event.h,
+   trunk/varnish-cache/bin/varnishd/mgt.h,
+   trunk/varnish-cache/bin/varnishd/mgt_child.c,
+   trunk/varnish-cache/bin/varnishd/varnishd.c:
+
+   How I wish people would think more ahead when writing libraries like
+   libevent. The entire "implicit event engine" api assumption stinks.
+   
+   Deal with it better.
+
+2006-04-03 09:02  phk
+
+ * trunk/varnish-cache/bin/varnishd/Makefile.am,
+   trunk/varnish-cache/bin/varnishd/cache.h,
+   trunk/varnish-cache/bin/varnishd/cache_acceptor.c,
+   trunk/varnish-cache/bin/varnishd/cache_backend.c,
+   trunk/varnish-cache/bin/varnishd/cache_httpd.c,
+   trunk/varnish-cache/bin/varnishd/cache_pipe.c,
+   trunk/varnish-cache/bin/varnishd/cache_pool.c,
+   trunk/varnish-cache/include/http_headers.h,
+   trunk/varnish-cache/include/vcl_lang.h,
+   trunk/varnish-cache/lib/libvcl/vcl_fixed_token.c:
+
+   A little step for humanity but a big step for varnish:
+   
+   Implement pipe-through mode and see the first web-pages actually
+   pass through varnish.
+
+2006-04-03 07:27  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache_vcl.c:
+
+   Call the init function when the VCL code is loaded.
+   We may want to postpone this to use time later on.
+
+2006-04-03 07:14  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache_httpd.c,
+   trunk/varnish-cache/include/http_headers.h,
+   trunk/varnish-cache/include/shmlog_tags.h,
+   trunk/varnish-cache/include/vcl_lang.h,
+   trunk/varnish-cache/lib/libvcl/vcl_fixed_token.c:
+
+   Add 5 dummy fields to the http headers, we will need them subsequently.
+
+2006-03-31 08:27  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache_acceptor.c,
+   trunk/varnish-cache/bin/varnishd/cache_httpd.c,
+   trunk/varnish-cache/include/vcl_lang.h,
+   trunk/varnish-cache/lib/libvcl/vcl_fixed_token.c,
+   trunk/varnish-cache/lib/libvcl/vcl_gen_fixed_token.tcl:
+
+   Use http_headers.h to define session fields for headers and to parse
+   them out of the header.
+
+2006-03-31 08:26  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache_backend.c,
+   trunk/varnish-cache/bin/varnishd/cache_vcl.c:
+
+   Add missing pthread.h includes
+
+2006-03-31 08:25  phk
+
+ * trunk/varnish-cache/include/shmlog_tags.h:
+
+   Use http_headers.h to define HTTP header tags for logging
+
+2006-03-31 08:24  phk
+
+ * trunk/varnish-cache/include/http_headers.h:
+
+   Reusable macro definition of HTTP headers. We will need these
+   several different places in the sources.
+
+2006-03-30 11:16  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache_backend.c,
+   trunk/varnish-cache/bin/varnishd/varnishd.c:
+
+   get us closer to a connection to the backend
+
+2006-03-30 10:56  phk
+
+ * trunk/varnish-cache/lib/libvcl/vcl_compile.c:
+
+   Rework the compilation of backend specifications in order to be able
+   to check the provided hostname/portname at compile time.
+
+2006-03-30 09:26  phk
+
+ * trunk/varnish-cache/bin/varnishd/Makefile.am,
+   trunk/varnish-cache/bin/varnishd/cache.h,
+   trunk/varnish-cache/bin/varnishd/cache_backend.c,
+   trunk/varnish-cache/bin/varnishd/cache_main.c,
+   trunk/varnish-cache/bin/varnishd/cache_pool.c,
+   trunk/varnish-cache/bin/varnishd/varnishd.c,
+   trunk/varnish-cache/include/vcl_lang.h,
+   trunk/varnish-cache/lib/libvcl/vcl_compile.c,
+   trunk/varnish-cache/lib/libvcl/vcl_fixed_token.c:
+
+   Add the beginning of a backend connection pool
+
+2006-03-30 08:05  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache.h,
+   trunk/varnish-cache/bin/varnishd/cache_main.c,
+   trunk/varnish-cache/bin/varnishd/cache_pool.c,
+   trunk/varnish-cache/bin/varnishd/cache_vcl.c,
+   trunk/varnish-cache/include/vcl_lang.h,
+   trunk/varnish-cache/lib/libvcl/vcl_fixed_token.c:
+
+   Promote the poll mutex to be a session mutex so that we can use it
+   for the VCL reference as well, this saves locking operations.
+   
+   Call the atual VCL code when we get the request.
+
+2006-03-30 07:05  phk
+
+ * trunk/varnish-cache/bin/varnishd/Makefile.am,
+   trunk/varnish-cache/bin/varnishd/cache.h,
+   trunk/varnish-cache/bin/varnishd/cache_acceptor.c,
+   trunk/varnish-cache/bin/varnishd/cache_httpd.c,
+   trunk/varnish-cache/bin/varnishd/cache_main.c,
+   trunk/varnish-cache/bin/varnishd/cache_pool.c,
+   trunk/varnish-cache/bin/varnishd/cache_vcl.c,
+   trunk/varnish-cache/bin/varnishd/varnishd.c,
+   trunk/varnish-cache/include/vcl_lang.h,
+   trunk/varnish-cache/lib/libvcl/vcl_compile.c,
+   trunk/varnish-cache/lib/libvcl/vcl_fixed_token.c,
+   trunk/varnish-cache/lib/libvcl/vcl_gen_fixed_token.tcl,
+   trunk/varnish-cache/lib/libvcl/vcl_token_defs.h:
+
+   Integrate the VCL code closer in the cache process: The passed
+   argument will be the session structure.
+   
+   Add the pool of worker threads (cache_pool). With a unitary nature
+   of the VCL code, the HTTP parsing can be postponed to the worker thread.
+   
+   This actually helps us with CPU cache locality as it will reduce the
+   amount of memory allocated on one CPU but freed on another.
+
+2006-03-27 14:12  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache.h,
+   trunk/varnish-cache/bin/varnishd/cache_main.c,
+   trunk/varnish-cache/bin/varnishd/cache_vcl.c,
+   trunk/varnish-cache/bin/varnishd/varnishd.c:
+
+   Add config.load, config.inline and config.use commands.
+
+2006-03-27 14:11  phk
+
+ * trunk/varnish-cache/include/libvcl.h:
+
+   Forgot to add this one. Prototypes for the VCL compiler.
+
+2006-03-27 14:10  phk
+
+ * trunk/varnish-cache/lib/libvcl/vcl_compile.c:
+
+   Add VCL_CompileFile() function.
+
+2006-03-27 13:59  phk
+
+ * trunk/varnish-cache/bin/varnishd/mgt_child.c:
+
+   Just return if there is nothing to wait for. We get SIGCHLD'ed on
+   the popen child process.
+
+2006-03-27 13:57  phk
+
+ * trunk/varnish-cache/include/cli_priv.h:
+
+   Add a macro which we can #ifdef
+
+2006-03-27 12:27  phk
+
+ * trunk/varnish-cache/bin/varnishd/Makefile.am,
+   trunk/varnish-cache/bin/varnishd/cache.h,
+   trunk/varnish-cache/bin/varnishd/cache_main.c,
+   trunk/varnish-cache/bin/varnishd/cache_vcl.c,
+   trunk/varnish-cache/bin/varnishd/heritage.h,
+   trunk/varnish-cache/bin/varnishd/varnishd.c:
+
+   Build default VCL from "-b backend_IP" option and pass it to client
+   via heritage.
+
+2006-03-27 11:51  phk
+
+ * trunk/varnish-cache/lib/libvcl/vcl_compile.c:
+
+   edge closer towards being a nice member of society
+
+2006-03-27 11:22  phk
+
+ * trunk/varnish-cache/bin/varnishd/Makefile.am,
+   trunk/varnish-cache/bin/varnishd/cache_acceptor.c,
+   trunk/varnish-cache/bin/varnishd/varnishd.c:
+
+   Experimentally pull in VCL program
+
+2006-03-27 11:21  phk
+
+ * trunk/varnish-cache/lib/libvcl/vcl_compile.c,
+   trunk/varnish-cache/lib/libvcl/vcl_fixed_token.c,
+   trunk/varnish-cache/lib/libvcl/vcl_gen_fixed_token.tcl,
+   trunk/varnish-cache/lib/libvcl/vcl_lang.h,
+   trunk/varnish-cache/lib/libvcl/vcl_priv.h:
+
+   Actually generate a shared object
+
+2006-03-27 11:21  phk
+
+ * trunk/varnish-cache/include/vcl_lang.h:
+
+   Stuff VCL programs needs to know about.
+
+2006-03-27 09:02  phk
+
+ * trunk/varnish-cache/configure.ac:
+
+   add libvcl
+
+2006-03-27 09:01  phk
+
+ * trunk/varnish-cache/lib/libvcl/Makefile,
+   trunk/varnish-cache/lib/libvcl/Makefile.am:
+
+   Put under control of auto* tools
+
+2006-03-27 09:01  phk
+
+ * trunk/varnish-cache/lib/libvcl/vcl_fixed_token.c:
+
+   Newly generated code
+
+2006-03-27 09:00  phk
+
+ * trunk/varnish-cache/lib/libvcl/vcl_gen_fixed_token.tcl:
+
+   Don't generate sparse array code.
+
+2006-03-24 10:46  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache.h,
+   trunk/varnish-cache/bin/varnishd/cache_acceptor.c,
+   trunk/varnish-cache/bin/varnishd/cache_httpd.c,
+   trunk/varnish-cache/include/shmlog_tags.h:
+
+   More complete HTTP parsing and logging.
+
+2006-03-24 10:23  phk
+
+ * trunk/varnish-cache/bin/varnishd/Makefile.am,
+   trunk/varnish-cache/bin/varnishd/cache_acceptor.c,
+   trunk/varnish-cache/bin/varnishd/cache_httpd.c:
+
+   Change session memory management to avoid <event.h> pollution
+   
+   Add fledling httpd parsing
+
+2006-03-24 10:22  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache.h,
+   trunk/varnish-cache/bin/varnishd/cache_shmlog.c:
+
+   Add a VSLR() variant which logs a byte range without spending time in
+   sprintf
+
+2006-03-24 09:45  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache.h,
+   trunk/varnish-cache/bin/varnishd/cache_acceptor.c,
+   trunk/varnish-cache/include/shmlog_tags.h:
+
+   Log remote IP#:port on session open
+
+2006-03-24 09:14  phk
+
+ * trunk/varnish-cache/bin/varnishlog/varnishlog.c:
+
+   put symbolic names on the tags
+
+2006-03-24 09:05  phk
+
+ * trunk/varnish-cache/bin/Makefile.am,
+   trunk/varnish-cache/bin/varnishd/varnishd.c,
+   trunk/varnish-cache/bin/varnishlog,
+   trunk/varnish-cache/bin/varnishlog/Makefile.am,
+   trunk/varnish-cache/bin/varnishlog/varnishlog.c,
+   trunk/varnish-cache/configure.ac:
+
+   Add a minimal log tailer.
+
+2006-03-24 08:43  phk
+
+ * trunk/varnish-cache/include/cli.h,
+   trunk/varnish-cache/include/libvarnish.h,
+   trunk/varnish-cache/include/shmlog.h,
+   trunk/varnish-cache/include/shmlog_tags.h:
+
+   Move the SHM tags into a resuable .h file.
+   
+   Minor nits
+
+2006-03-23 15:31  phk
+
+ * trunk/varnish-cache/bin/varnishd/Makefile.am,
+   trunk/varnish-cache/bin/varnishd/cache.h,
+   trunk/varnish-cache/bin/varnishd/cache_main.c,
+   trunk/varnish-cache/bin/varnishd/cache_shmlog.c,
+   trunk/varnish-cache/bin/varnishd/heritage.h,
+   trunk/varnish-cache/bin/varnishd/varnishd.c:
+
+   Add shared memory log setup and stuffer function in the child process.
+   
+   Log whenever we get a CLI ping
+
+2006-03-23 12:20  phk
+
+ * trunk/varnish-cache/bin/varnishd/Makefile.am,
+   trunk/varnish-cache/bin/varnishd/cache.h,
+   trunk/varnish-cache/bin/varnishd/cache_acceptor.c,
+   trunk/varnish-cache/bin/varnishd/cache_main.c,
+   trunk/varnish-cache/bin/varnishd/mgt_child.c,
+   trunk/varnish-cache/bin/varnishd/tcp.c,
+   trunk/varnish-cache/bin/varnishd/varnishd.c:
+
+   Now we're starting to get somewhere: Accept connections and assemble
+   a HTTP request.
+
+2006-03-23 08:45  phk
+
+ * trunk/varnish-cache/bin/varnishd/Makefile.am,
+   trunk/varnish-cache/bin/varnishd/heritage.h,
+   trunk/varnish-cache/bin/varnishd/mgt.h,
+   trunk/varnish-cache/bin/varnishd/tcp.c,
+   trunk/varnish-cache/bin/varnishd/varnishd.c:
+
+   Open TCP sockets
+
+2006-03-17 13:41  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache_main.c,
+   trunk/varnish-cache/bin/varnishd/cli_event.c,
+   trunk/varnish-cache/bin/varnishd/cli_event.h,
+   trunk/varnish-cache/bin/varnishd/mgt.h,
+   trunk/varnish-cache/bin/varnishd/mgt_child.c,
+   trunk/varnish-cache/bin/varnishd/varnishd.c:
+
+   Make it possible to suspend and resume a cli connection while we wait
+   for response from the child (or otherwise).
+   
+   Add a generic "pass-through" handler for cli requests we just pass on
+   to the child.
+
+2006-03-17 10:03  phk
+
+ * trunk/varnish-cache/bin/varnishd/Makefile.am,
+   trunk/varnish-cache/bin/varnishd/cache_main.c,
+   trunk/varnish-cache/bin/varnishd/cli_event.c,
+   trunk/varnish-cache/bin/varnishd/heritage.h,
+   trunk/varnish-cache/bin/varnishd/mgt.h,
+   trunk/varnish-cache/bin/varnishd/mgt_child.c,
+   trunk/varnish-cache/bin/varnishd/varnishd.c:
+
+   Add multiplexing for the mgt->child cli connection and get ping/pong
+   working across it.
+   
+   The management process will now keep the child process watchdog from
+   expiring.
+
+2006-03-16 12:14  phk
+
+ * trunk/varnish-cache/bin/varnishd/cache_main.c,
+   trunk/varnish-cache/bin/varnishd/cli_event.c,
+   trunk/varnish-cache/bin/varnishd/varnishd.c,
+   trunk/varnish-cache/lib/libvarnish/argv.c,
+   trunk/varnish-cache/lib/libvarnish/cli.c:
+
+   cleanup
+
+2006-03-16 10:48  phk
+
+ * trunk/varnish-cache/bin/varnishd/Makefile.am,
+   trunk/varnish-cache/bin/varnishd/cache_main.c,
+   trunk/varnish-cache/bin/varnishd/heritage.h,
+   trunk/varnish-cache/bin/varnishd/varnishd.c:
+
+   Expand the empty shell a bit.
+   
+   Add CLI handler on stdin (for now, in production only if
+   debug is specified).
+   
+   Implement help, verbos, ping and start.
+   
+   start forks the child process, sets up listeners on its stdout/stderr
+   (where nothing should arrive in production).
+   
+   Add SIGCHLD handler to reap and restart the child.
+   
+   Add shell "main" for the child: Set up a CLI handler on the pipes
+   passed as heritage.
+   
+   Add ping command and keepalive timeout.
+
+2006-03-16 10:46  phk
+
+ * trunk/varnish-cache/bin/varnishd/cli_event.c,
+   trunk/varnish-cache/bin/varnishd/cli_event.h:
+
+   Functions to handle the CLI with event(3)'s buffer events.
+   
+   This may eventually belong in a library for wider use.
+
+2006-03-16 09:02  phk
+
+ * trunk/varnish-cache/include/cli.h,
+   trunk/varnish-cache/include/cli_priv.h,
+   trunk/varnish-cache/lib/libvarnish/Makefile.am,
+   trunk/varnish-cache/lib/libvarnish/cli.c,
+   trunk/varnish-cache/lib/libvcl/Makefile:
+
+   Generic and public stuff for CLI protocol handling.
+
+2006-03-16 08:30  phk
+
+ * trunk/varnish-cache/include/cli.h:
+
+   add min+max argument counts
+
+2006-03-15 20:34  phk
+
+ * trunk/varnish-cache/include/cli.h:
+
+   Add definitions pertaining to the ascii-protocol which will be used
+   multiple different places in the varnish architecture.
+
+2006-03-14 12:54  des
+
+ * trunk/varnish-cache/contrib, trunk/varnish-cache/contrib/libevent,
+   trunk/varnish-cache/contrib/libevent/Makefile.am,
+   trunk/varnish-cache/contrib/libevent/README,
+   trunk/varnish-cache/contrib/libevent/WIN32-Code,
+   trunk/varnish-cache/contrib/libevent/WIN32-Code/config.h,
+   trunk/varnish-cache/contrib/libevent/WIN32-Code/misc.c,
+   trunk/varnish-cache/contrib/libevent/WIN32-Code/misc.h,
+   trunk/varnish-cache/contrib/libevent/WIN32-Code/provos at badschwartau.provos.org.12766,
+   trunk/varnish-cache/contrib/libevent/WIN32-Code/win32.c,
+   trunk/varnish-cache/contrib/libevent/WIN32-Prj,
+   trunk/varnish-cache/contrib/libevent/WIN32-Prj/event_test,
+   trunk/varnish-cache/contrib/libevent/WIN32-Prj/event_test/event_test.dsp,
+   trunk/varnish-cache/contrib/libevent/WIN32-Prj/event_test/test.txt,
+   trunk/varnish-cache/contrib/libevent/WIN32-Prj/libevent.dsp,
+   trunk/varnish-cache/contrib/libevent/WIN32-Prj/libevent.dsw,
+   trunk/varnish-cache/contrib/libevent/WIN32-Prj/signal_test,
+   trunk/varnish-cache/contrib/libevent/WIN32-Prj/signal_test/signal_test.dsp,
+   trunk/varnish-cache/contrib/libevent/WIN32-Prj/time_test,
+   trunk/varnish-cache/contrib/libevent/WIN32-Prj/time_test/time_test.dsp,
+   trunk/varnish-cache/contrib/libevent/acconfig.h,
+   trunk/varnish-cache/contrib/libevent/buffer.c,
+   trunk/varnish-cache/contrib/libevent/compat,
+   trunk/varnish-cache/contrib/libevent/compat/sys,
+   trunk/varnish-cache/contrib/libevent/compat/sys/_time.h,
+   trunk/varnish-cache/contrib/libevent/compat/sys/queue.h,
+   trunk/varnish-cache/contrib/libevent/compat/sys/tree.h,
+   trunk/varnish-cache/contrib/libevent/configure.in,
+   trunk/varnish-cache/contrib/libevent/devpoll.c,
+   trunk/varnish-cache/contrib/libevent/epoll.c,
+   trunk/varnish-cache/contrib/libevent/epoll_sub.c,
+   trunk/varnish-cache/contrib/libevent/evbuffer.c,
+   trunk/varnish-cache/contrib/libevent/event-internal.h,
+   trunk/varnish-cache/contrib/libevent/event.3,
+   trunk/varnish-cache/contrib/libevent/event.c,
+   trunk/varnish-cache/contrib/libevent/event.h,
+   trunk/varnish-cache/contrib/libevent/evsignal.h,
+   trunk/varnish-cache/contrib/libevent/kqueue.c,
+   trunk/varnish-cache/contrib/libevent/log.c,
+   trunk/varnish-cache/contrib/libevent/log.h,
+   trunk/varnish-cache/contrib/libevent/poll.c,
+   trunk/varnish-cache/contrib/libevent/rtsig.c,
+   trunk/varnish-cache/contrib/libevent/sample,
+   trunk/varnish-cache/contrib/libevent/sample/Makefile.am,
+   trunk/varnish-cache/contrib/libevent/sample/Makefile.in,
+   trunk/varnish-cache/contrib/libevent/sample/event-test.c,
+   trunk/varnish-cache/contrib/libevent/sample/signal-test.c,
+   trunk/varnish-cache/contrib/libevent/sample/time-test.c,
+   trunk/varnish-cache/contrib/libevent/select.c,
+   trunk/varnish-cache/contrib/libevent/signal.c,
+   trunk/varnish-cache/contrib/libevent/test,
+   trunk/varnish-cache/contrib/libevent/test/Makefile.am,
+   trunk/varnish-cache/contrib/libevent/test/Makefile.in,
+   trunk/varnish-cache/contrib/libevent/test/bench.c,
+   trunk/varnish-cache/contrib/libevent/test/regress.c,
+   trunk/varnish-cache/contrib/libevent/test/test-eof.c,
+   trunk/varnish-cache/contrib/libevent/test/test-init.c,
+   trunk/varnish-cache/contrib/libevent/test/test-time.c,
+   trunk/varnish-cache/contrib/libevent/test/test-weof.c,
+   trunk/varnish-cache/contrib/libevent/test/test.sh:
+
+   Add Niels Provos's libevent 1.1a.
+
+2006-03-14 12:00  des
+
+ * trunk/varnish-cache/include/hash.h,
+   trunk/varnish-cache/include/libvarnish.h,
+   trunk/varnish-cache/include/queue.h,
+   trunk/varnish-cache/include/sbuf.h, trunk/varnish-cache/include/tree.h:
+
+   Set the correct property (svn:keywords, not svn:keyword)
+
+2006-03-14 11:57  des
+
+ * trunk/varnish-cache/lib/libsbuf/Makefile.am,
+   trunk/varnish-cache/lib/libsbuf/sbuf.3,
+   trunk/varnish-cache/lib/libsbuf/sbuf.c:
+
+   Add a man page, and set the correct property (svn:keywords, not
+   svn:keyword)
+
+2006-03-14 09:31  phk
+
+ * trunk/varnish-cache/bin/varnishd/varnishd.c:
+
+   Add some trivial bits while I think about the hard ones
+
+2006-03-14 09:15  phk
+
+ * trunk/varnish-cache/include/Makefile.am,
+   trunk/varnish-cache/include/libvarnish.h,
+   trunk/varnish-cache/lib/libvarnish/Makefile.am,
+   trunk/varnish-cache/lib/libvarnish/argv.c:
+
+   Add a function to break a command line like string into an argv[].
+   This will be useful for the various text based protocols etc.
+
+2006-03-13 14:23  des
+
+ * trunk/varnish-cache/include/Makefile.am,
+   trunk/varnish-cache/include/hash.h,
+   trunk/varnish-cache/include/queue.h, trunk/varnish-cache/include/tree.h:
+
+   Add hash.h, queue.h and tree.h from NetBSD-CURRENT.
+
+2006-03-13 14:14  des
+
+ * trunk/varnish-cache/configure.ac, trunk/varnish-cache/include/sbuf.h,
+   trunk/varnish-cache/lib/Makefile.am, trunk/varnish-cache/lib/libsbuf,
+   trunk/varnish-cache/lib/libsbuf/Makefile.am,
+   trunk/varnish-cache/lib/libsbuf/sbuf.c:
+
+   Add libsbuf, based on the latest sbuf code from FreeBSD-CURRENT.
+
+2006-03-13 13:30  phk
+
+ * trunk/varnish-cache/autogen.sh:
+
+   Pick up the gnu-autotools binary directory if we spot one. This
+   makes life on FreeBSD somewhat easier.
+
+2006-03-13 12:37  phk
+
+ * trunk/varnish-cache/lib/Makefile.am, trunk/varnish-cache/lib/libvcl,
+   trunk/varnish-cache/lib/libvcl/Makefile,
+   trunk/varnish-cache/lib/libvcl/sample.vcl,
+   trunk/varnish-cache/lib/libvcl/vcl_compile.c,
+   trunk/varnish-cache/lib/libvcl/vcl_fixed_token.c,
+   trunk/varnish-cache/lib/libvcl/vcl_gen_fixed_token.tcl,
+   trunk/varnish-cache/lib/libvcl/vcl_lang.h,
+   trunk/varnish-cache/lib/libvcl/vcl_priv.h,
+   trunk/varnish-cache/lib/libvcl/vcl_token_defs.h:
+
+   Add first cut of VCL compiler to the tree.
+   
+   The Makefile is a temporary shim until I get the auto* stuff working.
+   
+   The sample.vcl is a small mock-up to test the compiler.
+   
+   Some of the .h files needs to move other places in the fullness of time.
+   
+   But other than that...
+
+2006-03-02 10:32  des
+
+ * trunk/varnish-cache:
+
+   Ignore generated files; generated with the following command:
+   
+   svk propset svn:ignore "$(svk status | awk '/^\?/ { print $2 }')" .
+
+2006-03-02 10:31  des
+
+ * trunk/varnish-cache/include/Makefile.am,
+   trunk/varnish-cache/include/varnish,
+   trunk/varnish-cache/include/varnish/assert.h,
+   trunk/varnish-cache/include/varnishapi.h,
+   trunk/varnish-cache/lib/libvarnishapi/Makefile.am,
+   trunk/varnish-cache/lib/libvarnishapi/varnish_debug.c,
+   trunk/varnish-cache/lib/libvarnishapi/varnish_log.c,
+   trunk/varnish-cache/lib/libvarnishapi/varnish_util.c:
+
+   Untested & undocumented login code. I don't have time to continue working
+   on it right now, but I want it in the tree so phk doesn't start duplicating
+   my effort.
+
+2006-03-02 10:29  des
+
+ * trunk/varnish-cache/bin/varnishd:
+
+   Add varnishd to ignore list.
+
+2006-02-27 14:21  des
+
+ * trunk/varnish-cache/include:
+
+   Ignore generated files.
+
+2006-02-27 14:21  des
+
+ * trunk/varnish-cache/lib, trunk/varnish-cache/lib/libvarnish,
+   trunk/varnish-cache/lib/libvarnishapi:
+
+   Ignore generated files.
+
+2006-02-27 14:21  des
+
+ * trunk/varnish-cache/bin, trunk/varnish-cache/bin/varnishd:
+
+   Ignore generated files.
+
+2006-02-27 11:10  des
+
+ * trunk/varnish-cache/autogen.sh,
+   trunk/varnish-cache/lib/libvarnish/Makefile.am,
+   trunk/varnish-cache/lib/libvarnishapi/Makefile.am:
+
+   Correct libtool idiom: run libtoolize after aclocal, and use LTLIBRARIES
+   instead of LIBRARIES.
+
+2006-02-27 09:55  des
+
+ * trunk/varnish-cache/LICENSE:
+
+   Don't forget the license!
+
+2006-02-24 14:35  des
+
+ * trunk/varnish-cache/Makefile.am, trunk/varnish-cache/autogen.sh,
+   trunk/varnish-cache/bin, trunk/varnish-cache/bin/Makefile.am,
+   trunk/varnish-cache/bin/varnishd,
+   trunk/varnish-cache/bin/varnishd/Makefile.am,
+   trunk/varnish-cache/bin/varnishd/varnishd.c,
+   trunk/varnish-cache/configure.ac, trunk/varnish-cache/include,
+   trunk/varnish-cache/include/Makefile.am,
+   trunk/varnish-cache/include/varnishapi.h, trunk/varnish-cache/lib,
+   trunk/varnish-cache/lib/Makefile.am,
+   trunk/varnish-cache/lib/libvarnish,
+   trunk/varnish-cache/lib/libvarnish/Makefile.am,
+   trunk/varnish-cache/lib/libvarnishapi,
+   trunk/varnish-cache/lib/libvarnishapi/Makefile.am:
+
+   Source tree structure as agreed.
+
+2006-02-22 14:31  des
+
+ * trunk/varnish-cache, trunk/varnish-doc, trunk/varnish-proto,
+   trunk/varnish-tools:
+
+   Additional subdivisions.
+




More information about the varnish-commit mailing list