haproxy/include/proto
Willy Tarreau 79e57336b5 REORG: http: move the code to different files
The current proto_http.c file is huge and contains different processing
domains making it very difficult to work on an alternative representation.
This commit moves some parts to other files :

  - ACL registration code => http_acl.c
    This code only creates some ACL mappings and doesn't know anything
    about HTTP nor about the representation. This code could even have
    moved to acl.c but it was not worth polluting it again.

  - HTTP sample conversion => http_conv.c
    This code doesn't depend on the internal representation but definitely
    manipulates some HTTP elements, such as dates. It also has access to
    captures.

  - HTTP sample fetching => http_fetch.c
    This code does depend entirely on the internal representation but is
    totally independent on the analysers. Placing it into a different
    file will ease the transition to the new representation and the
    creation of a wrapper if required. An include file was created due
    to CHECK_HTTP_MESSAGE_FIRST() being used at various places.

  - HTTP action registration => http_act.c
    This code doesn't directly interact with the messages nor the
    transaction but it does so via some exported http functions like
    http_replace_req_line() or http_set_status() so it will be easier
    to change only this after the conversion.

  - a few very generic parts were found and moved to http.{c,h} as
    relevant.

It is worth noting that the functions moved to these new files are not
referenced anywhere outside of the files and are only called as registered
callbacks, so these files do not even require associated include files.
2018-10-02 18:26:59 +02:00
..
acl.h MINOR: acl: Pass the ACLs as an explicit parameter of build_acl_cond 2017-10-31 11:36:12 +01:00
action.h MAJOR: chunks: replace struct chunk with struct buffer 2018-07-19 16:23:43 +02:00
applet.h MAJOR: applets: Use tasks, instead of rolling our own scheduler. 2018-05-26 20:03:30 +02:00
arg.h MINOR: sample: Moves ARGS underlying type from 32 to 64 bits. 2016-03-15 22:11:52 +01:00
auth.h MEDIUM: pattern: The match function browse itself the list or the tree. 2014-03-17 18:06:07 +01:00
backend.h MEDIUM: check: server states and weight propagation re-work 2017-09-05 15:23:16 +02:00
channel.h MEDIUM: mux: Remove const on the buffer in mux->snd_buf() 2018-08-07 14:36:52 +02:00
checks.h BUILD: threads: Rename SPIN/RWLOCK macros using HA_ prefix 2017-11-07 11:10:24 +01:00
cli.h MEDIUM: cli: Add payload support 2018-04-26 14:19:33 +02:00
compression.h REORG: filters: Prepare creation of the HTTP compression filter 2016-02-09 14:53:15 +01:00
connection.h BUILD: connection: silence a couple of null-deref build warnings at -Wextra 2018-09-20 11:42:15 +02:00
dns.h BUG/MINOR: dns: Don't try to get the server lock if it's already held. 2017-11-06 18:34:24 +01:00
fd.h MINOR: fd cache: And the thread_mask with all_threads_mask. 2018-08-17 14:50:47 +02:00
filters.h MAJOR: chunks: replace struct chunk with struct buffer 2018-07-19 16:23:43 +02:00
flt_http_comp.h MAJOR: filters/http: Rewrite the HTTP compression as a filter 2016-02-09 14:53:15 +01:00
freq_ctr.h BUG/MAJOR: threads/freq_ctr: fix lock on freq counters. 2017-10-31 13:58:33 +01:00
frontend.h REORG/MAJOR: session: rename the "session" entity to "stream" 2015-04-06 11:23:56 +02:00
h1.h MINOR: h1: remove the HTTP status from the H1M struct 2018-09-12 17:38:25 +02:00
hdr_idx.h CLEANUP: pools: rename all pool functions and pointers to remove this "2" 2017-11-24 17:49:53 +01:00
hlua.h BUILD/MINOR: lua: ensure that hlua_ctx_destroy is properly defined 2015-06-17 20:18:54 +02:00
hlua_fcn.h MINOR: lua: add utility function for check boolean argument 2016-11-24 21:35:10 +01:00
http_fetch.h REORG: http: move the code to different files 2018-10-02 18:26:59 +02:00
lb_chash.h [MEDIUM] backend: implement consistent hashing variation 2009-10-09 07:17:58 +02:00
lb_fas.h MEDIUM: backend: add the 'first' balancing algorithm 2012-02-21 22:27:27 +01:00
lb_fwlc.h [CLEANUP] backend: move LB algos to individual files 2009-10-01 11:19:37 +02:00
lb_fwrr.h [CLEANUP] backend: move LB algos to individual files 2009-10-01 11:19:37 +02:00
lb_map.h MEDIUM: threads/lb: Make LB algorithms (lb_*.c) thread-safe 2017-10-31 13:58:31 +01:00
listener.h BUG/MEDIUM: threads/unix: Fix a deadlock when a listener is temporarily disabled 2018-03-16 11:19:07 +01:00
log.h MINOR: log: One const should be enough. 2018-09-06 18:52:15 +02:00
map.h MINOR: samples: rename some struct member from "smp" to "data" 2015-08-20 17:13:46 +02:00
mux_pt.h MEDIUM: connection: start to introduce a mux layer between xprt and data 2017-10-31 18:03:23 +01:00
obj_type.h MINOR: connection: introduce conn_stream 2017-10-31 18:03:23 +01:00
openssl-compat.h MINOR: ssl: BoringSSL matches OpenSSL 1.1.0 2018-07-27 09:43:40 +02:00
pattern.h BUG/MEDIUM: map/acl: fix unwanted flags inheritance. 2017-07-04 10:45:53 +02:00
payload.h REORG/MAJOR: session: rename the "session" entity to "stream" 2015-04-06 11:23:56 +02:00
peers.h MAJOR: peers: peers protocol version 2.0 2015-05-29 15:50:33 +02:00
pipe.h [MEDIUM] introduce pipe pools 2009-01-25 13:49:53 +01:00
port_range.h [MEDIUM] add support for binding to source port ranges during connect 2009-06-10 12:23:32 +02:00
proto_http.h REORG: http: move the code to different files 2018-10-02 18:26:59 +02:00
proto_sockpair.h MEDIUM: protocol: sockpair protocol 2018-09-12 07:20:17 +02:00
proto_tcp.h MINOR: connection: make conn_sock_drain() work for all socket families 2018-08-24 14:45:46 +02:00
proto_udp.h CLEANUP: fix inconsistency between fd->iocb, proto->accept and accept() 2016-04-14 11:18:22 +02:00
protocol.h MEDIUM: protocol: use a custom AF_MAX to help protocol parser 2018-09-12 07:12:27 +02:00
proxy.h MINOR: proxy: add a new generic proxy_capture_error() 2018-09-07 18:36:04 +02:00
queue.h MEDIUM: add set-priority-class and set-priority-offset 2018-08-10 15:06:31 +02:00
raw_sock.h CLEANUP: connection: unexport raw_sock and ssl_sock 2016-12-22 23:26:38 +01:00
sample.h MINOR: sample: remove impossible tests on negative smp->data.u.str.data 2018-08-22 05:28:33 +02:00
server.h CLEANUP: server: remove the update list and the update lock 2018-08-08 09:57:45 +02:00
session.h BUG/MEDIUM: peers: fix some track counter rules dont register entries for sync. 2017-11-29 19:16:22 +01:00
shctx.h MINOR: shctx: rename lock functions 2017-10-31 03:49:44 +01:00
signal.h MEDIUM: startup: unify signal init between daemon and mworker mode 2018-09-11 10:21:58 +02:00
spoe.h MAJOR: chunks: replace struct chunk with struct buffer 2018-07-19 16:23:43 +02:00
ssl_sock.h MAJOR: chunks: replace struct chunk with struct buffer 2018-07-19 16:23:43 +02:00
stats.h MAJOR: chunks: replace struct chunk with struct buffer 2018-07-19 16:23:43 +02:00
stick_table.h MINOR: stktable: provide an unchecked version of stktable_data_ptr() 2018-09-20 11:42:15 +02:00
stream.h MINOR: tasks: Change the task API so that the callback takes 3 arguments. 2018-05-26 19:23:57 +02:00
stream_interface.h BUG/MEDIUM: process_stream: Don't use si_cs_io_cb() in process_stream(). 2018-09-26 14:21:54 +02:00
task.h BUG/MEDIUM: tasks: Don't forget to decrement task_list_size in tasklet_free(). 2018-09-12 17:37:55 +02:00
tcp_rules.h MINOR: action: Use trk_idx instead of tcp/http_trk_idx 2017-10-31 11:36:12 +01:00
template.h [CLEANUP] included common/version.h everywhere 2006-06-29 18:54:54 +02:00
vars.h MINOR: vars: Add 'unset-var' action/converter 2016-11-09 22:57:01 +01:00