Andrew Boyson / web

Dependents:   oldheating gps motorhome heating

Revision:
147:ea6f647725a1
Parent:
146:6bc151bd7063
Child:
148:3d685db9fdd3
--- a/base/net/web-net-script.js	Mon Jan 04 16:09:03 2021 +0000
+++ b/base/net/web-net-script.js	Sun Jan 10 11:53:12 2021 +0000
@@ -2,6 +2,7 @@
 'use strict';
 
 let mac = '';
+let nr  = '';
 let tcp = '';
 let dns = '';
 let a4s = null;
@@ -52,31 +53,52 @@
     let minutes  = parseInt(fields[1], 16) / 1000 / 60;
     dns += Math.floor(minutes).toString().padStart(4, ' ');
     dns += ' ';
+    let addrType = fields[2];
+    switch (addrType)
+    {
+        case '4': dns += '   A'; break;
+        case '6': dns += 'AAAA'; break;
+        default:  dns += addrType; break;
+    }
+    dns += ' ';
     let addr = '';
     let mac = '';
-    if (fields[2].substr( 0, 2) === '00') //Is empty or IP4
+    switch (addrType)
     {
-        if (fields[2].substr(24, 2) === '00') //Is empty
+        case '4':
+            addr = Net.makeIp4(fields[3]);
+            if (a4s.has(addr)) mac = a4s.get(addr);
+            break;
+        case '6':
+            addr = Net.makeIp6(fields[3]);
+            if (a6s.has(addr)) mac = a6s.get(addr);
+            break;
+    }
+    /*
+    if (fields[3].substr( 0, 2) === '00') //Is empty or IP4
+    {
+        if (fields[3].substr(24, 2) === '00') //Is empty
         {
             addr = '';
         }
         else //Is Ip4
         {
-            addr = Net.makeIp4Rev(fields[2].substr(24, 8));
+            addr = Net.makeIp4Rev(fields[3].substr(24, 8));
             if (a4s.has(addr)) mac = a4s.get(addr);
         }
     }
     else //Is IP6
     {
-        addr = Net.makeIp6(fields[2]);
+        addr = Net.makeIp6(fields[3]);
         if (a6s.has(addr)) mac = a6s.get(addr)
     }
+    */
     dns += addr.padEnd(40, ' ');
     
     dns += ' ';
-    dns += fields[3]; //DNS protocol used
+    dns += fields[4]; //DNS protocol used
     dns += ' ';
-    dns += fields[4].padEnd(20, ' '); //Resolved name
+    dns += fields[5].padEnd(32, ' '); //Resolved name
     
     if (mac != '')
     {
@@ -125,6 +147,7 @@
 {
     let lines = text.split('\n');
     mac = Net.makeMac(lines[ 0]);
+    nr  =             lines[ 1] ;
 }
 function parseTcpLines(text)
 {
@@ -161,6 +184,7 @@
 
     elem = Ajax.getElementOrNull('ajax-tcp'         ); if (elem) elem.textContent = tcp;
     elem = Ajax.getElementOrNull('ajax-mac'         ); if (elem) elem.textContent = mac;
+    elem = Ajax.getElementOrNull('ajax-nr'          ); if (elem) elem.value       = nr;
     elem = Ajax.getElementOrNull('ajax-dns'         ); if (elem) elem.textContent = dns;
 }