Browse Source

Fix: FakeDNS prints error with empty config (#955)

Loyalsoldier 4 years ago
parent
commit
0d4479a72a
1 changed files with 8 additions and 4 deletions
  1. 8 4
      app/dns/fakedns/fake.go

+ 8 - 4
app/dns/fakedns/fake.go

@@ -43,7 +43,10 @@ func (*Holder) Type() interface{} {
 }
 }
 
 
 func (fkdns *Holder) Start() error {
 func (fkdns *Holder) Start() error {
-	return fkdns.initializeFromConfig()
+	if fkdns.config != nil && fkdns.config.IpPool != "" && fkdns.config.LruSize != 0 {
+		return fkdns.initializeFromConfig()
+	}
+	return nil
 }
 }
 
 
 func (fkdns *Holder) Close() error {
 func (fkdns *Holder) Close() error {
@@ -184,9 +187,10 @@ func (h *HolderMulti) Type() interface{} {
 
 
 func (h *HolderMulti) Start() error {
 func (h *HolderMulti) Start() error {
 	for _, v := range h.holders {
 	for _, v := range h.holders {
-		err := v.Start()
-		if err != nil {
-			return newError("Cannot start all fake dns pools").Base(err)
+		if v.config != nil && v.config.IpPool != "" && v.config.LruSize != 0 {
+			if err := v.Start(); err != nil {
+				return newError("Cannot start all fake dns pools").Base(err)
+			}
 		}
 		}
 	}
 	}
 	return nil
 	return nil