mirror of
https://git.haproxy.org/git/haproxy.git/
synced 2025-09-24 15:21:29 +02:00
BUG/MEDIUM: checks: ensure the health_status is always within bounds
health_adjust() checks for incorrect bounds for the status argument. With current code, the argument is always a constant from the valid enum so there is no impact and the check is basically a NOP. However users running local patches (eg: new checks) might want to recheck their code. This fix should be backported to 1.4 which introduced the issue. Reported-by: Dinko Korunic <dkorunic@reflected.net>
This commit is contained in:
parent
f7f057bab9
commit
bb95666bac
@ -619,7 +619,7 @@ void health_adjust(struct server *s, short status)
|
|||||||
if (s->observe >= HANA_OBS_SIZE)
|
if (s->observe >= HANA_OBS_SIZE)
|
||||||
return;
|
return;
|
||||||
|
|
||||||
if (status >= HCHK_STATUS_SIZE || !analyze_statuses[status].desc)
|
if (status >= HANA_STATUS_SIZE || !analyze_statuses[status].desc)
|
||||||
return;
|
return;
|
||||||
|
|
||||||
switch (analyze_statuses[status].lr[s->observe - 1]) {
|
switch (analyze_statuses[status].lr[s->observe - 1]) {
|
||||||
|
Loading…
x
Reference in New Issue
Block a user