haproxy public development tree
Go to file
Remi Tricot-Le Breton e4421dec7e BUG/MINOR: cache: Manage multiple headers in accept-encoding normalization
The accept-encoding part of the secondary key (vary) was only built out
of the first occurrence of the header. So if a client had two
accept-encoding headers, gzip and br for instance, the key would have
been built out of the gzip string. So another client that only managed
gzip would have been sent the cached resource, even if it was a br resource.
The http_find_header function is now called directly by the normalizers
so that they can manage multiple headers if needed.
A request that has more than 16 encodings will be considered as an
illegitimate request and its response will not be stored.

This fixes GitHub issue #987.

It does not need any backport.
2020-12-24 17:18:00 +01:00
.github CI: codespell: whitelist "te" and "nd" words 2020-12-21 11:54:06 +01:00
contrib CLEANUP: assorted typo fixes in the code and comments 2020-12-21 11:24:48 +01:00
doc MINOR: sample: add the xxh3 converter 2020-12-23 06:39:21 +01:00
examples CLEANUP: assorted typo fixes in the code and comments 2020-06-26 11:27:28 +02:00
include MINOR: cache: Avoid storing responses whose secondary key was not correctly calculated 2020-12-24 17:18:00 +01:00
reg-tests BUG/MINOR: cache: Manage multiple headers in accept-encoding normalization 2020-12-24 17:18:00 +01:00
scripts REGTESTS: make use of HAPROXY_ARGS and pass -dM by default 2020-12-16 21:43:50 +01:00
src BUG/MINOR: cache: Manage multiple headers in accept-encoding normalization 2020-12-24 17:18:00 +01:00
tests MEDIUM: config: remove the deprecated and dangerous global "debug" directive 2020-10-09 19:18:45 +02:00
.cirrus.yml CI: cirrus: drop CentOS 6 builds 2020-12-16 09:21:51 +01:00
.gitattributes MINOR: Commit .gitattributes 2020-09-05 16:21:59 +02:00
.gitignore CLEANUP: Update .gitignore 2020-09-12 13:11:24 +02:00
.travis.yml CI: travis-ci: drop coverity scan builds 2020-12-22 19:39:23 +01:00
BRANCHES
CHANGELOG [RELEASE] Released version 2.4-dev4 2020-12-21 11:54:56 +01:00
CONTRIBUTING DOC: Use gender neutral language 2020-07-26 22:35:43 +02:00
INSTALL DOC: mention in INSTALL that it's development again 2020-11-05 17:19:13 +01:00
LICENSE
MAINTAINERS DOC: email change of the DeviceAtlas maintainer 2020-12-10 11:00:18 +01:00
Makefile MINOR: quic: Enable the compilation of QUIC modules. 2020-12-23 11:57:26 +01:00
README
ROADMAP
SUBVERS
VERDATE [RELEASE] Released version 2.4-dev4 2020-12-21 11:54:56 +01:00
VERSION [RELEASE] Released version 2.4-dev4 2020-12-21 11:54:56 +01:00

README

The HAProxy documentation has been split into a number of different files for
ease of use.

Please refer to the following files depending on what you're looking for :

  - INSTALL for instructions on how to build and install HAProxy
  - BRANCHES to understand the project's life cycle and what version to use
  - LICENSE for the project's license
  - CONTRIBUTING for the process to follow to submit contributions

The more detailed documentation is located into the doc/ directory :

  - doc/intro.txt for a quick introduction on HAProxy
  - doc/configuration.txt for the configuration's reference manual
  - doc/lua.txt for the Lua's reference manual
  - doc/SPOE.txt for how to use the SPOE engine
  - doc/network-namespaces.txt for how to use network namespaces under Linux
  - doc/management.txt for the management guide
  - doc/regression-testing.txt for how to use the regression testing suite
  - doc/peers.txt for the peers protocol reference
  - doc/coding-style.txt for how to adopt HAProxy's coding style
  - doc/internals for developer-specific documentation (not all up to date)