]> git.ipfire.org Git - thirdparty/haproxy.git/commit
[MAJOR] completely separate HTTP and TCP states on the request path
authorWilly Tarreau <w@1wt.eu>
Mon, 11 Aug 2008 21:42:50 +0000 (23:42 +0200)
committerWilly Tarreau <w@1wt.eu>
Wed, 13 Aug 2008 22:18:39 +0000 (00:18 +0200)
commitc65a3ba3d407a08bc593dec12c1859ad7f9cd162
tree32e5505495160f2e9795471e54e6546d3201b31c
parent7f875f6c8fe15660ca789eaf7d4846cee8ba8414
[MAJOR] completely separate HTTP and TCP states on the request path

For the first time, HTTP and TCP are not merged anymore. All request
processing has moved to process_request while the TCP processing of
the frontend remains in process_cli. The code is a lot cleaner,
simpler, smaller (1%) and slightly faster (1% too).

Right now, the HTTP state machine cannot easily command the TCP
state machine, but it does not cause that many difficulties.

The response processing has not yet been extracted, and the unix-stream
state machines have to be broken down that way too.

The CL_STDATA, CL_STSHUTR and CL_STSHUTW states still exist and are
exactly the sames. They will have to be all merged into CL_STDATA
once the work has stabilized. It is also possible that this single
state will disappear in favor of just buffer flags.
include/proto/proto_http.h
include/types/buffers.h
src/client.c
src/proto_http.c