Stefan Bühler
64cabac477
[core] fix connection timeout handling
9 years ago
Stefan Bühler
5e4a94b0c6
[core] handle Connection: Upgrade
9 years ago
Stefan Bühler
3deb7c9e79
[core] support chunked uploads
9 years ago
Stefan Bühler
0857befb7f
fix handling of new connection state
9 years ago
Stefan Bühler
11b4bdd8c5
replace unneeded ev_/EV_ references
9 years ago
Stefan Bühler
72ec9a432f
[throttle] rewrite
9 years ago
Stefan Bühler
cfd8955008
[common] implement libev wrapper
...
* need a way to mark a watcher as "don't keep the loop alive"
9 years ago
Stefan Bühler
ff69160c34
[core] Use streams
9 years ago
Stefan Bühler
7fbcfb86d9
[mod_openssl]: better io event handling (ssl may want to write while lighty only wants to read)
12 years ago
Stefan Bühler
b87e74d151
Optimize IO handling to safe syscalls; run vrequest state machines twice before looking for new io events
12 years ago
Stefan Bühler
b876f8401d
[core]: rework connection/vrequest structs; add liConInfo
12 years ago
Thomas Porzelt
d18045ccbf
[core] Rework throttle code a bit, especially regarding pools
12 years ago
Stefan Bühler
048a7d9144
Append to previous buffer in network reads, save used buffer in custom location
12 years ago
Thomas Porzelt
1297a1fab7
[core] Fix crash in throttle pool handling
12 years ago
Thomas Porzelt
8716087728
[core] Rename con->ts to con->ts_started
13 years ago
Stefan Bühler
f030824550
Fix server address (do not use the listen address)
13 years ago
Stefan Bühler
a663088a77
Add custom server socket callbacks (for ssl modules)
13 years ago
Stefan Bühler
c77ba3eb20
Cleanup connection code
13 years ago
Stefan Bühler
282a2d1b4a
Prefix LI_API functions with "li_"
13 years ago
Stefan Bühler
99b203e3d8
Prefix typenames, enums and some macros with "li" and "LI_"; CamelCase TypeNames
13 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()
13 years ago
Stefan Bühler
611d7dcac3
Recode the sockaddr handling, fixing some bugs
13 years ago
Stefan Bühler
c458377d4a
Added mod_fastcgi, some api functions for it, and some new optional compiler warnings (which led to many small changes)
14 years ago
Stefan Bühler
20c3d8c109
Remove unused struct members
14 years ago
Stefan Bühler
c24704dad5
Move options from connection to vrequest
14 years ago
Thomas Porzelt
736d8c6192
add server.max_keep_alive_requests option
14 years ago
Stefan Bühler
3dceeb5916
Move include files into a separate directory and cleanup include order
14 years ago
Thomas Porzelt
358b9f95f1
implement throttling, change some time_t to ev_tstamp
14 years ago
Thomas Porzelt
d56e5c2ea9
implement waitqueues (utils), change connection io timeouts to use those
14 years ago
Thomas Porzelt
b491e91c68
add io timeouts
14 years ago
Thomas Porzelt
0a63fc8058
add client addr string and traffic stats for connections and workers
14 years ago
Stefan Bühler
649f7baf78
Modify header usage; include all core headers from base.h and forbid direct including of core headers. Move typedefs into separate header.
14 years ago
Stefan Bühler
566cbdb024
virtual requests; they replace a big part from connection.
14 years ago
Stefan Bühler
36b0ae3628
Move request parser data into connection struct
14 years ago
Stefan Bühler
091f122aad
Renamed option -> value, some other minor/related renames; added option_value as
...
datatype for the value of options (union for ptr/gin64)
14 years ago
Stefan Bühler
00143835d4
Move the connection tables into the workers, so no locking needed for them.
14 years ago
Stefan Bühler
0fe9176d6f
Splitted worker from server; removed "server *srv" from most function which also have "connection *con"
14 years ago
Stefan Bühler
491b7880cb
Fix keep-alive idle.
14 years ago
Stefan Bühler
486f64bd7d
Added keep-alive and dead state for connection, added timeout for keep-alive.
...
With "server.max-keep-alive-idle" = 5 (default) you get O(1), other values need O(log n)
14 years ago
Stefan Bühler
124e21ee7d
Add 100-Continue handling
14 years ago
Stefan Bühler
b8e3535546
Enabled options, moved some initializing
14 years ago
Stefan Bühler
03458817cc
Updated TODO hints
14 years ago
Stefan Bühler
3b4e8f6f8d
Add some request header checks.
14 years ago
Stefan Bühler
2fbc7b1408
Basic connection state machine
14 years ago
Stefan Bühler
0a514f657e
server/connection/request functions
14 years ago
Stefan Bühler
ff9b6c4461
Implement ip matching for conditions.
14 years ago
Stefan Bühler
2f7359b14c
changed some apis, implemented some todos, added support for lua actions/conditions.
14 years ago
Thomas Porzelt
d10756d047
added ifdefs to connection.h and server.h; documented mutexes
14 years ago
Thomas Porzelt
5045a5ee04
made log refcounting, srv->exiting and srv->rotate_logs atomic operations; moved server and connection structs from base.h into server.h and connection.h respectively
14 years ago