mirror of
https://git.haproxy.org/git/haproxy.git/
synced 2025-09-22 22:31:28 +02:00
The sc-set-gpt0() parser was extended in 2.1 by commit 0d7712dff ("MINOR: stick-table: allow sc-set-gpt0 to set value from an expression") to support sample expressions in addition to plain integers. However there is a subtlety there, which is that while the arg position must be incremented when parsing an integer, it must not be touched when calling an expression since the expression parser already does it. The effect is that rules making use of sc-set-gpt0() followed by an expression always ignore one word after that expression, and will typically fail to parse if followed by an "if" as the parser will restart after the "if". With no condition it's different because an empty condition doesn't result in trying to parse anything. This patch moves the increment at the right place and adds a few explanations for a code part that was far from being obvious. This should be backported to branches having the commit above (2.1+).
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)
Description
Languages
C
98.1%
Shell
0.8%
Makefile
0.5%
Lua
0.2%
Python
0.2%