* minor fixes

This commit is contained in:
Simon Zolin 2019-11-08 14:56:19 +03:00
parent 9b8cccdfcf
commit f579c23bc9
6 changed files with 22 additions and 14 deletions

View File

@ -64,7 +64,7 @@ func processIPCIDRArray(dst *map[string]bool, dstIPNet *[]net.IPNet, src []strin
return nil
}
// Return TRUE if this client should be blocked
// IsBlockedIP - return TRUE if this client should be blocked
func (a *accessCtx) IsBlockedIP(ip string) bool {
a.lock.Lock()
defer a.lock.Unlock()
@ -104,7 +104,7 @@ func (a *accessCtx) IsBlockedIP(ip string) bool {
return false
}
// Return TRUE if this domain should be blocked
// IsBlockedDomain - return TRUE if this domain should be blocked
func (a *accessCtx) IsBlockedDomain(host string) bool {
a.lock.Lock()
_, ok := a.blockedHosts[host]

View File

@ -113,10 +113,6 @@ type FilteringConfig struct {
ParentalBlockHost string `yaml:"parental_block_host"`
SafeBrowsingBlockHost string `yaml:"safebrowsing_block_host"`
// Names of services to block (globally).
// Per-client settings can override this configuration.
BlockedServices []string `yaml:"blocked_services"`
CacheSize uint `yaml:"cache_size"` // DNS cache size (in bytes)
UpstreamDNS []string `yaml:"upstream_dns"`
}
@ -282,13 +278,8 @@ func (s *Server) IsRunning() bool {
return isRunning
}
// Reconfigure2 - safely apply and write new configuration and restart
func (s *Server) Reconfigure2(newconf FilteringConfig) error {
s.Lock()
s.conf.FilteringConfig = newconf
s.Unlock()
s.conf.ConfigModified()
// Restart - restart server
func (s *Server) Restart() error {
s.Lock()
defer s.Unlock()
log.Print("Start reconfiguring the server")

View File

@ -63,7 +63,15 @@ func (s *Server) handleSetUpstreamConfig(w http.ResponseWriter, r *http.Request)
newconf.BootstrapDNS = req.BootstrapDNS
newconf.AllServers = req.AllServers
err = s.Reconfigure2(newconf)
s.Lock()
s.conf.UpstreamDNS = newconf.UpstreamDNS
s.conf.BootstrapDNS = newconf.BootstrapDNS
s.conf.AllServers = newconf.AllServers
s.Unlock()
s.conf.ConfigModified()
err = s.Restart()
if err != nil {
httpError(r, w, http.StatusInternalServerError, "%s", err)
return

View File

@ -186,6 +186,8 @@ func handleBlockedServicesSet(w http.ResponseWriter, r *http.Request) {
httpError(w, http.StatusBadRequest, "%s", err)
return
}
httpOK(r, w)
}
// RegisterBlockedServicesHandlers - register HTTP handlers

View File

@ -112,6 +112,10 @@ type dnsConfig struct {
FilteringEnabled bool `yaml:"filtering_enabled"` // whether or not use filter lists
FiltersUpdateIntervalHours uint32 `yaml:"filters_update_interval"` // time period to update filters (in hours)
DnsfilterConf dnsfilter.Config `yaml:",inline"`
// Names of services to block (globally).
// Per-client settings can override this configuration.
BlockedServices []string `yaml:"blocked_services"`
}
type tlsConfigSettings struct {

View File

@ -21,6 +21,9 @@ func returnOK(w http.ResponseWriter) {
}
}
func httpOK(r *http.Request, w http.ResponseWriter) {
}
func httpError(w http.ResponseWriter, code int, format string, args ...interface{}) {
text := fmt.Sprintf(format, args...)
log.Info(text)