diff --git a/src/proto_htx.c b/src/proto_htx.c index 953b49f98..dc0762d73 100644 --- a/src/proto_htx.c +++ b/src/proto_htx.c @@ -1695,19 +1695,8 @@ int htx_wait_for_response(struct stream *s, struct channel *rep, int an_bit) */ if (txn->status < 200 && (txn->status == 100 || txn->status >= 102)) { - int32_t pos; - FLT_STRM_CB(s, flt_http_reset(s, msg)); - for (pos = htx_get_first(htx); pos != -1; pos = htx_get_next(htx, pos)) { - struct htx_blk *blk = htx_get_blk(htx, pos); - enum htx_blk_type type = htx_get_blk_type(blk); - - c_adv(rep, htx_get_blksz(blk)); - if (type == HTX_BLK_EOH) { - htx->sl_pos = htx_get_next(htx, pos); - break; - } - } + channel_htx_fwd_headers(rep, htx); msg->msg_state = HTTP_MSG_RPBEFORE; txn->status = 0; s->logs.t_data = -1; /* was not a response yet */