Thanks, Poul-Henning! These are exactly the hints I needed. Agree completely about it being controllable in VCL; my own environment has a mix of requests of widely-varying sizes and I certainly don't want this for large uploads.
Tim On Nov 5, 2008, at 11:37 AM, Poul-Henning Kamp wrote: > In message <[EMAIL PROTECTED]>, Tim > Kientzle wri > tes: > >> * I'll need code to actually read and store the POST body in memory >> (including updates to the PASS handler and other places to >> use the in-memory data when it's available) > > We sort of have this as point 15 on our shoppinglist: > > (http://varnish.projects.linpro.no/wiki/PostTwoShoppingList) > > The crucial point here, is that we want it to be controllable in > VCL, so that people can disable it for GB sized uploads and enable > it for short stuff (or vice versa) if they want. > >> * I'll need to add VCL functions to actually analyze the POST body. > > To be honest, I would would probably just use the inline C facility > and do it there, than trying to generalize it into a VCL extension. > >> The first part looks trickier. Has anyone here tried anything >> similar? Any pointers (particular source files I should pay >> attention >> to or memory-management issues I should keep in mind)? > > It's pretty straightforward really: allocate an (non-hashed) > object, add storage to it and store the contents there. > > You can see pretty much all the code you need in cache_fetch.c and > for it to go into the tree as a patch, I would insist that the > code gets generalized so we use the same code in both directions, > rather than have two copies. > > > -- > Poul-Henning Kamp | UNIX since Zilog Zeus 3.20 > [EMAIL PROTECTED] | TCP/IP since RFC 956 > FreeBSD committer | BSD since 4.3-tahoe > Never attribute to malice what can adequately be explained by > incompetence. _______________________________________________ varnish-misc mailing list varnish-misc@projects.linpro.no http://projects.linpro.no/mailman/listinfo/varnish-misc