Stefan Bühler
d529150a9b
[autotools] remove generated ragel parsers from dist
9 years ago
Stefan Bühler
c3b715dae1
remove old test file
9 years ago
Stefan Bühler
f482877825
[doc] document core config and modules in tree
9 years ago
Stefan Bühler
a6303d8baa
[config] allow setting vars in setup block
10 years ago
Stefan Bühler
0d40b25d19
[config] fix missing reference (segfault on shutdown)
10 years ago
Stefan Bühler
7d22354772
[config] fix cast(string)
10 years ago
Stefan Bühler
56e606bbd7
[config] setup only allowed in master config context
10 years ago
Stefan Bühler
5222d524ad
[plugin_core] fix some setup parameter handling
10 years ago
Stefan Bühler
e55f423203
[config] fix more bugs in new config handling
10 years ago
Stefan Bühler
04c6aa93cf
[plugin_core] fix alias action
10 years ago
Stefan Bühler
e4c99e55d6
[config] fix bug in config parser (failed parsing names followed by a comma)
10 years ago
Stefan Bühler
4056bd1a43
[config] fix mem leaks in config parser
10 years ago
Stefan Bühler
875995dae5
[config] fix bugs in new config handling
10 years ago
Stefan Bühler
8037af605f
replace g_hash_table_contains with g_hash_table_lookup
10 years ago
Stefan Bühler
eb19c66524
[lua] fix key-value list handling and export of lists
10 years ago
Stefan Bühler
e76ebe2021
[core] rewrite config parser
...
* no more hash values - only lists and list of key-value pairs
* "master" config:
the config loaded on startup can use all features,
configs loaded later (vhost on demand from sql...) can't use
include* and cannot modify global vars.
* scoped variables
- add a global var store in the server struct
- global vars can be set with "global foo = bar"
- if a variable already exists in a scope it will be modified on a
write, otherwise a new local variable is created
- global vars won't be modified if not in "master" mode
- vars can be made explicitly local with "local foo = bar"; create a
local copy with "local foo = foo"
- globals vars are available in live config loads for reading
- each file and action block {...} creates a new scope; if/else branches do
NOT create a new scope
* to append a value to a list use "l + [v]" (not "l + v" anymore);
lists are concatenated with "+"
* [...] always marks a list
* (...) is a list if it contains a "," or "=>", otherwise it justs
groups an expression
* a list can either contain key-value pairs or other values. mixing is
not allowed
10 years ago
Stefan Bühler
a1fbaab86b
[core/modules] refactor config handling
...
* should be more robust now: taking list of wanted value, handling NULL
pointers instead of value type NONE, fixed some bugs (wrong checks,
mem leaks, ...)
* add many methods to make handling of values easier; most methods
can handle NULL value pointers safely (li_value_type(v) instead of
v->type and so on)
10 years ago
Stefan Bühler
061b2a4262
[core] handle differences between options/actions/setups in plugin.c
10 years ago
Stefan Bühler
898e0c4687
[log] fix small mem leak
10 years ago
Stefan Bühler
ad687636e9
[lua] push list values with __index metamethod to lookup string/nil keys in key-value lists
10 years ago
Stefan Bühler
9f9fe72d97
[lua] fix usage of lua_typename
10 years ago
Stefan Bühler
f9d0abac66
[lua] add lighty.error -> lighty.print alias
10 years ago
Stefan Bühler
9e71dc6890
[core] li_value_to_string: use => for separating hash keys and values like the config
10 years ago
Stefan Bühler
32e91a9e8a
[core] handle NULL values in li_value_extract* functions
10 years ago
Stefan Bühler
74b64a6d1a
[plugin_core] log/setup log: convert to handling key-value list
10 years ago
Stefan Bühler
92dc237ee8
[core] add li_value_new_hashtable to create a GString -> liValue hashtable
10 years ago
Stefan Bühler
ccd512ca57
[waf] remove waf for now, doesn't work anymore
10 years ago
Stefan Bühler
3c27596287
[plugin_core] index action should do less stat() calls now, especially for multiple names
10 years ago
Stefan Bühler
969818083e
[core] add li_value_to_key_value_list: convert value hash to key-value list
10 years ago
Stefan Bühler
a7f41b9e3b
[core] check for disabled keep-alive early to send matching headers
10 years ago
Stefan Bühler
b9d77f50a4
[core] add req_header.* actions
10 years ago
Simon Lundström
859da7d7eb
[plugin_core] docroot: show stat() errors for all entries when debug log is enabled
10 years ago
Stefan Bühler
bfa1395937
[throttle] fix connection throttling refill calculation
10 years ago
Stefan Bühler
05e058aa9c
fix bugs and warnings reported by clang
...
* fix memset sizeof() bugs
* fix unaligned memory access
* fix warnings for casts with alignment change
* crypt_r needs _GNU_SOURCE
10 years ago
Stefan Bühler
95f63fc0cf
[core] add global named fetch pool; all backends have to return strings. implement a simple backend.
10 years ago
Stefan Bühler
97dbcf7e42
[core] add option to disable buffering large request bodies on disk - forward them to backend directly instead
...
- right now only mod_fastcgi can handle this (it won't set the CONTENT_LENGTH env var, the backend
has to support this too)
10 years ago
Stefan Bühler
64cabac477
[core] fix connection timeout handling
10 years ago
Stefan Bühler
5e4a94b0c6
[core] handle Connection: Upgrade
10 years ago
Stefan Bühler
5e0a58be53
[stream-http-response] support chunk encoded responses
10 years ago
Stefan Bühler
3deb7c9e79
[core] support chunked uploads
10 years ago
Stefan Bühler
4706cc5f60
Fix filedescriptor/socket leaking
10 years ago
Stefan Bühler
6e6e8792de
[filter] don't run filter on stream-dest connect
10 years ago
Stefan Bühler
7f61ca9dba
disable some debug messages
10 years ago
Stefan Bühler
44f56b034f
[filters] fix memleak
10 years ago
Stefan Bühler
8a65b5e7aa
[throttle] fix memory leak
10 years ago
Stefan Bühler
0857befb7f
fix handling of new connection state
10 years ago
Stefan Bühler
abdb238f21
[core] fix half cleaned connection objects
10 years ago
Stefan Bühler
31e581456d
[core] use TCP_FASTOPEN on listening sockets if available
10 years ago
Stefan Bühler
bf6470375a
flush sockets after request end by setting TCP_NODELY temporarily
10 years ago
Stefan Bühler
11b4bdd8c5
replace unneeded ev_/EV_ references
10 years ago