Executable
This commit is contained in:
parent
5afc60b635
commit
6cf0950732
50
wol.php
Normal file
50
wol.php
Normal file
@ -0,0 +1,50 @@
|
||||
<?php
|
||||
|
||||
// PHP-Wake-On-LAN
|
||||
// Par SVNET Libre
|
||||
|
||||
// GNU GENERAL PUBLIC LICENSE
|
||||
// Version 2, June 1991
|
||||
|
||||
// Copyright (C) 1989, 1991 Free Software Foundation, Inc., <http://fsf.org/>
|
||||
// 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
|
||||
// Everyone is permitted to copy and distribute verbatim copies
|
||||
// of this license document, but changing it is not allowed.
|
||||
|
||||
// La suite : https://git.framasoft.org/svnet/PHP-WOL/blob/master/LICENSE
|
||||
|
||||
$addrmac=$_GET['mac'];
|
||||
|
||||
//Préparation du lien pour atteindre l'ordinateur distant
|
||||
class Wol{
|
||||
private $nic;
|
||||
public function wake($mac){
|
||||
$host="udp://".$_GET['host'];
|
||||
$this->nic = fsockopen("$host", 9);
|
||||
if( !$this->nic ){
|
||||
fclose($this->nic);
|
||||
return false;
|
||||
}
|
||||
else{
|
||||
fwrite($this->nic, $this->pacquet($mac));
|
||||
fclose($this->nic);
|
||||
return true;
|
||||
}
|
||||
}
|
||||
|
||||
//Préparation des paquets à envoyer
|
||||
private function pacquet($Mac){
|
||||
$packet = "";
|
||||
for($i = 0; $i < 6; $i++){$packet .= chr(0xFF);}
|
||||
for ($j = 0; $j < 16; $j++){
|
||||
for($i = 0; $i < 12; $i=$i + 2){$packet .= chr(hexdec(substr($Mac, $i, 2)));}
|
||||
}
|
||||
return $packet;
|
||||
}
|
||||
}
|
||||
|
||||
$wol = new Wol();
|
||||
// Ordinateur réveilles-toi !!
|
||||
$wol->wake($addrmac);
|
||||
|
||||
?>
|
Loading…
x
Reference in New Issue
Block a user