2
0
Fork 0
Commit Graph

1592 Commits (7078063491ee995c48f76dbe11af9e3c5d2f12d7)

Author SHA1 Message Date
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