diff options
author | Evgeny <ey@tm-k.com> | 2010-11-24 01:06:06 -0500 |
---|---|---|
committer | Bill Marquette <bill.marquette@gmail.com> | 2011-05-14 11:23:05 -0500 |
commit | 57f2840e1faacf50b1a93d7954bb576eca77475b (patch) | |
tree | 6a688cb6a2e1ba3552c38c071201b44d59a4cb29 /usr | |
parent | 92ca10c1f6657ac1911c5eaa0fea97bdd948466f (diff) | |
download | pfsense-57f2840e1faacf50b1a93d7954bb576eca77475b.zip pfsense-57f2840e1faacf50b1a93d7954bb576eca77475b.tar.gz |
MAC prefix to vendor resolution at Status->Interfaces, Status->DHCP leases, Diagnostics->ARP table
Diffstat (limited to 'usr')
-rwxr-xr-x | usr/local/www/diag_arp.php | 10 | ||||
-rwxr-xr-x | usr/local/www/status_dhcp_leases.php | 18 | ||||
-rwxr-xr-x | usr/local/www/status_interfaces.php | 9 |
3 files changed, 32 insertions, 5 deletions
diff --git a/usr/local/www/diag_arp.php b/usr/local/www/diag_arp.php index 9df8be1..3adc2a8 100755 --- a/usr/local/www/diag_arp.php +++ b/usr/local/www/diag_arp.php @@ -288,6 +288,8 @@ foreach ($data as &$entry) { // Sort the data alpha first $data = msort($data, "dnsresolve"); +// Load MAC-Manufacturer table +$mac_man = load_mac_manufacturer_table(); ?> <table width="100%" border="0" cellpadding="0" cellspacing="0"> <tr> @@ -303,7 +305,13 @@ $data = msort($data, "dnsresolve"); <?php foreach ($data as $entry): ?> <tr> <td class="listlr"><?=$entry['ip'];?></td> - <td class="listr"><?=$entry['mac'];?></td> + <td class="listr"> + <?php + $mac=$entry['mac']; + $mac_hi = strtoupper($mac[0] . $mac[1] . $mac[3] . $mac[4] . $mac[6] . $mac[7]); + if(isset($mac_man[$mac_hi])){ print "<span title=\"$mac\">{$mac_man[$mac_hi]}</span>"; } + else{ print $mac; } + ?> <td class="listr"> <?php echo str_replace("Z_ ", "", $entry['dnsresolve']); diff --git a/usr/local/www/status_dhcp_leases.php b/usr/local/www/status_dhcp_leases.php index 39ed024..007c1a8 100755 --- a/usr/local/www/status_dhcp_leases.php +++ b/usr/local/www/status_dhcp_leases.php @@ -324,6 +324,8 @@ foreach ($pools as $data) { <td class="listhdrr"><a href="#"><?=gettext("Lease Type"); ?></a></td> </tr> <?php +// Load MAC-Manufacturer table +$mac_man = load_mac_manufacturer_table(); foreach ($leases as $data) { if (($data['act'] == "active") || ($data['act'] == "static") || ($_GET['all'] == 1)) { if ($data['act'] != "active" && $data['act'] != "static") { @@ -357,10 +359,20 @@ foreach ($leases as $data) { } echo "<tr>\n"; echo "<td class=\"listlr\">{$fspans}{$data['ip']}{$fspane} </td>\n"; + $mac=$data['mac']; + $mac_hi = strtoupper($mac[0] . $mac[1] . $mac[3] . $mac[4] . $mac[6] . $mac[7]); if ($data['online'] != "online") { - echo "<td class=\"listr\">{$fspans}<a href=\"services_wol.php?if={$data['if']}&mac={$data['mac']}\" title=\"" . gettext("send Wake on LAN packet to this MAC address") ."\" onclick=\"return confirm('" . gettext("Send Wake on LAN packet to this MAC address?") . "')\">{$data['mac']}</a>{$fspane} </td>\n"; - } else { - echo "<td class=\"listr\">{$fspans}{$data['mac']}{$fspane} </td>\n"; + if(isset($mac_man[$mac_hi])){ // Manufacturer for this MAC is defined + echo "<td class=\"listr\">{$fspans}<a href=\"services_wol.php?if={$data['if']}&mac=$mac\" title=\"" . gettext("$mac - send Wake on LAN packet to this MAC address") ."\">{$mac_man[$mac_hi]}</a>{$fspane} </td>\n"; + }else{ + echo "<td class=\"listr\">{$fspans}<a href=\"services_wol.php?if={$data['if']}&mac={$data['mac']}\" title=\"" . gettext("send Wake on LAN packet to this MAC address") ."\">{$data['mac']}</a>{$fspane} </td>\n"; + } + }else{ + if(isset($mac_man[$mac_hi])){ // Manufacturer for this MAC is defined + echo "<td class=\"listr\">{$fspans}<span title=\"$mac\">{$mac_man[$mac_hi]}</span>{$fspane} </td>\n"; + }else{ + echo "<td class=\"listr\">{$fspans}{$data['mac']}{$fspane} </td>\n"; + } } echo "<td class=\"listr\">{$fspans}" . htmlentities($data['hostname']) . "{$fspane} </td>\n"; if ($data['type'] != "static") { diff --git a/usr/local/www/status_interfaces.php b/usr/local/www/status_interfaces.php index 266d36b..6c98a34 100755 --- a/usr/local/www/status_interfaces.php +++ b/usr/local/www/status_interfaces.php @@ -68,6 +68,8 @@ include("head.inc"); $ifdescrs = get_configured_interface_with_descr(false, true); foreach ($ifdescrs as $ifdescr => $ifname): $ifinfo = get_interface_info($ifdescr); + // Load MAC-Manufacturer table + $mac_man = load_mac_manufacturer_table(); ?> <?php if ($i): ?> <tr> @@ -175,7 +177,12 @@ include("head.inc"); <tr> <td width="22%" class="vncellt"><?=gettext("MAC address");?></td> <td width="78%" class="listr"> - <?=htmlspecialchars($ifinfo['macaddr']);?> + <?php + $mac=$ifinfo['macaddr']; + $mac_hi = strtoupper($mac[0] . $mac[1] . $mac[3] . $mac[4] . $mac[6] . $mac[7]); + if(isset($mac_man[$mac_hi])){ print "<span title=\"$mac\">" . htmlspecialchars($mac_man[$mac_hi]); print "</span>"; } + else {print htmlspecialchars($mac);} + ?> </td> </tr> <?php endif; if ($ifinfo['status'] != "down"): ?> |