2
0
Fork 0
Commit Graph

155 Commits

Author SHA1 Message Date
Stefan Bühler a061745193 Fix bugs found with the static clang analyzer (http://clang-analyzer.llvm.org/) 2009-07-16 22:13:40 +02:00
Stefan Bühler f4f2bd1f38 Poison non-thread-safe functions and fix errors 2009-07-16 22:10:41 +02:00
Stefan Bühler 1ce3b7fa24 Remove pcre dependencies (we use the glib wrappers) 2009-07-12 12:29:14 +02:00
Stefan Bühler 282a2d1b4a Prefix LI_API functions with "li_" 2009-07-09 22:17:24 +02:00
Stefan Bühler 99b203e3d8 Prefix typenames, enums and some macros with "li" and "LI_"; CamelCase TypeNames 2009-07-08 21:06:07 +02:00
Stefan Bühler f8be820c36 Big lighttpd-angel update; still not complete, but supports fork+exec+setuid/gid+listen (no checks in listen yet) 2009-07-07 22:40:44 +02:00
Stefan Bühler d30108b967 Make radix implementation independent of lighty 2009-07-07 18:45:47 +02:00
Stefan Bühler 75505f73e1 Add more angel connection handling code (and helper functions) 2009-06-23 23:40:13 +02:00
Stefan Bühler 40fbc9c8b7 Fixed the splitting from previous commit and splitted the ip parsers from condition handling 2009-06-17 10:59:34 +02:00
Stefan Bühler d64f5d4788 Split lighttpd specific functions from utils into lighttpd-glue. 2009-06-16 23:16:07 +02:00
Stefan Bühler c2ce9c4f53 Fix encoding functions (use _append for the append version); do not encode characters >= 0x80 for html. 2009-06-08 12:43:33 +02:00
Thomas Porzelt ff39991ed0 [core] Add support for regex conditionals 2009-06-05 19:07:48 +02:00
Thomas Porzelt fd8f6ed60f [core] Change cond_lvalue_form_string() and move it from utils.c to condition.c 2009-06-01 17:58:48 +02:00
Thomas Porzelt 3efaf40853 [core] Add cond_lvalue_from_str() to utils 2009-06-01 16:15:38 +02:00
Thomas Porzelt 16097f84ea [core] Fix erronous invisible char in settings.h 2009-05-31 13:57:17 +02:00
Thomas Porzelt 451cdd1579 [core] Add implementation of 32bit radix trees (radix.{h.c}) 2009-05-29 15:03:19 +02:00
Thomas Porzelt 0e001f21e5 Fix two small typos in idlist.h comments 2009-05-13 12:56:46 +02:00
Stefan Bühler 7c27d1b342 Added "idlist": maange a list of used ids 2009-05-13 12:33:11 +02:00
Stefan Bühler 48bf0071e4 [angel] Add basic module/plugin support
* renamed some module functions
2009-04-24 10:03:04 +02:00
Thomas Porzelt 087f06a07d Fix singness warnings 2009-04-17 22:39:16 +02:00
Stefan Bühler c8d26383c3 Fix shadow warnings 2009-04-17 22:24:29 +02:00
Stefan Bühler 3a1af99500 Include <stdio.h> and <stdlib.h> in settings.h for everyone. 2009-04-17 22:14:20 +02:00
Stefan Bühler dfb1db14d7 Use pointer-sign warning in cmake und fix many of them. 2009-04-17 21:53:17 +02:00
Stefan Bühler 0ec334c887 Killed sys-strings.h (replaced with glib functions) 2009-04-17 21:51:39 +02:00
Stefan Bühler 72136b4d03 angel: some basic structs, code not ready yet (config parser "works") 2009-04-17 18:16:50 +02:00
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()
2009-04-16 17:02:53 +02:00
Stefan Bühler 595ce1fe13 Add wrk in vrequest, s/vr->con->wrk/vr->wrk/, removed some other (broken) usages of vr->con 2009-04-15 12:34:06 +02:00
Stefan Bühler 4e04ac6b8b cmake: use builtin macros for build date 2009-04-15 11:39:21 +02:00
Stefan Bühler 7aaa764f49 Added vrequest_joblist_append_async (with a vrequest-reference handling) 2009-04-14 18:18:25 +02:00
Stefan Bühler 194db07279 Use GByteArray in mod_fastcgi 2009-04-03 14:36:41 +02:00
Stefan Bühler 611d7dcac3 Recode the sockaddr handling, fixing some bugs 2009-04-03 14:29:55 +02:00
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.
2009-04-02 22:35:56 +02:00
Thomas Porzelt ab9a616f5d optimize ram usage by freeing unused connections 2009-03-28 03:37:41 +01:00
Thomas Porzelt ddb0448a96 rework stat_cache 2009-03-26 23:05:17 +01:00
Stefan Bühler a0d963ef11 Fix printf checks with glib macro 2009-03-22 14:44:50 +01:00
Stefan Bühler 384bab3719 Forgot source/header for etag.{c,h} 2009-03-17 18:22:59 +01:00
Stefan Bühler a62cdebb91 Fix static file/dirlist handling and add etag support 2009-03-17 14:21:20 +01:00
Stefan Bühler b423170266 Rewrite l_g_string_from_int to l_g_string_append_int 2009-03-17 11:44:44 +01:00
Stefan Bühler e020850dc8 Add vrequest_is_handled function 2009-03-17 11:42:50 +01:00
Stefan Bühler 9df3918e9b Add l_g_string_from_int to utils - prints a gint64 to a GString 2009-03-16 22:24:14 +01:00
Stefan Bühler d7e53a44de Changed collect api: removed fdata_free (wasn't used) and return NULL from collect_start if collect finished before returning. 2009-03-16 17:52:21 +01:00
Thomas Porzelt a9c75934a8 change counter format output 2009-03-13 23:16:21 +01:00
Thomas Porzelt f9ca699307 add waitqueue_length() 2009-03-13 01:54:26 +01:00
Stefan Bühler bedcc3d46a Added mod_cache_disk_etag: caches produced content on disk and checks for it via etag. 2009-03-12 21:08:27 +01:00
Stefan Bühler 87cd65e98f Don't check for NULL strings in CONST_STR_LEN 2009-03-12 17:40:09 +01:00
Stefan Bühler 12b421b9a9 Don't block fastcgi if limit on input queue is hit 2009-03-11 21:16:30 +01:00
Stefan Bühler 158f42aa0f Add support for filters 2009-03-11 16:57:07 +01:00
Thomas Porzelt 7d88ae2e73 [utils] add l_g_string_prefix() and l_g_string_suffix() 2009-03-08 16:45:50 +01:00
Thomas Porzelt 0719779fd2 add ENCODING_URI to encoding functions 2009-03-06 17:25:46 +01:00
Thomas Porzelt a888c34dbb add encoding functions 2009-03-05 00:19:55 +01:00
Thomas Porzelt 4d2cf580df add stat_cach_get_dir() to get directory listing; add stat_cache.ttl setup 2009-03-04 02:54:38 +01:00
Thomas Porzelt 004dfc1bf6 add spaces in waitqueue.h for readability 2009-03-04 02:51:21 +01:00
Thomas Porzelt 9a23f4465d add dirent_buf_size() to utils 2009-03-04 02:48:55 +01:00
Stefan Bühler 2f9e612c99 Use chunkqueue-limit (setup in plugin_core) 2009-03-01 21:23:24 +01:00
Stefan Bühler 6ebc331215 Implement l_g_string_assign_len() 2009-03-01 21:22:15 +01:00
Stefan Bühler 39ecfa89e5 Add chunkqueue-limit framework 2009-03-01 17:28:01 +01:00
Thomas Porzelt efab0ca75d implement stat cache 2009-03-01 21:16:58 +01:00
Stefan Bühler b033f0c194 Extended sockaddr_to_string for use in connect-failed error message in mod_fastcgi 2009-03-01 17:15:52 +01:00
Stefan Bühler 95fee3059b Add handling for environment vars in backends 2009-02-15 18:55:27 +01:00
Stefan Bühler 5c797977c6 Add stderr log support in mod_fastcgi (split lines from backend in log.c) 2009-02-03 15:25:14 +01:00
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. 2009-01-28 15:40:57 +01:00
Stefan Bühler 4a8ce0a63f Redo boolean conditionals (physical.*) as real actions. 2009-01-10 14:46:11 +01:00
Stefan Bühler 587ee27cd0 Added response parser and used it in mod_fastcgi 2009-01-10 13:30:58 +01:00
Stefan Bühler 4a5aa5361e Added/fixed chunked encoded transfer 2009-01-09 21:42:42 +01:00
Thomas Porzelt 70a495de6f fix ev_tstamp vs. time_t problems in worker_current_timestamp() 2009-01-09 21:32:49 +01:00
Thomas Porzelt 7766bd8c34 save errno of stat() in request.physical struct to prevent repeated stat()s if failed 2009-01-08 00:26:30 +01:00
Thomas Porzelt 93bd5e2a6a add additional paramter format_ndx to worker_current_timestamp() 2009-01-07 20:59:51 +01:00
Thomas Porzelt 2fb007bd3d add http_version_string() to utils 2009-01-06 23:25:07 +01:00
Thomas Porzelt d2cadb3b1e add option server.name 2009-01-06 22:30:38 +01:00
Thomas Porzelt 85a3a4d091 added "if" to condition syntax (if req.path == "/foo" {})
added boolean conditions without operator or rvalue (if phys.is_dir {}, rvalue is always true)
added negated boolean conditions (if !phys.is_dir {}, rvalue is always false)
added physical.is_dir and .is_file conditionals
2009-01-06 01:33:20 +01:00
Thomas Porzelt 01068d7f1d make docroot a function action instead of setting, add stat member to vr.physical and enable physical.size conditional 2009-01-05 22:24:54 +01:00
Stefan Bühler d9ddd4fd3d Remove out-of-fd-handling. 2009-01-04 23:14:08 +01:00
Stefan Bühler 54fd1b08e4 Cleanup some state machine handling 2009-01-04 21:59:56 +01:00
Thomas Porzelt bf549bbe0d add check for sizeof(off_t) to MODULE_VERSION_CHECK() 2009-01-02 22:04:36 +01:00
Stefan Bühler c458377d4a Added mod_fastcgi, some api functions for it, and some new optional compiler warnings (which led to many small changes) 2009-01-01 16:44:42 +01:00
Stefan Bühler c56ade056f Add vrequest "environment" (a GString -> GString hashtable) 2008-12-31 16:23:00 +01:00
Stefan Bühler d30e1b018a Added some backend/balancer helper, fixed backend-error handling. 2008-12-31 14:36:24 +01:00
Stefan Bühler 6636919623 Completed core balancer support, added a simple test balancer. 2008-12-31 02:57:27 +01:00
Thomas Porzelt 66f7e669dd add log level "backend" 2008-12-31 02:50:32 +01:00
Stefan Bühler 025f0b5f84 Removed HANDLER_FINISHED, implemented real job queue and added some basic balancer structs 2008-12-30 21:55:00 +01:00
Stefan Bühler 20c3d8c109 Remove unused struct members 2008-12-30 20:53:58 +01:00
Stefan Bühler 20dfff0663 Cleanup log macros (moved from con to vrequest) 2008-12-30 14:24:33 +01:00
Stefan Bühler c24704dad5 Move options from connection to vrequest 2008-12-30 01:21:03 +01:00
Thomas Porzelt e344591265 unify level info placement in log makros 2008-12-29 18:46:51 +01:00
Thomas Porzelt 52d5978d64 export module_lookup() 2008-12-26 23:53:52 +01:00
Stefan Bühler e8e60b3a04 Add clean ipv6+port parsing for listen() 2008-12-22 22:48:47 +01:00
Stefan Bühler bb59776ea3 Handle errno in angel_fake_log 2008-12-22 17:03:43 +01:00
Stefan Bühler 324224fe2e Implemented two angel "fake" functions 2008-12-20 16:25:02 +01:00
Thomas Porzelt 20e0a9e4e8 add http_method_string() to utils 2008-12-10 16:36:38 +01:00
Stefan Bühler 4a02223f7c Added per-action context 2008-12-10 00:23:27 +01:00
Thomas Porzelt 736d8c6192 add server.max_keep_alive_requests option 2008-12-07 21:46:29 +01:00
Thomas Porzelt 58cf85f5d1 remove old log stuff 2008-12-02 15:58:06 +01:00
Thomas Porzelt b0def14e1f remove wrong ! from sendfile macro for linux 2008-11-23 23:47:10 +01:00
Thomas Porzelt d2381954bf removed old AIO defines from settings.h 2008-11-20 20:16:29 +01:00
Stefan Bühler 2040c059d1 Fix connection/network_write state machine 2008-11-18 11:14:57 +01:00
Stefan Bühler 7a496b610b Fix comment style // -> /* */ 2008-11-18 11:03:59 +01:00
Thomas Porzelt 6dbaaf5430 fix warnings about shadowed declarations of 'free' and 'value' in headers 2008-11-18 21:43:02 +01:00
Thomas Porzelt 4080ddcd16 cosmetic changes of 'defined x to defined(x)' in settings.h to unify usage 2008-11-18 21:36:31 +01:00
Thomas Porzelt 75ce595e5b add LIGHT_OS_XYZ macros 2008-11-18 21:12:10 +01:00
Stefan Bühler 99733ef5a7 Add OS X sendfile implementation (and fix the freebsd one) 2008-11-17 20:54:19 +01:00