MINOR: http_fetch/htx: Use stream flags instead of px mode in smp_prefetch_htx

In the function smp_prefetch_htx(), we must know if data in the channel's buffer
are structured or not. Before the proxy mode was tested. Now we test if the
stream is an HTX stream or not. If yes, we know the HTX is used to structure
data in the channel's buffer.
This commit is contained in:
Christopher Faulet 2019-04-03 10:12:42 +02:00
parent 209829f159
commit eca8854555

View File

@ -169,7 +169,6 @@ static int get_http_auth(struct sample *smp)
*/
struct htx *smp_prefetch_htx(struct sample *smp, const struct arg *args)
{
struct proxy *px = smp->px;
struct stream *s = smp->strm;
unsigned int opt = smp->opt;
struct http_txn *txn = NULL;
@ -190,7 +189,7 @@ struct htx *smp_prefetch_htx(struct sample *smp, const struct arg *args)
txn = s->txn;
}
if (px->mode == PR_MODE_HTTP) {
if (IS_HTX_STRM(s)) {
if ((opt & SMP_OPT_DIR) == SMP_OPT_DIR_REQ) {
htx = htxbuf(&s->req.buf);
if (htx_is_empty(htx) || htx_get_tail_type(htx) < HTX_BLK_EOH) {
@ -221,7 +220,7 @@ struct htx *smp_prefetch_htx(struct sample *smp, const struct arg *args)
}
}
}
else { /* PR_MODE_TCP */
else { /* RAW mode */
if ((opt & SMP_OPT_DIR) == SMP_OPT_DIR_REQ) {
struct buffer *buf;
struct h1m h1m;