summaryrefslogtreecommitdiff
path: root/data/extensions/https-everywhere-eff@eff.org/components/ssl-observatory.js
diff options
context:
space:
mode:
Diffstat (limited to 'data/extensions/https-everywhere-eff@eff.org/components/ssl-observatory.js')
-rw-r--r--data/extensions/https-everywhere-eff@eff.org/components/ssl-observatory.js19
1 files changed, 10 insertions, 9 deletions
diff --git a/data/extensions/https-everywhere-eff@eff.org/components/ssl-observatory.js b/data/extensions/https-everywhere-eff@eff.org/components/ssl-observatory.js
index b2629fe..ba8a684 100644
--- a/data/extensions/https-everywhere-eff@eff.org/components/ssl-observatory.js
+++ b/data/extensions/https-everywhere-eff@eff.org/components/ssl-observatory.js
@@ -128,10 +128,6 @@ function SSLObservatory() {
this.log(WARN, "Failed to initialize NSS component:" + e);
}
- // It is necessary to testProxySettings after the window is loaded, since the
- // Tor Browser will not be finished establishing a circuit otherwise
- OS.addObserver(this, "browser-delayed-startup-finished", false);
-
this.log(DBUG, "Loaded observatory component!");
}
@@ -400,10 +396,6 @@ SSLObservatory.prototype = {
}
}
}
-
- if (topic == "browser-delayed-startup-finished") {
- this.testProxySettings();
- }
},
observatoryActive: function() {
@@ -770,7 +762,7 @@ SSLObservatory.prototype = {
}
},
- testProxySettings: function() {
+ testProxySettings: function(cb) {
/* Plan:
* 1. Launch an async XMLHttpRequest to check.tp.o with magic nonce
* 3. Filter the nonce in protocolProxyFilter to use proxy settings
@@ -808,6 +800,9 @@ SSLObservatory.prototype = {
if(req.status == 200) {
if(!req.responseXML) {
that.log(INFO, "Tor check failed: No XML returned by check service.");
+ if (cb) {
+ cb(that.proxy_test_successful);
+ }
return;
}
@@ -832,6 +827,9 @@ SSLObservatory.prototype = {
that.proxy_test_callback(that.proxy_test_successful);
that.proxy_test_callback = null;
}
+ if (cb) {
+ cb(that.proxy_test_successful);
+ }
}
};
req.send(null);
@@ -845,6 +843,9 @@ SSLObservatory.prototype = {
this.proxy_test_callback(this.proxy_test_successful);
this.proxy_test_callback = null;
}
+ if (cb) {
+ cb(this.proxy_test_successful);
+ }
}
},