tree af64c4b3b4180e81662b7bc08f516a169fa787bf
parent fe1c785bcce91aa97af3c119a6b987b81a426df7
author Willy Tarreau <w@1wt.eu> 1653030818 +0200
committer Willy Tarreau <w@1wt.eu> 1653031212 +0200
encoding latin1

BUG/MINOR: cfgparse: abort earlier in case of allocation error

In issue #1563, Coverity reported a very interesting issue about a
possible UAF in the config parser if the config file ends in with a
very large line followed by an empty one and the large one causes an
allocation failure.

The issue essentially is that we try to go on with the next line in case
of allocation error, while there's no point doing so. If we failed to
allocate memory to read one config line, the same may happen on the next
one, and blatantly dropping it while trying to parse what follows it. In
the best case, subsequent errors will be incorrect due to this prior error
(e.g. a large ACL definition with many patterns, followed by a reference of
this ACL).

Let's just immediately abort in such a condition where there's no recovery
possible.

This may be backported to all versions once the issue is confirmed to be
addressed.

Thanks to Ilya for the report.
