Alterserv

ThunderCache 3.1.x => Plugins para ThunderCache 3.1.2 => Mensaje publicado por: juliobrenis en Diciembre 11, 2012, 08:10:07 AM

Título: Plugin windowsupdate
Publicado por: juliobrenis en Diciembre 11, 2012, 08:10:07 AM
Saludos:
Llevo casi un mes con el thundercache sobre debian. Las actualizaciónes de windows cargan bien hasta 1727 archivos cacheados pero por alguna razón despues de un tiempo cuando quiero hacer actualizaciones con una maquina que recien he formateado me sale un error y no deja descargar más.
No me quedo mas que borrar las actualizaciones de windows update en el thunder para volver a cachear todo de nuevo y ya van 2 veces que sucede.

a alguien le ha sucedido algo similar... como lo solucionó..

Gracias por su pronta respuesta.
Título: Re:Plugin windowsupdate
Publicado por: willysantana en Diciembre 11, 2012, 08:47:14 AM
hola yo tengo ese problema cuando instalo windows no puedo actualizar.
Título: Re:Plugin windowsupdate
Publicado por: pelinho en Diciembre 11, 2012, 09:43:52 AM
Estimado Julio
Tuve el mismo problema pero no se debe al Thunder, es necesario bajar manualmente el Agente Windows Update, y luego proceder al actualizar tu sistema

http://support.microsoft.com/kb/949104/es (http://support.microsoft.com/kb/949104/es)

Título: Re:Plugin windowsupdate
Publicado por: willysantana en Diciembre 11, 2012, 10:20:31 AM
Cita de: pelinho en Diciembre 11, 2012, 09:43:52 AM
Estimado Julio
Tuve el mismo problema pero no se debe al Thunder, es necesario bajar manualmente el Agente Windows Update, y luego proceder al actualizar tu sistema

http://support.microsoft.com/kb/949104/es (http://support.microsoft.com/kb/949104/es)


amigo el problema continua.

acabo de desavilitar el plugins y todo ok.

al parecer el plugin tiene algun problema.
Título: Re:Plugin windowsupdate
Publicado por: juliobrenis en Diciembre 12, 2012, 08:20:03 AM
Cita de: willysantana en Diciembre 11, 2012, 10:20:31 AM
amigo el problema continua.

acabo de desavilitar el plugins y todo ok.

al parecer el plugin tiene algun problema.

Yo creo que al parecer es un problema del plugin espero que nuestro amigo joemg pueda leer este post y darnos una posible solucion

Gracias
Título: Re:Plugin windowsupdate
Publicado por: firecold en Diciembre 17, 2012, 05:46:45 PM

#include <iostream>
#include <cstring>
#include <string>
#include <vector>
#include "../utils.cpp"

using namespace std;
//Gerardo Noh

//  http.*(\.windowsupdate\.com).*(\.cab|\.exe|\.iso|\.zip|\.psf|\.msu|\.msi|\.msp|\.dsft)
// http://download.windowsupdate.com/msdownload/update/software/defu/2012/04/am_base_70a1ba0ad946e3cd5032ca3871c0065a91529404.exe
// use this line to compile
// g++ -I. -fPIC -shared -g -o windowsupdate.com.so windowsupdate.com.cpp

string get_filename(string url) {
       vector<string> resultado;
       if (url.find("?") != string::npos) {
           stringexplode(url, "?", &resultado);
           stringexplode(resultado.at(resultado.size()-2), "/", &resultado);
           return resultado.at(resultado.size()-1);          
       } else {
           stringexplode(url, "/", &resultado);
           return resultado.at(resultado.size()-1);
       }
}

extern "C" resposta getmatch(const string url) {
   resposta r;

   if ( (url.find(".windowsupdate.com/msdownload") != string::npos)
    ) {
     
       r.file = get_filename(url);
       if (!r.file.empty()) {
           r.match = true;
           r.domain = "windowsupdate";
       } else {
           r.match = false;
       }
   } else {
       r.match = false;
   }
   return r;
}



#include <iostream>
#include <cstring>
#include <string>
#include <vector>
#include "../utils.cpp"

using namespace std;
//Feito por Gildo

// http.*(\.microsoft\.com).*(\.cab|\.exe|\.iso|\.zip|\.psf|\.msu|\.msi|\.msp|\.dsft)
// use this line to compile
// g++ -I. -fPIC -shared -g -o microsoft.com.so microsoft.com.cpp

string get_filename(string url) {
       vector<string> resultado;
       if (url.find("?") != string::npos) {
           stringexplode(url, "?", &resultado);
           stringexplode(resultado.at(resultado.size()-2), "/", &resultado);
           return resultado.at(resultado.size()-1);          
       } else {
           stringexplode(url, "/", &resultado);
           return resultado.at(resultado.size()-1);
       }
}

extern "C" resposta getmatch(const string url) {
   resposta r;

   if ( (url.find(".microsoft.com/") != string::npos)
    ) {
     
       r.file = get_filename(url);
       if (!r.file.empty()) {
           r.match = true;
           r.domain = "microsoft";
       } else {
           r.match = false;
       }
   } else {
       r.match = false;
   }
   return r;
}
Título: Re:Plugin windowsupdate
Publicado por: luistec en Diciembre 17, 2012, 06:01:00 PM
Que diferencia hace ese código con el antiguo amigo firecold, bueno con el que posteo hace tiempo joemg, sabes hay varios contenidos que se tienen que obviar ya que generan problemas.

Saludos.
Título: Re:Plugin windowsupdate
Publicado por: luistec en Diciembre 17, 2012, 06:25:22 PM
Ahí encontre los códigos que posteo hace tiempo joemg.


#include <iostream>
#include <cstring>
#include <vector>
#include "../utils.cpp"

using namespace std;

// use this line to compile
// g++ -I. -fPIC -shared -g -o microsoft.com.so microsoft.com.cpp
// regex
//http.*\.microsoft\.com.*(\.cab|\.exe|\.iso|\.zip|\.psf|\.msu|\.msi|\.msp|\.dsft)

bool in_array(const string &needle, const vector< string > &haystack) {
   int max = haystack.size();

   if (max == 0) return false;
       
   for (int iii = 0; iii < max; iii++) {
          if (regex_match(haystack[iii], needle) != "") {
              return true;
       }
   }
   return false;
}

string get_filename(string url) {
       vector<string> resultado;
       if (url.find("?") != string::npos){
           stringexplode(url, "?", &resultado);
           url = resultado.at(resultado.size()-2);
       }
   
       if (regex_match("[0-9]{10}$", url) != "") {
           
           stringexplode(url, "/", &resultado);
           return resultado.at(resultado.size()-3);
       } else {
           stringexplode(url, "/", &resultado);
           return resultado.at(resultado.size()-1);
       }            
}

extern "C" resposta getmatch(const string url) {
   resposta r;
   
   vector<string> black_list;
   black_list.push_back ("WuSetupHandler.cab");
   black_list.push_back ("muv3muredir.cab");
   black_list.push_back ("muredir.cab");
   black_list.push_back ("wuredir.cab");
   black_list.push_back ("muauth.cab");
   black_list.push_back ("musetup.cab");
   black_list.push_back ("wsus3setup.cab");
   black_list.push_back ("authrootstl.cab");
   black_list.push_back ("authrootseq.txt");
   black_list.push_back ("default.aspx");
   black_list.push_back ("wuident.cab");
   black_list.push_back ("\\.asmx");
   black_list.push_back ("stats\\.");
   black_list.push_back ("\\.asp");
       black_list.push_back ("cdm.cab");

   if (   (url.find(".microsoft.com") != string::npos) and
       ( (url.find(".cab") != string::npos) or (url.find(".exe") != string::npos) or (url.find(".iso") != string::npos) or
                    (url.find(".zip") != string::npos) or (url.find(".psf") != string::npos) or (url.find(".msi") != string::npos) or
                    (url.find(".msp") != string::npos) or (url.find(".msu") != string::npos) or (url.find(".dsft") != string::npos) ) and
           (in_array(url, black_list) == false)
    {

       r.file = get_filename(url);
       if (!r.file.empty()) {
           r.match = true;
           r.domain = "microsoftupdate";
       } else {
           r.match = false;
       }
   } else {
       r.match = false;
   }
   return r;
}




#include <iostream>
#include <cstring>
#include <vector>
#include "../utils.cpp"

using namespace std;

// use this line to compile
// g++ -I. -fPIC -shared -g -o windowsupdate.com.so windowsupdate.com.cpp
// regex
// http.*\.windowsupdate\.com.*(\.cab|\.exe|\.iso|\.zip|\.psf|\.msu|\.msi|\.msp|\.dsft)

bool in_array(const string &needle, const vector< string > &haystack) {
   int max = haystack.size();

   if (max == 0) return false;

for (int iii = 0; iii < max; iii++) {
      if (regex_match(haystack[iii], needle) != "") {
          return true;
}
}
   return false;
}

string get_filename(string url) {
vector<string> resultado;
if (url.find("?") != string::npos){
stringexplode(url, "?", &resultado);
url = resultado.at(resultado.size()-2);
}

if (regex_match("[0-9]{10}$", url) != "") {

stringexplode(url, "/", &resultado);
return resultado.at(resultado.size()-3);
} else {
stringexplode(url, "/", &resultado);
return resultado.at(resultado.size()-1);
}                    
}

extern "C" resposta getmatch(const string url) {
   resposta r;

vector<string> black_list;
black_list.push_back ("WuSetupHandler.cab");
black_list.push_back ("muv3muredir.cab");
black_list.push_back ("muredir.cab");
black_list.push_back ("wuredir.cab");
black_list.push_back ("muauth.cab");
black_list.push_back ("musetup.cab");
black_list.push_back ("wsus3setup.cab");
black_list.push_back ("authrootstl.cab");
black_list.push_back ("authrootseq.txt");
black_list.push_back ("default.aspx");
black_list.push_back ("wuident.cab");
black_list.push_back ("\\.asmx");
black_list.push_back ("stats\\.");
black_list.push_back ("\\.asp");
       black_list.push_back ("cdm.cab");

if (   (url.find(".windowsupdate.com") != string::npos) and
( (url.find(".cab") != string::npos) or (url.find(".exe") != string::npos) or (url.find(".iso") != string::npos) or
                    (url.find(".zip") != string::npos) or (url.find(".psf") != string::npos) or (url.find(".msi") != string::npos) or
                    (url.find(".msp") != string::npos) or (url.find(".msu") != string::npos) or (url.find(".dsft") != string::npos) ) and
(in_array(url, black_list) == false)
) {

   r.file = get_filename(url);
if (!r.file.empty()) {
r.match = true;
r.domain = "windowsupdate";
} else {
r.match = false;
}
} else {
r.match = false;
}
return r;
}
Título: Re:Plugin windowsupdate
Publicado por: firecold en Diciembre 17, 2012, 07:30:56 PM
Cita de: luistec en Diciembre 17, 2012, 06:01:00 PM
Que diferencia hace ese código con el antiguo amigo firecold, bueno con el que posteo hace tiempo joemg, sabes hay varios contenidos que se tienen que obviar ya que generán problemas.

Saludos.

Amigo Luistec la verdad no lo se, estos plugins como puedes ver no son mios, osea que no los probe ni nada por el estilo, cada plugin es de un autor diferente y no habia visto los codigos de los plugins de joemg6, por eso no puse ningun comentario, pero gracias por postear los codigos, ya que viendo los codigos anteriores y probando, se puede corregir el problema, Gracias Amigo Luistec, Saludos
Título: Re:Plugin windowsupdate
Publicado por: willysantana en Diciembre 20, 2012, 01:23:03 PM
amigo pero seria bueno buscar solucion a estos plugin.
Título: Re:Plugin windowsupdate
Publicado por: juliobrenis en Enero 08, 2013, 10:14:44 AM
Estuve probando el codigo que posteo JOEMG y termino con el mismo error asi que voy a probar el que hizo firecold.
Estara comentando como se comporta.

Amigo Joemg si pudieras darnos alguna posible solución te lo agradeceria mucho.
Título: Re:Plugin windowsupdate
Publicado por: juliobrenis en Enero 25, 2013, 10:41:19 AM
Saludos Cordiales:

Alguien sabe como hacer para que el plugin no haga cache a ciertos archivos que descarga el windows update?
He probado colocando en la parte del pluging blacklist pero no me funciona.

Gracias por su pronta respuesta