haproxy/include/types
Willy Tarreau 9fbe18e174 MEDIUM: http: add a new option http-buffer-request
It is sometimes desirable to wait for the body of an HTTP request before
taking a decision. This is what is being done by "balance url_param" for
example. The first use case is to buffer requests from slow clients before
connecting to the server. Another use case consists in taking the routing
decision based on the request body's contents. This option placed in a
frontend or backend forces the HTTP processing to wait until either the whole
body is received, or the request buffer is full, or the first chunk is
complete in case of chunked encoding. It can have undesired side effects with
some applications abusing HTTP by expecting unbufferred transmissions between
the frontend and the backend, so this should definitely not be used by
default.

Note that it would not work for the response because we don't reset the
message state before starting to forward. For the response we need to
1) reset the message state to MSG_100_SENT or BODY , and 2) to reset
body_len in case of chunked encoding to avoid counting it twice.
2015-05-02 00:10:44 +02:00
..
acl.h REORG/MAJOR: session: rename the "session" entity to "stream" 2015-04-06 11:23:56 +02:00
applet.h MEDIUM: applet: add basic support for an applet run queue 2015-04-23 17:56:16 +02:00
arg.h MINOR: args: implement a new arg type for regex : ARGT_REG 2015-01-22 14:24:53 +01:00
auth.h MAJOR: auth: Change the internal authentication system. 2014-03-17 18:06:06 +01:00
backend.h MEDIUM: backend: add the crc32 hash algorithm for load balancing 2015-01-20 19:48:14 +01:00
capture.h MINOR: capture: extend the captures to support non-header keys 2014-06-13 16:32:48 +02:00
channel.h MEDIUM: stream: move HTTP request body analyser before process_common 2015-05-02 00:10:44 +02:00
checks.h MEDIUM: protocol: automatically pick the proto associated to the connection. 2015-02-28 23:12:31 +01:00
compression.h MAJOR: compression: integrate support for libslz 2015-03-29 03:32:06 +02:00
connection.h MAJOR: namespace: add Linux network namespace support 2014-11-21 07:51:57 +01:00
counters.h MEDIUM: session: maintain per-backend and per-server time statistics 2014-06-17 17:15:56 +02:00
fd.h BUG/MEDIUM: polling: fix possible CPU hogging of worker processes after receiving SIGUSR1. 2014-05-20 14:57:36 +02:00
freq_ctr.h
global.h MAJOR: pattern: add LRU-based cache on pattern matching 2015-04-29 19:15:24 +02:00
hdr_idx.h
hlua.h MINOR: lua: map system integration in Lua 2015-04-07 15:56:21 +02:00
lb_chash.h
lb_fas.h
lb_fwlc.h
lb_fwrr.h
lb_map.h
listener.h MEDIUM: listener: store the default target per listener 2015-03-13 16:45:37 +01:00
log.h MEDIUM: logs: Add HTTP request-line log format directives 2015-04-28 21:03:05 +02:00
mailers.h MEDIUM: Allow configuration of email alerts 2015-02-03 00:24:16 +01:00
map.h MEDIUM: map: uses HAProxy facilities to store default value 2015-03-13 14:10:30 +01:00
obj_type.h CLEANUP: applet: rename struct si_applet to applet 2015-04-23 17:56:16 +02:00
pattern.h MEDIUM: pattern: add a revision to all pattern expressions 2015-04-29 19:15:24 +02:00
peers.h MINOR: peers: store the pointer to the signal handler 2015-05-01 20:16:31 +02:00
pipe.h
port_range.h
proto_http.h DOC: fix the comments about the meaning of msg->sol in HTTP 2015-05-01 23:24:31 +02:00
proto_tcp.h REORG/MAJOR: session: rename the "session" entity to "stream" 2015-04-06 11:23:56 +02:00
protocol.h MEDIUM: listener: implement a per-protocol pause() function 2014-07-08 01:13:34 +02:00
proxy.h MEDIUM: http: add a new option http-buffer-request 2015-05-02 00:10:44 +02:00
queue.h REORG/MAJOR: session: rename the "session" entity to "stream" 2015-04-06 11:23:56 +02:00
sample.h MAJOR: sample: pass a pointer to the session to each sample fetch function 2015-04-06 11:37:25 +02:00
server.h MEDIUM: protocol: automatically pick the proto associated to the connection. 2015-02-28 23:12:31 +01:00
session.h MEDIUM: session: remove the task pointer from the session 2015-04-06 11:37:32 +02:00
signal.h
ssl_sock.h MEDIUM: Add support for configurable TLS ticket keys 2015-02-28 23:10:22 +01:00
stick_table.h REORG/MAJOR: session: rename the "session" entity to "stream" 2015-04-06 11:23:56 +02:00
stream_interface.h MINOR: stream-int: add two flags to indicate an applet's wishes regarding I/O 2015-04-23 17:56:17 +02:00
stream.h BUG/MAJOR: tcp/http: fix current_rule assignment when restarting over a ruleset 2015-04-20 13:46:20 +02:00
task.h DIET/MINOR: task: reduce struct task size by 8 bytes 2013-12-09 16:06:22 +01:00
template.h