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