Skip to content

Commit

Permalink
Pull request 2153: 6610-hostsfile-enabled
Browse files Browse the repository at this point in the history
Updates #6610.

Squashed commit of the following:

commit 13522f0
Merge: befa3bd 6fd0a62
Author: Stanislav Chzhen <s.chzhen@adguard.com>
Date:   Wed Feb 21 12:53:08 2024 +0300

    Merge branch 'master' into 6610-hostsfile-enabled

commit befa3bd
Author: Stanislav Chzhen <s.chzhen@adguard.com>
Date:   Mon Feb 19 15:56:20 2024 +0300

    all: upd chlog

commit c195430
Author: Stanislav Chzhen <s.chzhen@adguard.com>
Date:   Thu Feb 15 20:52:52 2024 +0300

    home: hostsfile enabled
  • Loading branch information
schzhn committed Feb 21, 2024
1 parent 6fd0a62 commit 4605e7c
Show file tree
Hide file tree
Showing 4 changed files with 19 additions and 9 deletions.
3 changes: 3 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -30,6 +30,8 @@ NOTE: Add new changes BELOW THIS COMMENT.

### Added

- Ability to disable the use of system hosts file information for query
resolution ([#6610]).
- Ability to define custom directories for storage of query log files and
statistics ([#5992]).
- Context menu item in the Query Log to add a Client to the Persistent client
Expand Down Expand Up @@ -66,6 +68,7 @@ NOTE: Add new changes BELOW THIS COMMENT.
- Go 1.20 support, as it has reached end of life.

[#5992]: https://github.com/AdguardTeam/AdGuardHome/issues/5992
[#6610]: https://github.com/AdguardTeam/AdGuardHome/issues/6610
[#6679]: https://github.com/AdguardTeam/AdGuardHome/issues/6679
[#6711]: https://github.com/AdguardTeam/AdGuardHome/issues/6711

Expand Down
11 changes: 8 additions & 3 deletions internal/home/config.go
Original file line number Diff line number Diff line change
Expand Up @@ -232,6 +232,10 @@ type dnsConfig struct {

// ServePlainDNS defines if plain DNS is allowed for incoming requests.
ServePlainDNS bool `yaml:"serve_plain_dns"`

// HostsFileEnabled defines whether to use information from the system hosts
// file to resolve queries.
HostsFileEnabled bool `yaml:"hostsfile_enabled"`
}

type tlsConfigSettings struct {
Expand Down Expand Up @@ -349,9 +353,10 @@ var config = &configuration{
// was later increased to 300 due to https://github.com/AdguardTeam/AdGuardHome/issues/2257
MaxGoroutines: 300,
},
UpstreamTimeout: timeutil.Duration{Duration: dnsforward.DefaultTimeout},
UsePrivateRDNS: true,
ServePlainDNS: true,
UpstreamTimeout: timeutil.Duration{Duration: dnsforward.DefaultTimeout},
UsePrivateRDNS: true,
ServePlainDNS: true,
HostsFileEnabled: true,
},
TLS: tlsConfigSettings{
PortHTTPS: defaultPortHTTPS,
Expand Down
2 changes: 1 addition & 1 deletion internal/home/home.go
Original file line number Diff line number Diff line change
Expand Up @@ -361,7 +361,7 @@ func setupDNSFilteringConf(conf *filtering.Config) (err error) {

conf.EtcHosts = Context.etcHosts
// TODO(s.chzhen): Use empty interface.
if Context.etcHosts == nil {
if Context.etcHosts == nil || !config.DNS.HostsFileEnabled {
conf.EtcHosts = nil
}

Expand Down
12 changes: 7 additions & 5 deletions internal/home/options.go
Original file line number Diff line number Diff line change
Expand Up @@ -270,15 +270,17 @@ var cmdLineOpts = []cmdLineOpt{{
log.Info(
"warning: --no-etc-hosts flag is deprecated " +
"and will be removed in the future versions; " +
"set clients.runtime_sources.hosts in the configuration file to false instead",
"set clients.runtime_sources.hosts and dns.hostsfile_enabled " +
"in the configuration file to false instead",
)

return nil, nil
},
serialize: func(o options) (val string, ok bool) { return "", o.noEtcHosts },
description: "Deprecated: use clients.runtime_sources.hosts instead. Do not use the OS-provided hosts.",
longName: "no-etc-hosts",
shortName: "",
serialize: func(o options) (val string, ok bool) { return "", o.noEtcHosts },
description: "Deprecated: use clients.runtime_sources.hosts and dns.hostsfile_enabled " +
"instead. Do not use the OS-provided hosts.",
longName: "no-etc-hosts",
shortName: "",
}, {
updateWithValue: nil,
updateNoValue: func(o options) (options, error) { o.localFrontend = true; return o, nil },
Expand Down

0 comments on commit 4605e7c

Please sign in to comment.