Browse Source

maj wol.php

master
Samuel VERMEULEN 5 years ago
parent
commit
49249c30cb
  1. 57
      wol.php

57
wol.php

@ -1,44 +1,33 @@
<?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;
}
}
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)));}
}
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;
}
}

Loading…
Cancel
Save