Pull request: 3136 show default resolvers

Merge in DNS/adguard-home from 3136-show-default to master

Closes #3136.

Squashed commit of the following:

commit add09a772dddcccd404056e7649c2d3350a79fec
Author: Eugene Burkov <e.burkov@adguard.com>
Date:   Tue Jun 1 11:11:24 2021 +0300

    openapi: fix typo

commit 69e402c49318d53a0d03b81207644d9fb04a139a
Merge: 76e8492c e17e1f20
Author: Eugene Burkov <e.burkov@adguard.com>
Date:   Tue Jun 1 11:09:51 2021 +0300

    Merge branch 'master' into 3136-show-default

commit 76e8492c8da679e204ceb7a77f1c6f73a2488040
Author: Ildar Kamalov <ik@adguard.com>
Date:   Tue Jun 1 10:55:09 2021 +0300

    client: check upstreams

commit 05fe6ea196a1ed9386eec25dbfbe22779fe7bcfd
Author: Vlad <v.abdulmyanov@adguard.com>
Date:   Mon May 31 19:23:35 2021 +0300

    add defaul resolvers line

commit 8d63c7df9947c9588478d1173834b42569fd8951
Author: Eugene Burkov <e.burkov@adguard.com>
Date:   Mon May 31 11:56:08 2021 +0300

    all: imp changelog

commit e3912e3b20eca9dcf90ddddaa5edb54d1e0cfe6e
Author: Eugene Burkov <e.burkov@adguard.com>
Date:   Fri May 28 20:23:05 2021 +0300

    all: add local ptr resolvers addresses output
This commit is contained in:
Eugene Burkov
2021-06-01 14:28:34 +03:00
parent e17e1f20fb
commit 1e55db408f
9 changed files with 95 additions and 26 deletions

View File

@@ -96,12 +96,25 @@ func (s *Server) getDNSConfig() dnsConfig {
}
func (s *Server) handleGetConfig(w http.ResponseWriter, r *http.Request) {
resp := s.getDNSConfig()
defLocalPTRUps, err := s.filterOurDNSAddrs(s.sysResolvers.Get())
if err != nil {
log.Debug("getting dns configuration: %s", err)
}
resp := struct {
dnsConfig
// DefautLocalPTRUpstreams is used to pass the addresses from
// systemResolvers to the front-end. It's not a pointer to the slice
// since there is no need to omit it while decoding from JSON.
DefautLocalPTRUpstreams []string `json:"default_local_ptr_upstreams,omitempty"`
}{
dnsConfig: s.getDNSConfig(),
DefautLocalPTRUpstreams: defLocalPTRUps,
}
w.Header().Set("Content-Type", "application/json")
enc := json.NewEncoder(w)
if err := enc.Encode(resp); err != nil {
if err = json.NewEncoder(w).Encode(resp); err != nil {
httpError(r, w, http.StatusInternalServerError, "json.Encoder: %s", err)
return
}