haproxy public development tree
Go to file
Willy Tarreau 17254939c5 CLEANUP: http: silence a cppcheck warning in get_http_auth()
In issue #777, cppcheck wrongly assumes a useless null pointer check
in the expression below while it's obvious that in a 3G/1G split on
32-bit, len can become positive if p is NULL:

     p = memchr(ctx.value.ptr, ' ', ctx.value.len);
     len = p - ctx.value.ptr;
     if (!p || len <= 0)
           return 0;

In addition, on 64 bits you never know given that len is a 32-bit signed
int thus the sign of the result in case of a null p will always be the
opposite of the 32th bit of ctx.value.ptr. Admittedly the test is ugly.

Tim proposed this fix consisting in checking for p == ctx.value.ptr
instead when checking for first character only, which Ilya confirmed is
enough to shut cppcheck up. No backport is needed.
2020-09-02 07:18:01 +02:00
.github DOC: overhauling github issue templates 2020-08-17 20:29:27 +02:00
contrib BUG/MEDIUM: contrib/spoa-server: Fix ipv4_address used instead of ipv6_address 2020-09-01 18:28:40 +02:00
doc DOC: add description of pidfile in master-worker mode 2020-08-26 18:40:53 +02:00
examples CLEANUP: assorted typo fixes in the code and comments 2020-06-26 11:27:28 +02:00
include MINOR: http-htx: Handle an optional reason when replacing the response status 2020-09-01 10:55:36 +02:00
reg-tests REGTEST: remove stray leading spaces in converteers_ref_cnt_never_dec.vtc 2020-08-19 11:20:28 +02:00
scripts SCRIPTS: git-show-backports: emit the shell command to backport a commit 2020-07-31 16:57:35 +02:00
src CLEANUP: http: silence a cppcheck warning in get_http_auth() 2020-09-02 07:18:01 +02:00
tests MINOR: lists: rename some MT_LIST operations to clarify them 2020-07-10 08:50:41 +02:00
.cirrus.yml CI: cirrus-ci: exclude slow reg-tests 2020-07-04 06:58:14 +02:00
.gitignore
.travis.yml CI: travis-ci: specify SLZ_LIB, SLZ_INC for travis builds 2020-08-05 11:40:14 +02:00
BRANCHES DOC: assorted typo fixes in the documentation 2020-03-09 14:45:58 +01:00
CHANGELOG [RELEASE] Released version 2.3-dev3 2020-08-14 18:54:05 +02:00
CONTRIBUTING DOC: Use gender neutral language 2020-07-26 22:35:43 +02:00
INSTALL MINOR: version: back to development, update status message 2020-07-07 16:38:51 +02:00
LICENSE
MAINTAINERS REORG: include: split hathreads into haproxy/thread.h and haproxy/thread-t.h 2020-06-11 10:18:56 +02:00
Makefile MINOR: sock: introduce sock_inet and sock_unix 2020-08-28 18:51:36 +02:00
README
ROADMAP
SUBVERS
VERDATE [RELEASE] Released version 2.3-dev3 2020-08-14 18:54:05 +02:00
VERSION [RELEASE] Released version 2.3-dev3 2020-08-14 18:54:05 +02:00

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)