mirror of
https://github.com/librenms/librenms.git
synced 2024-10-07 16:52:45 +00:00
Fix timos mpls, add checks (#15430)
This commit is contained in:
@@ -150,11 +150,11 @@ class Timos extends OS implements MplsDiscovery, MplsPolling, WirelessPowerDisco
|
|||||||
foreach ($mplsLspCache as $key => $value) {
|
foreach ($mplsLspCache as $key => $value) {
|
||||||
[$vrf_oid, $lsp_oid] = explode('.', $key);
|
[$vrf_oid, $lsp_oid] = explode('.', $key);
|
||||||
|
|
||||||
$mplsLspFromAddr = $value['vRtrMplsLspFromAddr'];
|
$mplsLspFromAddr = $value['vRtrMplsLspFromAddr'] ?? null;
|
||||||
if (isset($value['vRtrMplsLspNgFromAddr'])) {
|
if (isset($value['vRtrMplsLspNgFromAddr'])) {
|
||||||
$mplsLspFromAddr = long2ip(hexdec(str_replace(' ', '', $value['vRtrMplsLspNgFromAddr'])));
|
$mplsLspFromAddr = long2ip(hexdec(str_replace(' ', '', $value['vRtrMplsLspNgFromAddr'])));
|
||||||
}
|
}
|
||||||
$mplsLspToAddr = $value['vRtrMplsLspToAddr'];
|
$mplsLspToAddr = $value['vRtrMplsLspToAddr'] ?? null;
|
||||||
if (isset($value['vRtrMplsLspNgToAddr'])) {
|
if (isset($value['vRtrMplsLspNgToAddr'])) {
|
||||||
$mplsLspToAddr = long2ip(hexdec(str_replace(' ', '', $value['vRtrMplsLspNgToAddr'])));
|
$mplsLspToAddr = long2ip(hexdec(str_replace(' ', '', $value['vRtrMplsLspNgToAddr'])));
|
||||||
}
|
}
|
||||||
@@ -163,15 +163,15 @@ class Timos extends OS implements MplsDiscovery, MplsPolling, WirelessPowerDisco
|
|||||||
'vrf_oid' => $vrf_oid,
|
'vrf_oid' => $vrf_oid,
|
||||||
'lsp_oid' => $lsp_oid,
|
'lsp_oid' => $lsp_oid,
|
||||||
'device_id' => $this->getDeviceId(),
|
'device_id' => $this->getDeviceId(),
|
||||||
'mplsLspRowStatus' => $value['vRtrMplsLspRowStatus'],
|
'mplsLspRowStatus' => $value['vRtrMplsLspRowStatus'] ?? null,
|
||||||
'mplsLspLastChange' => round($value['vRtrMplsLspLastChange'] / 100),
|
'mplsLspLastChange' => round(($value['vRtrMplsLspLastChange'] ?? 0) / 100),
|
||||||
'mplsLspName' => $value['vRtrMplsLspName'],
|
'mplsLspName' => $value['vRtrMplsLspName'] ?? null,
|
||||||
'mplsLspAdminState' => $value['vRtrMplsLspAdminState'],
|
'mplsLspAdminState' => $value['vRtrMplsLspAdminState'] ?? null,
|
||||||
'mplsLspOperState' => $value['vRtrMplsLspOperState'],
|
'mplsLspOperState' => $value['vRtrMplsLspOperState'] ?? null,
|
||||||
'mplsLspFromAddr' => $mplsLspFromAddr,
|
'mplsLspFromAddr' => $mplsLspFromAddr ?? null,
|
||||||
'mplsLspToAddr' => $mplsLspToAddr,
|
'mplsLspToAddr' => $mplsLspToAddr ?? null,
|
||||||
'mplsLspType' => $value['vRtrMplsLspType'],
|
'mplsLspType' => $value['vRtrMplsLspType'] ?? null,
|
||||||
'mplsLspFastReroute' => $value['vRtrMplsLspFastReroute'],
|
'mplsLspFastReroute' => $value['vRtrMplsLspFastReroute'] ?? null,
|
||||||
]));
|
]));
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -230,22 +230,22 @@ class Timos extends OS implements MplsDiscovery, MplsPolling, WirelessPowerDisco
|
|||||||
$ip = long2ip(hexdec(str_replace(' ', '', $value['sdpFarEndInetAddress'])));
|
$ip = long2ip(hexdec(str_replace(' ', '', $value['sdpFarEndInetAddress'])));
|
||||||
} else {
|
} else {
|
||||||
//Fixme implement ipv6 conversion
|
//Fixme implement ipv6 conversion
|
||||||
$ip = $value['sdpFarEndInetAddress'];
|
$ip = $value['sdpFarEndInetAddress'] ?? null;
|
||||||
}
|
}
|
||||||
$sdps->push(new MplsSdp([
|
$sdps->push(new MplsSdp([
|
||||||
'sdp_oid' => $value['sdpId'],
|
'sdp_oid' => $value['sdpId'],
|
||||||
'device_id' => $this->getDeviceId(),
|
'device_id' => $this->getDeviceId(),
|
||||||
'sdpRowStatus' => $value['sdpRowStatus'],
|
'sdpRowStatus' => $value['sdpRowStatus'] ?? null,
|
||||||
'sdpDelivery' => $value['sdpDelivery'],
|
'sdpDelivery' => $value['sdpDelivery'] ?? null,
|
||||||
'sdpDescription' => $value['sdpDescription'],
|
'sdpDescription' => $value['sdpDescription'] ?? null,
|
||||||
'sdpAdminStatus' => $value['sdpAdminStatus'],
|
'sdpAdminStatus' => $value['sdpAdminStatus'] ?? null,
|
||||||
'sdpOperStatus' => $value['sdpOperStatus'],
|
'sdpOperStatus' => $value['sdpOperStatus'] ?? null,
|
||||||
'sdpAdminPathMtu' => $value['sdpAdminPathMtu'],
|
'sdpAdminPathMtu' => $value['sdpAdminPathMtu'] ?? null,
|
||||||
'sdpOperPathMtu' => $value['sdpOperPathMtu'],
|
'sdpOperPathMtu' => $value['sdpOperPathMtu'] ?? null,
|
||||||
'sdpLastMgmtChange' => round($value['sdpLastMgmtChange'] / 100),
|
'sdpLastMgmtChange' => round(($value['sdpLastMgmtChange'] ?? 0) / 100),
|
||||||
'sdpLastStatusChange' => round($value['sdpLastStatusChange'] / 100),
|
'sdpLastStatusChange' => round(($value['sdpLastStatusChange'] ?? 0) / 100),
|
||||||
'sdpActiveLspType' => $value['sdpActiveLspType'],
|
'sdpActiveLspType' => $value['sdpActiveLspType'] ?? null,
|
||||||
'sdpFarEndInetAddressType' => $value['sdpFarEndInetAddressType'],
|
'sdpFarEndInetAddressType' => $value['sdpFarEndInetAddressType'] ?? null,
|
||||||
'sdpFarEndInetAddress' => $ip,
|
'sdpFarEndInetAddress' => $ip,
|
||||||
]));
|
]));
|
||||||
}
|
}
|
||||||
@@ -488,11 +488,11 @@ class Timos extends OS implements MplsDiscovery, MplsPolling, WirelessPowerDisco
|
|||||||
foreach ($mplsLspCache as $key => $value) {
|
foreach ($mplsLspCache as $key => $value) {
|
||||||
[$vrf_oid, $lsp_oid] = explode('.', $key);
|
[$vrf_oid, $lsp_oid] = explode('.', $key);
|
||||||
|
|
||||||
$mplsLspFromAddr = $value['vRtrMplsLspFromAddr'];
|
$mplsLspFromAddr = $value['vRtrMplsLspFromAddr'] ?? null;
|
||||||
if (isset($value['vRtrMplsLspNgFromAddr'])) {
|
if (isset($value['vRtrMplsLspNgFromAddr'])) {
|
||||||
$mplsLspFromAddr = long2ip(hexdec(str_replace(' ', '', $value['vRtrMplsLspNgFromAddr'])));
|
$mplsLspFromAddr = long2ip(hexdec(str_replace(' ', '', $value['vRtrMplsLspNgFromAddr'])));
|
||||||
}
|
}
|
||||||
$mplsLspToAddr = $value['vRtrMplsLspToAddr'];
|
$mplsLspToAddr = $value['vRtrMplsLspToAddr'] ?? null;
|
||||||
if (isset($value['vRtrMplsLspNgToAddr'])) {
|
if (isset($value['vRtrMplsLspNgToAddr'])) {
|
||||||
$mplsLspToAddr = long2ip(hexdec(str_replace(' ', '', $value['vRtrMplsLspNgToAddr'])));
|
$mplsLspToAddr = long2ip(hexdec(str_replace(' ', '', $value['vRtrMplsLspNgToAddr'])));
|
||||||
}
|
}
|
||||||
|
Reference in New Issue
Block a user