haproxy/src
Willy Tarreau eee5b51248 MAJOR: http: move http_txn out of struct stream
Now this one is dynamically allocated. It means that 280 bytes of memory
are saved per TCP stream, but more importantly that it will become
possible to remove the l7 pointer from fetches and converters since
it will be deduced from the stream and will support being null.

A lot of care was taken because it's easy to forget a test somewhere,
and the previous code used to always trust s->txn for being valid, but
all places seem to have been visited.

All HTTP fetch functions check the txn first so we shouldn't have any
issue there even when called from TCP. When branching from a TCP frontend
to an HTTP backend, the txn is properly allocated at the same time as the
hdr_idx.
2015-04-06 11:35:52 +02:00
..
acl.c REORG/MAJOR: session: rename the "session" entity to "stream" 2015-04-06 11:23:56 +02:00
appsession.c MINOR: includes: fix a lot of missing or useless includes 2015-02-28 23:12:32 +01:00
arg.c MINOR: global: export many symbols. 2015-02-28 23:12:32 +01:00
auth.c BUG/MEDIUM: auth: fix segfault with http-auth and a configuration with an unknown encryption algorithm 2014-08-29 21:06:31 +02:00
backend.c MAJOR: http: move http_txn out of struct stream 2015-04-06 11:35:52 +02:00
base64.c [MINOR] add encode/decode function for 30-bit integers from/to base64 2010-10-30 19:04:33 +02:00
buffer.c BUG/MEDIUM: buffer: one byte miss in buffer free space check 2015-03-10 10:17:54 +01:00
cfgparse.c REORG/MAJOR: session: rename the "session" entity to "stream" 2015-04-06 11:23:56 +02:00
channel.c MEDIUM: channel: don't always set CF_WAKE_WRITE on bi_put* 2015-03-13 14:00:47 +01:00
checks.c REORG/MEDIUM: stream: rename stream flags from SN_* to SF_* 2015-04-06 11:23:57 +02:00
chunk.c BUG/MINOR: chunk: Fix function chunk_strcmp and chunk_strcasecmp match a substring. 2014-05-09 19:16:13 +02:00
compression.c MAJOR: http: move http_txn out of struct stream 2015-04-06 11:35:52 +02:00
connection.c REORG/MAJOR: session: rename the "session" entity to "stream" 2015-04-06 11:23:56 +02:00
cttproxy.c CLEANUP: cttproxy: remove a warning on undeclared close() 2012-10-05 22:18:07 +02:00
dumpstats.c MAJOR: http: move http_txn out of struct stream 2015-04-06 11:35:52 +02:00
ev_epoll.c CLEANUP: epoll: epoll_events should be allocated according to global.tune.maxpollevents 2014-12-17 17:04:53 +01:00
ev_kqueue.c MAJOR: polling: centralize calls to I/O callbacks 2014-11-21 20:37:32 +01:00
ev_poll.c MAJOR: polling: centralize calls to I/O callbacks 2014-11-21 20:37:32 +01:00
ev_select.c MAJOR: polling: centralize calls to I/O callbacks 2014-11-21 20:37:32 +01:00
fd.c MAJOR: polling: centralize calls to I/O callbacks 2014-11-21 20:37:32 +01:00
freq_ctr.c BUG/MINOR: time: frequency counters are not totally accurate 2012-12-29 21:50:07 +01:00
frontend.c MAJOR: http: move http_txn out of struct stream 2015-04-06 11:35:52 +02:00
haproxy-systemd-wrapper.c BUILD/CLEANUP: systemd: avoid a warning due to mixed code and declaration 2015-03-04 10:11:57 +01:00
haproxy.c MINOR: http: create a dedicated pool for http_txn 2015-04-06 11:35:52 +02:00
hash.c MINOR: hash: add new function hash_crc32 2015-01-20 19:48:05 +01:00
hdr_idx.c OPTIM/MINOR: move the hdr_idx pools out of the proxy struct 2011-10-24 18:15:04 +02:00
hlua.c MAJOR: http: move http_txn out of struct stream 2015-04-06 11:35:52 +02:00
i386-linux-vsys.c MEDIUM: listener: add support for linux's accept4() syscall 2012-10-08 20:11:03 +02:00
lb_chash.c REORG/MEDIUM: server: split server state and flags in two different variables 2014-05-22 11:27:00 +02:00
lb_fas.c REORG/MEDIUM: server: split server state and flags in two different variables 2014-05-22 11:27:00 +02:00
lb_fwlc.c REORG/MEDIUM: server: split server state and flags in two different variables 2014-05-22 11:27:00 +02:00
lb_fwrr.c REORG/MEDIUM: server: split server state and flags in two different variables 2014-05-22 11:27:00 +02:00
lb_map.c MINOR: server: make use of srv_is_usable() instead of checking eweight 2014-05-23 14:29:11 +02:00
listener.c MEDIUM: stream: move the listener's pointer to the session 2015-04-06 11:23:57 +02:00
log.c MAJOR: http: move http_txn out of struct stream 2015-04-06 11:35:52 +02:00
mailers.c MEDIUM: Add parsing of mailers section 2015-02-03 00:24:16 +01:00
map.c REORG/MAJOR: session: rename the "session" entity to "stream" 2015-04-06 11:23:56 +02:00
memory.c MEDIUM: memory: improve pool_refill_alloc() to pass a refill count 2014-12-24 23:47:31 +01:00
namespace.c MAJOR: namespace: add Linux network namespace support 2014-11-21 07:51:57 +01:00
pattern.c BUG/MEDIUM: pattern: some entries are not deleted with case insensitive match 2015-02-06 18:04:36 +01:00
payload.c CLEANUP: sample: remove useless tests in fetch functions for l4 != NULL 2015-04-06 11:35:52 +02:00
peers.c MAJOR: http: move http_txn out of struct stream 2015-04-06 11:35:52 +02:00
pipe.c BUILD/MINOR: silent a build warning in src/pipe.c (fcntl) 2011-10-24 17:09:22 +02:00
proto_http.c MAJOR: http: move http_txn out of struct stream 2015-04-06 11:35:52 +02:00
proto_tcp.c MAJOR: http: move http_txn out of struct stream 2015-04-06 11:35:52 +02:00
proto_uxst.c REORG/MEDIUM: stream: rename stream flags from SN_* to SF_* 2015-04-06 11:23:57 +02:00
protocol.c MEDIUM: protocol: use a family array to index the protocol handlers 2015-02-28 23:12:31 +01:00
proxy.c MAJOR: http: move http_txn out of struct stream 2015-04-06 11:35:52 +02:00
queue.c REORG/MEDIUM: stream: rename stream flags from SN_* to SF_* 2015-04-06 11:23:57 +02:00
raw_sock.c BUG/MINOR: raw_sock: also consider ENOTCONN in addition to EAGAIN for recv() 2014-03-04 07:27:18 +01:00
rbtree.c [MINOR] imported the rbtree function from Linux kernel 2007-01-07 02:12:57 +01:00
regex.c MEDIUM: regex: add support for passing regex flags to regex_exec_match() 2015-01-22 14:24:53 +01:00
sample.c REORG/MAJOR: session: rename the "session" entity to "stream" 2015-04-06 11:23:56 +02:00
server.c REORG/MEDIUM: stream: rename stream flags from SN_* to SF_* 2015-04-06 11:23:57 +02:00
session.c MINOR: session: start to reintroduce struct session 2015-04-06 11:23:57 +02:00
sessionhash.c [PATCH] appsessions: cleanup DEBUG_HASH and initialize request_counter 2008-08-13 23:43:26 +02:00
shctx.c MINOR: stats: add counters for SSL cache lookups and misses 2014-05-28 16:53:04 +02:00
signal.c BUG/MEDIUM: signal: signal handler does not properly check for signal bounds 2013-01-24 16:19:19 +01:00
ssl_sock.c CLEANUP: sample: remove useless tests in fetch functions for l4 != NULL 2015-04-06 11:35:52 +02:00
standard.c BUG/MINOR: utf8: remove compilator warning 2015-03-13 14:10:28 +01:00
stick_table.c REORG/MAJOR: session: rename the "session" entity to "stream" 2015-04-06 11:23:56 +02:00
stream_interface.c REORG/MAJOR: session: rename the "session" entity to "stream" 2015-04-06 11:23:56 +02:00
stream.c MAJOR: http: move http_txn out of struct stream 2015-04-06 11:35:52 +02:00
task.c REORG/MAJOR: session: rename the "session" entity to "stream" 2015-04-06 11:23:56 +02:00
time.c BUG/MINOR: time: frequency counters are not totally accurate 2012-12-29 21:50:07 +01:00
trace.c MINOR: add a new function call tracer for debugging purposes 2012-05-26 00:12:37 +02:00
uri_auth.c BUG/MEDIUM: uri_auth: missing NULL check and memory leak on memory shortage 2013-01-24 16:19:19 +01:00