haproxy/src
Christopher Faulet f1449b785e BUG/MEDIUM: htx: Don't crush blocks payload when append is done on a data block
If there is a data block when a header block is added in a HTX message, its
payload will be inserted after the data block payload. But its index will be
moved before the EOH block. So at this stage, if a new data block is added, we
will try to append its payload to the last data block (because it is also the
tail). Thus the payload of the further header block will be crushed.

This cannot happens if the payloads wrap thanks to the previous fix. But it
happens when the tail is not the front too. So now, in this case, we add a new
block instead of appending.

This patch must be backported in 1.9.
2019-04-12 22:06:45 +02:00
..
51d.c BUG/MEDIUM: 51d: fix possible segfault on deinit_51degrees() 2019-03-07 17:16:27 +01:00
acl.c MEDIUM: init: convert all trivial registration calls to initcalls 2018-11-26 19:50:32 +01:00
action.c BUG/MAJOR: config: verify that targets of track-sc and stick rules are present 2019-02-05 11:54:49 +01:00
activity.c MEDIUM: activity: Use the new _HA_ATOMIC_* macros. 2019-03-11 17:02:37 +01:00
applet.c MINOR: stream-int: replace si_{want,stop}_put() with si_rx_endp_{more,done}() 2018-11-18 21:41:47 +01:00
arg.c MINOR: sample: Rework gRPC converter code. 2019-03-05 11:04:23 +01:00
auth.c MINOR: initcall: apply initcall to all register_build_opts() calls 2018-11-26 19:50:32 +01:00
backend.c MEDIUM: backend: Use the new _HA_ATOMIC_* macros. 2019-03-11 17:02:37 +01:00
base64.c BUG/MINOR: base64: dec func ignores padding for output size checking 2019-01-14 19:32:15 +01:00
buffer.c MEDIUM: memory: use pool_destroy_all() to destroy all pools on deinit() 2018-11-26 19:50:32 +01:00
cache.c BUILD: cache: avoid a build warning with some compilers/linkers 2019-03-29 21:03:24 +01:00
cfgparse-global.c MINOR: config: remove obsolete use of DEFAULT_MAXCONN at various places 2019-03-13 10:10:25 +01:00
cfgparse-listen.c MINOR: config: make MAX_PROCS configurable at build time 2019-02-07 15:10:19 +01:00
cfgparse.c CLEANUP: listener: remove old thread bit mapping 2019-03-07 13:59:04 +01:00
channel.c MINOR: channel: Add the function channel_add_input 2019-01-02 20:12:44 +01:00
checks.c BUG/MAJOR: checks: segfault during tcpcheck_main 2019-03-29 11:12:35 +01:00
chunk.c MEDIUM: memory: use pool_destroy_all() to destroy all pools on deinit() 2018-11-26 19:50:32 +01:00
cli.c MINOR: cli/activity: report the accept queue sizes in "show activity" 2019-04-12 15:54:15 +02:00
compression.c MEDIUM: compression: Use the new _HA_ATOMIC_* macros. 2019-03-11 17:02:38 +01:00
connection.c BUILD: connection: fix naming of ip_v field 2019-04-01 07:44:56 +02:00
da.c BUILD/MEDIUM: da: Necessary code changes for new buffer API. 2019-01-15 15:07:30 +01:00
dns.c BUG/MEDIUM: dns: overflowed dns name start position causing invalid dns error 2018-12-21 11:36:44 +01:00
ev_epoll.c MEDIUM: pollers: Use the new _HA_ATOMIC_* macros. 2019-03-11 17:02:38 +01:00
ev_kqueue.c MEDIUM: pollers: Use the new _HA_ATOMIC_* macros. 2019-03-11 17:02:38 +01:00
ev_poll.c MEDIUM: pollers: Use the new _HA_ATOMIC_* macros. 2019-03-11 17:02:38 +01:00
ev_select.c MEDIUM: pollers: Use the new _HA_ATOMIC_* macros. 2019-03-11 17:02:38 +01:00
fd.c MEDIUM: fd: Use the new _HA_ATOMIC_* macros. 2019-03-11 17:02:37 +01:00
filters.c BUG/MINOR: filters: Detect cache+compression config on legacy HTTP streams 2019-01-08 11:32:23 +01:00
flt_http_comp.c MEDIUM: compression: Use the new _HA_ATOMIC_* macros. 2019-03-11 17:02:38 +01:00
flt_spoe.c BUG/MINOR: spoe: Be sure to set tv_request when each message fragment is encoded 2019-04-12 21:33:52 +02:00
flt_trace.c CLEANUP: h1: remove some occurrences of unneeded h1.h inclusions 2018-12-11 17:15:13 +01:00
freq_ctr.c BUG/MAJOR: threads/freq_ctr: use a memory barrier to detect changes 2017-10-31 18:01:18 +01:00
frontend.c MEDIUM: init: convert all trivial registration calls to initcalls 2018-11-26 19:50:32 +01:00
h1.c BUG/MEDIUM: h1: Get the h1m state when restarting the headers parsing 2019-01-04 16:23:03 +01:00
h2.c BUILD: use inttypes.h instead of stdint.h 2019-04-01 07:44:56 +02:00
haproxy.c BUG/MEDIUM: pattern: assign pattern IDs after checking the config validity 2019-04-11 14:52:25 +02:00
hash.c MINOR: hash: add new function hash_crc32c 2018-03-21 05:04:01 +01:00
hathreads.c MINOR: threads: Implement thread_cpus_enabled() for FreeBSD. 2019-04-11 00:09:22 +02:00
hdr_idx.c CLEANUP: pools: rename all pool functions and pointers to remove this "2" 2017-11-24 17:49:53 +01:00
hlua.c MINOR: lua: Don't handle the header Expect in lua HTTP applets anymore 2019-03-19 09:58:35 +01:00
hlua_fcn.c CLEANUP: h1: remove some occurrences of unneeded h1.h inclusions 2018-12-11 17:15:13 +01:00
hpack-dec.c BUILD: use inttypes.h instead of stdint.h 2019-04-01 07:44:56 +02:00
hpack-enc.c BUILD: use inttypes.h instead of stdint.h 2019-04-01 07:44:56 +02:00
hpack-huff.c BUILD: use inttypes.h instead of stdint.h 2019-04-01 07:44:56 +02:00
hpack-tbl.c BUILD: use inttypes.h instead of stdint.h 2019-04-01 07:44:56 +02:00
http.c MEDIUM: proto_htx: Convert all HTTP error messages into HTX 2018-12-01 17:37:27 +01:00
http_acl.c MEDIUM: init: convert all trivial registration calls to initcalls 2018-11-26 19:50:32 +01:00
http_act.c MEDIUM: http: Use the new _HA_ATOMIC_* macros. 2019-03-11 17:02:38 +01:00
http_conv.c MEDIUM: init: convert all trivial registration calls to initcalls 2018-11-26 19:50:32 +01:00
http_fetch.c MINOR: sample: Replace "req.ungrpc" smp fetch by a "ungrpc" converter. 2019-03-04 08:28:42 +01:00
http_htx.c BUG/MEDIUM: htx: Defrag if blocks position is changed and the payloads wrap 2019-04-12 21:34:30 +02:00
http_msg.c REORG: h1: move legacy http functions to http_msg.c 2018-12-11 17:15:13 +01:00
http_rules.c MINOR: http: Make new "early-hint" http-request action really be parsed. 2018-11-12 21:08:55 +01:00
htx.c BUG/MEDIUM: htx: Don't crush blocks payload when append is done on a data block 2019-04-12 22:06:45 +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 MINOR: backend: move hash_balance_factor out of chash 2019-01-14 19:33:17 +01:00
lb_fas.c BUG/MEDIUM: lb/threads: always properly lock LB algorithms on maintenance operations 2018-08-21 19:44:53 +02:00
lb_fwlc.c MINOR: lb: make the leastconn algorithm more accurate 2018-12-14 08:33:28 +01:00
lb_fwrr.c MEDIUM: lb/threads: Use the new _HA_ATOMIC_* macros. 2019-03-11 17:02:38 +01:00
lb_map.c MEDIUM: lb/threads: Use the new _HA_ATOMIC_* macros. 2019-03-11 17:02:38 +01:00
listener.c MINOR: cli/listener: report the number of accepts on "show activity" 2019-04-12 15:54:15 +02:00
log.c MINOR: skip get_gmtime where tm is unused 2019-04-11 14:58:32 +02:00
lru.c MINOR: lru: new function to delete <nb> least recently used keys 2016-01-11 07:31:35 +01:00
mailers.c MEDIUM: Add parsing of mailers section 2015-02-03 00:24:16 +01:00
map.c CLEANUP: Fix typos in the map management functions 2018-12-02 18:40:38 +01:00
memory.c MEDIUM: memory: Use the new _HA_ATOMIC_* macros. 2019-03-11 17:02:38 +01:00
mux_h1.c BUG/MINOR: mux-h1: Only skip invalid C-L headers on output 2019-03-28 10:00:36 +01:00
mux_h2.c BUG/MEDIUM: h2: Don't attempt to recv from h2_process_demux if we subscribed. 2019-04-05 16:03:54 +02:00
mux_pt.c CLEANUP: muxes/stream-int: Remove flags CS_FL_READ_NULL and SI_FL_READ_NULL 2019-03-25 06:55:23 +01:00
mworker-prog.c MEDIUM: mworker-prog: implement program for master-worker 2019-04-01 14:45:37 +02:00
mworker.c MINOR: mworker/cli: show programs in 'show proc' 2019-04-01 14:45:37 +02:00
namespace.c MINOR: initcall: apply initcall to all register_build_opts() calls 2018-11-26 19:50:32 +01:00
pattern.c MEDIUM: init: use self-initializing spinlocks and rwlocks 2018-11-26 19:50:32 +01:00
payload.c MINOR: payload: add sample fetch for TLS ALPN 2019-01-01 09:15:01 +01:00
peers.c BUG/MEDIUM: peers: fix a case where peer session is not cleanly reset on release. 2019-04-03 14:42:10 +02:00
pipe.c MEDIUM: init: use initcall for all fixed size pool creations 2018-11-26 19:50:32 +01:00
proto_http.c BUG/MEDIUM: http/htx: Fix handling of the option abortonclose 2019-03-25 06:55:13 +01:00
proto_htx.c BUG/MINOR: proto_htx: Reset to_forward value when a message is set to DONE 2019-04-01 15:43:40 +02:00
proto_sockpair.c MEDIUM: listener: keep a single thread-mask and warn on "process" misuse 2019-02-27 14:27:07 +01:00
proto_tcp.c MEDIUM: proto_tcp: Use the new _HA_ATOMIC_* macros. 2019-03-11 17:02:38 +01:00
proto_udp.c CLEANUP: fix inconsistency between fd->iocb, proto->accept and accept() 2016-04-14 11:18:22 +02:00
proto_uxst.c MINOR: listener: introduce listener_backlog() to report the backlog value 2019-02-28 17:05:29 +01:00
protocol.c MEDIUM: protocol: use a custom AF_MAX to help protocol parser 2018-09-12 07:12:27 +02:00
proxy.c BUG/MAJOR: config: Wrong maxconn adjustment. 2019-03-07 17:07:23 +01:00
queue.c MEDIUM: queues: Use the new _HA_ATOMIC_* macros. 2019-03-11 17:02:38 +01:00
raw_sock.c BUG/MEDIUM: connections: Add the CO_FL_CONNECTED flag if a send succeeded. 2019-01-17 19:18:20 +01:00
regex.c MINOR: initcall: apply initcall to all register_build_opts() calls 2018-11-26 19:50:32 +01:00
sample.c MINOR: sample: Add a protocol buffers specific converter. 2019-03-06 15:36:02 +01:00
server.c MINOR: server: remove a few unneeded LIST_INIT calls after LIST_DEL_LOCKED 2019-02-28 16:08:54 +01:00
session.c MEDIUM: sessions: Use the new _HA_ATOMIC_* macros. 2019-03-11 17:02:38 +01:00
sha1.c BUILD: use inttypes.h instead of stdint.h 2019-04-01 07:44:56 +02:00
shctx.c CLEANUP: Fix typos in the shctx subsystem 2018-12-02 18:40:29 +01:00
signal.c CLEANUP: Fix a typo in the signal subsystem 2018-12-02 18:39:52 +01:00
ssl_sock.c MINOR: ssl: Activate aes_gcm_dec converter for BoringSSL 2019-04-11 15:00:13 +02:00
standard.c MINOR: tools: add an unsetenv() implementation 2019-03-29 21:05:37 +01:00
stats.c BUG/MINOR: stats: Fully consume large requests in the stats applet 2019-03-19 09:49:29 +01:00
stick_table.c MEDIUM: init: convert all trivial registration calls to initcalls 2018-11-26 19:50:32 +01:00
stream.c BUG/MEDIUM: streams: Only re-run process_stream if we're in a connected state. 2019-04-12 13:14:48 +02:00
stream_interface.c BUG/MEDIUM: stream_interface: Don't bother doing chk_rcv/snd if not connected. 2019-04-12 13:14:55 +02:00
task.c BUG/MINOR: tasks: make sure the first task to be queued keeps its nice value 2019-04-12 15:54:02 +02:00
tcp_rules.c MEDIUM: tcp_rules: Use the new _HA_ATOMIC_* macros. 2019-03-11 17:02:38 +01:00
time.c BUILD: use inttypes.h instead of stdint.h 2019-04-01 07:44:56 +02:00
trace.c CONTRIB: trace: try to display the function's return value on exit 2017-10-24 19:54:25 +02:00
uri_auth.c CLEANUP: log: Rename Alert/Warning in ha_alert/ha_warning 2017-11-24 17:19:12 +01:00
vars.c MEDIUM: vars: Use the new _HA_ATOMIC_* macros. 2019-03-11 17:02:38 +01:00
version.c BUILD: add a new file "version.c" to carry version updates 2019-01-04 18:20:32 +01:00
xxhash.c BUILD: use inttypes.h instead of stdint.h 2019-04-01 07:44:56 +02:00