BUG/MEDIUM: resolvers: Make 1st server of a template take part to SRV resolution
authorChristopher Faulet <cfaulet@haproxy.com>
Tue, 29 Jun 2021 18:52:35 +0000 (20:52 +0200)
committerChristopher Faulet <cfaulet@haproxy.com>
Tue, 6 Jul 2021 16:14:20 +0000 (18:14 +0200)
commit31f5ed68d3c19a2c86a2181084f80f175831298d
tree48441271f0f7a666ff20892a44e838a815df9095
parent315e1101322d020589252bfd61a6bfd633ff476b
BUG/MEDIUM: resolvers: Make 1st server of a template take part to SRV resolution

The commit 3406766d5 ("MEDIUM: resolvers: add a ref between servers and srv
request or used SRV record") introduced a regression. The first server of a
template based on SRV record is no longer resolved. The same bug exists for
a normal server based on a SRV record.

In fact, the server used during parsing (used as reference when a
server-template line is parsed) is never attached to the corresponding srvrq
object. Thus with following lines, no resolution is performed because
"srvrq->attached_servers" is empty:

  server-template test 1 _http.domain.tld resolvers dns ...
  server test1 _http.domain.tld resolvers dns ...

This patch should fix the issue #1295 (but not confirmed yet it is the same
bug). It must be backported everywhere the above commit is.

(cherry picked from commit 81ba74ae5061bc55b3460f01a99371281de8f7f3)
Signed-off-by: Christopher Faulet <cfaulet@haproxy.com>
(cherry picked from commit 08736f990ed0387fa9c2340b1520c679fd429921)
Signed-off-by: Christopher Faulet <cfaulet@haproxy.com>
src/server.c