Stefan Bühler
8596f874a7
[autobuild] fix duplicate config.h install and remove config.h from dist tarball
9 years ago
Stefan Bühler
acd2967534
assert many previously unchecked return values, handle some explicitly, remove FD_CLOEXEC in worker - mustn't fork
9 years ago
Stefan Bühler
e0ed289c1a
[liValue] fix dereference after NULL check
9 years ago
Stefan Bühler
17a5168793
[core] convert all assert() to LI_FORCE_ASSERT(), and support writing backtraces on fatal errors with libunwind
9 years ago
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 "...";
9 years ago
Stefan Bühler
01788a7250
[common] remove hash value type (use key/value lists instead)
9 years ago
Stefan Bühler
dfaab291d9
[angel] rewrite parser, changing syntax (similar to main config)
9 years ago
Stefan Bühler
db58828e0b
[common] refactor liValue to share most of the code
...
* removing unused "range" value type in angel
9 years ago
Stefan Bühler
9f6d56d5c4
[core] add PACKAGE_NO_BUILD_DATE define to disable PACKAGE_BUILD_DATE
9 years ago
Stefan Bühler
72967a0874
[core] make PACKAGE_BUILD_DATE an embeddable string constant
9 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
b783bd5aaa
[misc] use less C99 features
10 years ago
Stefan Bühler
061b2a4262
[core] handle differences between options/actions/setups in plugin.c
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
969818083e
[core] add li_value_to_key_value_list: convert value hash to key-value list
10 years ago
Stefan Bühler
f3436e69f1
[gnutls] fix cleanup order (use-after-free)
10 years ago
Stefan Bühler
45aeb29703
[events] use smaller repeat value to trigger timer "again" (100ms was clearly too large, 0.1ms should do)
10 years ago
Stefan Bühler
e762189fb5
[core] only use feature test macros on linux
10 years ago
Stefan Bühler
42ce5eda8f
[core] cleanup settings.h - openssl not needed in global headers
10 years ago
Stefan Bühler
d0d3dc3c55
define _XOPEN_SOURCE 600 for _POSIX_C_SOURCE 200112L, which should fix IPv6/sockaddr_in6 on BSD
10 years ago
Stefan Bühler
796f6b1547
[mod_gnutls] send alerts instead of aborting, allow safe renegotiations
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
2bcb880dc8
[core] implement generic "fetch" api
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
38aad8128e
[angel,tests] implement and use "one-shot" option to not restart crashed workers
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
3deb7c9e79
[core] support chunked uploads
10 years ago
Stefan Bühler
0857befb7f
fix handling of new connection state
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
Stefan Bühler
709296d796
fix bugs and warnings from compiler warnings (memset parameter order, shadow, ...)
10 years ago
Stefan Bühler
5c2cc7143d
fix filters (deflate, memcached, cache_disk_etag)
10 years ago
Stefan Bühler
49796611be
[glib] disable deprecation warnings
10 years ago
Stefan Bühler
3aa78c1002
wait for request body in dynamic backends, cache them on disk
10 years ago
Stefan Bühler
a937bd437a
fix missing li prefixes
10 years ago
Stefan Bühler
72ec9a432f
[throttle] rewrite
10 years ago
Stefan Bühler
e0d9c0d602
[core] register server prepare callbacks
10 years ago
Stefan Bühler
cfd8955008
[common] implement libev wrapper
...
* need a way to mark a watcher as "don't keep the loop alive"
10 years ago
Stefan Bühler
ff69160c34
[core] Use streams
10 years ago
Stefan Bühler
b41cc2898a
generic backends
10 years ago
Stefan Bühler
c450fa82a5
[core] implement streams on chunkqueues
10 years ago
Stefan Bühler
6a33c93231
Revert "[core] implement streams on chunkqueues"
...
- accidental push, patch not finished yet
This reverts commit 74ce55c860
.
10 years ago
Stefan Bühler
74ce55c860
[core] implement streams on chunkqueues
10 years ago
Stefan Bühler
a12d550557
cleanup base.h
10 years ago
Stefan Bühler
20a63070e2
[chunks] extract to plain memory
10 years ago
Stefan Bühler
0d85a068c8
[lua] add per lua_State lock
10 years ago
Stefan Bühler
ff7b73c8a9
[collect] Allow to start collect without worker context
10 years ago