Código: Seleccionar todo
function checkData($user, $pass) {
global $cfgTimeOut;
global $nodv;
global $nodt;
$hosteset = "u24.eset.com";
$socketnod = fsockopen($hosteset, 80, $errno2, $errstr2, $cfgTimeOut);
$headerpath = "/download/engine3/em000_32_l0.nup"; //Si no se especificó un tipo de versión, este será el preterminado
if ($user == "" || $pass == "") return FALSE; //Si no nos mandaron un usuario o una contraseña, los datos son inválidos
if ($nodt == "ess") //Para Eset Smart Security
{
$headerpath = "/download/engine3ess/em010_32_n1.nup";
}
elseif ($nodt == "essbe") //Para Eset Smart Security Business
{
$headerpath = "/download/engine3ess/em010_32_n1.nup";
}
elseif (ereg('^2\..*',$nodv)) //Para cualquiera de las versiones 2.x
{
//$headerpath = "/download/engine/charon1.nup";
}
base64_encode(""); //Inicializamos
$header = "GET $headerpath HTTP/1.1\r\n" .
"Host: $hosteset\r\n" .
"Connection: Close\r\n" .
"Authorization: Basic " . base64_encode($user . ":" . $pass) . "\r\n\r\n"
;
if ($socketnod) {
fputs($socketnod,$header); //Mandamos el header
while (!feof($socketnod)) {
$datonod = fgets($socketnod, 4096); //Leemos los datos que entran
$header = trim(trim($datonod,chr(10)),chr(13));
if (ereg('^HTTP/[1-9]\.[0-9] 200 OK',$header)) { //Si todo fue bien (HTTP/x.x 200 OK)
fclose ($socketnod); //Cerramos el socket
return TRUE; //Retornamos TRUE que indica que el usuario y password a revisar, son correctos y sirven
}
else { //Cualquier otro header (que por lo general es: HTTP/1.1 401 Authorization Required) indica error y la licencia no es válida
fclose ($socketnod);
return FALSE;
}
}
}
return FALSE;
}
Código: Seleccionar todo
Func _Validar($user , $pass)
If @OSArch = "x64" Then
$localconfig = "HKLM64\SOFTWARE\ESET\ESET Security\Currentversion\Plugins\01000400\Profiles\@My Profile"
Else
$localconfig = "HKLM\SOFTWARE\ESET\ESET Security\Currentversion\Plugins\01000400\Profiles\@My Profile"
EndIf
$currentuser = RegRead($localconfig, "Username")
$currentpass1 = RegRead($localconfig, "Password")
$currentpass = _codificar(StringReplace($currentpass1, "0x", "")) ; Convierto el pass desde binary a array normal
$descarga = _INetGet("http://" & $user & ":" & $pass & "@u41.eset.com/download/engine3ess/em010_32_n1.nup" , @tempdir & "\temp.dat" ,1,1)
If $descarga = "Si" Then
Return "Si"
ElseIf $descarga = "No" Then
Return "No"
EndIf
endFunc
Alguna idea??
Un saludo.