haproxy public development tree
Go to file
Aurelien DARRAGON b6a24a52a2 BUG/MINOR: debug: fix pointer check in debug_parse_cli_task()
Task pointer check in debug_parse_cli_task() computes the theoric end
address of provided task pointer to check if it is valid or not thanks to
may_access() helper function.

However, relative ending address is calculated by adding task size to 't'
pointer (which is a struct task pointer), thus it will result to incorrect
address since the compiler automatically translates 't + x' to
't + x * sizeof(*t)' internally (with sizeof(*t) != 1 here).

Solving the issue by using 'ptr' (which is the void * raw address) as
starting address to prevent automatic address scaling.

This was revealed by coverity, see GH #2157.

No backport is needed, unless 9867987 ("DEBUG: cli: add "debug dev task"
to show/wake/expire/kill tasks and tasklets") gets backported.
2023-05-17 16:49:17 +02:00
.github CI: drop Fedora m32 pipeline in favour of cross matrix 2023-05-17 14:57:10 +02:00
addons MINOR: tree-wide: use free_acl_cond() where relevant 2023-05-11 15:37:04 +02:00
admin MINOR: acme.sh: add the deploy script for acme.sh in admin directory 2023-04-26 17:32:15 +02:00
dev DEV: flags/show-sess-to-flags: add support for color output 2023-05-10 17:48:00 +02:00
doc DOC: config: Clarify conditions to shorten the inspect-delay for TCP rules 2023-05-17 09:21:01 +02:00
examples EXAMPLES: fix race condition in lua mailers script 2023-05-12 09:45:30 +02:00
include MINOR: clock: provide a function to automatically adjust now_offset 2023-05-17 09:33:54 +02:00
reg-tests REGTESTS: log: Reduce again response inspect-delay for last_rule.vtc 2023-05-17 11:12:25 +02:00
scripts BUILD: ssl: switch LibreSSL to Fastly CDN 2023-04-26 18:41:03 +02:00
src BUG/MINOR: debug: fix pointer check in debug_parse_cli_task() 2023-05-17 16:49:17 +02:00
tests TESTS: add a unit test for one_among_mask() 2022-06-21 20:29:57 +02:00
.cirrus.yml CI: cirrus-ci: bump FreeBSD image to 13-1 2023-04-23 09:44:53 +02:00
.gitattributes
.gitignore CLEANUP: exclude udp-perturb with .gitignore 2022-09-16 15:47:04 +02:00
.mailmap
.travis.yml
BRANCHES
CHANGELOG [RELEASE] Released version 2.8-dev11 2023-05-11 05:33:21 +02:00
CONTRIBUTING
INSTALL DOC: fix a few reported typos in the config and install doc 2023-05-07 07:10:55 +02:00
LICENSE
MAINTAINERS CLEANUP: assorted typo fixes in the code and comments 2022-11-30 14:02:36 +01:00
Makefile BUG/MINOR: makefile: use USE_LIBATOMIC instead of USE_ATOMIC 2023-05-15 16:08:03 +02:00
README
SUBVERS
VERDATE [RELEASE] Released version 2.8-dev11 2023-05-11 05:33:21 +02:00
VERSION [RELEASE] Released version 2.8-dev11 2023-05-11 05:33:21 +02: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)