mirror of
https://git.haproxy.org/git/haproxy.git/
synced 2026-01-15 05:41:16 +01:00
In b_is_null(), make sure we return 1 if the buffer is waiting for its allocation, as users assume there's memory allocated if b_is_null() returns 0. The indirect impact of not having this was that htxbuf() would not match b_is_null() for a buffer waiting for an allocation, and would thus return the value 1 for the htx pointer, causing various crashes under low memory condition. Note that this patch makes gcc versions 6 and above report two null-deref warnings in proto_htx.c since htx_is_empty() continues to check for a null pointer without knowing that this is protected by the test on b_is_null(). This is addressed by the following patches. This should be backported to 1.9.