Plugin de Nvidia DRIVERS

Publicado por david_domh, Agosto 16, 2013, 06:53:46 PM

Tema anterior - Siguiente tema

david_domh

Plugin de los drivers de Nvidia
Código (cpp) [Seleccionar]
#include <iostream>
    #include <cstring>
    #include <vector>
    #include "../utils.cpp"
     
    // g++ -I. -fPIC -shared -g -o nvidia.com.so nvidia.com.cpp
    // regex
    // http.*\.nvidia\.com.*(\.jpg|\.png|\.gif|\.mp3|\.swf|\.jpeg|\.mp4|\.exe|\.rar|\.zip)
     
    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()-3)+"_"+resultado.at(resultado.size()-2)+"_"+resultado.at(resultado.size()-1);           
                } else {
                        stringexplode(url, "/", &resultado);
                        return resultado.at(resultado.size()-3)+"_"+resultado.at(resultado.size()-2)+"_"+resultado.at(resultado.size()-1);
                }
    }
     
    extern "C" resposta getmatch(const string url) {
        resposta r;
     
            if ( (url.find(".nvidia.com/") != string::npos) and
            ( (url.find(".jpg") != string::npos) or
            (url.find(".png") != string::npos) or
            (url.find(".gif")!= string::npos) or
            (url.find(".mp3")!= string::npos) or
            (url.find(".swf")!= string::npos) or
            (url.find(".jpeg")!= string::npos) or
            (url.find(".mp4")!= string::npos) or
            (url.find(".exe")!= string::npos) or
            (url.find(".rar")!= string::npos) or
            (url.find(".zip")!= string::npos))
            ){
                   
                r.file = get_filename(url);
                    if (!r.file.empty()) {
                            r.match = true;
                            r.domain = "Nvidia";
                    } else {
                            r.match = false;
                    }
            } else {
                    r.match = false;
            }
            return r;
    }