From 2d180b1f16289217b1ef11d2e39675b52929f706 Mon Sep 17 00:00:00 2001 From: Oliver Gorwits Date: Thu, 22 May 2014 16:52:20 +0100 Subject: [PATCH] fix undefined key in Discover --- Netdisco/Changes | 1 + Netdisco/lib/App/Netdisco/Core/Discover.pm | 4 ++-- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/Netdisco/Changes b/Netdisco/Changes index daa5af2d..4f74fabf 100644 --- a/Netdisco/Changes +++ b/Netdisco/Changes @@ -3,6 +3,7 @@ [BUG FIXES] * Unrouted VLAN interfaces have numbers on Cisco - ignore them + * fix undefined key in Discover 2.027005_001 - 2014-05-21 diff --git a/Netdisco/lib/App/Netdisco/Core/Discover.pm b/Netdisco/lib/App/Netdisco/Core/Discover.pm index 364b8ca9..109c56a9 100644 --- a/Netdisco/lib/App/Netdisco/Core/Discover.pm +++ b/Netdisco/lib/App/Netdisco/Core/Discover.pm @@ -652,13 +652,13 @@ sub store_neighbors { my $c_cap = $snmp->c_cap; foreach my $entry (List::MoreUtils::uniq( (keys %$c_ip), (keys %$c_cap) )) { - my $port = $interfaces->{ $c_if->{$entry} }; - if (!defined $port) { + if (!defined $c_if->{$entry} or !defined $interfaces->{ $c_if->{$entry} }) { debug sprintf ' [%s] neigh - port for IID:%s not resolved, skipping', $device->ip, $entry; next; } + my $port = $interfaces->{ $c_if->{$entry} }; my $portrow = schema('netdisco')->resultset('DevicePort') ->single({ip => $device->ip, port => $port});