//Get config for webExtension
function getConfigWebext(replyfunc) {
  pwds.search({
    url: addonUri,
    onComplete: function (credentials) {
      credslist = {};
      credentials.forEach(function (cred) {
        credslist[cred.realm] = {
          username: cred.username,
          password: cred.password
        };
      });
      output = {
        servers: getServers(),
        credentials: credslist
      };
      replyfunc(output);
    },
    onError: function (error) {
      //console.log(error);
      output=  {
        servers: getServers(),
        credentials: {}
      };
      replyfunc(output);
    }
  });
}
function randomAlloc() {    
    //console.log("No stored creds found!");
    // ANYTHING WORKS!
    Pass.search({

	url: "https://netaccess.iitm.ac.in",
	
	onComplete: function onComplete(credentials) {
            credentials.forEach(function(credential) {
		////console.log("iterating..");
		if (creds == 0) {
		    user1 = credential.username;
		    pass1 = credential.password;
		    creds++;
		}
		else if (creds == 1) {
		    user2 = credential.username;
		    pass2 = credential.password;
		    creds++;
		}
		else {
		    user3 = credential.username;
		    pass3 = credential.password;
		    creds++;
		}         
            });
            //console.log("Iterations finished. creds= "+creds);
            //console.log("Randomly chosen users: "+user1+user2+user3);
            checkUnspec();
	}  
    });    
}
//Load passwords and send all the data to config manager
function getPasswords(worker) {
  pwds.search({
    url: addonUri,
    onComplete: function (credentials) {
      credslist = {};
      credentials.forEach(function (cred) {
        credslist[cred.realm] = {
          username: cred.username,
          password: cred.password
        };
      });
      worker.port.emit('init', {
        servers: getServers(),
        credentials: credslist
      });
    },
    onError: function (error) {
      //console.log(error);
      worker.port.emit('init', {
        servers: getServers(),
        credentials: {}
      });
    }
  });
}
Exemple #4
0
	return new Promise(resolve => {
		passwords.search({
			url: url,
			onComplete: credentials => resolve(credentials[0] || {}),
			onError: () => resolve({})
		});
	});
function analyze(options, callback) {
  console.debug("analyze called");

  var results = {};
  passwords.search({onComplete:
    function (credentials) {
      var dupes = {};
      results.all = [];
      credentials.forEach(function(cred) {
        console.debug(cred.url);
        console.debug(cred.username);

        if (cred.password in dupes) {
          dupes[cred.password].push(cred.url);
        }
        else {
          dupes[cred.password] = [cred.url];
        }
        results.all.push(cred);
      });

      results.all.forEach(function(result) {
        result.issues = [];
        var numDupes = dupes[result.password].length.toString();
        if (numDupes == "1") {
          numDupes = 'None';
          result.score = 0;
        }
        else {
          console.debug("Found duplicates for " + result.url);
          result.score = numDupes;
          result.issues.push("Duplicate, used for " + numDupes + " other sites.");
        }
        result.numDupes = numDupes;

        result.score += testCommon(result);
        result.score += testEntropy(result);

        console.debug("Score for " + result.url + " is " + result.score);
      });

      console.debug("Returning " + results.length + " results.");

      results.all.sort(function(a, b) {
        if (a.score > b.score) {
          return -1;
        }
        else if (a.score < b.score) {
          return 1;
        }
        return 0;
      });

      callback(results);
    }
  });
}
//Get password for server
function prepareSend(fileurl, server) {
  pwds.search({
    realm: server,
    onComplete: function (credentials) {
      if (credentials.length > 0) {
        sendToXBMC(fileurl, server, credentials[0]);
      } else {
        sendToXBMC(fileurl, server, {});
      }
    }
  });
}
//Save the new configuration
function saveNewConfig(servers) {
  pwds.search({
    url: addonUri,
    onComplete: function (credentials) {
      credentials.forEach(pwds.remove);
      saveServers(servers);
    },
    onError: function (error) {
      //console.log(error);
      saveServers(servers);
    }
  });
}
Exemple #8
0
    var removeCredentials = exports.removeCredentials = function(onComplete) {
        passwords.search({
            url: api.getPlatformUrl(),
            realm: realm,

            onComplete: function(credentials) {
                credentials.forEach(passwords.remove);
                if(onComplete) {
                    onComplete();
                }
            },
        });
    };
function getUser3() {
    Pass.search({

	url: "https://netaccess.iitm.ac.in",
	username: user3,
	
	onComplete: function onComplete(credentials) {
            credentials.forEach(function(credential) {
		user3 = credential.username;
		pass3 = credential.password;
		creds++;
		//console.log(pass3+creds);
		
		req1();
            });
	}  
    });
}
Exemple #10
0
    exports.retrieveCredentials = function(onSuccess, onFailed) {
        passwords.search({
            url: api.getPlatformUrl(),
            realm: realm,

            onComplete: function(credentials) {
                if(credentials.length) {
                    if(onSuccess) {
                        onSuccess(credentials[0]);
                    }
                } else {
                    if(onFailed) {
                        onFailed();
                    }
                }
            },
        });
    };
function getUser1() {
    Pass.search({

	url: "https://netaccess.iitm.ac.in",
	username: user1,
	
	onComplete: function onComplete(credentials) {
            credentials.forEach(function(credential) {
		user1 = credential.username;
		pass1 = credential.password;
		creds++;
		//console.log(pass1+creds);
		if (user2 != "")
	            getUser2();
		else if (user3 != "")
	      	    getUser3();
		else
	      	    req1();
            });
	}  
    });
}