mirror of
https://github.com/StackExchange/dnscontrol.git
synced 2024-05-11 05:55:12 +00:00
Add SRV Record Type (#136)
* Add support for SRV records for NAMEDOTCOM and ROUTE53. * Improve docs * Rename RR() to ToRR(). * Rename RecordConfig Priority to MxPreference (affects json IR data)
This commit is contained in:
@ -173,6 +173,15 @@ function PTR(name, target) {
|
||||
}
|
||||
}
|
||||
|
||||
// SRV(name,priority,weight,port,target, recordModifiers...)
|
||||
function SRV(name, priority, weight, port, target) {
|
||||
checkArgs([_.isString, _.isNumber, _.isNumber, _.isNumber, _.isString], arguments, "SRV expects (name, priority, weight, port, target)")
|
||||
var mods = getModifiers(arguments,5)
|
||||
return function(d) {
|
||||
addRecordSRV(d, "SRV", name, priority, weight, port, target, mods)
|
||||
}
|
||||
}
|
||||
|
||||
// TXT(name,target, recordModifiers...)
|
||||
function TXT(name, target) {
|
||||
var mods = getModifiers(arguments,2)
|
||||
@ -312,6 +321,33 @@ function addRecord(d,type,name,target,mods) {
|
||||
return rec;
|
||||
}
|
||||
|
||||
function addRecordSRV(d,type,name,srvpriority,srvweight,srvport,target,mods) {
|
||||
var rec = {type: type, name: name, srvpriority: srvpriority, srvweight: srvweight, srvport: srvport, target: target, ttl:d.defaultTTL, meta:{}};
|
||||
// for each modifier, decide based on type:
|
||||
// - Function: call is with the record as the argument
|
||||
// - Object: merge it into the metadata
|
||||
// FIXME(tlim): Factor this code out to its own function.
|
||||
if (mods) {
|
||||
for (var i = 0; i< mods.length; i++) {
|
||||
var m = mods[i]
|
||||
if (_.isFunction(m)) {
|
||||
m(rec);
|
||||
} else if (_.isObject(m)) {
|
||||
//convert transforms to strings
|
||||
if (m.transform && _.isArray(m.transform)){
|
||||
m.transform = format_tt(m.transform)
|
||||
}
|
||||
_.extend(rec.meta,m);
|
||||
_.extend(rec.meta,m);
|
||||
} else {
|
||||
console.log("WARNING: Modifier type unsupported:", typeof m, "(Skipping!)");
|
||||
}
|
||||
}
|
||||
}
|
||||
d.records.push(rec);
|
||||
return rec;
|
||||
}
|
||||
|
||||
//ip conversion functions from http://stackoverflow.com/a/8105740/121660
|
||||
// via http://javascript.about.com/library/blipconvert.htm
|
||||
function IP(dot)
|
||||
|
Reference in New Issue
Block a user