Stefan Bühler
3972451633
[ip-parser] fix ipv4 netmask for /0, added some unit tests
12 years ago
Stefan Bühler
34ad0a52e4
[gnutls] fix automake
12 years ago
Stefan Bühler
bef05e0b2e
new module: mod_gnutls
12 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
9bf335c121
[jobqueue] add li_job_stop
12 years ago
Stefan Bühler
f7730910ad
[utils] handle NULL loop in li_ev_io_* event changing
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
Thomas Porzelt
8a4565a63a
[mod_flv] don't retry close(fd) on EINTR
...
Sources:
- http://www.daemonology.net/blog/2011-12-17-POSIX-close-is-broken.html
- http://linux.derkeiler.com/Mailing-Lists/Kernel/2005-09/3000.html
- http://linux.derkeiler.com/Mailing-Lists/Kernel/2005-09/3202.html
However this might not be true for all systems, more investigation needed.
12 years ago
Stefan Bühler
b15ec2ecf4
[cmake] fix linker errors with --as-needed ( fixes #2360 )
12 years ago
Stefan Bühler
f98f9bb7b3
[openssl] fix error message for wrong listen option
12 years ago
Stefan Bühler
dd4ed2c560
[mod_openssl] fix build error if SSL_OP_NO_COMPRESSION isn't defined
12 years ago
Stefan Bühler
7a9ae91566
[mod_openssl] close connection on client initiated renegotiation
12 years ago
Joe Presbrey
85b620eb3c
[mod_openssl] add options and defaults
...
Co-authored-by: Stefan Bühler <stbuehler@web.de>
12 years ago
Joe Presbrey
92bfc4c676
[mod_openssl] add openssl.setenv action (client, client-cert, server, server-cert)
12 years ago
Joe Presbrey
3f9ba6ebdc
[mod_openssl] add verify{,-any,-depth,-require}, client-ca-file
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
3af94cf12d
[mod_progress] free data on module unload properly
12 years ago
Thomas Porzelt
2d52ff9170
[mempool] support profiler for mmap allocations. use g_malloc/free instead malloc/free
12 years ago
Thomas Porzelt
aeb88422a0
[profiler] export li_profiler_enabled and li_profiler_hashtable_insert/remove. add heap base/break/size to dump output
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
ba3d50ba79
[mempool]: use g_free instead of free in ALLOC mode
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
Joe Presbrey
60fc8d421d
[mod_status] add status_info_auto
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
Stefan Bühler
92ca097ed4
[jobqueue] as jobs in the queue could be removed in a callback we can\'t copy the queue to a private one, g_queue_unlink needs the real one
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
Thomas Porzelt
259cdb57e3
[mod_accesslog] Fix %r (first request line) formatter
12 years ago
Stefan Bühler
0fcbfb7ab7
[core] optimize syscalls per connection
12 years ago
Stefan Bühler
4f377b792c
[utils] fix calculation for sockaddr_un struct size
12 years ago
Stefan Bühler
9c80becca2
[angel] Remove unsupported pid-file option
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
8973c35562
[utils] Fix url decoding for non ascii values (signed char negatives)
12 years ago
Stefan Bühler
eb9f6aa368
[plugins] Fix some default options (the raw default-value is only used when there is no parser method)
13 years ago
Stefan Bühler
be50c790e1
[mod_balance]: renamed from mod_balancer
13 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
Stefan Bühler
366d00328c
Fix bug in delayed connection handling, 2nd try
13 years ago
Stefan Bühler
318b7bf041
Fix bug in delayed connection handling
13 years ago
Thomas Porzelt
912976fe30
[core] Attempt to fix issue with stalling connections in throttle pools
13 years ago
Thomas Porzelt
a40a03cc75
[mod_redirect] Fix patterns using %n references
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
Stefan Bühler
58bc3f8276
[mod_openssl] make sure we get notified for EV_WRITE again
13 years ago
Thomas Porzelt
6c70cba7cb
[mod_auth] return 403 instead of 401 in auth.deny
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
Thomas Porzelt
77aa943b38
[mod_auth] Fix segfault in auth_handle_deny()
13 years ago
Stefan Bühler
0ab5aee623
[throttle] Fix loop counter (leaded to segfaults)
13 years ago
Stefan Bühler
9568d7a41a
[autotools] add memcached.c
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
93e442d5c9
[mod_accesslog] Fix output formatting
13 years ago
Stefan Bühler
cd1a0684c7
[utils] fix fd receiving
13 years ago
Stefan Bühler
5b7456de05
[utils unit-tests] use a different test for "fast close after fd send"
13 years ago
Stefan Bühler
e3aad8f950
[utils unit-tests] check more details for send/recv fd
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
0db6543682
[core] Fix missing parameter in crypt wrapper
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
9dd5a0c4db
[mod_balancer] Fix backend selection
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
9a7dc4ecd6
[mod_vhost] drop vhost.simple / vhost.pattern
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
e440caa9c6
[mod_auth] document that $apr1$ is supported now
13 years ago
Stefan Bühler
49e0a440ed
[utils] remove usage of g_checksum_reset (would need glib >= 2.18)
13 years ago
Stefan Bühler
685973a3ca
[mod_auth] Fix authentication (has been "disabled")! Implement apr-md5 crypt, add test cases
13 years ago
Stefan Bühler
b432e35eeb
[angel] Remove "-n" option from angel and docs (wasn't imlemented)
13 years ago
Thomas Porzelt
715a75f0aa
[mod_deflate] Add 'compression-level' param to deflate action, defaults to 1
13 years ago
Stefan Bühler
8b75858fea
[mod_redirect] fix segfault
13 years ago
Stefan Bühler
19eed747a1
[mod_rewrite] Add rewrite_raw
13 years ago
Stefan Bühler
9b52427d29
[mod_redirect] Use liPattern
13 years ago
Stefan Bühler
9d6eb1394d
[mod_rewrite] Use liPattern
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
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