forked from bitlair/aruba_graphite
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy patharuba_bssid_list.php
51 lines (50 loc) · 1.5 KB
/
aruba_bssid_list.php
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
<?php
/**
* Get comma-seperated BSSID list from Aruba controllers and output to STDOUT
*
* @author: Arjan Koopen <[email protected]>
*/
include("common.php");
include("config.php");
foreach ($controllers as $c_name => $ip) {
/**
* AP name table
*/
$out = snmp2_real_walk($ip, $community, "1.3.6.1.4.1.14823.2.2.1.5.2.1.4.1.3");
$_ap_name = array();
foreach ($out as $key => $value) {
$tmp = explode(".",$key);
$a_key = array();
for ($i = $snmp_base; $i < count($tmp); $i++) {
$a_key[] = $tmp[$i];
}
$a_key = implode(".",$a_key);
$_ap_name[$a_key] = sanatize_snmp("STRING", $value);
}
/**
* BSSID to ESSID table
*/
$out = snmp2_real_walk($ip, $community, "1.3.6.1.4.1.14823.2.2.1.5.2.1.7.1.2");
$_bssid_essid = array();
foreach ($out as $key => $value) {
$tmp = explode(".",$key);
$b_key = array();
$bssid = array();
$ap_name = "";
$j = 1;
for ($i = $snmp_base; $i < count($tmp); $i++) {
$b_key[] = $tmp[$i];
if ($j == 6) {
$ap_name = $_ap_name[implode(".",$b_key)];
}
elseif ($j >= 8) {
$oct = dechex($tmp[$i]);
if (strlen($oct) == 1) $oct = "0" . $oct;
$bssid[] = $oct;
}
$j++;
}
echo implode(":", $bssid). ";{$ap_name}\n";
}
}
?>