Stefan Bühler
17a5168793
[core] convert all assert() to LI_FORCE_ASSERT(), and support writing backtraces on fatal errors with libunwind
2014-04-11 11:40:24 +02:00
Stefan Bühler
e2992d7b6b
[ip-parser] allow [ipv6]/net:port and [ipv6/net]:port for IPv6 address + network + port
2014-04-10 12:40:08 +02:00
Stefan Bühler
074f53744a
[angel] merge allow_listen_* items
...
* allow_listen_ip ".." -> allow_listen ".."
* allow_listen_unix ".." -> allow_listen "unix:.."
* allow_listen also takes lists of strings
2014-04-10 12:40:08 +02:00
Stefan Bühler
22d186cecc
[angel] rewrite config handling, rename items, document it
...
* remove "instance { ... }" wrapping
* use "_" instead of "-"
* modules -> modules_path
* allow_listen { ip "..."; } -> allow_listen_ip "...";
* allow_listen { unix "..."; } -> allow_listen_unix "...";
2014-04-10 12:40:08 +02:00
Stefan Bühler
01788a7250
[common] remove hash value type (use key/value lists instead)
2014-04-10 12:40:08 +02:00
Stefan Bühler
dfaab291d9
[angel] rewrite parser, changing syntax (similar to main config)
2014-04-10 12:40:08 +02:00
Stefan Bühler
84325a5a06
[backends: scgi,proxy,fastcgi] update *context immediately after *backend_get
...
- fixes use-after-free, usually caught by an assert in
li_backend_wait_stop
2014-04-10 12:40:08 +02:00
Stefan Bühler
b5edda3bf4
[plugin_core] fix index "/filename" handling
2014-02-26 13:18:30 +01:00
Stefan Bühler
ec6600271a
[config] fix conditional parsing
...
conditional expressions include values to compare with; any
complicated value expression must be put into parantheses.
-> stop parsing after a simple value, don't search for operators,
"and"/"or" operators are handled by the conditional
2014-02-10 15:33:48 +01:00
Stefan Bühler
db58828e0b
[common] refactor liValue to share most of the code
...
* removing unused "range" value type in angel
2014-02-06 14:01:20 +01:00
Stefan Bühler
c3744763e2
[autotools] search math lib m for fmod
2014-02-04 20:15:49 +01:00
Stefan Bühler
23be07f40c
[mod_gnutls] don't abort if 'NORMAL:-CIPHER-ALL:+ARCFOUR-128' is not recognized, use 'NORMAL' instead
2014-02-04 14:39:07 +01:00
Stefan Bühler
9f6d56d5c4
[core] add PACKAGE_NO_BUILD_DATE define to disable PACKAGE_BUILD_DATE
2014-02-04 14:20:35 +01:00
Stefan Bühler
72967a0874
[core] make PACKAGE_BUILD_DATE an embeddable string constant
2014-02-04 14:04:37 +01:00
Stefan Bühler
133941c327
[mod_status] use PACKAGE_BUILD_DATE instead of __DATE__/__TIME__
2014-02-04 13:59:13 +01:00
Stefan Bühler
449e672016
[dist] add script to show differences between git and dist
2014-02-04 13:23:05 +01:00
Stefan Bühler
d529150a9b
[autotools] remove generated ragel parsers from dist
2014-02-04 13:22:01 +01:00
Stefan Bühler
6d9277f8a5
[autotools] include cmake files in dist
2014-02-04 13:01:48 +01:00
Stefan Bühler
c3b715dae1
remove old test file
2014-02-04 13:01:23 +01:00
Stefan Bühler
b0ec46adec
[tests] include test ca in dist
2014-02-04 12:44:27 +01:00
Stefan Bühler
f482877825
[doc] document core config and modules in tree
2014-02-03 12:57:25 +01:00
Stefan Bühler
3cd06f49ad
restructure docs
2014-01-20 16:04:10 +01:00
Stefan Bühler
3f61b3c1b1
[mod_proxy] send Content-Length for all non GET/HEAD requests
2013-12-05 18:01:41 +01:00
Stefan Bühler
a6303d8baa
[config] allow setting vars in setup block
2013-11-13 23:49:08 +01:00
Stefan Bühler
b329a39026
[autobuild] use autoreconf instead of calling tools manually; update .gitignore
2013-11-10 15:00:14 +01:00
Stefan Bühler
0d40b25d19
[config] fix missing reference (segfault on shutdown)
2013-09-10 16:05:13 +02:00
Stefan Bühler
3bf3bb1238
[tests] add own test CA and test gnutls and openssl basic functionality
2013-09-10 15:24:05 +02:00
Stefan Bühler
7d22354772
[config] fix cast(string)
2013-09-10 15:22:58 +02:00
Stefan Bühler
a497760f3d
[ŧests] more tests, improve handling
2013-09-10 12:08:44 +02:00
Stefan Bühler
75d314c541
[doc] update to new config syntax
2013-09-10 12:07:57 +02:00
Stefan Bühler
56e606bbd7
[config] setup only allowed in master config context
2013-09-10 12:07:04 +02:00
Stefan Bühler
5222d524ad
[plugin_core] fix some setup parameter handling
2013-09-09 23:23:46 +02:00
Stefan Bühler
1a7eec4aa5
[mod_gnutls] disable protect-against-beast by default now - considered mitigated on client side
2013-09-09 16:17:18 +02:00
Stefan Bühler
81ff95db84
[mod_gnutls] announce http/1.1 in ALPN
2013-09-09 16:16:38 +02:00
Stefan Bühler
e55f423203
[config] fix more bugs in new config handling
2013-09-09 13:10:50 +02:00
Stefan Bühler
d65a2ffc16
[mod_redirect] fix segfault in config parsing
2013-09-09 12:28:31 +02:00
Stefan Bühler
04c6aa93cf
[plugin_core] fix alias action
2013-09-09 12:15:12 +02:00
Stefan Bühler
e4c99e55d6
[config] fix bug in config parser (failed parsing names followed by a comma)
2013-09-09 12:09:22 +02:00
Stefan Bühler
4056bd1a43
[config] fix mem leaks in config parser
2013-09-09 10:30:07 +02:00
Stefan Bühler
875995dae5
[config] fix bugs in new config handling
2013-09-09 10:17:43 +02:00
Stefan Bühler
8037af605f
replace g_hash_table_contains with g_hash_table_lookup
2013-09-06 17:11:14 +02:00
Stefan Bühler
4f45909f2d
[tests] cleanup to use new config style
2013-09-06 16:47:08 +02:00
Stefan Bühler
a7c61d8c06
[tests] test secdownload.lua and the lua key-value list lookup
2013-09-06 16:43:28 +02:00
Stefan Bühler
eb19c66524
[lua] fix key-value list handling and export of lists
2013-09-06 16:43:28 +02:00
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
2013-09-06 16:43:26 +02:00
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)
2013-09-06 14:36:55 +02:00
Stefan Bühler
b783bd5aaa
[misc] use less C99 features
2013-08-23 13:39:09 +02:00
Stefan Bühler
061b2a4262
[core] handle differences between options/actions/setups in plugin.c
2013-08-22 18:02:50 +02:00
Stefan Bühler
8e41187ff6
[tests] add --valgrind-leak option
2013-08-22 15:02:35 +02:00
Stefan Bühler
898e0c4687
[log] fix small mem leak
2013-08-22 15:02:35 +02:00