load() {
return Promise.all([
callNetworkInterfaceDump(),
- L.resolveDefault(fs.exec('/sbin/ip', [ '-4', 'neigh', 'show' ]), {}),
- L.resolveDefault(fs.exec('/sbin/ip', [ '-4', 'route', 'show', 'table', 'all' ]), {}),
- L.resolveDefault(fs.exec('/sbin/ip', [ '-4', 'rule', 'show' ]), {}),
- L.resolveDefault(fs.exec('/sbin/ip', [ '-6', 'neigh', 'show' ]), {}),
- L.resolveDefault(fs.exec('/sbin/ip', [ '-6', 'route', 'show', 'table', 'all' ]), {}),
- L.resolveDefault(fs.exec('/sbin/ip', [ '-6', 'rule', 'show' ]), {}),
+ L.resolveDefault(fs.exec('/sbin/ip', [ '-4', 'neigh', 'show' ]), { stdout: '' }),
+ L.resolveDefault(fs.exec('/sbin/ip', [ '-4', 'route', 'show', 'table', 'all' ]), { stdout: '' }),
+ L.resolveDefault(fs.exec('/sbin/ip', [ '-4', 'rule', 'show' ]), { stdout: '' }),
+ L.resolveDefault(fs.exec('/sbin/ip', [ '-6', 'neigh', 'show' ]), { stdout: '' }),
+ L.resolveDefault(fs.exec('/sbin/ip', [ '-6', 'route', 'show', 'table', 'all' ]), { stdout: '' }),
+ L.resolveDefault(fs.exec('/sbin/ip', [ '-6', 'rule', 'show' ]), { stdout: '' }),
L.hasSystemFeature('ufpd') ? callUfpList() : null
]);
},
},
parseNeighbs(nbs, macs, networks, v6) {
+ if (!nbs) return [];
const res = [];
for (const line of nbs.trim().split(/\n/)) {
},
parseRoutes(routes, networks, v6) {
+ if (!routes) return [];
const res = [];
for (const line of routes.trim().split(/\n/)) {
return res;
},
- parseRules: rules => rules.trim().split('\n').map(l => {
+ parseRules: rules => rules?.trim()?.split('\n')?.map(l => {
const [, prio=null, rule=null] = l.match(/^(\d+):\s+(.+)$/) || [];
return [prio, rule];
}),