]>
err.no Git - varnish/log
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
phk [Mon, 27 Mar 2006 14:12:07 +0000 (14:12 +0000)]
Add config.load, config.inline and config.use commands.
git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@83
d4fa192b -c00b-0410-8231-
f00ffab90ce4