2
0
Fork 0
Commit Graph

1020 Commits

Author SHA1 Message Date
Thomas Porzelt 5531e36cf4 [core] Ensure that a connection is always in the io timeout queue (if not in keep-alive) 2010-06-13 18:02:14 +02:00
Thomas Porzelt fa63e180e9 [mod_status] Prefix key names for status codes in plain format 2010-06-12 16:42:31 +02:00
Thomas Porzelt 5f310af7c0 [mod_status] Print response status codes summary when plain format requested 2010-06-12 16:18:52 +02:00
Thomas Porzelt 000bb1a2e1 [mod_status] Fix display of io timeout 2010-06-12 15:28:35 +02:00
Thomas Porzelt bba88e3326 [core] Fix detection of too big request http header 2010-06-12 15:16:41 +02:00
Thomas Porzelt c4ba2608fa [mod_status] Show time remaining in timeout column and show keepalive timeout if in keepalive state 2010-06-12 13:44:12 +02:00
Thomas Porzelt 6060380550 [core] Small fix for keepalive handling 2010-06-12 13:42:23 +02:00
Thomas Porzelt 39df9263fb [plugin_core] Add support for patterns to log.write action 2010-06-12 12:40:10 +02:00
Thomas Porzelt 013297bc9b [core] Ignore callbacks if NULL in pattern_eval() 2010-06-12 12:37:59 +02:00
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 2010-06-12 11:43:12 +02:00
Thomas Porzelt 7056b879e7 [core] Fix detection of too large http request header 2010-06-10 22:37:42 +02:00
Thomas Porzelt 031b4d17e4 [mod_vhost] Mark vhost.simple and vhost.pattern as deprecated in favor of 'docroot' 2010-06-07 00:03:42 +02:00
Thomas Porzelt 7409b2ef63 [plugin_core] Enable 'docroot' action to use patterns and even traverse a list of these 2010-06-07 00:02:43 +02:00
Thomas Porzelt 3668ef97ab [core] Add liPattern type and associated functions 2010-06-06 23:54:55 +02:00
Stefan Bühler 7174ca4d15 [mod_deflate] Fix bzip2 encoding 2010-06-06 14:09:55 +02:00
Stefan Bühler 5e063e2b04 [core] Enable li_plugins_init_lua again, fixed segfault 2010-06-06 12:29:25 +02:00
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) 2010-05-29 19:28:20 +02:00
Thomas Porzelt b5009f18df [core] Fix usage of sched_setaffinity() and disable it for now as it seems to impose a little performance hit 2010-05-16 18:35:54 +02:00
Thomas Porzelt 91cc6e06bb [waf] Don't compile profiler.c or link libexecinfo on FreeBSD when not using --with-profiler 2010-05-16 13:45:03 +02:00
Thomas Porzelt 5646b353ea [core] Specify file permissions when creating profiler output file 2010-05-16 13:41:21 +02:00
Thomas Porzelt d8c187453a [mod_debug] Don't compile debug.profiler_dump action at all when profiler support missing 2010-05-15 12:46:41 +02:00
Thomas Porzelt c8a23a947f [core] Check if profiler output file has been truncated since opening 2010-05-15 12:45:22 +02:00
Stefan Bühler e00febcd40 Fix vrequest-ref api 2010-05-14 13:12:33 +02:00
Stefan Bühler c2271c15c3 Add plugin init-lua hook 2010-05-14 13:10:19 +02:00
Stefan Bühler 4afebee1c7 Make profiler optional 2010-05-13 12:19:12 +02:00
Stefan Bühler 8fa282ffaf Fix some queue handling bugs in angel connection 2010-05-13 12:17:32 +02:00
Stefan Bühler 26ebaa3bd3 Add a new liBuffer alloc function for long-term buffers 2010-05-13 12:17:32 +02:00
Thomas Porzelt 727a480a14 [core] Remove profile_mem action from core plugin, was moved to mod_debug 2010-05-13 12:11:24 +02:00
Thomas Porzelt aaaf75a9da [mod_debug] Add debug.profiler_dump action 2010-05-12 21:56:32 +02:00
Thomas Porzelt 0084f21174 [core] Update queue->delay in li_waitqueue_set_delay(), not only ev timer 2010-05-10 22:08:53 +02:00
Thomas Porzelt bf632326a7 [core] Update and start (if necessary) io timeout in li_worker_run() fixing first worker ignoring io.timeout from config 2010-05-10 21:47:57 +02:00
Thomas Porzelt b3f8b8d62f [core] Add li_waitqueue_set_delay() function 2010-05-10 21:42:06 +02:00
Thomas Porzelt de3515cd27 [waf] Add check for and link against libexecinfo on FreeBSD 2010-05-09 15:08:31 +02:00
Thomas Porzelt f285ad372e [core,waf,autoconf,cmake] Add check for execinfo.h and disable stacktraces in profiler if not available 2010-05-09 14:18:52 +02:00
Thomas Porzelt fa1c73cbe6 [core] Make profiler output to file, fix small issue with profiler_try_realloc() 2010-05-09 12:12:53 +02:00
Thomas Porzelt 1dfa1c37f2 [core] Reworked memory profiler. Commited only very simple version tracking allocated objects and printing backtraces for leaked ones upon exit 2010-05-08 19:30:38 +02:00
Thomas Porzelt c0e7ef3654 [core] Fix memleak in filter_buffer_on_disk/bod_open() and free srv->optionptrs on exit 2010-05-08 11:55:52 +02:00
Stefan Bühler b144242a07 Fix timestamp handling a little bit 2010-05-08 09:15:38 +02:00
Stefan Bühler 658b9d0131 Fix unitialized var in mod_deflate 2010-05-07 21:23:46 +02:00
Stefan Bühler 26942e6b6c Fix dangling references to action stack 2010-05-07 21:14:27 +02:00
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
2010-05-07 20:54:50 +02:00
Thomas Porzelt 86e039e6d2 [core] Add --module-resident commandline parameter to prevent module unloading. Useful for valgrind or tcmalloc 2010-05-06 22:42:47 +02:00
Stefan Bühler 46b9a28f87 Fix pathinfo; action to remove the pathinfo from the url too (for SCRIPT_NAME) 2010-05-01 11:54:25 +02:00
Thomas Porzelt 67e940676d [mod_userdir] Reorder includes to kill compiler warning 2010-04-25 16:47:44 +02:00
Thomas Porzelt bf2d01e56c [core] Ensure that a connection is always in the io timeout queue when not in keep-alive state 2010-04-25 16:34:52 +02:00
Thomas Porzelt 32cb017ba6 [core] Zero timestamps when removing element from waitqueue 2010-04-25 15:35:59 +02:00
Thomas Porzelt 681b2f2bc9 [mod_userdir] Append username if pattern does not include placeholder for it. Also ensure slashes in certain places 2010-04-18 20:54:15 +02:00
Thomas Porzelt f528fc9851 [mod_userdir] Removed debug prints 2010-04-17 15:45:32 +02:00
Thomas Porzelt 852ff8ecf6 [modules] Add mod_userdir 2010-04-17 15:44:39 +02:00
Thomas Porzelt c72ee99ad7 [modules] Add mod_flv 2010-04-11 23:16:25 +02:00
source@lighttpd.net 4ef800e871 Use HTTP/1.0 in mod_proxy for now, don't forward (Proxy-)?Connection headers 2010-04-07 14:57:34 +02:00
Thomas Porzelt 9d14c6bce7 [core] Send Content-Type text/html for generated error pages 2010-04-05 14:33:52 +02:00
Thomas Porzelt 6c2da09814 [mod_progress] Fix 'sent' output, progress.show parameter parsing and send application/x-javascript Content-Type header 2010-04-05 14:27:14 +02:00
Thomas Porzelt 2e710f4241 [mod_progress] Fix detection of finished requests 2010-04-05 00:26:10 +02:00
Thomas Porzelt 0c751ba6ef [mod_progress] Fix JSON format (double quotes instead of single quotes...), fix wrong default recognized http method (GET instead of POST) and a minor compile warning 2010-04-04 22:51:27 +02:00
Thomas Porzelt 9b0db666c5 [modules] Add mod_progress 2010-04-04 22:04:14 +02:00
Thomas Porzelt 0af117d47f [core] Reposition check for header size limit fixing wrong positives 2010-04-04 17:11:57 +02:00
Thomas Porzelt 683e334599 [plugin_core] Return error 405 for methods other than GET or HEAD on static files 2010-04-04 17:07:24 +02:00
Thomas Porzelt ad8570423a [core] Add li_http_method_from_string() function 2010-04-04 16:37:02 +02:00
Stefan Bühler 19bc091432 Only call li_plugins_handle_vrclose in vrequest_reset if vrequest is in use 2010-04-03 21:32:02 +02:00
Stefan Bühler bd40dec873 Only call li_plugins_handle_vrclose in vrequest_free if vrequest is in use 2010-04-03 21:22:02 +02:00
Stefan Bühler c89c194deb Fix module path handling in angel 2010-03-26 13:33:47 +01:00
Thomas Porzelt 8186b62dfe [mod_rewrite,mod_redirect] Refactor code a bit to silence clang code analyzer 2010-03-22 20:58:12 +01:00
Stefan Bühler 7cd62d7a54 mod_openssl: Fix check of return value from SSL_CTX_set_options 2010-03-07 13:25:51 +01:00
Stefan Bühler 053739a46d [lua]: chunkqueue: fix file<->tempfile handling 2010-03-03 16:27:11 +01:00
Stefan Bühler 25222e9b1c stat-cache: Fix segfault 2010-03-03 11:51:49 +01:00
Stefan Bühler a31b3ee403 [lua]: provide filename to chunkfile for add_temp_file (needed to unlink it) 2010-03-03 11:16:16 +01:00
Stefan Bühler 405c6b26f4 Part 2: [lua]: Add 'add_file' and 'add_temp_file' method for chunkqueue; 'add' only accepts simple strings now 2010-03-02 23:20:07 +01:00
Stefan Bühler 82c2971ddc [lua]: Add 'add_file' and 'add_temp_file' method for chunkqueue; 'add' only accepts simple strings now 2010-03-02 22:50:42 +01:00
Stefan Bühler 48aac3ab07 [stat-cache] Provide blocking cached stat 2010-03-02 22:50:26 +01:00
Stefan Bühler 38ec6b3c2d conditionals: Fix port matching (ntohs) 2010-02-21 14:47:56 +01:00
Thomas Porzelt 1f6c788600 Merge branch 'master' of git+ssh://188.40.103.19:2233/lighttpd/sandbox 2010-02-21 14:33:13 +01:00
Thomas Porzelt 5892c78e7d [core] Support req. phys. and resp. abbreviations in li_cond_lvalue_from_string() and make config parser use this function instead of own code 2010-02-21 14:32:58 +01:00
Stefan Bühler b127da0a85 [mod_auth]: fix doc 2010-02-21 14:31:14 +01:00
Stefan Bühler 3dc644cf40 Add conditionals for local and remote port (-1 for unix sockets) 2010-02-21 13:45:20 +01:00
Stefan Bühler 63ed53e31a Fix casts in utils.c 2010-02-14 21:04:52 +01:00
Stefan Bühler c0f5b9b151 server.c: free srv->statelock 2010-02-14 21:04:47 +01:00
Stefan Bühler 5a654a0b7c mod_lua: fix prepare handling 2010-02-14 20:58:27 +01:00
Stefan Bühler 2c4f6b29a1 Handle NULL values in plugin_core.c 2010-02-14 20:58:27 +01:00
Thomas Porzelt 48913fac46 [core] Fix compiler warning in throttle.c 2010-02-14 20:12:10 +01:00
Thomas Porzelt 5616992ca0 [mod_status] Add statistics for HTTP status codes 2010-02-14 19:59:44 +01:00
Stefan Bühler e0370fac79 Fix some lua handling; add args for lua plugins/handlers 2010-02-14 15:48:25 +01:00
Stefan Bühler f43f70de6e [lua] export path_simplify 2010-02-13 22:44:47 +01:00
Stefan Bühler 0a46134334 Fix buffer refcount; segfault/abort in mod_openssl 2010-02-13 22:29:27 +01:00
Stefan Bühler dcd7209a42 [mod_lua] Use handle_prepare to create per-worker context 2010-02-13 16:36:39 +01:00
Stefan Bühler 8f317d1ded [mod_deflate]: don't deflate after transfer-encoding 2010-02-13 16:03:03 +01:00
Stefan Bühler 59835b5eb1 remove content-encoding, transfer-encoding and etag header for generated error bodies 2010-02-13 15:54:59 +01:00
Stefan Bühler d0f6484e7c Move sched_[gs]etaffinity to plugin_core 2010-02-13 15:54:48 +01:00
Stefan Bühler 905a83fc77 Add plugin hooks for server state machine changes 2010-02-13 15:41:09 +01:00
Stefan Bühler 30ebce774e Add "state-wait" api for server state machine 2010-02-13 15:29:21 +01:00
Thomas Porzelt d18045ccbf [core] Rework throttle code a bit, especially regarding pools 2010-02-13 14:30:32 +01:00
Thomas Porzelt fc09bf9095 [core] Don't allow spaces between integer value and its suffix, was not deterministic 2010-02-13 13:25:16 +01:00
Stefan Bühler 048a7d9144 Append to previous buffer in network reads, save used buffer in custom location 2010-02-10 22:25:48 +01:00
Stefan Bühler 13611b5243 Improve balancer handling 2010-02-09 22:37:28 +01:00
Stefan Bühler 7a63f69133 Add li_sockaddr_dup 2010-02-09 22:36:47 +01:00
Stefan Bühler 2e131dc93f Put pathinfo debug messages into debug-request-handling 2010-02-08 17:00:44 +01:00
Stefan Bühler 33b89d8981 Fix mod_proxy (missing \r\n after request line) 2010-02-08 17:00:44 +01:00
Thomas Porzelt 6a5411c2f1 [plugin_core] Set con->throttle.pool.queued to FALSE after unlinking from queue 2010-02-08 15:24:25 +01:00
Thomas Porzelt 1297a1fab7 [core] Fix crash in throttle pool handling 2010-02-07 22:49:54 +01:00
Stefan Bühler 750bd453a2 Append to previous buffer in network reads 2010-02-02 00:34:34 +01:00
Thomas Porzelt d8f5d21ec6 [core] Check for EV_ERROR in connection event callback 2010-01-31 20:15:40 +01:00
Stefan Bühler 7bb58debcb Fix previous commit: only update io-timeout timestamp after real IO 2010-01-31 16:03:51 +01:00
Stefan Bühler 8cf1033e4a Only update io-timeout timestamp after real IO 2010-01-31 16:02:31 +01:00
Stefan Bühler 954778ff71 Show timeout in mod_status for connections 2010-01-30 23:53:55 +01:00
Stefan Bühler 3c2cef5f0d Handle ETIMEDOUT as connection close 2010-01-30 23:52:48 +01:00
Stefan Bühler fd72f61f68 Update mod_lua docs 2010-01-30 23:49:51 +01:00
Stefan Bühler d70784abd2 Fix mod_status options 2010-01-27 22:18:35 +01:00
Stefan Bühler 64c2fece96 config: add network cidr matching operators, =/ and != 2010-01-27 22:05:06 +01:00
Stefan Bühler 00ef8599cf Export glib md5/sha1/sha256 hash functions to lua (hex output) 2010-01-27 21:33:40 +01:00
Stefan Bühler 5284ce9cb4 Fix option handling: need another opt_base_index for pointer options 2010-01-27 17:38:27 +01:00
Stefan Bühler 2e4aba7e39 Fix options: missed setting "pointer" options 2010-01-27 17:15:25 +01:00
Stefan Bühler f14103bc2c Split options into two categories: simple (int, bool) and ref-counted pointers 2010-01-24 23:00:51 +01:00
Stefan Bühler 64ba5fddce Cleanup value pointer extractions 2010-01-24 23:00:48 +01:00
Stefan Bühler a545ef6e75 Add mempool_align_page_size implementation for MEMPOOL_MALLOC fallback 2010-01-24 11:52:38 +01:00
Stefan Bühler cdb615293c [autobuild] Fix dependency problem with automake (automake doesn't like it if ../dir/ is cwd) 2010-01-24 11:47:58 +01:00
Stefan Bühler faf2985a79 Use struct sockaddr_storage (in liSockAddr) as base for getsockname/getpeername 2010-01-24 11:47:58 +01:00
Thomas Porzelt 7e44920c50 [mod_vhost] Fix vhost.simple, it checked the physical path instead of docroot 2010-01-21 14:44:36 +01:00
Stefan Bühler 4485ea7563 Fix segfault if trying to convert NULL address to string
This doesn't workaround the freebsd getsockname / getpeername bug,
but it shouldn't crash anymore.
http://www.freebsd.org/cgi/query-pr.cgi?pr=142717
2010-01-11 20:56:51 +01:00
Stefan Bühler edd74a0e3c Rename lighttpd to lighttpd2 2010-01-03 19:53:48 +01:00
Stefan Bühler 7768470b10 mod_lua: fix small memleak (free conf->filename) 2010-01-03 19:51:18 +01:00
Thomas Porzelt 15767d97c0 [mod_accesslog] Use li_string_append_int() instead of g_string_append_printf() 2010-01-03 17:54:22 +01:00
Thomas Porzelt 8e3130ecff [mod_accesslog] Implement %D (duration in microseconds) and %T (duration in seconds) format specifiers 2010-01-03 17:49:35 +01:00
Thomas Porzelt 9bd5c39550 [core] Add vr->ts_started struct member, representing the ev_tstamp when the vr has been started 2010-01-03 17:39:26 +01:00
Thomas Porzelt 8716087728 [core] Rename con->ts to con->ts_started 2010-01-03 17:26:07 +01:00
Stefan Bühler 4fd27aca81 autotools: Fix linking 2009-12-25 22:38:52 +01:00
Stefan Bühler 79ae4427f3 autotools: install angel in sbin, support pkglibdir configuration 2009-12-23 01:30:28 +01:00
Stefan Bühler 63eadd22fa Fix buildsystems 2009-12-21 21:07:27 +01:00
Stefan Bühler fe7ddede88 Add lua plugins 2009-12-21 19:09:55 +01:00
Stefan Bühler b4c3e2ba02 Add userdata to action-create, setup and plugin-init callbacks 2009-12-21 12:29:14 +01:00
Stefan Bühler 881669d96a Add lua filters; fixed some lua-api bugs; enhanced lua chunkqueue api 2009-12-20 23:45:03 +01:00
Stefan Bühler 3d50819d14 Move the cqlimit reset/set back to connection.c (vrequest_reset may be called with data in con->raw_in, so cqlimit_reset isn't a good idea) 2009-12-20 16:49:10 +01:00
Stefan Bühler 402c45dc45 Add buffer-on-disk for uploads automatically 2009-12-19 22:18:10 +01:00
Stefan Bühler e92a6e8865 mod_auth: fix is_handled check 2009-12-19 18:23:47 +01:00
Stefan Bühler 130a40e691 mod_auth: Add auth.deny; for user restriction, always send WWW-Authenticate header (this makes the implementation of auth.deny trivial) 2009-12-19 17:42:55 +01:00
Stefan Bühler 2f06283832 Change internal conditional checks; export functions to read value of conditional-lvalues 2009-12-19 17:41:55 +01:00
Stefan Bühler b332fcbbb8 Add api for buffering chunkqueue content on disk 2009-12-15 16:58:08 +01:00
Stefan Bühler 931e8fea0c Make radix tree generic (length independent), use it for mod_access ipv4/ipv6 2009-12-14 14:29:59 +01:00
Stefan Bühler 3bc425fef1 Remove config parser code from main(), add cmake-option to disable default config parser 2009-12-13 21:35:46 +01:00
Stefan Bühler 4d257fd79c angel: Fix detecting failed replace, log successful instance replace 2009-12-13 21:05:43 +01:00
Stefan Bühler eff8ed5e50 Add request.environment[] conditional 2009-12-13 00:36:56 +01:00
Stefan Bühler fdf881311d mod_dirlist: use html transitinal instead of xhtml, add javascript sort 2009-12-07 15:40:41 +01:00
Stefan Bühler 871a4dc8b5 Add unit-testing for range-parser and fix the parser 2009-12-05 15:56:14 +01:00
Stefan Bühler c5f6c3166d Replace lseek()+read() with pread() in chunk.c 2009-12-02 20:24:16 +01:00
Stefan Bühler 0c3ca6b13b add liBuffer: a reference-counted memory chunk (using mempool) for basic network data 2009-11-29 17:54:01 +01:00
Stefan Bühler f9b12036fe Add mempool allocator to avoid fragmentation 2009-11-29 15:22:57 +01:00
Thomas Porzelt b79cda7fce [core] Limit outgoing chunkqueue mem usage to 512kb by default 2009-11-28 14:34:49 +01:00
Thomas Porzelt 477a060821 Fix typo in previous commit 2009-11-28 11:47:40 +01:00
Thomas Porzelt cb7005bdf0 [core] Fix io.buffer_in action (was setting out buffer) 2009-11-28 11:25:57 +01:00
Stefan Bühler 56f01bbc7f angel: listen: Use ntohs for port in debug output 2009-11-22 21:28:24 +01:00
Stefan Bühler 8f69c6bc8d Reduce buffer allocs for network read 2009-11-22 18:50:11 +01:00