Added try/catch and metadata on WoL

Bryan Roe committed Jun 25, 2020 at 19:14 UTC 2251beccf6d086613999aae8579eec29a5752f29
1 file changed +20 -9
agents/meshcore.js
+20 -9
@@ -650,16 +650,27 @@ function createMeshCore(agent) {
650 for (var x = 1; x <= 16; ++x) { magic += hexMac; }
651 var magicbin = Buffer.from(magic, 'hex');
652
653 - for (var adapter in interfaces) {
654 - if (interfaces.hasOwnProperty(adapter)) {
655 - for (var i = 0; i < interfaces[adapter].length; ++i) {
653 + for (var adapter in interfaces)
654 + {
655 + if (interfaces.hasOwnProperty(adapter))
656 + {
657 + for (var i = 0; i < interfaces[adapter].length; ++i)
658 + {
659 var addr = interfaces[adapter][i];
657 - if ((addr.family == 'IPv4') && (addr.mac != '00:00:00:00:00:00')) {
658 - var socket = require('dgram').createSocket({ type: 'udp4' });
659 - socket.bind({ address: addr.address });
660 - socket.setBroadcast(true);
661 - socket.send(magicbin, 7, '255.255.255.255');
662 - count++;
660 + if ((addr.family == 'IPv4') && (addr.mac != '00:00:00:00:00:00'))
661 + {
662 + try
663 + {
664 + var socket = require('dgram').createSocket({ type: 'udp4' });
665 + socket.bind({ address: addr.address });
666 + socket.setBroadcast(true);
667 + socket.send(magicbin, 7, '255.255.255.255');
668 + socket.descriptorMetadata = 'WoL (' + addr.address + ' => ' + hexMac + ')';
669 + count++;
670 + }
671 + catch(ee)
672 + {
673 + }
674 }
675 }
676 }