287 Commits (2bcb880dc84fb03218894709eed0b8816602b557)

Author SHA1 Message Date
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
Stefan Bühler 471a521f48 Improve filter handling (handle reverse out stream closing) 14 years ago
Stefan Bühler d2ba4ca0dd Fix LI_COND_LVALUE_END value 14 years ago
Stefan Bühler 4b94e01ecc Add response.header/status conditionals 14 years ago
Stefan Bühler 241d0e48de mod_deflate: Add Vary header, reset content-length header 14 years ago
Stefan Bühler 1acacd5737 Prefix inline api functions with li_ 14 years ago
Stefan Bühler b9f92f704e Fix server.tag and version output, part 2 14 years ago
Stefan Bühler bf9e34bab7 Remove li_vrequest_stat and fix condition.c 14 years ago
Stefan Bühler f31572bef1 Append slash to doc-root for physical path if it is missing 14 years ago
Stefan Bühler 39a879f89a Add "include_lua" to config special commands if compiled with lua 14 years ago
Stefan Bühler 659ebfdd16 Add core lua support to handle requests 14 years ago
Stefan Bühler 897b27c692 Some core docs fixed 14 years ago
Stefan Bühler 77f2a832e7 Fix liRequestUri struct 14 years ago
Stefan Bühler f030824550 Fix server address (do not use the listen address) 14 years ago
Stefan Bühler a663088a77 Add custom server socket callbacks (for ssl modules) 14 years ago
Stefan Bühler c77ba3eb20 Cleanup connection code 14 years ago
Stefan Bühler 007e5e040c Add listen mask checks to angel 14 years ago
Stefan Bühler 56ff7ca32a angel/lighty now synchronize the server state 14 years ago
Stefan Bühler eeddb37e4a Add plugin angel callbacks 14 years ago
Thomas Porzelt 86ebb4c7f0 [core] Add li_querystring_find() function to utils 14 years ago
Thomas Porzelt 6cb5af487f [core] Add li-prefix to structs, enums and function names for encoding helpers 14 years ago
Stefan Bühler df96167362 Add automake 14 years ago
Stefan Bühler b364b09790 Fix some error reporting in angel 14 years ago
Stefan Bühler 534a0f2d3a New instance state machine 14 years ago
Stefan Bühler 594987c29e Add li_ev_safe_ref_and_stop macro and use it 14 years ago
Stefan Bühler 30f804170c Fix angel_log.h macros 14 years ago
Stefan Bühler baa78b1ebb Handle multi-lines for error-pipe logging 14 years ago
Stefan Bühler e02d2efea1 Remove path in angel_proc logging 14 years ago
Stefan Bühler 766fcd4bfc Add liProc and liErrorPipe for angel 14 years ago
Thomas Porzelt e838c9b3cf [core] Add liTimeFunc (gmtime_r, localtime_r) parameter to li_worker_current_timestamp() 14 years ago
Stefan Bühler 75237dda62 Add GError log writing 14 years ago
Stefan Bühler ab1387d4ba Move and add some common log helpers to utils 14 years ago
Stefan Bühler b187c4f3c5 Fix missing newlines at end of files 14 years ago
Stefan Bühler a061745193 Fix bugs found with the static clang analyzer (http://clang-analyzer.llvm.org/) 14 years ago
Stefan Bühler f4f2bd1f38 Poison non-thread-safe functions and fix errors 14 years ago
Stefan Bühler 1ce3b7fa24 Remove pcre dependencies (we use the glib wrappers) 14 years ago
Stefan Bühler 282a2d1b4a Prefix LI_API functions with "li_" 14 years ago
Stefan Bühler 99b203e3d8 Prefix typenames, enums and some macros with "li" and "LI_"; CamelCase TypeNames 14 years ago
Stefan Bühler f8be820c36 Big lighttpd-angel update; still not complete, but supports fork+exec+setuid/gid+listen (no checks in listen yet) 14 years ago
Stefan Bühler d30108b967 Make radix implementation independent of lighty 14 years ago
Stefan Bühler 75505f73e1 Add more angel connection handling code (and helper functions) 14 years ago
Stefan Bühler 40fbc9c8b7 Fixed the splitting from previous commit and splitted the ip parsers from condition handling 14 years ago
Stefan Bühler d64f5d4788 Split lighttpd specific functions from utils into lighttpd-glue. 14 years ago
Stefan Bühler c2ce9c4f53 Fix encoding functions (use _append for the append version); do not encode characters >= 0x80 for html. 14 years ago
Thomas Porzelt ff39991ed0 [core] Add support for regex conditionals 14 years ago
Thomas Porzelt fd8f6ed60f [core] Change cond_lvalue_form_string() and move it from utils.c to condition.c 14 years ago
Thomas Porzelt 3efaf40853 [core] Add cond_lvalue_from_str() to utils 14 years ago
Thomas Porzelt 16097f84ea [core] Fix erronous invisible char in settings.h 14 years ago
Thomas Porzelt 451cdd1579 [core] Add implementation of 32bit radix trees (radix.{h.c}) 14 years ago
Thomas Porzelt 0e001f21e5 Fix two small typos in idlist.h comments 14 years ago
Stefan Bühler 7c27d1b342 Added "idlist": maange a list of used ids 14 years ago
Stefan Bühler 48bf0071e4 [angel] Add basic module/plugin support
* renamed some module functions
14 years ago
Thomas Porzelt 087f06a07d Fix singness warnings 14 years ago
Stefan Bühler c8d26383c3 Fix shadow warnings 14 years ago
Stefan Bühler 3a1af99500 Include <stdio.h> and <stdlib.h> in settings.h for everyone. 14 years ago
Stefan Bühler dfb1db14d7 Use pointer-sign warning in cmake und fix many of them. 14 years ago
Stefan Bühler 0ec334c887 Killed sys-strings.h (replaced with glib functions) 14 years ago
Stefan Bühler 72136b4d03 angel: some basic structs, code not ready yet (config parser "works") 14 years ago
Thomas Porzelt 383fa6a4f5 - introduce throttling via pools, rework throttling by connection
- new actions: 'throttle_pool', 'throttle_connection' and 'status'
- don't start waitqueue timer in waitqueue_init(); start/stop timer on demand
- new parameter for network_write(): write_max
- move stats and timeout handling from network_write/read() to connection_cb()
14 years ago
Stefan Bühler 595ce1fe13 Add wrk in vrequest, s/vr->con->wrk/vr->wrk/, removed some other (broken) usages of vr->con 14 years ago
Stefan Bühler 4e04ac6b8b cmake: use builtin macros for build date 14 years ago
Stefan Bühler 7aaa764f49 Added vrequest_joblist_append_async (with a vrequest-reference handling) 14 years ago
Stefan Bühler 194db07279 Use GByteArray in mod_fastcgi 14 years ago
Stefan Bühler 611d7dcac3 Recode the sockaddr handling, fixing some bugs 14 years ago
Stefan Bühler 691939dbdc Rename MEM_CHUNK to STRING_CHUNK and add new MEM_CHUNK with GByteArray as content
- GByteArray doesn't have a terminating zero, so we save memory; especially
   if the real size is 2^n, GString would allocate 2^(n+1) bytes.
14 years ago
Thomas Porzelt ab9a616f5d optimize ram usage by freeing unused connections 14 years ago
Thomas Porzelt ddb0448a96 rework stat_cache 14 years ago
Stefan Bühler a0d963ef11 Fix printf checks with glib macro 14 years ago
Stefan Bühler 384bab3719 Forgot source/header for etag.{c,h} 14 years ago
Stefan Bühler a62cdebb91 Fix static file/dirlist handling and add etag support 14 years ago
Stefan Bühler b423170266 Rewrite l_g_string_from_int to l_g_string_append_int 14 years ago
Stefan Bühler e020850dc8 Add vrequest_is_handled function 14 years ago
Stefan Bühler 9df3918e9b Add l_g_string_from_int to utils - prints a gint64 to a GString 14 years ago
Stefan Bühler d7e53a44de Changed collect api: removed fdata_free (wasn't used) and return NULL from collect_start if collect finished before returning. 14 years ago
Thomas Porzelt a9c75934a8 change counter format output 14 years ago
Thomas Porzelt f9ca699307 add waitqueue_length() 14 years ago
Stefan Bühler bedcc3d46a Added mod_cache_disk_etag: caches produced content on disk and checks for it via etag. 14 years ago
Stefan Bühler 87cd65e98f Don't check for NULL strings in CONST_STR_LEN 14 years ago
Stefan Bühler 12b421b9a9 Don't block fastcgi if limit on input queue is hit 14 years ago
Stefan Bühler 158f42aa0f Add support for filters 14 years ago
Thomas Porzelt 7d88ae2e73 [utils] add l_g_string_prefix() and l_g_string_suffix() 14 years ago
Thomas Porzelt 0719779fd2 add ENCODING_URI to encoding functions 14 years ago
Thomas Porzelt a888c34dbb add encoding functions 14 years ago
Thomas Porzelt 4d2cf580df add stat_cach_get_dir() to get directory listing; add stat_cache.ttl setup 14 years ago
Thomas Porzelt 004dfc1bf6 add spaces in waitqueue.h for readability 14 years ago
Thomas Porzelt 9a23f4465d add dirent_buf_size() to utils 14 years ago
Stefan Bühler 2f9e612c99 Use chunkqueue-limit (setup in plugin_core) 14 years ago
Stefan Bühler 6ebc331215 Implement l_g_string_assign_len() 14 years ago
Stefan Bühler 39ecfa89e5 Add chunkqueue-limit framework 14 years ago
Thomas Porzelt efab0ca75d implement stat cache 14 years ago
Stefan Bühler b033f0c194 Extended sockaddr_to_string for use in connect-failed error message in mod_fastcgi 14 years ago
Stefan Bühler 95fee3059b Add handling for environment vars in backends 14 years ago
Stefan Bühler 5c797977c6 Add stderr log support in mod_fastcgi (split lines from backend in log.c) 15 years ago
Stefan Bühler d29565a211 Split chunkiter_read into simple read() and mmap() with fallback read(); _mmap() may result in SIGBUS (e.g. truncated file) later. 15 years ago
Stefan Bühler 4a8ce0a63f Redo boolean conditionals (physical.*) as real actions. 15 years ago
Stefan Bühler 587ee27cd0 Added response parser and used it in mod_fastcgi 15 years ago
Stefan Bühler 4a5aa5361e Added/fixed chunked encoded transfer 15 years ago
Thomas Porzelt 70a495de6f fix ev_tstamp vs. time_t problems in worker_current_timestamp() 15 years ago
Thomas Porzelt 7766bd8c34 save errno of stat() in request.physical struct to prevent repeated stat()s if failed 15 years ago
Thomas Porzelt 93bd5e2a6a add additional paramter format_ndx to worker_current_timestamp() 15 years ago
Thomas Porzelt 2fb007bd3d add http_version_string() to utils 15 years ago