]> git.ipfire.org Git - thirdparty/haproxy.git/commitdiff
BUG/MEDIUM: spoe: Don't set the default traget for the SPOE agent frontend
authorChristopher Faulet <cfaulet@haproxy.com>
Mon, 13 Feb 2023 10:37:26 +0000 (11:37 +0100)
committerChristopher Faulet <cfaulet@haproxy.com>
Mon, 13 Feb 2023 10:37:27 +0000 (11:37 +0100)
The commit d5983cef8 ("MINOR: listener: remove the useless ->default_target
field") revealed a bug in the SPOE. No default-target must be defined for
the SPOE agent frontend. SPOE applets are used on the frontend side and a
TCP connection is established on the backend side.

Because of this bug, since the commit above, the stream target is set to the
SPOE applet instead of the backend connection, leading to a spinning loop on
the applet when it is released because are unable to close the backend side.

This patch should fix the issue #2040. It only affects the 2.8-DEV but to
avoid any future bug, it should be backported to all stable versions.

src/flt_spoe.c

index 3e4fe9735d1fdc208f52fb3e442d0a574f69a64b..1f6b3a9f38792881b7cb9f31dffff2caac5788ae 100644 (file)
@@ -3053,7 +3053,6 @@ spoe_init(struct proxy *px, struct flt_conf *fconf)
         conf->agent_fe.accept = frontend_accept;
         conf->agent_fe.srv = NULL;
         conf->agent_fe.timeout.client = TICK_ETERNITY;
-       conf->agent_fe.default_target = &spoe_applet.obj_type;
        conf->agent_fe.fe_req_ana = AN_REQ_SWITCHING_RULES;
 
        if (!sighandler_registered) {