1136 Commits (77f786ed18fb71aaa46b946c11126f7ea8c8fe23)

Author SHA1 Message Date
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
Stefan Bühler 81236d35bf [memcached] Accept NULL as data for SET
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 44b86b71be [mod_userdir]: Fix Makefile.am to use the correct source file
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
Stefan Bühler 1790afc37f [radix]: Fix wrong var in macro, add test cases
13 years ago
Thomas Porzelt 7e94308ea6 [mod_limit] Fix liSocketAddress usage in combination with radix trees
13 years ago
Thomas Porzelt c972bea1e0 [mod_limit] Fix radix tree usage (api wants bits not bytes)
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 8892840298 [mod_limit] Thread safety fixes
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
Thomas Porzelt 2a04983b9d [waitqueue] Add 'length' struct member, remove li_waitqueue_length() function
13 years ago
Stefan Bühler abdd422aa9 plugin.c: fix optionptr mem-leak
13 years ago
Stefan Bühler 1567177150 [tasklet]: fix mem leak
13 years ago
Stefan Bühler b29c8161f1 Fix mimetypes
13 years ago
Stefan Bühler 21327b7d93 [mod_progress]: kill global var
13 years ago
Stefan Bühler be65208143 waitqueue: modify callback
13 years ago
Stefan Bühler 3482c04c26 [mod_auth]: fix segfault from last commit
13 years ago
Stefan Bühler 126feee4fd [mod_auth]: Reload password file after changes, added ttl parameter
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 2d57e56bdc Add lua default path for distributed core lua scripts
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
Stefan Bühler c3dc0d8d7e [common]: Add generic jobqueue
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 004e70479e [angel]: fix default allow-listen port detection
13 years ago
Stefan Bühler 2ad699f56e [angel] fix segfault if no user was specified
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 b5eb16006c [angel]: fix default worker path
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 8587598a66 [core] add tasklets: jobs which use blocking code
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 1fb0e6db2c Rename angel config "listen" to "allow-listen"
13 years ago
Stefan Bühler c3164aba8b Move binary names: angel becomes lighttpd2, worker lighttpd2-worker
13 years ago
Stefan Bühler 0047fe22fa radix: fix li_radixtree_new prototype
13 years ago
Stefan Bühler b8a0921265 Add some missing LI_/li prefixes for types and enum values
13 years ago
Stefan Bühler 7976cf53cf [mod_proxy] Add X-Forwarded-{For,Proto} headers, handle 1xx responses
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 0325d10f4a [mod_balancer] fix comments
13 years ago
Stefan Bühler ec3fa8251f [mod_fastcgi] stop spamming logfile with repeated error
13 years ago
Stefan Bühler 3b202faf01 Implement backlog for balancer
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 20fc288481 [mod_balancer] Implement RoundRobin and SQF
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 b11c98d4cf [mod_status] Fix memory usage display on runtime info page
13 years ago
Thomas Porzelt de02a475c3 [mod_status] Show memory usage instead of hostname
13 years ago
Stefan Bühler 06b40f5ff4 Fix compile on FreeBSD
13 years ago
Thomas Porzelt 15c89fc606 [core] Fix compilation on osx and freebsd+waf
13 years ago
Thomas Porzelt 20c3e7d6ad [core] Add li_memory_usage(), clean up some old sys-* files
13 years ago
Stefan Bühler 2045be0729 mod_auth: fixing previous commit
13 years ago
Stefan Bühler 72addaeec3 mod_auth: ignore already handled requests
13 years ago
Stefan Bühler 37666894ed [cmake]: check glib version for >= 2.16
13 years ago
Stefan Bühler 06c7dfd3b9 mod_limit: Include radix.h
13 years ago
Stefan Bühler 2439159689 [cmake]: Fix mod_limit
13 years ago
Thomas Porzelt 2d2bb12e3d [modules] Add mod_limit
13 years ago
Thomas Porzelt e2a551298e [core] Use liCond* helpers in li_pattern_parse/eval
13 years ago
Stefan Bühler fa3c81bd11 [mod_memcached]: less log spam, fix another endless loop
13 years ago
Stefan Bühler 831cca1c59 [mod_memcached]: try to fail quietly after connection resets until the next connect
13 years ago
Stefan Bühler d498a9fee9 memcached.c: fix endless loops
13 years ago
Stefan Bühler 0b5a67b2a6 memcached.c: fix GET response parsing
13 years ago
Stefan Bühler e10df4ed77 memcached.c: fix wrong parameter (use real enum value)
13 years ago
Stefan Bühler 0e4291d5dd [mod_memcached]: fix some debug messages
13 years ago
Stefan Bühler acf6263448 memcached.c: clear error (fixing another memleak) on free
13 years ago
Stefan Bühler 2d44ae1ea9 memcached.c: Fix mem leaks and ev_io stop/start
13 years ago
Thomas Porzelt c8663ffda9 [core] Allow disabling of stat cache through stat_cache.ttl 0;
13 years ago
Stefan Bühler cbb9165eb0 [mod_memcached]: set default ttl to 30 seconds
13 years ago
Stefan Bühler d5bc446ebe [mod_memcached]: implement refcount handling for memcache_ctx
13 years ago
Thomas Porzelt 23e6b0d685 [waf] Make lua optional with mod_memcached
13 years ago
Stefan Bühler 8406d0e341 [waf]: compile/link mod_memcached against lua if available
13 years ago
Thomas Porzelt ddc65cccc0 [waf] Add memcached.c to src/commin/wscript
13 years ago
Stefan Bühler ca315bee89 [mod_memcached]: Implement memcached.store
13 years ago
Stefan Bühler c0128fea48 [mod_memcached] Initial mod_memcached
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 be64c8c445 [mod_debug] Add some more info to connection struct dump
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 fa63e180e9 [mod_status] Prefix key names for status codes in plain format
13 years ago
Thomas Porzelt 5f310af7c0 [mod_status] Print response status codes summary when plain format requested
13 years ago
Thomas Porzelt 000bb1a2e1 [mod_status] Fix display of io timeout
13 years ago
Thomas Porzelt bba88e3326 [core] Fix detection of too big request http header
13 years ago
Thomas Porzelt c4ba2608fa [mod_status] Show time remaining in timeout column and show keepalive timeout if in keepalive state
13 years ago
Thomas Porzelt 6060380550 [core] Small fix for keepalive handling
13 years ago
Thomas Porzelt 39df9263fb [plugin_core] Add support for patterns to log.write action
13 years ago
Thomas Porzelt 013297bc9b [core] Ignore callbacks if NULL in pattern_eval()
13 years ago
Stefan Bühler 69f4ad2b4b Don't set RLIM_INFINITY as rlim_cur for RLIMIT_NOFILE, use 4096 if rlim_cur < 4096 and rlim_max = inf
13 years ago
Thomas Porzelt 7056b879e7 [core] Fix detection of too large http request header
13 years ago
Thomas Porzelt 031b4d17e4 [mod_vhost] Mark vhost.simple and vhost.pattern as deprecated in favor of 'docroot'
13 years ago
Thomas Porzelt 7409b2ef63 [plugin_core] Enable 'docroot' action to use patterns and even traverse a list of these
13 years ago
Thomas Porzelt 3668ef97ab [core] Add liPattern type and associated functions
13 years ago
Stefan Bühler 7174ca4d15 [mod_deflate] Fix bzip2 encoding
13 years ago
Stefan Bühler 5e063e2b04 [core] Enable li_plugins_init_lua again, fixed segfault
13 years ago
Thomas Porzelt 14ed0a508b [core] Disable call to li_plugins_init_lua() for now, causes segfault due to being called in the wrong place (srv->plugins does not exist yet)
13 years ago
Thomas Porzelt b5009f18df [core] Fix usage of sched_setaffinity() and disable it for now as it seems to impose a little performance hit
13 years ago
Thomas Porzelt 91cc6e06bb [waf] Don't compile profiler.c or link libexecinfo on FreeBSD when not using --with-profiler
13 years ago
Thomas Porzelt 5646b353ea [core] Specify file permissions when creating profiler output file
13 years ago
Thomas Porzelt d8c187453a [mod_debug] Don't compile debug.profiler_dump action at all when profiler support missing
13 years ago
Thomas Porzelt c8a23a947f [core] Check if profiler output file has been truncated since opening
13 years ago
Stefan Bühler e00febcd40 Fix vrequest-ref api
13 years ago
Stefan Bühler c2271c15c3 Add plugin init-lua hook
13 years ago
Stefan Bühler 4afebee1c7 Make profiler optional
13 years ago
Stefan Bühler 8fa282ffaf Fix some queue handling bugs in angel connection
13 years ago
Stefan Bühler 26ebaa3bd3 Add a new liBuffer alloc function for long-term buffers
13 years ago
Thomas Porzelt 727a480a14 [core] Remove profile_mem action from core plugin, was moved to mod_debug
13 years ago
Thomas Porzelt aaaf75a9da [mod_debug] Add debug.profiler_dump action
13 years ago
Thomas Porzelt 0084f21174 [core] Update queue->delay in li_waitqueue_set_delay(), not only ev timer
13 years ago
Thomas Porzelt bf632326a7 [core] Update and start (if necessary) io timeout in li_worker_run() fixing first worker ignoring io.timeout from config
13 years ago
Thomas Porzelt b3f8b8d62f [core] Add li_waitqueue_set_delay() function
13 years ago
Thomas Porzelt de3515cd27 [waf] Add check for and link against libexecinfo on FreeBSD
13 years ago
Thomas Porzelt f285ad372e [core,waf,autoconf,cmake] Add check for execinfo.h and disable stacktraces in profiler if not available
13 years ago