The <kip> of producer was not forwarded to <kop> of consumer when zero-copy
data forwarding was tried. Because of the issue, the chunking of emitted H1
messages could be invalid.
To fix the bug, sc_ep_fwd_kip() must be called at this stage.
This fix is related to the previous one (
529a8dbfb "BUG/MEDIUM: mux-h1: Take
care to update <kop> value during zero-copy forwarding"). Both are required
to fully fix the issue #3230.
This patch must be backported to 3.3.
flags |= CO_RFL_BUF_FLUSH;
goto abort_fastfwd;
}
+ sc_ep_fwd_kip(sc, sc_opposite(sc));
ret = conn->mux->fastfwd(sc, ic->to_forward, flags);
if (ret < 0)
goto abort_fastfwd;
flags |= CO_RFL_BUF_FLUSH;
goto abort_fastfwd;
}
+ sc_ep_fwd_kip(sc, sc_opposite(sc));
ret = appctx_fastfwd(sc, ic->to_forward, flags);
if (ret < 0)
goto abort_fastfwd;