haproxy/doc
Willy Tarreau 3b091f80aa BUG/MINOR: buffers/threads: always clear a buffer's head before releasing it
A small race exists in buffers with "show sess all". This one wants to show
some information grabbed from the buffer (especially in HTX mode). But the
thread owning this buffer might just be releasing its area, right after a
free() or munmap() call, resulting in a head that is not seen as empty yet
though the area was released. It may then be dereferenced by "show sess all"
causing a crash. Note that in practice it only happens in debug mode with
UAF enabled, but it's tricky enough to fix it right now.

This should be backported to stable versions which support threads and a
store barrier. It's worth noting that by performing the clearing first,
b_free() and b_drop() now become two exact equivalent.
2019-08-08 08:07:45 +02:00
..
design-thoughts DOC: Fix typos in different subsections of the documentation 2018-11-18 22:23:15 +01:00
internals BUG/MINOR: buffers/threads: always clear a buffer's head before releasing it 2019-08-08 08:07:45 +02:00
lua-api DOC: Fix typos in different subsections of the documentation 2018-11-18 22:23:15 +01:00
51Degrees-device-detection.txt CLEANUP: 51d: move the 51d dummy lib to contrib/51d/src to match the real lib 2019-06-13 15:56:10 +02:00
acl.fig [DOC] add diagrams of queuing and future ACL design 2009-02-22 16:46:38 +01:00
architecture.txt DOC: fix a few typos in the documentation 2018-11-18 22:23:15 +01:00
close-options.txt DOC: fix a few typos in the documentation 2018-11-18 22:23:15 +01:00
coding-style.txt DOC: fix typos 2019-05-25 07:34:24 +02:00
configuration.txt MEDIUM: mux-h1: Add the support of headers adjustment for bogus HTTP/1 apps 2019-07-24 18:32:47 +02:00
cookie-options.txt DOC: fix a few typos in the documentation 2018-11-18 22:23:15 +01:00
DeviceAtlas-device-detection.txt DOC: fix typos 2019-05-25 07:34:24 +02:00
gpl.txt [LICENSE] licensing clarifications 2006-06-15 21:48:13 +02:00
haproxy.1 MINOR: doc: update the manpage and usage message about -S 2019-06-13 17:09:27 +02:00
intro.txt DOC: Fix typo in intro.txt 2019-07-06 11:41:37 +02:00
lgpl.txt [LICENSE] licensing clarifications 2006-06-15 21:48:13 +02:00
linux-syn-cookies.txt DOC: add doc/linux-syn-cookies.txt 2015-08-11 12:17:41 +02:00
lua.txt DOC: update few references to the linux* targets and change them to linux-glibc 2019-06-15 18:03:48 +02:00
management.txt DOC: management: document cache_hits and cache_lookups in the CSV format 2019-07-17 14:11:38 +02:00
netscaler-client-ip-insertion-protocol.txt DOC: fix typos 2019-05-25 07:34:24 +02:00
network-namespaces.txt MAJOR: namespace: add Linux network namespace support 2014-11-21 07:51:57 +01:00
peers-v2.0.txt DOC: fix typos 2019-05-25 07:34:24 +02:00
peers.txt DOC: peers: Update for dictionary cache entries for peers protocol. 2019-06-07 15:47:54 +02:00
proxy-protocol.txt DOC: fix typos 2019-05-25 07:34:24 +02:00
queuing.fig [DOC] add diagrams of queuing and future ACL design 2009-02-22 16:46:38 +01:00
regression-testing.txt DOC: fix typos 2019-05-25 07:34:24 +02:00
seamless_reload.txt CLEANUP: removed obsolete examples an move a few to better places 2019-06-15 21:25:06 +02:00
SOCKS4.protocol.txt MEDIUM: connection: Upstream SOCKS4 proxy support 2019-05-31 17:24:06 +02:00
SPOE.txt DOC: fix typos 2019-05-25 07:34:24 +02:00
WURFL-device-detection.txt DOC: fix typos 2019-05-25 07:34:24 +02:00