tree a1c3902d576f034d87ff273385babf51b6a1e26c
parent 7d77c6a0d546fdf93ad240ccafce397a16a92061
author Willy Tarreau <w@1wt.eu> 1651759245 +0200
committer Christopher Faulet <cfaulet@haproxy.com> 1652442481 +0200

BUG/MEDIUM: resolvers: make "show resolvers" properly yield

The "show resolvers" command is bogus, it tries to implement a yielding
mechanism except that if it yields it restarts from the beginning, until
it manages to fill the buffer with only line breaks, and faces error -2
that lets it reach the final state and exit.

The risk is low since it requires about 50 name servers to reach that
state, but it's not impossible, especially when using multiple sections.

In addition, the extraneous line breaks, if sent over an interactive
connection, will desynchronize the commands and make the client believe
the end was reached after the first nameserver. This cannot be fixed
separately because that would turn this bug into an infinite loop since
it's the line feed that manages to fill the buffer and stop it.

The fix consists in saving the current resolvers section into ctx.cli.p1
and the current nameserver into ctx.cli.p2.

This should be backported, but that code moved a lot since it was
introduced and has always been bogus. It looks like it has mostly
stabilized in 2.4 with commit c943799c86 so the fix might be backportable
to 2.4 without too much effort.

(cherry picked from commit 4e047e7d0e2c1d11c0c9d8621060c080fc017d46)
[cf: Context adjustment (cs -> si)]
Signed-off-by: Christopher Faulet <cfaulet@haproxy.com>
(cherry picked from commit 486bf3b52a3d9f5109f3381f3a8a1f17ae006b7d)
Signed-off-by: Christopher Faulet <cfaulet@haproxy.com>
