]> err.no Git - varnish/log
varnish
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

18 years agoAdd shmlog tags for pipe and pass handling
phk [Thu, 6 Apr 2006 09:30:46 +0000 (09:30 +0000)]
Add shmlog tags for pipe and pass handling

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

18 years agoLog tag for session reuse.
phk [Thu, 6 Apr 2006 09:11:28 +0000 (09:11 +0000)]
Log tag for session reuse.

Do Id Keyword

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

18 years agoRecycle sessions instead of retiring them.
phk [Thu, 6 Apr 2006 09:10:24 +0000 (09:10 +0000)]
Recycle sessions instead of retiring them.

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

18 years agoPrune the bits we used from the input buffer before we recycle the
phk [Thu, 6 Apr 2006 09:09:58 +0000 (09:09 +0000)]
Prune the bits we used from the input buffer before we recycle the
session.

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

18 years agoAdd a vca_recycle_session() function which sticks a session back into
phk [Thu, 6 Apr 2006 09:09:09 +0000 (09:09 +0000)]
Add a vca_recycle_session() function which sticks a session back into
the acceptors event engine.

Do Id keyword

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

18 years agoDon't log the terminating NUL on response proto field.
phk [Thu, 6 Apr 2006 09:08:13 +0000 (09:08 +0000)]
Don't log the terminating NUL on response proto field.

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

18 years agoAdd an assert, remove debugging.
phk [Thu, 6 Apr 2006 08:18:53 +0000 (08:18 +0000)]
Add an assert, remove debugging.

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

18 years agoRespect VCL choice of handling
phk [Thu, 6 Apr 2006 08:18:11 +0000 (08:18 +0000)]
Respect VCL choice of handling

Do Id keyword

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

18 years agoDon't attempt to restart child process (yet).
phk [Thu, 6 Apr 2006 08:16:26 +0000 (08:16 +0000)]
Don't attempt to restart child process (yet).

Add Id Keyword handling

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

18 years agoIt's cheaper to pipe than to pass, so if the client indicates
phk [Thu, 6 Apr 2006 08:15:46 +0000 (08:15 +0000)]
It's cheaper to pipe than to pass, so if the client indicates
"Connection: close", pipe instead of passing.

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

18 years agoUse HttpdBuildSbuf()
phk [Thu, 6 Apr 2006 07:50:58 +0000 (07:50 +0000)]
Use HttpdBuildSbuf()

Enable Id keyword

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

18 years agoAdd a function to (re)build a HTTP request or response into an sbuf.
phk [Thu, 6 Apr 2006 07:50:05 +0000 (07:50 +0000)]
Add a function to (re)build a HTTP request or response into an sbuf.

Enable Id keyword

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

18 years agoEliminate leaked developer hacks.
phk [Wed, 5 Apr 2006 10:33:37 +0000 (10:33 +0000)]
Eliminate leaked developer hacks.

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

18 years agoAccount for the last byte of the header.
phk [Wed, 5 Apr 2006 09:40:22 +0000 (09:40 +0000)]
Account for the last byte of the header.

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

18 years agoI can't get AM_CONDITIONAL to work properly, so use a bigger hammer.
des [Tue, 4 Apr 2006 10:35:49 +0000 (10:35 +0000)]
I can't get AM_CONDITIONAL to work properly, so use a bigger hammer.

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

18 years agoMore portability changes: include config.h and compat.h, get rid of __unused.
des [Tue, 4 Apr 2006 10:09:37 +0000 (10:09 +0000)]
More portability changes: include config.h and compat.h, get rid of __unused.

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

18 years agoLink in libcompat, and libsbuf is now static.
des [Tue, 4 Apr 2006 10:08:49 +0000 (10:08 +0000)]
Link in libcompat, and libsbuf is now static.

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

18 years agoMake libsbuf static.
des [Tue, 4 Apr 2006 10:08:36 +0000 (10:08 +0000)]
Make libsbuf static.

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

18 years agoAdd a libcompat with strlcat() and strlcpy() from OpenBSD.
des [Tue, 4 Apr 2006 10:07:40 +0000 (10:07 +0000)]
Add a libcompat with strlcat() and strlcpy() from OpenBSD.

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

18 years agoGet pass-through working for the first request.
phk [Tue, 4 Apr 2006 09:05:45 +0000 (09:05 +0000)]
Get pass-through working for the first request.

Now we can start to play with multi-request sessions and all that.

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

18 years agoAdd HTTP response headers and processing.
phk [Tue, 4 Apr 2006 08:20:24 +0000 (08:20 +0000)]
Add HTTP response headers and processing.

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

18 years agoReverse constification of Argv functions. After cascading through all
phk [Tue, 4 Apr 2006 07:46:30 +0000 (07:46 +0000)]
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).

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

18 years agoGet "Pass" mode moving
phk [Tue, 4 Apr 2006 07:30:32 +0000 (07:30 +0000)]
Get "Pass" mode moving

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

18 years agoMake the "receive a HTTP protocol header" code generic
phk [Tue, 4 Apr 2006 07:29:45 +0000 (07:29 +0000)]
Make the "receive a HTTP protocol header" code generic

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

18 years agoAdd a session callback pointer to struct sess.
phk [Tue, 4 Apr 2006 07:27:06 +0000 (07:27 +0000)]
Add a session callback pointer to struct sess.

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

18 years agoUse bufferevent_base_set() from libevent
phk [Tue, 4 Apr 2006 07:26:26 +0000 (07:26 +0000)]
Use bufferevent_base_set() from libevent

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

18 years agoAdd a missing prototype until libevent people catch up.
phk [Tue, 4 Apr 2006 07:24:54 +0000 (07:24 +0000)]
Add a missing prototype until libevent people catch up.

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

18 years agoAdd a Debug shmemlog tag.
phk [Tue, 4 Apr 2006 07:24:22 +0000 (07:24 +0000)]
Add a Debug shmemlog tag.

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

18 years agoPortability tweaks: use our own sbuf.h and queue.h; get rid of __DECONST; get
des [Tue, 4 Apr 2006 07:24:07 +0000 (07:24 +0000)]
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().

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

18 years agoMove memset further up.
phk [Mon, 3 Apr 2006 14:41:51 +0000 (14:41 +0000)]
Move memset further up.

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

18 years agoHook up libevent to the build. Note that this should be made conditional at
des [Mon, 3 Apr 2006 14:20:41 +0000 (14:20 +0000)]
Hook up libevent to the build.  Note that this should be made conditional at
some later date.

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

18 years agoGC
des [Mon, 3 Apr 2006 14:04:16 +0000 (14:04 +0000)]
GC

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

18 years agoRemove generated files which were committed by mistake.
des [Mon, 3 Apr 2006 12:05:44 +0000 (12:05 +0000)]
Remove generated files which were committed by mistake.

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

18 years agoUpdate from libevent CVS trunk.
des [Mon, 3 Apr 2006 11:59:08 +0000 (11:59 +0000)]
Update from libevent CVS trunk.

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

18 years agoSegregate http header fields into a separate structure, we will
phk [Mon, 3 Apr 2006 11:05:53 +0000 (11:05 +0000)]
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).

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

18 years agoHow I wish people would think more ahead when writing libraries like
phk [Mon, 3 Apr 2006 11:03:28 +0000 (11:03 +0000)]
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.

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

18 years agoA little step for humanity but a big step for varnish:
phk [Mon, 3 Apr 2006 09:02:27 +0000 (09:02 +0000)]
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.

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

18 years agoCall the init function when the VCL code is loaded.
phk [Mon, 3 Apr 2006 07:27:28 +0000 (07:27 +0000)]
Call the init function when the VCL code is loaded.
We may want to postpone this to use time later on.

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

18 years agoAdd 5 dummy fields to the http headers, we will need them subsequently.
phk [Mon, 3 Apr 2006 07:14:24 +0000 (07:14 +0000)]
Add 5 dummy fields to the http headers, we will need them subsequently.

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

18 years agoUse http_headers.h to define session fields for headers and to parse
phk [Fri, 31 Mar 2006 08:27:08 +0000 (08:27 +0000)]
Use http_headers.h to define session fields for headers and to parse
them out of the header.

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

18 years agoAdd missing pthread.h includes
phk [Fri, 31 Mar 2006 08:26:23 +0000 (08:26 +0000)]
Add missing pthread.h includes

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

18 years agoUse http_headers.h to define HTTP header tags for logging
phk [Fri, 31 Mar 2006 08:25:29 +0000 (08:25 +0000)]
Use http_headers.h to define HTTP header tags for logging

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

18 years agoReusable macro definition of HTTP headers. We will need these
phk [Fri, 31 Mar 2006 08:24:36 +0000 (08:24 +0000)]
Reusable macro definition of HTTP headers.  We will need these
several different places in the sources.

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

18 years agoget us closer to a connection to the backend
phk [Thu, 30 Mar 2006 11:16:27 +0000 (11:16 +0000)]
get us closer to a connection to the backend

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

18 years agoRework the compilation of backend specifications in order to be able
phk [Thu, 30 Mar 2006 10:56:57 +0000 (10:56 +0000)]
Rework the compilation of backend specifications in order to be able
to check the provided hostname/portname at compile time.

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

18 years agoAdd the beginning of a backend connection pool
phk [Thu, 30 Mar 2006 09:26:34 +0000 (09:26 +0000)]
Add the beginning of a backend connection pool

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

18 years agoPromote the poll mutex to be a session mutex so that we can use it
phk [Thu, 30 Mar 2006 08:05:11 +0000 (08:05 +0000)]
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.

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

18 years agoIntegrate the VCL code closer in the cache process: The passed
phk [Thu, 30 Mar 2006 07:05:10 +0000 (07:05 +0000)]
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.

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