MINOR: listener: add relax_listener() function

There is a need for a small difference between resuming and relaxing
a listener.

When resuming, we expect that the listener may completely resume, this includes
unpausing or rebinding if required.
Resuming a listener is a best-effort operation: no matter the current state,
try our best to bring the listener up to the LI_READY state.

There are some cases where we only want to "relax" listeners that were
previously restricted using limit_listener() or listener_full() functions.
Here we don't want to ressucitate listeners, we're simply interested in
cancelling out the previous restriction.

To this day, listener_resume() on a unbound listener is broken, that's why
the need for this wasn't felt yet.

But we're trying to restore historical listener_resume() behavior, so we better
prepare for this by introducing an explicit relax_listener() function that
only does what is expected in such cases.

This commit depends on:
 - "MINOR: listener/api: add lli hint to listener functions"

(cherry picked from commit bcad7e6319a00ea0278fcad8125ac7116d6c55a5)
Signed-off-by: Christopher Faulet <cfaulet@haproxy.com>
(cherry picked from commit d170427902ebfd1f5c06366ea84a1126df1b01c0)
Signed-off-by: Amaury Denoyelle <adenoyelle@haproxy.com>
(cherry picked from commit 9bfa34f748e5c5bc16902d2058849275fec005fe)
Signed-off-by: Christopher Faulet <cfaulet@haproxy.com>
(cherry picked from commit bb8673459c039031e025b22a49a8c29f41533fb5)
Signed-off-by: Christopher Faulet <cfaulet@haproxy.com>
2 files changed