Back To Admin Page | Refresh This Page

Wireless (WiFi) Configuration

Generate WiFi Info   Configure Client  
'; switch($page) { case "wlan0_info": exec('sudo /usr/bin/wicd-cli -d -y'); exec('/sbin/ifconfig wlan0',$return); $strFlan0 = implode(" ",$return); $strFlan0 = preg_replace('/\s\s+/', ' ', $strWlan0); exec('/sbin/iwconfig wlan0',$return); $strWlan0 = implode(" ",$return); $strWlan0 = preg_replace('/\s\s+/', ' ', $strWlan0); 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+ \(\d+.\d+ [K|M|G]iB\))/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.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]+\/[0-9]+)/i',$strWlan0,$result); $strLinkQuality = $result[1]; preg_match('/Signal Level=(-[0-9]+ dBm)/i',$strWlan0,$result); $strSignalLevel = $result[1]; if(strpos($strWlan0, "UP") !== false && strpos($strWlan0, "RUNNING") !== false) { $strStatus = 'Interface is up'; } else { $strStatus = 'Interface is down'; } if(isset($_GET['ifdown_wlan0'])) { exec('ifconfig wlan0 | grep -i running | wc -l',$test); if($test[0] == 1) { exec('/sbin/ifdown wlan0',$return); } else { echo 'Interface already down'; } } elseif(isset($_GET['ifup_wlan0'])) { exec('ifconfig wlan0 | grep -i running | wc -l',$test); if($test[0] == 0) { exec('/sbin/ifup wlan0',$return); } else { echo 'Interface already up'; } } echo '
Wireless Information and Statistics
Interface Information
Interface Name : wlan0
Interface Status : ' . $strStatus . '
IP Address : ' . $strIPAddress . '
Subnet Mask : ' . $strNetMask . '
Mac Address : ' . $strHWAddress . '
Interface Statistics
Received Packets : ' . $strRxPackets . '
Received Bytes : ' . $strRxBytes . '

Transferred Packets : ' . $strTxPackets . '
Transferred Bytes : ' . $strTxBytes . '
Wireless Information
Connected To : ' . $strSSID . '
AP Mac Address : ' . $strBSSID . '
Bitrate : ' . $strBitrate . '
Transmit Power : ' . $strTxPower .'
Link Quality : ' . $strLinkQuality . '
Signal Level : ' . $strSignalLevel . '
Information provided by ifconfig and iwconfig
'; break; case "wpa_conf": exec('/bin/cat /etc/wpa_supplicant/wpa_supplicant.conf',$return); $ssid = array(); $psk = array(); foreach($return as $a) { if(preg_match('/SSID/i',$a)) { $arrssid = explode("=",$a); $ssid[] = str_replace('"','',$arrssid[1]); } if(preg_match('/\#psk/i',$a)) { $arrpsk = explode("=",$a); $psk[] = str_replace('"','',$arrpsk[1]); } } $numSSIDs = count($ssid); $output = '
'; for($ssids = 0; $ssids < $numSSIDs; $ssids++) { $output .= '
Network '.$ssids.'
SSID :
PASSWD :
'; } $output .= '
'; echo $output; echo ''; if(isset($_POST['SaveWPAPSKSettings'])) { $config = 'ctrl_interface=DIR=/var/run/wpa_supplicant GROUP=netdev update_config=1 '; $networks = $_POST['Networks']; for($x = 0; $x < $networks; $x++) { $network = ''; $ssid = escapeshellarg($_POST['ssid'.$x]); $psk = escapeshellarg($_POST['psk'.$x]); exec('wpa_passphrase '.$ssid. ' ' . $psk,$network); foreach($network as $b) { $config .= "$b "; } } exec("echo '$config' > /tmp/wifidata",$return); system('sudo /bin/cp /tmp/wifidata /etc/wpa_supplicant/wpa_supplicant.conf',$returnval); if($returnval == 0) { echo "Wifi Settings Updated Successfully"; } else { echo "Wifi settings failed to be updated"; } } elseif(isset($_POST['Connect'])) { echo "Got here "; } elseif(isset($_POST['Scan'])) { $return = ''; exec('sudo /usr/bin/wicd-cli -y -S -l',$return); for($shift = 0; $shift < 1; $shift++ ) { array_shift($return); } echo ""; echo ""; foreach($return as $network) { #echo "network= $network
"; $arrNetwork = preg_split("/[\t]+/",$network); $bssid = $arrNetwork[1]; #$channel = ConvertToChannel($arrNetwork[2]); $channel = ($arrNetwork[2]); $ssid = $arrNetwork[3]; echo ''; } echo "

SSID

Channel

BSSID

Connect

' . $ssid . '' . $channel . '' . $bssid . '
"; } break; } ?>