From 760ac61e5ba7580c5829207bf6111980f295e8bd Mon Sep 17 00:00:00 2001 From: Tom Laermans Date: Sun, 21 Feb 2010 14:54:02 +0000 Subject: [PATCH] patch from jduggan to detect mac address changes git-svn-id: http://www.observium.org/svn/observer/trunk@918 61d68cd4-352d-0410-923a-c4978735b2b8 --- includes/discovery/arp-table.inc.php | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/includes/discovery/arp-table.inc.php b/includes/discovery/arp-table.inc.php index 82dea9945..18249e50f 100644 --- a/includes/discovery/arp-table.inc.php +++ b/includes/discovery/arp-table.inc.php @@ -35,6 +35,12 @@ $mac_table[$interface_id][$clean_mac] = 1; if(mysql_result(mysql_query("SELECT COUNT(*) from ipv4_mac WHERE interface_id = '".$interface['interface_id']."' AND ipv4_address = '$ip'"),0)) { $sql = "UPDATE `ipv4_mac` SET `mac_address` = '$clean_mac' WHERE interface_id = '".$interface['interface_id']."' AND ipv4_address = '$ip'"; + $old_mac = mysql_fetch_row(mysql_query("SELECT mac_address from ipv4_mac WHERE ipv4_address='$ip'")); + if($clean_mac != $old_mac[0]) + { + if ($debug) { echo "Changed mac address for $ip from $old_mac[0] to $clean_mac\n"; } + log_event("MAC change: $ip : " . $old_mac[0] . " -> $clean_mac", $device, "interface", $interface['interface_id']); + } mysql_query($sql); echo("."); } else {