Fri, 04 May 2012 08:33:21 -0700 Add the ability to optionally script rewrite logic using Lua. 0.1.0
Mahlon E. Smith <mahlon@martini.nu> [Fri, 04 May 2012 08:33:21 -0700] rev 22
Add the ability to optionally script rewrite logic using Lua.
Wed, 09 Nov 2011 16:07:25 -0800 Tag for initial release (semver)
Mahlon E. Smith <mahlon@laika.com> [Wed, 09 Nov 2011 16:07:25 -0800] rev 21
Tag for initial release (semver)
Wed, 09 Nov 2011 16:06:49 -0800 Removed tag 0.1 0.0.1
Mahlon E. Smith <mahlon@laika.com> [Wed, 09 Nov 2011 16:06:49 -0800] rev 20
Removed tag 0.1
Wed, 09 Nov 2011 16:02:57 -0800 Added tag 0.1 for changeset d4ce82194b64
Mahlon E. Smith <mahlon@laika.com> [Wed, 09 Nov 2011 16:02:57 -0800] rev 19
Added tag 0.1 for changeset d4ce82194b64
Wed, 09 Nov 2011 15:54:37 -0800 - 1st pass at documentation with the README.
Mahlon E. Smith <mahlon@laika.com> [Wed, 09 Nov 2011 15:54:37 -0800] rev 18
- 1st pass at documentation with the README. - Attempt to detect trivial redirect loops. - Loosen the request parser enough to just accept URLs, so you can easily test rewrite behavior by just running volta and pasting URLs. - Alter the whitelist "negative" rule syntax to more closely match normal rules. Rename references to negative rules from "whitelist" rules, to avoid confusion.
Mon, 07 Nov 2011 10:43:09 -0800 Retain the CDB struct between lookups, only freeing when reopening the
Mahlon E. Smith <mahlon@martini.nu> [Mon, 07 Nov 2011 10:43:09 -0800] rev 17
Retain the CDB struct between lookups, only freeing when reopening the db. Big, big speed boost.
Mon, 07 Nov 2011 10:43:06 -0800 Ensure that all output is flushed immediately.
Mahlon E. Smith <mahlon@martini.nu> [Mon, 07 Nov 2011 10:43:06 -0800] rev 16
Ensure that all output is flushed immediately. Fix free() bug for non-matching rules. When creating the rules cdb, make the tmpfile in the cwd instead of /tmp. Make regular expression matches case insensitive.
Sat, 05 Nov 2011 12:52:29 -0700 Add whitelisting rules, to negate other matches if they come first in
Mahlon E. Smith <mahlon@martini.nu> [Sat, 05 Nov 2011 12:52:29 -0700] rev 15
Add whitelisting rules, to negate other matches if they come first in the ruleset. Remove the results set array completely, it's faster and requires less memory to do the comparisons inline.
Fri, 04 Nov 2011 20:34:28 -0700 There isn't a fast way to look up ( value exists or null ) for every
Mahlon E. Smith <mahlon@martini.nu> [Fri, 04 Nov 2011 20:34:28 -0700] rev 14
There isn't a fast way to look up ( value exists or null ) for every piece of data that we're handed from squid -- a full table scan must be performed for each request, regardless of any indexing in place. With a decent number of rules, it's much, much slower than I anticipated, making it fairly pointless to even do parsing in ragel for speed. Trading some matching features (IPs, for now) for speed, and aiming at just doing good host/path matching at the moment, using CDB for fast host keying. Ripped out all the SQLite work, replacing it with a first round of CDB lookups. Added a ascii rulefile to cdb converter flag. Churning through the requests again! Also, fixed an off-by-one error with line extending.
Mon, 31 Oct 2011 17:17:07 -0700 1st iteration of volta actually doing something. Process the request,
Mahlon E. Smith <mahlon@laika.com> [Mon, 31 Oct 2011 17:17:07 -0700] rev 13
1st iteration of volta actually doing something. Process the request, find the best matching rule, and rewrite the request. Without the DB queries, volta was parsing over 750k requests a second. Currently, it's down to 129.5 with 1161 rules in place. Yikes. I may need to re-evaluate some design choices here.
(0) -10 +10 tip