From 98a64a3d34705beb0d8c4c5d33b71f21177421d6 Mon Sep 17 00:00:00 2001 From: AJ ONeal Date: Tue, 30 Jan 2018 12:03:25 -0700 Subject: [PATCH] WIP get peer ns addresses --- lib/public/index.html | 5 ++++- lib/public/js/app.js | 2 ++ lib/store.json.js | 22 +++++++++++++++++++--- 3 files changed, 25 insertions(+), 4 deletions(-) diff --git a/lib/public/index.html b/lib/public/index.html index 147dbb5..0ab9fc1 100644 --- a/lib/public/index.html +++ b/lib/public/index.html @@ -24,7 +24,10 @@

Peers:

diff --git a/lib/public/js/app.js b/lib/public/js/app.js index 562d923..9232d4a 100644 --- a/lib/public/js/app.js +++ b/lib/public/js/app.js @@ -94,6 +94,8 @@ console.log($qs('.js-peer-name', el)); $qs('.js-peer-name', el).innerText = peer.name; $qs('.js-peer-name', el).dataset.id = peer.name; + $qs('.js-peer', el).dataset.id = peer.name; + $qs('.js-peer-address', el).innerText = peer.address || ''; console.log(el.innerHTML); tpl += el.innerHTML; console.log(tpl); diff --git a/lib/store.json.js b/lib/store.json.js index e8bcc52..37b5ca7 100644 --- a/lib/store.json.js +++ b/lib/store.json.js @@ -116,9 +116,25 @@ module.exports.create = function (opts) { }; engine.peers = { all: function (cb) { - process.nextTick(function () { - cb(null, db.primaryNameservers); - }); + var dns = require('dns'); + var count = db.primaryNameservers.length; + function gotRecord() { + count -= 1; + if (!count) { + cb(null, db.primaryNameservers); + } + } + function getRecord(ns) { + dns.resolve4(ns.name, function (err, addresses) { + console.log('ns addresses:'); + console.log(addresses); + if (err) { console.error(err); gotRecord(); return; } + ns.type = 'A'; + ns.address = addresses[0]; + gotRecord(); + }); + } + db.primaryNameservers.forEach(getRecord); } }; engine.zones = {