2
0
Fork 0
Commit Graph

263 Commits

Author SHA1 Message Date
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 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 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 9d14c6bce7 [core] Send Content-Type text/html for generated error pages 2010-04-05 14:33:52 +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 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 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 3dc644cf40 Add conditionals for local and remote port (-1 for unix sockets) 2010-02-21 13:45:20 +01:00
Stefan Bühler c0f5b9b151 server.c: free srv->statelock 2010-02-14 21:04:47 +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
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 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 2e131dc93f Put pathinfo debug messages into debug-request-handling 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 3c2cef5f0d Handle ETIMEDOUT as connection close 2010-01-30 23:52:48 +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 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 edd74a0e3c Rename lighttpd to lighttpd2 2010-01-03 19:53:48 +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 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 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 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 eff8ed5e50 Add request.environment[] conditional 2009-12-13 00:36:56 +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 8f69c6bc8d Reduce buffer allocs for network read 2009-11-22 18:50:11 +01:00
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.
2009-11-22 14:48:18 +01:00
Thomas Porzelt 9989cd62ce [core] Fix value statements in config parser (now using stack for operator) 2009-11-21 16:36:42 +01:00
Stefan Bühler 49a99eb0e8 Fix handling of responses without body; check that really no content is sent. 2009-11-18 21:34:54 +01:00
Stefan Bühler 951c7e4e8d Fix memleak in lua vr:stat() 2009-11-18 20:28:15 +01:00
Stefan Bühler 8a8fb91729 Add some features to mod_dirlist, move directory-redirect to vrequest functions and use it for index files 2009-11-15 21:59:16 +01:00
Stefan Bühler 619a2d6582 stat-cache: close file if fstat fails 2009-11-15 21:48:00 +01:00
Stefan Bühler 6fcfd96b53 Fix lua struct stat export 2009-11-15 21:47:32 +01:00
Stefan Bühler 4e6e5e54c5 Fix lua api for vr:stat(filename) 2009-11-12 22:02:55 +01:00
Stefan Bühler 2c343ed5d8 Add pathinfo action 2009-11-11 14:55:00 +01:00
Stefan Bühler 9561a565c5 Fix alias action config parsing 2009-11-11 13:47:47 +01:00
Stefan Bühler 35ccb73638 Add alias action 2009-11-11 13:35:14 +01:00
Stefan Bühler c3ae0163c8 Use less pointers in chunks, "inline" structures 2009-11-08 11:12:12 +01:00
Thomas Porzelt e6c50c644b [core] Retry open() in stat_cache in case of EINTR 2009-11-07 15:44:13 +01:00
Thomas Porzelt 6bf284b754 [core] Record peak values of worker stats 2009-11-07 15:42:03 +01:00
Thomas Porzelt 175db515a6 [core] Change behaviour of connection garbage collector in worker a bit, only free if below threshold for more than 5 minutes 2009-11-07 13:21:46 +01:00
Thomas Porzelt 53096333f1 [core] Fix connection garbage collector 2009-11-07 11:57:13 +01:00
Stefan Bühler 2060595760 Change max-keep-alive requests to 0 "unlimited" 2009-11-01 15:43:34 +01:00
Stefan Bühler d9228f3ef0 Add per worker lua_State 2009-11-01 15:43:12 +01:00
Stefan Bühler c6741f7716 Implement li_filter_chunked_decode + one unit-test for it 2009-10-19 21:45:00 +02:00
Stefan Bühler 75e5fdca69 Drop 1xx responses in response parsing 2009-10-19 18:59:26 +02:00
Thomas Porzelt 323dcfa9dc [plugin_core] Add burst functionality to io.throttle action (io.throttle 1mbyte => 50kbyte;) 2009-10-18 20:00:09 +02:00
Stefan Bühler 44548691ca Remove unused vars 2009-10-14 19:34:44 +02:00
Stefan Bühler a9d28d50ae Fix broken path: remove querystring 2009-10-14 19:29:08 +02:00
Stefan Bühler f96e35e03a Fix response.c to not send chunked encoding/.. for head requests with no content 2009-10-12 00:21:27 +02:00
Stefan Bühler be6e2f4466 Fix etags (broken as "throttle" option was removed but not removed from enum) 2009-10-12 00:09:22 +02:00
Stefan Bühler 82293453a2 automake: fix build problem 2009-10-09 15:51:29 +02:00