483 Commits (53337c81d40b90d3f8daab92c8419522d3a1c0fc)

Author SHA1 Message Date
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
Stefan Bühler 709296d796 fix bugs and warnings from compiler warnings (memset parameter order, shadow, ...) 10 years ago
Stefan Bühler 7a01f69b89 fix connection is_closed handling (never close raw_out, never close con->out.source->out) 10 years ago
Stefan Bühler 914f79650a fix connection handling with chunked responses 10 years ago
Stefan Bühler c61f4929cb more asserts and checks in stream_simple_socket 10 years ago
Stefan Bühler b6325775dc [backends] fix connection insertion 10 years ago
Stefan Bühler ba46b595ae [mod_fastcgi] fix broken asserts 10 years ago
Stefan Bühler 5c2cc7143d fix filters (deflate, memcached, cache_disk_etag) 10 years ago
Stefan Bühler f33a7fd3fa [lua] check values for NULL before pushing to stack 10 years ago
Stefan Bühler 3aa78c1002 wait for request body in dynamic backends, cache them on disk 10 years ago
Stefan Bühler c40b1da839 [subrequests lua] fix compile warnings. still not working, needs to be ported to stream api. 10 years ago
Stefan Bühler f1f1aacdfe fix glib deprecation warnings 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 ebd5a4ecb3 Fix comment style (//) and add gnutls to automake distcheck 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 20a63070e2 [chunks] extract to plain memory 10 years ago
Stefan Bühler 092a1b0141 fix bugs found with clang-3.3 -fsanitize=address,undefined 10 years ago
Stefan Bühler 186309f529 [lua] add missing file 10 years ago
Stefan Bühler 0d85a068c8 [lua] add per lua_State lock 10 years ago
Stefan Bühler c1851a6cea [lua] force garbage collection 10 years ago
Stefan Bühler f2ade38923 Release mainaction before stopping workers 10 years ago
Stefan Bühler ff7b73c8a9 [collect] Allow to start collect without worker context 10 years ago
Stefan Bühler 9cb0790052 [core_lua] Forward worker pointer to log functions in some lua functions
This fixes 2 things:
 * won't need global server lock for logging in worker context
 * order of log entries; worker context log gets committed to
   global list in the event loop
10 years ago
Stefan Bühler 01abf704a3 [lua] Use recursive lock for global lua lock 11 years ago
Stefan Bühler 2634c77aae Fix use of deprecated g_strcasecmp 11 years ago
Stefan Bühler b310884f4d [log] Remove (broken) locking for g_printerr in li_log_write_stderr - fputs, the default backend, is thread safe 11 years ago
Stefan Bühler d705276183 [plugin_core] Fix closing data stream for invalid ranges in static handling 11 years ago
Stefan Bühler 5d48ae7102 [log] Add changable log contexts (i.e. references to the real one), so a pointer to such context can be used over a longer period of time 11 years ago
Stefan Bühler a0227182d6 Fix small memleak with server sockets 11 years ago
Stefan Bühler 97bc95a107 [configparser] allow normal actions and setups with the same name 11 years ago
Stefan Bühler b1c45e6a8f [chunk/network] use glib error system to report errors (instead of using virtualrequest context) 11 years ago
Stefan Bühler 77f786ed18 [log] remove different timestamp format handling (one is enough), separate log context (liLogMap) from virtualrequest 11 years ago
Stefan Bühler d173c7d305 [response] fix totally broken response headers if connection header is sent 12 years ago
Stefan Bühler 4c04989bd1 fix compile bugs in previous commits 12 years ago
Stefan Bühler 6ca28bab2b [response handling] fix missing connection header 12 years ago
Stefan Bühler 011aaccabd [http response/request parser] parse method with extra function, fix quoted text, restrict quoted pair 12 years ago
Stefan Bühler 89a32e1504 [chunkqueue] skip setting limit if it is the current one 12 years ago
Stefan Bühler eaf460e3d0 [plugin_core] fix docroot pattern error handling (fixes #2362) 12 years ago
Stefan Bühler 9e215e397f [value] add some functions to handle liValue 12 years ago
Thomas Porzelt 3f12becf59 [plugin_core] add 'map' action, which maps the result of a pattern to a user defined action 12 years ago
Thomas Porzelt a66b6ce8d5 [config parser] rename 'o' liValue variables to 'v'. the name was a relict from option variables 12 years ago
Thomas Porzelt 9f17fd620d [config parser] add 'none' and 'default' keywords 12 years ago
Stefan Bühler a7741a2f22 [core] Ignore connection headers from backends 12 years ago
Thomas Porzelt fc3d0e51e9 [core] fix invalid html in auto-generated responses 12 years ago
Stefan Bühler 3277edabe6 connection.c: optimize buffer usage - don't keep too many unused buffers around 12 years ago
Stefan Bühler bd5c2f4ebe move profiler code to common lib 12 years ago
Thomas Porzelt bd15bb8f82 [core] fix for previous commit. gc requency was set to 10s not 5min 12 years ago
Thomas Porzelt ab313d20c2 [core] change connection garbage collector algorithm to free all unused connections up to the maximum of active connections during the last 5 minutes 12 years ago