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
823b9d13c2
[core]: wait for connections before shutdown
13 years ago
Thomas Porzelt
14d48527af
[core] Make log.timestamp creation/destruction threadsafe
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
b29c8161f1
Fix mimetypes
13 years ago
Stefan Bühler
be65208143
waitqueue: modify callback
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
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
8c1b6fa3a2
[core] disable GCC poison
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
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
cc0044c4ee
Fix http method parser, add inlined g_string_append_len
13 years ago
Thomas Porzelt
8e8a53e8c6
[core] Fix include of sys/wait.h in settings.h
13 years ago
Thomas Porzelt
e7fca37edb
[core] Include wait.h in settings.h
13 years ago
Thomas Porzelt
20c3e7d6ad
[core] Add li_memory_usage(), clean up some old sys-* files
13 years ago
Thomas Porzelt
e2a551298e
[core] Use liCond* helpers in li_pattern_parse/eval
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
c0128fea48
[mod_memcached] Initial mod_memcached
13 years ago
Thomas Porzelt
3668ef97ab
[core] Add liPattern type and associated functions
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
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
d846779077
Add li_ev_safe_unref_and_start to utils.h
13 years ago
Stefan Bühler
26ebaa3bd3
Add a new liBuffer alloc function for long-term buffers
13 years ago
Thomas Porzelt
b3f8b8d62f
[core] Add li_waitqueue_set_delay() function
13 years ago
Thomas Porzelt
fa1c73cbe6
[core] Make profiler output to file, fix small issue with profiler_try_realloc()
13 years ago
Stefan Bühler
a8efcfcc0e
modify plugin api to include worker context for action/option parsing; add per-worker callback for stop_worker
...
* create main_worker earlier
13 years ago
Thomas Porzelt
86e039e6d2
[core] Add --module-resident commandline parameter to prevent module unloading. Useful for valgrind or tcmalloc
13 years ago
Thomas Porzelt
ad8570423a
[core] Add li_http_method_from_string() function
13 years ago
Stefan Bühler
48aac3ab07
[stat-cache] Provide blocking cached stat
13 years ago
Stefan Bühler
3dc644cf40
Add conditionals for local and remote port (-1 for unix sockets)
13 years ago
Stefan Bühler
e0370fac79
Fix some lua handling; add args for lua plugins/handlers
13 years ago
Stefan Bühler
905a83fc77
Add plugin hooks for server state machine changes
13 years ago
Stefan Bühler
30ebce774e
Add "state-wait" api for server state machine
13 years ago
Thomas Porzelt
d18045ccbf
[core] Rework throttle code a bit, especially regarding pools
13 years ago
Stefan Bühler
048a7d9144
Append to previous buffer in network reads, save used buffer in custom location
13 years ago
Stefan Bühler
13611b5243
Improve balancer handling
13 years ago
Stefan Bühler
7a63f69133
Add li_sockaddr_dup
13 years ago
Thomas Porzelt
1297a1fab7
[core] Fix crash in throttle pool handling
13 years ago
Stefan Bühler
750bd453a2
Append to previous buffer in network reads
14 years ago
Stefan Bühler
5284ce9cb4
Fix option handling: need another opt_base_index for pointer options
14 years ago
Stefan Bühler
2e4aba7e39
Fix options: missed setting "pointer" options
14 years ago
Stefan Bühler
f14103bc2c
Split options into two categories: simple (int, bool) and ref-counted pointers
14 years ago
Stefan Bühler
64ba5fddce
Cleanup value pointer extractions
14 years ago
Stefan Bühler
faf2985a79
Use struct sockaddr_storage (in liSockAddr) as base for getsockname/getpeername
14 years ago
Stefan Bühler
edd74a0e3c
Rename lighttpd to lighttpd2
14 years ago
Thomas Porzelt
9bd5c39550
[core] Add vr->ts_started struct member, representing the ev_tstamp when the vr has been started
14 years ago
Thomas Porzelt
8716087728
[core] Rename con->ts to con->ts_started
14 years ago
Stefan Bühler
fe7ddede88
Add lua plugins
14 years ago
Stefan Bühler
b4c3e2ba02
Add userdata to action-create, setup and plugin-init callbacks
14 years ago
Stefan Bühler
881669d96a
Add lua filters; fixed some lua-api bugs; enhanced lua chunkqueue api
14 years ago
Stefan Bühler
402c45dc45
Add buffer-on-disk for uploads automatically
14 years ago
Stefan Bühler
2f06283832
Change internal conditional checks; export functions to read value of conditional-lvalues
14 years ago
Stefan Bühler
b332fcbbb8
Add api for buffering chunkqueue content on disk
14 years ago
Stefan Bühler
931e8fea0c
Make radix tree generic (length independent), use it for mod_access ipv4/ipv6
14 years ago
Stefan Bühler
3bc425fef1
Remove config parser code from main(), add cmake-option to disable default config parser
14 years ago
Stefan Bühler
eff8ed5e50
Add request.environment[] conditional
14 years ago
Stefan Bühler
0c3ca6b13b
add liBuffer: a reference-counted memory chunk (using mempool) for basic network data
14 years ago
Stefan Bühler
f9b12036fe
Add mempool allocator to avoid fragmentation
14 years ago
Stefan Bühler
8f69c6bc8d
Reduce buffer allocs for network read
14 years ago
Stefan Bühler
1ac09ac2d1
Use relative timestamp for angel call timeouts, increase angel-listen timeout.
...
* While lighty runs the initialization, the difference between ev_now()
and ev_time() might be bigger than the timeout - which leads to an
immediate timeout.
14 years ago
Thomas Porzelt
9989cd62ce
[core] Fix value statements in config parser (now using stack for operator)
14 years ago
Stefan Bühler
8a8fb91729
Add some features to mod_dirlist, move directory-redirect to vrequest functions and use it for index files
14 years ago
Stefan Bühler
c3ae0163c8
Use less pointers in chunks, "inline" structures
14 years ago
Thomas Porzelt
6bf284b754
[core] Record peak values of worker stats
14 years ago
Stefan Bühler
d9228f3ef0
Add per worker lua_State
14 years ago
Stefan Bühler
c6741f7716
Implement li_filter_chunked_decode + one unit-test for it
14 years ago
Stefan Bühler
75e5fdca69
Drop 1xx responses in response parsing
14 years ago
Thomas Porzelt
09779e6a04
Forgot updated header in previous commit
14 years ago
Stefan Bühler
92904247d6
angel: support for restaring instance with SIGHUP
14 years ago
Stefan Bühler
a25d0f81d0
utils: added some hash/equal functions
14 years ago
Stefan Bühler
be6e2f4466
Fix etags (broken as "throttle" option was removed but not removed from enum)
14 years ago
Stefan Bühler
0fe57dc215
mod_auth: add htdigest and htpasswd (no apr-md5) backend
14 years ago
Stefan Bühler
a151eeac2f
Prefix li_ cleanup, verified with nm -g --defined-only
14 years ago
Stefan Bühler
e71b64f41f
Add a li_const_gstring method to create fake GStrings; make some GString* parameters const
14 years ago
Stefan Bühler
4a10b6a85a
Add static.exclude_extensions
14 years ago
Stefan Bühler
dc05e13c97
Implement ranged requests for static files
14 years ago
Stefan Bühler
24a34c3633
Export li_chunkfile functions
14 years ago
Stefan Bühler
a49d51bdd3
Support keep-alive vrequest reset, which keeps some request data to be shown in mod_status
14 years ago
Stefan Bühler
4653900eca
Fix stat-cache ref counting
14 years ago
Stefan Bühler
e3393ce2f5
angel: add support for setting RLIMIT_CORE / RLIMIT_NOFILE
14 years ago
Stefan Bühler
a14a709237
Add max-connections check, set to max-fds/4
14 years ago
Stefan Bühler
8ac057d3d5
angel: Add wrapper, env and copy-env to instance config
14 years ago
Stefan Bühler
367404fdb1
Add "request.is_handled" condition
14 years ago
Stefan Bühler
476698f118
luaApi: move global method/constants into lighty. namespace, add vr:stat(filename)
14 years ago
Stefan Bühler
3949cb0939
Show fastcgi socket in backend log, don't show source file/line for backend logs
14 years ago
Stefan Bühler
987b28520d
mod_deflate: add 304 not modified handling, handle HEAD requests
14 years ago