|
|
@ -32,7 +32,9 @@ module.exports.create = function (deps, conf) { |
|
|
|
throw new Error('failed to lookup IP for tunnel domain "' + tunnelDomain + '"'); |
|
|
|
} |
|
|
|
|
|
|
|
await dnsCtrl.setDeviceAddress(dnsSession, addrList[0], domainList); |
|
|
|
if (!mod.disabled) { |
|
|
|
await dnsCtrl.setDeviceAddress(dnsSession, addrList[0], domainList); |
|
|
|
} |
|
|
|
} catch (err) { |
|
|
|
console.log('error starting tunnel for', domainList.join(', ')); |
|
|
|
console.log(err); |
|
|
@ -207,8 +209,11 @@ module.exports.create = function (deps, conf) { |
|
|
|
|
|
|
|
// Then remove DNS records for the domains that we are no longer responsible for.
|
|
|
|
await Promise.all(Object.values(prevMods).map(function ({mod, domainList}) { |
|
|
|
// If the module was disabled before there should be any records that we need to clean up
|
|
|
|
if (mod.disabled) { return; } |
|
|
|
|
|
|
|
var oldDomains; |
|
|
|
if (!curMods[mod.id] || mod.tokenId !== curMods[mod.id].mod.tokenId) { |
|
|
|
if (!curMods[mod.id] || curMods[mod.id].disabled || mod.tokenId !== curMods[mod.id].mod.tokenId) { |
|
|
|
oldDomains = domainList.slice(); |
|
|
|
} else { |
|
|
|
oldDomains = domainList.filter(function (domain) { |
|
|
@ -232,6 +237,9 @@ module.exports.create = function (deps, conf) { |
|
|
|
|
|
|
|
// And add DNS records for any newly added domains.
|
|
|
|
await Promise.all(Object.values(curMods).map(function ({mod, domainList}) { |
|
|
|
// Don't set any new records if the module has been disabled.
|
|
|
|
if (mod.disabled) { return; } |
|
|
|
|
|
|
|
var newDomains; |
|
|
|
if (!prevMods[mod.id] || mod.tokenId !== prevMods[mod.id].mod.tokenId) { |
|
|
|
newDomains = domainList.slice(); |
|
|
|