Pull request 2287: 7315-fix-client-storage-panic
Closes #7315.
Squashed commit of the following:
commit 94c8473a14d98b45b5086de432bc68dd55eb654b
Author: Stanislav Chzhen <s.chzhen@adguard.com>
Date: Thu Oct 3 19:09:23 2024 +0300
all: upd chlog
commit 82b772b1dde19277832d44f9b22c47d22f90bf7e
Merge: e7f34cc43 4919630cc
Author: Stanislav Chzhen <s.chzhen@adguard.com>
Date: Thu Oct 3 19:00:53 2024 +0300
Merge branch 'master' into 7315-fix-client-storage-panic
commit e7f34cc435f53b80aca328a62e27c6aaa8fe6462
Author: Stanislav Chzhen <s.chzhen@adguard.com>
Date: Thu Oct 3 17:55:39 2024 +0300
home: fix client storage panic
This commit is contained in:
@@ -25,6 +25,13 @@ See also the [v0.107.54 GitHub milestone][ms-v0.107.54].
|
|||||||
NOTE: Add new changes BELOW THIS COMMENT.
|
NOTE: Add new changes BELOW THIS COMMENT.
|
||||||
-->
|
-->
|
||||||
|
|
||||||
|
### Fixed
|
||||||
|
|
||||||
|
- Missing runtime clients with information from the system hosts file on first
|
||||||
|
AdGuard Home start ([#7315]).
|
||||||
|
|
||||||
|
[#7315]: https://github.com/AdguardTeam/AdGuardHome/issues/7315
|
||||||
|
|
||||||
<!--
|
<!--
|
||||||
NOTE: Add new changes ABOVE THIS COMMENT.
|
NOTE: Add new changes ABOVE THIS COMMENT.
|
||||||
-->
|
-->
|
||||||
|
|||||||
@@ -92,9 +92,9 @@ func (clients *clientsContainer) Init(
|
|||||||
// TODO(e.burkov): The option should probably be returned, since hosts file
|
// TODO(e.burkov): The option should probably be returned, since hosts file
|
||||||
// currently used not only for clients' information enrichment, but also in
|
// currently used not only for clients' information enrichment, but also in
|
||||||
// the filtering module and upstream addresses resolution.
|
// the filtering module and upstream addresses resolution.
|
||||||
var hosts client.HostsContainer = etcHosts
|
var hosts client.HostsContainer
|
||||||
if !config.Clients.Sources.HostsFile {
|
if config.Clients.Sources.HostsFile && etcHosts != nil {
|
||||||
hosts = nil
|
hosts = etcHosts
|
||||||
}
|
}
|
||||||
|
|
||||||
clients.storage, err = client.NewStorage(&client.StorageConfig{
|
clients.storage, err = client.NewStorage(&client.StorageConfig{
|
||||||
|
|||||||
@@ -148,6 +148,14 @@ func setupContext(opts options) (err error) {
|
|||||||
Context.tlsRoots = aghtls.SystemRootCAs()
|
Context.tlsRoots = aghtls.SystemRootCAs()
|
||||||
Context.mux = http.NewServeMux()
|
Context.mux = http.NewServeMux()
|
||||||
|
|
||||||
|
if !opts.noEtcHosts {
|
||||||
|
err = setupHostsContainer()
|
||||||
|
if err != nil {
|
||||||
|
// Don't wrap the error, because it's informative enough as is.
|
||||||
|
return err
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
if Context.firstRun {
|
if Context.firstRun {
|
||||||
log.Info("This is the first time AdGuard Home is launched")
|
log.Info("This is the first time AdGuard Home is launched")
|
||||||
checkPermissions()
|
checkPermissions()
|
||||||
@@ -168,14 +176,6 @@ func setupContext(opts options) (err error) {
|
|||||||
os.Exit(0)
|
os.Exit(0)
|
||||||
}
|
}
|
||||||
|
|
||||||
if !opts.noEtcHosts {
|
|
||||||
err = setupHostsContainer()
|
|
||||||
if err != nil {
|
|
||||||
// Don't wrap the error, because it's informative enough as is.
|
|
||||||
return err
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user