/** * * @param string $input * @param string $string * @param int $offset * @param string $separator * @return $string */ function GetDistString( $input,$string,$offset,$separator ) { $string = substr( $input,strpos( $input,$string )+$offset,strpos( substr( $input,strpos( $input,$string )+$offset ), $separator ) ); return $string; } /** * * @param array $arrConfig * @return $config */ function ParseConfig( $arrConfig ) { $config = array(); foreach( $arrConfig as $line ) { if( $line[0] != "#" ) { $arrLine = explode( "=",$line ); $config[$arrLine[0]] = $arrLine[1]; } } return $config; } /** * * @param string $freq * @return $channel */ function ConvertToChannel( $freq ) { $base = 2412; $channel = 1; for( $x = 0; $x < 13; $x++ ) { if( $freq != $base ) { $base = $base + 5; $channel++; } else { return $channel; } } return "Invalid Channel"; } /** * Converts WPA security string to readable format * @param string $security * @return string */ function ConvertToSecurity( $security ) { switch( $security ) { case "[WPA2-PSK-CCMP][ESS]": return "WPA2-PSK (AES)"; break; case "[WPA2-PSK-TKIP][ESS]": return "WPA2-PSK (TKIP)"; break; case "[WPA2-PSK-CCMP][WPS][ESS]": return "WPA/WPA2-PSK (TKIP/AES)"; break; case "[WPA2-PSK-TKIP+CCMP][WPS][ESS]": return "WPA2-PSK (TKIP/AES) with WPS"; break; case "[WPA-PSK-TKIP+CCMP][WPS][ESS]": return "WPA-PSK (TKIP/AES) with WPS"; break; case "[WPA-PSK-TKIP][WPA2-PSK-CCMP][WPS][ESS]": return "WPA/WPA2-PSK (TKIP/AES)"; break; case "[WPA-PSK-TKIP+CCMP][WPA2-PSK-TKIP+CCMP][ESS]": return "WPA/WPA2-PSK (TKIP/AES)"; break; case "[WPA-PSK-TKIP][ESS]": return "WPA-PSK (TKIP)"; break; case "[WEP][ESS]": return "WEP"; break; } } /** * * */ function DisplayDashboard(){ exec( 'ifconfig wlan0', $return ); exec( 'iwconfig wlan0', $return ); $strWlan0 = implode( " ", $return ); $strWlan0 = preg_replace( '/\s\s+/', ' ', $strWlan0 ); // Parse results from ifconfig/iwconfig preg_match( '/HWaddr ([0-9a-f:]+)/i',$strWlan0,$result ); $strHWAddress = $result[1]; preg_match( '/inet addr:([0-9.]+)/i',$strWlan0,$result ); $strIPAddress = $result[1]; preg_match( '/Mask:([0-9.]+)/i',$strWlan0,$result ); $strNetMask = $result[1]; preg_match( '/RX packets:(\d+)/',$strWlan0,$result ); $strRxPackets = $result[1]; preg_match( '/TX packets:(\d+)/',$strWlan0,$result ); $strTxPackets = $result[1]; preg_match( '//RX bytes:(\d+)/i',$strWlan0,$result ); $strRxBytes = $result[1]; preg_match( '/TX Bytes:(\d+ \(\d+.\d+ [K|M|G]iB\))/i',$strWlan0,$result ); $strTxBytes = $result[1]; preg_match( '/ESSID:\"([a-zA-Z0-9\s]+)\"/i',$strWlan0,$result ); $strSSID = str_replace( '"','',$result[1] ); preg_match( '/Access Point: ([0-9a-f:]+)/i',$strWlan0,$result ); $strBSSID = $result[1]; preg_match( '/Bit Rate=([0-9]+ Mb\/s)/i',$strWlan0,$result ); $strBitrate = $result[1]; preg_match( '/Tx-Power=([0-9]+ dBm)/i',$strWlan0,$result ); $strTxPower = $result[1]; preg_match( '/Link Quality=([0-9]+)/i',$strWlan0,$result ); $strLinkQuality = $result[1]; preg_match( '/Signal Level=([0-9]+)/i',$strWlan0,$result ); $strSignalLevel = $result[1]; preg_match('/Frequency:(\d+.\d+ GHz)/i',$strWlan0,$result); $strFrequency = $result[1]; if(strpos( $strWlan0, "UP" ) !== false && strpos( $strWlan0, "RUNNING" ) !== false ) { $status = '