BUG/MEDIUM: checks: unsubscribe for events on the old conn-stream on connect

When a new connection is established, if an old connection is still attached to
the current check, it must be detroyed. When it happens, the old conn-stream
must be used to unsubscribe for events, not the new one.

No backport is needed.
This commit is contained in:
Christopher Faulet 2020-04-27 11:22:56 +02:00
parent b3b53524ad
commit 06150e4c73

View File

@ -1660,7 +1660,8 @@ static enum tcpcheck_eval_ret tcpcheck_eval_connect(struct check *check, struct
/* 3- release and replace the old one on success */ /* 3- release and replace the old one on success */
if (check->cs) { if (check->cs) {
if (check->wait_list.events) if (check->wait_list.events)
cs->conn->mux->unsubscribe(cs, check->wait_list.events, &check->wait_list); check->cs->conn->mux->unsubscribe(check->cs, check->wait_list.events,
&check->wait_list);
/* We may have been scheduled to run, and the I/O handler /* We may have been scheduled to run, and the I/O handler
* expects to have a cs, so remove the tasklet * expects to have a cs, so remove the tasklet