From bed883abe8b9590219f215ef9389b0d51cdc0d5e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Fr=C3=A9d=C3=A9ric=20L=C3=A9caille?= Date: Tue, 23 Apr 2019 17:26:33 +0200 Subject: [PATCH] BUG/MAJOR: stream: Missing DNS context initializations. Fix some missing initializations wich came with 333939c commit (MINOR: action: new '(http-request|tcp-request content) do-resolve' action). The DNS contexts of streams which were allocated were not initialized by stream_new(). This leaded to accesses to non-allocated memory when freeing these contexts with stream_free(). --- src/stream.c | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/src/stream.c b/src/stream.c index af15d47a1..e1218e377 100644 --- a/src/stream.c +++ b/src/stream.c @@ -310,6 +310,11 @@ struct stream *stream_new(struct session *sess, enum obj_type *origin) s->txn = NULL; s->hlua = NULL; + s->dns_ctx.dns_requester = NULL; + s->dns_ctx.hostname_dn = NULL; + s->dns_ctx.hostname_dn_len = 0; + s->dns_ctx.parent = NULL; + HA_SPIN_LOCK(STRMS_LOCK, &streams_lock); LIST_ADDQ(&streams, &s->list); HA_SPIN_UNLOCK(STRMS_LOCK, &streams_lock);