haproxy/include/proto
Willy Tarreau 1ef4cbc693 MINOR: connection: add new src and dst fields
At the moment we're facing difficulties with connection reuse based on
the fact that connections may be allocated very early only to set a
target address in transparent mode. With the imminent removal of the
legacy mode, the connection reuse by a same stream will not exist
anymore and all this awful complexity is not justified anymore. However
we still need to be able to assign addresses somewhere.

Thus instead of allocating a connection, we'll only place addresses where
needed in the stream during operations. But this takes quite some room
(typically 128 bytes). This is a nice opportunity for cleaning all this
up and dynamically allocatating the addresses fields, which will result
in actually saving memory from connection structs since most of the time
the client's "to" address is not used and the server's "from" is not used
either, thus saving ~256 bytes per end-to-end connection.

For now these new "src" and "dst" pointers point to addr.from and addr.to.
This will allow us to smoothly update the whole code to use these pointers
prior to going further and switching them to pools.
2019-07-19 13:50:09 +02:00
..
acl.h
action.h MINOR: action: new '(http-request|tcp-request content) do-resolve' action 2019-04-23 11:41:52 +02:00
activity.h MINOR: time: move the cpu, mono, and idle time to thread_info 2019-05-20 21:14:14 +02:00
applet.h MINOR: applet: make appctx use their own pool 2019-07-18 10:45:08 +02:00
arg.h
auth.h
backend.h BUG/MAJOR: lb/threads: fix insufficient locking on round-robin LB 2019-04-16 11:21:14 +02:00
channel.h BUG/MEDIUM: stream-int: Don't rely on CF_WRITE_PARTIAL to unblock opposite si 2019-07-05 14:26:15 +02:00
checks.h
cli.h MINOR: cli: export cli_parse_default() definition in cli.h 2019-04-01 14:45:37 +02:00
compression.h
connection.h MINOR: connection: add new src and dst fields 2019-07-19 13:50:09 +02:00
dict.h MINOR: dict: Add dictionary new data structure. 2019-06-05 08:33:35 +02:00
dns.h MINOR: action: new '(http-request|tcp-request content) do-resolve' action 2019-04-23 11:41:52 +02:00
fd.h BUG/MEDIUM: fd/threads: fix excessive CPU usage on multi-thread accept 2019-07-09 10:41:24 +02:00
filters.h REORG: proto_htx: Move HTX analyzers & co to http_ana.{c,h} files 2019-07-19 09:24:12 +02:00
flt_http_comp.h
freq_ctr.h OPTIM: freq-ctr: don't take the date lock for most updates 2019-05-25 20:31:53 +02:00
frontend.h
hlua_fcn.h
hlua.h
http_ana.h REORG: proto_htx: Move HTX analyzers & co to http_ana.{c,h} files 2019-07-19 09:24:12 +02:00
http_fetch.h MEDIUM: http_fetch: Remove code relying on HTTP legacy mode 2019-07-19 09:18:27 +02:00
http_htx.h MINOR: http: Don't store raw HTTP errors in chunks anymore 2019-07-19 09:46:23 +02:00
http_rules.h
lb_chash.h
lb_fas.h
lb_fwlc.h
lb_fwrr.h
lb_map.h
listener.h MINOR: listener: introduce listener_backlog() to report the backlog value 2019-02-28 17:05:29 +01:00
log.h MINOR: log: Enable the log sampling and load-balancing feature. 2019-04-30 09:25:09 +02:00
map.h
mux_pt.h
mworker.h BUG/MINOR: mworker: Fix memory leak of mworker_proc members 2019-05-22 11:29:18 +02:00
obj_type.h CLEANUP: objtype: make obj_type() and obj_type_name() take consts 2019-05-22 11:50:48 +02:00
pattern.h
payload.h
peers.h MINOR: peers: Make peers protocol support new "server_name" data type. 2019-06-05 08:42:33 +02:00
pipe.h
port_range.h BUG/MEDIUM: port_range: Make the ring buffer lock-free. 2019-04-30 15:10:17 +02:00
proto_sockpair.h
proto_tcp.h MEDIUM: proto: Change the prototype of the connect() method. 2019-05-06 22:12:57 +02:00
proto_udp.h
protocol_buffers.h BUILD: use inttypes.h instead of stdint.h 2019-04-01 07:44:56 +02:00
protocol.h
proxy.h MEDIUM: streams: Add the ability to retry a request on L7 failure. 2019-05-04 10:19:56 +02:00
queue.h
raw_sock.h
sample.h
server.h BUG/MINOR: server: Be really able to keep "pool-max-conn" idle connections 2019-07-10 14:20:52 +02:00
session.h BUG/MEDIUM: sessions: Don't keep an extra idle connection in sessions. 2019-07-04 14:28:18 +02:00
shctx.h BUILD: use inttypes.h instead of stdint.h 2019-04-01 07:44:56 +02:00
signal.h
spoe.h BUG/MEDIUM: spoe: Be sure the sample is found before setting its context 2019-05-07 22:16:41 +02:00
ssl_sock.h MINOR: ssl: Make ssl_sock_handshake() static. 2019-06-05 18:03:38 +02:00
stats.h MINOR: stats: Move stuff about the stats status codes in stats files 2019-03-15 14:34:59 +01:00
stick_table.h MINOR: stick-table: Add "server_name" new data type. 2019-06-05 08:33:35 +02:00
stream_interface.h MINOR: backend: switch to conn_get_{src,dst}() for port and address mapping 2019-07-19 13:50:09 +02:00
stream.h BUG/MEDIUM: streams: Don't redispatch with L7 retries if redispatch isn't set. 2019-07-12 16:17:50 +02:00
task.h MINOR: task: introduce work lists 2019-07-12 09:07:48 +02:00
tcp_rules.h
template.h
vars.h