483 Commits (53337c81d40b90d3f8daab92c8419522d3a1c0fc)

Author SHA1 Message Date
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
Thomas Porzelt 011380dcb7 [core] change memory profiler output, add minsize parameter to debug.profiler_dump action 12 years ago
Thomas Porzelt cdf183137f [plugin_core] rename 'blank' action to 'respond' and allow optional integer, string or list of integer+string parameters which support patterns 12 years ago
Thomas Porzelt cc1c9a92e2 [config parser] don't allow setup blocks or includes in setup blocks 12 years ago
Thomas Porzelt 2ebf367df5 [config parser] fix detection of conflicts between options and uservars 12 years ago
Thomas Porzelt 04c8356b44 [config parser] change syntax again: user defined variables are now defined as 'x = ...;'. user defined actions are not special anymore 12 years ago
Stefan Bühler abd58794d8 [config parser]: fix crash with nested conditional blocks, fix some warnings 12 years ago
Stefan Bühler d579b8a163 [core]: accept LF instead of CR LF in http requests 12 years ago
Thomas Porzelt 9f832c75ea Config syntax changes and parser fixes:
* Change ":" to "=>" in hash tables
* Change assignments to not need "=" anymore
* User defined actions must now be prefixed with the "action" keyword
* Anonymous user defined actions don't need the "$" prefix anymore
* Fix parsing of conditionals with more than 2 conditions
12 years ago
Thomas Porzelt 496a28f197 [core] truncate temp string before evaluating pattern. add comment to pattern.h that li_eval_pattern() does not truncate the string for you 12 years ago
Stefan Bühler 0fcbfb7ab7 [core] optimize syscalls per connection 12 years ago
Stefan Bühler 45f0cf0bf3 Increase timeout for angel-listen 12 years ago
Stefan Bühler 6164ac83c9 [*cgi env]: Fix REQUEST_URI 12 years ago
Stefan Bühler d9cc24b8e6 [core]: fix connection/vrequest callbacks to return FALSE after they got reset, so handling stops 13 years ago
Stefan Bühler bf0ece96fb [throttle] Fix segfaults 13 years ago
Stefan Bühler 9c6f894eb5 [mime-types] Fix mimetype insert, add new test cases to catch this 13 years ago
Thomas Porzelt 912976fe30 [core] Attempt to fix issue with stalling connections in throttle pools 13 years ago
Stefan Bühler 7a67ba94d7 [autotools]: make sure pkg-config m4 is available in autoconf, check for ragel in ./configure 13 years ago
Thomas Porzelt c1fe5047be [plugin_core] Fix cascading in docroot action 13 years ago
Thomas Porzelt 772e66b91c [core] Immediately rearm throttle pool and update con when inserting into pool 13 years ago
Stefan Bühler 0ab5aee623 [throttle] Fix loop counter (leaded to segfaults) 13 years ago
Stefan Bühler 26d9155e87 [pattern] fix endless (memory eating) loop in pattern parsing 13 years ago
Stefan Bühler 11fa781f98 Fix some warnings found with clang analyzer 13 years ago
Stefan Bühler 2941105e28 [pattern] Fix vr->wrk->tmp_str usage, remove pattern.h from base.h, add pattern support to header.add* actions 13 years ago
Stefan Bühler db6a989677 Fix some warnings 13 years ago
Stefan Bühler f521719737 Fix some link problems with -lcrypt 13 years ago
Stefan Bühler ab9421a5e1 [core] Provide safe wrapper for crypt if crypt_r is not available 13 years ago
Stefan Bühler 67fcc00125 [pattern] Fix regex nth callback, activate env-set pattern range tests 13 years ago
Stefan Bühler 97d6300c62 [plugin_core] Support %n in all pattern evals 13 years ago
Stefan Bühler 01f0c1606f [core] Fix pattern range parser, fix docroot_nth callback 13 years ago
Stefan Bühler 177fc95219 [core] Add phys.docroot and phys.pathinfo 13 years ago
Stefan Bühler 52584c99bb [pattern] Add ranges (and fix match-info handling) 13 years ago
Stefan Bühler eecf0d90be [pattern] Fix handling of escaped characters 13 years ago
Stefan Bühler 688a17372f [tests] Add BadRequest test (and fix the bug), add "status" vhost 13 years ago
Stefan Bühler d6820e5cfd [pattern] Hide pattern-part struct 13 years ago
Thomas Porzelt ce4f9391e3 [core] Fix tiny leak in pattern code when parse errors happen 13 years ago
Thomas Porzelt efb04f1f13 [config parser] include: Log warning if no file matches wildcard, error if no wildcard and file not found 13 years ago
Stefan Bühler c35cf21c52 [log] Add basic api to open log files via angel 13 years ago
Stefan Bühler 97088f667e Fix typos / missing includes 13 years ago
Stefan Bühler de43e75b75 [core] Disable mmap as we don't handle SIGBUS yet 13 years ago
Thomas Porzelt 31d2291a1c [core] Add support for throttling by IP 13 years ago
Stefan Bühler 8ae6902602 [core] remove lighttpd-glue.h from base.h 13 years ago
Stefan Bühler 3b1a781381 [core] remove encoding.h from base.h includes 13 years ago
Stefan Bühler 7fbcfb86d9 [mod_openssl]: better io event handling (ssl may want to write while lighty only wants to read) 13 years ago
Stefan Bühler 0247ee879f [angel/core]: remove old unix socket before binding 13 years ago
Stefan Bühler 876261c62c [core/angel]: Use strict ip matching (family must match, no IPv4-mapped IPv6) 13 years ago
Stefan Bühler 14660bee4f [core/angel]: support unix socket listen 13 years ago
Stefan Bühler 823b9d13c2 [core]: wait for connections before shutdown 13 years ago
Thomas Porzelt 47bc318a35 [core] Make li_server_ts_format_add() threadsafe 13 years ago
Thomas Porzelt 14d48527af [core] Make log.timestamp creation/destruction threadsafe 13 years ago
Thomas Porzelt d0ae21c7b2 [config parser] Rename var.PID/var.CWD/env.* to sys.pid/sys.cwd/sys.env.* and add sys.version containing the lighty version 13 years ago
Thomas Porzelt 587c7383ba [core] Add support for req.env/header[key] to patterns 13 years ago
Thomas Porzelt f088e43f62 [plugin_core] Add env.set/add/remove/clear actions 13 years ago
Thomas Porzelt a3b7ce74af [core] Rework throttle-pool handling to be thread-safe in creation/destruction aswell as more accurate and fair throttling 13 years ago
Stefan Bühler abdd422aa9 plugin.c: fix optionptr mem-leak 13 years ago
Stefan Bühler b29c8161f1 Fix mimetypes 13 years ago
Stefan Bühler be65208143 waitqueue: modify callback 13 years ago
Thomas Porzelt c7a39e4da1 [core] Fix compilation on non-linux systems 13 years ago
Thomas Porzelt 0eaed50c1c [core] Use uintptr_t instead of guintptr as it requires an otherwise unneeded recent glib version 13 years ago
Stefan Bühler 9ba3395241 Fix C++ style comments 13 years ago
Stefan Bühler 91fda70bca [plugin_core] Fix mixed declarations and code 13 years ago
Stefan Bühler 7d938e48e3 [log] Fix prepare handler 13 years ago
Stefan Bühler 79d98f5991 [core] Use liJobQueue for vrequest job queue 13 years ago
Thomas Porzelt 582dfa99d7 [core] Rework mimetype lookup code 13 years ago
Thomas Porzelt 9c63e60cb7 [core] Add workers.cpu_affinity setup action 13 years ago
Stefan Bühler b9af60f92d [plugin_core]: don't stat last entry in docroot list, it is used anyway 13 years ago
Stefan Bühler d133b8ad8c [lua]: add subrequst_lua.c 13 years ago
Stefan Bühler 77ad119f66 [lua]: add subrequests 13 years ago
Stefan Bühler 1c3d3c287f [core]: add tasklet pools to workers and use them for stat-cache 13 years ago
Stefan Bühler 6f454d0008 [plugin_core]: add "static_no_fail" action, which doesn't return 403/404 so other actions can handler the request 13 years ago
Stefan Bühler c3164aba8b Move binary names: angel becomes lighttpd2, worker lighttpd2-worker 13 years ago
Stefan Bühler b8a0921265 Add some missing LI_/li prefixes for types and enum values 13 years ago
Stefan Bühler b87e74d151 Optimize IO handling to safe syscalls; run vrequest state machines twice before looking for new io events 13 years ago
Stefan Bühler b876f8401d [core]: rework connection/vrequest structs; add liConInfo 13 years ago
Stefan Bühler cae0c15710 Optimize some string handling in chunk parser 13 years ago
Stefan Bühler 254ba2a1f6 Optimize header insertion 13 years ago
Stefan Bühler cc0044c4ee Fix http method parser, add inlined g_string_append_len 13 years ago
Stefan Bühler a2ed50dedd Optimize some socket initialization handling 13 years ago
Stefan Bühler 7bb671de4c [config parser] fix operators 13 years ago
Stefan Bühler b7e6ba4eb5 condition.c: set match_type in all cases 13 years ago
Stefan Bühler 8b17198eb6 Try to fix some bugs in the config parser 13 years ago
Thomas Porzelt 2885c88ae7 [core] Config parser: one more fix for condition parsing 13 years ago
Thomas Porzelt 5b9cc67ad5 [core] Config parser: fix a whitespace handling bug 13 years ago
Thomas Porzelt 7648ef0f40 [core] Config parser: Fix parsing rules for multiple else-if conditions 13 years ago
Thomas Porzelt 45d9fda41e [core] Config parser: fix condition with key handling 13 years ago
Stefan Bühler 18fd43840c [mod_balancer] fix typo, and fix balancer handling in action-stack 13 years ago
Stefan Bühler dd0bee3fd6 action_stack: fix balanacer management 13 years ago
Thomas Porzelt ab94d8390d [core] Change *bit integer suffixes in config parser 13 years ago
Thomas Porzelt 5f655d3b6e [core] Fix 'else if' handling in config parser 13 years ago
Thomas Porzelt 65a3d5dfa9 [core] Add support for 'and' and 'or' in conditions to the config parser 13 years ago
Thomas Porzelt e2a551298e [core] Use liCond* helpers in li_pattern_parse/eval 13 years ago
Thomas Porzelt c8663ffda9 [core] Allow disabling of stat cache through stat_cache.ttl 0; 13 years ago
Stefan Bühler c23509424d pattern: check for NULL in li_pattern_free 13 years ago
Thomas Porzelt a4b0f4a9c0 [core] Fix segfault in li_vrequest_reset() when default value is NULL 13 years ago
Thomas Porzelt 43def72d5b [core] Fix tiny leak in docroot action 13 years ago
Thomas Porzelt a5f6e08abd [core] Fix for last commit: undefined flag with older libev headers so have to use makros 13 years ago
Thomas Porzelt 396f740e77 [core] Use EVFLAG_NOSIGFD to disable signalfd usage if libev 3.8 is used, it breaks signal handling 13 years ago
Thomas Porzelt e2faced3dd [core] Fix worker timestamp cache initialization resulting in segfault when a module adds a new formatter (e.g. mod_accesslog) 13 years ago
Thomas Porzelt 0b860b2a0c [core] Ensure a connection is put into io timeout queue after keepalive] 13 years ago
Thomas Porzelt 5531e36cf4 [core] Ensure that a connection is always in the io timeout queue (if not in keep-alive) 13 years ago
Thomas Porzelt bba88e3326 [core] Fix detection of too big request http header 13 years ago