]> err.no Git - varnish/log
varnish
18 years agoUse ttl=0 as a "invalid TTL" flag.
phk [Sat, 24 Jun 2006 21:54:54 +0000 (21:54 +0000)]
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

git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@231 d4fa192b-c00b-0410-8231-f00ffab90ce4

18 years agoTruncate TTLs in the past to now.
phk [Sat, 24 Jun 2006 21:42:27 +0000 (21:42 +0000)]
Truncate TTLs in the past to now.

git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@230 d4fa192b-c00b-0410-8231-f00ffab90ce4

18 years agoAutogenerate prototypes for method calling functions
phk [Sat, 24 Jun 2006 21:09:07 +0000 (21:09 +0000)]
Autogenerate prototypes for method calling functions

git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@229 d4fa192b-c00b-0410-8231-f00ffab90ce4

18 years agoAdd a "timeout" method to VCL, it can return "fetch" or "discard".
phk [Sat, 24 Jun 2006 21:07:18 +0000 (21:07 +0000)]
Add a "timeout" method to VCL, it can return "fetch" or "discard".

git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@228 d4fa192b-c00b-0410-8231-f00ffab90ce4

18 years agoAdd a token type "METHOD", we use it for reference counting.
phk [Sat, 24 Jun 2006 20:50:17 +0000 (20:50 +0000)]
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.

git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@227 d4fa192b-c00b-0410-8231-f00ffab90ce4

18 years agoCollapse multiline Fc and Fh calls where they fit
phk [Sat, 24 Jun 2006 20:12:26 +0000 (20:12 +0000)]
Collapse multiline Fc and Fh calls where they fit

git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@226 d4fa192b-c00b-0410-8231-f00ffab90ce4

18 years agoMore printf sanitation: Create to convenience functions for output to the
phk [Sat, 24 Jun 2006 20:09:07 +0000 (20:09 +0000)]
More printf sanitation:  Create to convenience functions for output to the
fh and fc sbufs.

git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@225 d4fa192b-c00b-0410-8231-f00ffab90ce4

18 years agoCave in and use printf format extensions for printing tokens.
phk [Sat, 24 Jun 2006 19:50:56 +0000 (19:50 +0000)]
Cave in and use printf format extensions for printing tokens.
Both Linux and FreeBSD supports them anyway.

git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@224 d4fa192b-c00b-0410-8231-f00ffab90ce4

18 years agoAdd more shmemlog tags:
phk [Sat, 24 Jun 2006 19:41:55 +0000 (19:41 +0000)]
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

git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@223 d4fa192b-c00b-0410-8231-f00ffab90ce4

18 years agoImprove the VCL compiler in various ways:
phk [Thu, 22 Jun 2006 16:17:10 +0000 (16:17 +0000)]
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.

git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@222 d4fa192b-c00b-0410-8231-f00ffab90ce4

18 years agoAdd (empty) source file for expiry/pretech code
phk [Wed, 21 Jun 2006 10:28:26 +0000 (10:28 +0000)]
Add (empty) source file for expiry/pretech code

git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@221 d4fa192b-c00b-0410-8231-f00ffab90ce4

18 years agoStart to respect TTL
phk [Wed, 21 Jun 2006 10:21:14 +0000 (10:21 +0000)]
Start to respect TTL

git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@220 d4fa192b-c00b-0410-8231-f00ffab90ce4

18 years agoAdd "-t default_ttl" option. 120 seconds by default.
phk [Wed, 21 Jun 2006 10:13:53 +0000 (10:13 +0000)]
Add "-t default_ttl" option.  120 seconds by default.

git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@219 d4fa192b-c00b-0410-8231-f00ffab90ce4

18 years agoQuench some debugging
phk [Wed, 21 Jun 2006 09:58:06 +0000 (09:58 +0000)]
Quench some debugging

git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@218 d4fa192b-c00b-0410-8231-f00ffab90ce4

18 years agoAdd a binary heap implementation for keeping track of objects expiry time.
phk [Wed, 21 Jun 2006 08:09:02 +0000 (08:09 +0000)]
Add a binary heap implementation for keeping track of objects expiry time.

git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@217 d4fa192b-c00b-0410-8231-f00ffab90ce4

18 years agotypo
phk [Tue, 20 Jun 2006 19:49:28 +0000 (19:49 +0000)]
typo

git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@216 d4fa192b-c00b-0410-8231-f00ffab90ce4

18 years agoFlexeLint files
phk [Tue, 20 Jun 2006 19:38:04 +0000 (19:38 +0000)]
FlexeLint files

git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@215 d4fa192b-c00b-0410-8231-f00ffab90ce4

18 years agoFlexeLint cleanups
phk [Tue, 20 Jun 2006 19:37:46 +0000 (19:37 +0000)]
FlexeLint cleanups

git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@214 d4fa192b-c00b-0410-8231-f00ffab90ce4

18 years agoPolish things to silence FlexeLint a bit
phk [Tue, 20 Jun 2006 19:31:46 +0000 (19:31 +0000)]
Polish things to silence FlexeLint a bit

git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@213 d4fa192b-c00b-0410-8231-f00ffab90ce4

18 years agoRename vcl_lang.h to vcl.h and include practically nowhere.
phk [Tue, 20 Jun 2006 11:39:20 +0000 (11:39 +0000)]
Rename vcl_lang.h to vcl.h and include practically nowhere.

Remove #include bogohandling in vcl_gen_fixed_token.tcl

git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@212 d4fa192b-c00b-0410-8231-f00ffab90ce4

18 years agoAt the expense of some complexity and a small runtime overhead,
phk [Tue, 20 Jun 2006 10:31:50 +0000 (10:31 +0000)]
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.

git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@211 d4fa192b-c00b-0410-8231-f00ffab90ce4

18 years agoWork towards making struct sess opaque to the generated code.
phk [Tue, 20 Jun 2006 09:41:43 +0000 (09:41 +0000)]
Work towards making struct sess opaque to the generated code.

git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@210 d4fa192b-c00b-0410-8231-f00ffab90ce4

18 years agoRename the VCL compilers public functions to VCC prefix
phk [Tue, 20 Jun 2006 09:28:00 +0000 (09:28 +0000)]
Rename the VCL compilers public functions to VCC prefix

git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@209 d4fa192b-c00b-0410-8231-f00ffab90ce4

18 years agoGet rid of VCL_FARGS and VCL_PASS_ARGS macros.
phk [Tue, 20 Jun 2006 09:25:21 +0000 (09:25 +0000)]
Get rid of VCL_FARGS and VCL_PASS_ARGS macros.

Generate VGC prefixes instead of VCL.

git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@208 d4fa192b-c00b-0410-8231-f00ffab90ce4

18 years agoStart putting some structure in the sources relating to VCL handling:
phk [Tue, 20 Jun 2006 09:15:39 +0000 (09:15 +0000)]
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.

git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@207 d4fa192b-c00b-0410-8231-f00ffab90ce4

18 years agoOutput line+pos for counts.
phk [Sun, 18 Jun 2006 10:28:11 +0000 (10:28 +0000)]
Output line+pos for counts.

git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@206 d4fa192b-c00b-0410-8231-f00ffab90ce4

18 years agoInsert a count-point after each conditional.
phk [Sun, 18 Jun 2006 10:19:54 +0000 (10:19 +0000)]
Insert a count-point after each conditional.

git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@205 d4fa192b-c00b-0410-8231-f00ffab90ce4

18 years agoGet the sense of string compares right.
phk [Sun, 18 Jun 2006 10:16:38 +0000 (10:16 +0000)]
Get the sense of string compares right.

git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@204 d4fa192b-c00b-0410-8231-f00ffab90ce4

18 years agodebug printf for max-age
phk [Sun, 18 Jun 2006 10:12:38 +0000 (10:12 +0000)]
debug printf for max-age

git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@203 d4fa192b-c00b-0410-8231-f00ffab90ce4

18 years agoImplement req.request properly
phk [Sun, 18 Jun 2006 10:10:45 +0000 (10:10 +0000)]
Implement req.request properly

git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@202 d4fa192b-c00b-0410-8231-f00ffab90ce4

18 years agoPass if we spot an Authenticate or Cookie header
phk [Sun, 18 Jun 2006 10:04:09 +0000 (10:04 +0000)]
Pass if we spot an Authenticate or Cookie header

git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@201 d4fa192b-c00b-0410-8231-f00ffab90ce4

18 years agoAdd VCL function for getting HTTP header
phk [Sun, 18 Jun 2006 10:03:43 +0000 (10:03 +0000)]
Add VCL function for getting HTTP header

git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@200 d4fa192b-c00b-0410-8231-f00ffab90ce4

18 years agoAdd support for investigating random HTTP headers.
phk [Sun, 18 Jun 2006 10:02:35 +0000 (10:02 +0000)]
Add support for investigating random HTTP headers.

git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@199 d4fa192b-c00b-0410-8231-f00ffab90ce4

18 years agoAdd wrappers around VCL methos so logging and checking of returned handling
phk [Sun, 18 Jun 2006 09:16:26 +0000 (09:16 +0000)]
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.

git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@198 d4fa192b-c00b-0410-8231-f00ffab90ce4

18 years agoadd explicit "lookup" to recv method
phk [Sun, 18 Jun 2006 09:14:12 +0000 (09:14 +0000)]
add explicit "lookup" to recv method

git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@197 d4fa192b-c00b-0410-8231-f00ffab90ce4

18 years agoCorrectly handle \ sequences in .h files in vcl_gen_fixed_token.tcl
phk [Sun, 18 Jun 2006 09:11:59 +0000 (09:11 +0000)]
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())

git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@196 d4fa192b-c00b-0410-8231-f00ffab90ce4

18 years agoAdd "deliver" keyword to VCL compiler.
phk [Sun, 18 Jun 2006 07:28:19 +0000 (07:28 +0000)]
Add "deliver" keyword to VCL compiler.

Split vcl_lookup() in vcl_hit() and vcl_miss()

git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@195 d4fa192b-c00b-0410-8231-f00ffab90ce4

18 years agoInitial http_GetHdrField() function.
phk [Fri, 16 Jun 2006 10:22:40 +0000 (10:22 +0000)]
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.

git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@194 d4fa192b-c00b-0410-8231-f00ffab90ce4

18 years agoAdd header field to object
phk [Fri, 16 Jun 2006 10:20:12 +0000 (10:20 +0000)]
Add header field to object

git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@193 d4fa192b-c00b-0410-8231-f00ffab90ce4

18 years agoSupress Transfer-Encoding
phk [Fri, 16 Jun 2006 10:19:44 +0000 (10:19 +0000)]
Supress Transfer-Encoding

git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@192 d4fa192b-c00b-0410-8231-f00ffab90ce4

18 years agoThe beginnings of rfc2616 policy implemenation.
phk [Fri, 16 Jun 2006 10:18:08 +0000 (10:18 +0000)]
The beginnings of rfc2616 policy implemenation.

git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@191 d4fa192b-c00b-0410-8231-f00ffab90ce4

18 years agoAdd trim method to storage backends so chunked encoding can be
phk [Fri, 16 Jun 2006 10:17:25 +0000 (10:17 +0000)]
Add trim method to storage backends so chunked encoding can be
stored efficiently.

git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@190 d4fa192b-c00b-0410-8231-f00ffab90ce4

18 years agoAdd time parse/format functions to libvarnish
phk [Fri, 16 Jun 2006 10:16:00 +0000 (10:16 +0000)]
Add time parse/format functions to libvarnish

git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@189 d4fa192b-c00b-0410-8231-f00ffab90ce4

18 years agoless noise
phk [Thu, 15 Jun 2006 08:04:46 +0000 (08:04 +0000)]
less noise

git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@188 d4fa192b-c00b-0410-8231-f00ffab90ce4

18 years agoLess noise
phk [Thu, 15 Jun 2006 08:04:19 +0000 (08:04 +0000)]
Less noise

git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@187 d4fa192b-c00b-0410-8231-f00ffab90ce4

18 years agostart examining HTTP status codes from backend
phk [Wed, 14 Jun 2006 09:57:19 +0000 (09:57 +0000)]
start examining HTTP status codes from backend

git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@186 d4fa192b-c00b-0410-8231-f00ffab90ce4

18 years agoAdd vca_write_obj() which writes an sbuf (as) HTTP header and the
phk [Wed, 14 Jun 2006 09:39:31 +0000 (09:39 +0000)]
Add vca_write_obj() which writes an sbuf (as) HTTP header and the
object from the sessions to the client.

git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@185 d4fa192b-c00b-0410-8231-f00ffab90ce4

18 years agoClean up session messages a bit
phk [Wed, 14 Jun 2006 09:25:13 +0000 (09:25 +0000)]
Clean up session messages a bit

git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@184 d4fa192b-c00b-0410-8231-f00ffab90ce4

18 years agoAdd HttpError tag
phk [Wed, 14 Jun 2006 09:23:50 +0000 (09:23 +0000)]
Add HttpError tag

git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@183 d4fa192b-c00b-0410-8231-f00ffab90ce4

18 years agoSanitize close/recycle session logic a bit.
phk [Wed, 14 Jun 2006 09:03:45 +0000 (09:03 +0000)]
Sanitize close/recycle session logic a bit.

git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@182 d4fa192b-c00b-0410-8231-f00ffab90ce4

18 years agoInitialize the cache_acceptor.c/VCA in the same manner as other parts.
phk [Wed, 14 Jun 2006 08:53:21 +0000 (08:53 +0000)]
Initialize the cache_acceptor.c/VCA in the same manner as other parts.

git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@181 d4fa192b-c00b-0410-8231-f00ffab90ce4

18 years agoGive storage backends a "send" method.
phk [Wed, 14 Jun 2006 07:21:48 +0000 (07:21 +0000)]
Give storage backends a "send" method.

Let storage_file use sendfile(2) for it.

git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@180 d4fa192b-c00b-0410-8231-f00ffab90ce4

18 years agoComplete the storage_file method.
phk [Wed, 14 Jun 2006 06:58:55 +0000 (06:58 +0000)]
Complete the storage_file method.

git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@179 d4fa192b-c00b-0410-8231-f00ffab90ce4

18 years agoDefault to "file" stevedore from now on.
phk [Tue, 13 Jun 2006 20:09:29 +0000 (20:09 +0000)]
Default to "file" stevedore from now on.

git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@178 d4fa192b-c00b-0410-8231-f00ffab90ce4

18 years agoBe more aggressive about mmap'ing memory. The size_t thing is a bogus
phk [Tue, 13 Jun 2006 20:06:45 +0000 (20:06 +0000)]
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.

git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@177 d4fa192b-c00b-0410-8231-f00ffab90ce4

18 years agommap as much as the file as we are able to when the cache process opens
phk [Tue, 13 Jun 2006 13:47:51 +0000 (13:47 +0000)]
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 ?

git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@176 d4fa192b-c00b-0410-8231-f00ffab90ce4

18 years agoCalculate the size of the backing store file.
phk [Tue, 13 Jun 2006 13:14:12 +0000 (13:14 +0000)]
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...

git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@175 d4fa192b-c00b-0410-8231-f00ffab90ce4

18 years agoClone the stevedore before calling its init function and be more precise
phk [Tue, 13 Jun 2006 13:10:09 +0000 (13:10 +0000)]
Clone the stevedore before calling its init function and be more precise
about any optional arguments.

git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@174 d4fa192b-c00b-0410-8231-f00ffab90ce4

18 years agoAfter having a strong cup of tea: don't name files with leading underscore
phk [Tue, 13 Jun 2006 08:05:33 +0000 (08:05 +0000)]
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".

git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@173 d4fa192b-c00b-0410-8231-f00ffab90ce4

18 years agoClone the malloc stevedore to the file stevedore
phk [Tue, 13 Jun 2006 08:02:59 +0000 (08:02 +0000)]
Clone the malloc stevedore to the file stevedore

git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@172 d4fa192b-c00b-0410-8231-f00ffab90ce4

18 years agoRemember to tell getopt about -s
phk [Tue, 13 Jun 2006 07:59:20 +0000 (07:59 +0000)]
Remember to tell getopt about -s

git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@171 d4fa192b-c00b-0410-8231-f00ffab90ce4

18 years agoPut more meat on the stevedore (storage backend) interface:
phk [Tue, 13 Jun 2006 07:57:32 +0000 (07:57 +0000)]
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.

git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@170 d4fa192b-c00b-0410-8231-f00ffab90ce4

18 years agoUse NULL init method
phk [Tue, 13 Jun 2006 07:26:20 +0000 (07:26 +0000)]
Use NULL init method

git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@169 d4fa192b-c00b-0410-8231-f00ffab90ce4

18 years agoAllow for NULL init methods for hash and stevedore
phk [Tue, 13 Jun 2006 07:25:20 +0000 (07:25 +0000)]
Allow for NULL init methods for hash and stevedore

git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@168 d4fa192b-c00b-0410-8231-f00ffab90ce4

18 years agoUse vca_write/vca_flush
phk [Mon, 1 May 2006 12:59:34 +0000 (12:59 +0000)]
Use vca_write/vca_flush

git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@167 d4fa192b-c00b-0410-8231-f00ffab90ce4

18 years agoUse vca_write/vca_flush
phk [Mon, 1 May 2006 12:59:12 +0000 (12:59 +0000)]
Use vca_write/vca_flush

git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@166 d4fa192b-c00b-0410-8231-f00ffab90ce4

18 years agoUse vca_write/vca_flush
phk [Mon, 1 May 2006 12:51:48 +0000 (12:51 +0000)]
Use vca_write/vca_flush

git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@165 d4fa192b-c00b-0410-8231-f00ffab90ce4

18 years agoAdd vca_write() and vca_flush(), two functions which will attempt to
phk [Mon, 1 May 2006 12:45:20 +0000 (12:45 +0000)]
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()

git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@164 d4fa192b-c00b-0410-8231-f00ffab90ce4

18 years agoAdd FlexeLint files
phk [Mon, 1 May 2006 12:28:27 +0000 (12:28 +0000)]
Add FlexeLint files

git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@163 d4fa192b-c00b-0410-8231-f00ffab90ce4

18 years agobandaid for name-clash
phk [Mon, 1 May 2006 12:27:51 +0000 (12:27 +0000)]
bandaid for name-clash

git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@162 d4fa192b-c00b-0410-8231-f00ffab90ce4

18 years agoKeep track of how many connections we have open
phk [Mon, 1 May 2006 12:27:30 +0000 (12:27 +0000)]
Keep track of how many connections we have open

git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@161 d4fa192b-c00b-0410-8231-f00ffab90ce4

18 years agoadd missing extern
phk [Mon, 1 May 2006 12:27:10 +0000 (12:27 +0000)]
add missing extern

git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@160 d4fa192b-c00b-0410-8231-f00ffab90ce4

18 years agoAdd INCOMPL() macro to mark missing code.
phk [Mon, 1 May 2006 10:55:27 +0000 (10:55 +0000)]
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.

git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@159 d4fa192b-c00b-0410-8231-f00ffab90ce4

18 years agoAdd yet another thread with an event engine to monitor idle backend
phk [Mon, 1 May 2006 07:54:13 +0000 (07:54 +0000)]
Add yet another thread with an event engine to monitor idle backend
connections and clean them out if the backend closes.

git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@158 d4fa192b-c00b-0410-8231-f00ffab90ce4

18 years agoCentralize "Connection: close" handling from the backend.
phk [Mon, 1 May 2006 07:53:21 +0000 (07:53 +0000)]
Centralize "Connection: close" handling from the backend.

Loop until we have the entire chunk in chunked encoding

git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@157 d4fa192b-c00b-0410-8231-f00ffab90ce4

18 years agotest backend connections at allocation time.
phk [Tue, 25 Apr 2006 09:32:14 +0000 (09:32 +0000)]
test backend connections at allocation time.

General bush-wacking in the fetch code.

git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@156 d4fa192b-c00b-0410-8231-f00ffab90ce4

18 years agoFix argument to http_BuildSbuf
phk [Tue, 25 Apr 2006 09:31:28 +0000 (09:31 +0000)]
Fix argument to http_BuildSbuf

git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@155 d4fa192b-c00b-0410-8231-f00ffab90ce4

18 years agoKeep alive often enough
phk [Tue, 25 Apr 2006 09:30:53 +0000 (09:30 +0000)]
Keep alive often enough

git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@154 d4fa192b-c00b-0410-8231-f00ffab90ce4

18 years agoMake width colum wider and decimal
phk [Tue, 25 Apr 2006 08:17:43 +0000 (08:17 +0000)]
Make width colum wider and decimal

git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@153 d4fa192b-c00b-0410-8231-f00ffab90ce4

18 years agoAdd new shmlog tags and handling states
phk [Tue, 25 Apr 2006 08:17:17 +0000 (08:17 +0000)]
Add new shmlog tags and handling states

git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@152 d4fa192b-c00b-0410-8231-f00ffab90ce4

18 years agoImplement a rudimentary chunked Transfer-Encoding
phk [Tue, 25 Apr 2006 08:14:29 +0000 (08:14 +0000)]
Implement a rudimentary chunked Transfer-Encoding

git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@151 d4fa192b-c00b-0410-8231-f00ffab90ce4

18 years agoreset header count before we dissect
phk [Tue, 25 Apr 2006 07:10:36 +0000 (07:10 +0000)]
reset header count before we dissect

git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@150 d4fa192b-c00b-0410-8231-f00ffab90ce4

18 years agoTrack backend connections in shmem log
phk [Tue, 25 Apr 2006 07:04:43 +0000 (07:04 +0000)]
Track backend connections in shmem log

git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@149 d4fa192b-c00b-0410-8231-f00ffab90ce4

18 years agoAdd an end pointer so allocation size can be changed on the fly
phk [Tue, 25 Apr 2006 06:52:26 +0000 (06:52 +0000)]
Add an end pointer so allocation size can be changed on the fly

git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@148 d4fa192b-c00b-0410-8231-f00ffab90ce4

18 years agoMove shmlog entry, remove debugging
phk [Tue, 25 Apr 2006 06:48:56 +0000 (06:48 +0000)]
Move shmlog entry, remove debugging

git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@147 d4fa192b-c00b-0410-8231-f00ffab90ce4

18 years agoRedo http header storage and processing
phk [Tue, 25 Apr 2006 06:16:22 +0000 (06:16 +0000)]
Redo http header storage and processing

git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@146 d4fa192b-c00b-0410-8231-f00ffab90ce4

18 years agoAdd an indecisive comment
phk [Mon, 24 Apr 2006 19:10:09 +0000 (19:10 +0000)]
Add an indecisive comment

git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@145 d4fa192b-c00b-0410-8231-f00ffab90ce4

18 years agoSort and annotate
phk [Mon, 24 Apr 2006 19:09:32 +0000 (19:09 +0000)]
Sort and annotate

git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@144 d4fa192b-c00b-0410-8231-f00ffab90ce4

18 years agoLoop until we have read it all
phk [Wed, 19 Apr 2006 06:38:57 +0000 (06:38 +0000)]
Loop until we have read it all

git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@143 d4fa192b-c00b-0410-8231-f00ffab90ce4

18 years agoImplement enough of FetchSession and DeliverSession that we can actually
phk [Wed, 19 Apr 2006 06:34:10 +0000 (06:34 +0000)]
Implement enough of FetchSession and DeliverSession that we can actually
deliver a cached object.

git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@142 d4fa192b-c00b-0410-8231-f00ffab90ce4

18 years agoAdd busyflag and strorage link to objects.
phk [Tue, 18 Apr 2006 08:23:44 +0000 (08:23 +0000)]
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.

git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@141 d4fa192b-c00b-0410-8231-f00ffab90ce4

18 years agoAdd trivial malloc backed storage backend.
phk [Tue, 18 Apr 2006 07:34:24 +0000 (07:34 +0000)]
Add trivial malloc backed storage backend.

git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@140 d4fa192b-c00b-0410-8231-f00ffab90ce4

18 years agoImplement the three function VCL model in the compiler.
phk [Wed, 12 Apr 2006 08:58:54 +0000 (08:58 +0000)]
Implement the three function VCL model in the compiler.

git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@139 d4fa192b-c00b-0410-8231-f00ffab90ce4

18 years agoAdd ETag: header
phk [Wed, 12 Apr 2006 08:56:48 +0000 (08:56 +0000)]
Add ETag: header

git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@138 d4fa192b-c00b-0410-8231-f00ffab90ce4

18 years agoBeginnings of the object lookup stuff: A simple list based
phk [Tue, 11 Apr 2006 08:28:20 +0000 (08:28 +0000)]
Beginnings of the object lookup stuff:  A simple list based
implementation to get things moving.

git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@137 d4fa192b-c00b-0410-8231-f00ffab90ce4

18 years agoClose or recycle backend connections as appropriate
phk [Thu, 6 Apr 2006 10:01:09 +0000 (10:01 +0000)]
Close or recycle backend connections as appropriate

git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@136 d4fa192b-c00b-0410-8231-f00ffab90ce4

18 years agoAdd VBE_RecycleFd() function to recycle backend connections
phk [Thu, 6 Apr 2006 10:00:45 +0000 (10:00 +0000)]
Add VBE_RecycleFd() function to recycle backend connections

git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@135 d4fa192b-c00b-0410-8231-f00ffab90ce4

18 years agoPass Content-Encoding header
phk [Thu, 6 Apr 2006 09:59:30 +0000 (09:59 +0000)]
Pass Content-Encoding header

git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@134 d4fa192b-c00b-0410-8231-f00ffab90ce4

18 years agoOutput the fd in decimal instead of hex.
phk [Thu, 6 Apr 2006 09:38:00 +0000 (09:38 +0000)]
Output the fd in decimal instead of hex.

Do Id Keyword

git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@133 d4fa192b-c00b-0410-8231-f00ffab90ce4

18 years agoRename hdr_end to a more sensible rcv_ptr which points to the first
phk [Thu, 6 Apr 2006 09:33:19 +0000 (09:33 +0000)]
Rename hdr_end to a more sensible rcv_ptr which points to the first
unaccounted for character in the buffer.

Do Id Keyword

git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@132 d4fa192b-c00b-0410-8231-f00ffab90ce4