Browse Source

Allow A/AAAA records without a weight

Ask Bjørn Hansen 12 years ago
parent
commit
381d230251
2 changed files with 11 additions and 8 deletions
  1. 10 7
      config.go
  2. 1 1
      dns/test.example.com.json

+ 10 - 7
config.go

@@ -235,14 +235,17 @@ func setupZoneData(data map[string]interface{}, Zone *Zone) {
 					rec := records[rType][i].([]interface{})
 					ip := rec[0].(string)
 					var err error
-					switch rec[1].(type) {
-					case string:
-						record.Weight, err = strconv.Atoi(rec[1].(string))
-						if err != nil {
-							panic("Error converting weight to integer")
+
+					if len(rec) > 1 {
+						switch rec[1].(type) {
+						case string:
+							record.Weight, err = strconv.Atoi(rec[1].(string))
+							if err != nil {
+								panic("Error converting weight to integer")
+							}
+						case float64:
+							record.Weight = int(rec[1].(float64))
 						}
-					case float64:
-						record.Weight = int(rec[1].(float64))
 					}
 					switch dnsType {
 					case dns.TypeA:

+ 1 - 1
dns/test.example.com.json

@@ -19,7 +19,7 @@
       "max_hosts": "1"
     },
     "bar": { 
-      "a": [ [ "192.168.1.2", 10 ] ],
+      "a": [ [ "192.168.1.2" ] ],
       "ttl": "601"
     },
     "bar.no": { "a": [] },