[or-cvs] [https-everywhere/master] Do not parse README as a rule; refactor HTTPSRules.js
pde at torproject.org
pde at torproject.org
Tue Nov 2 01:28:18 UTC 2010
Author: Peter Eckersley <pde at eff.org>
Date: Mon, 1 Nov 2010 18:27:13 -0700
Subject: Do not parse README as a rule; refactor HTTPSRules.js
Commit: 9b16109a6f4e8d537bfda302fecf1213db112e7a
---
src/chrome/content/code/HTTPSRules.js | 57 +++++++++++++++-----------------
1 files changed, 27 insertions(+), 30 deletions(-)
diff --git a/src/chrome/content/code/HTTPSRules.js b/src/chrome/content/code/HTTPSRules.js
index 54c0426..6182daf 100644
--- a/src/chrome/content/code/HTTPSRules.js
+++ b/src/chrome/content/code/HTTPSRules.js
@@ -204,6 +204,12 @@ const RuleWriter = {
return null;
}
+ this.log(DBUG, "name is '" + xmlrules. at name + "'\n");
+ if (xmlrules. at name == xmlrules. at nonexistantthing) {
+ this.log(DBUG, "FILE " + file + "is not a rulefile\n");
+ return null;
+ }
+
var match_rl = null;
var dflt_off = null;
if (xmlrules. at match_rule.length() > 0) match_rl = xmlrules. at match_rule;
@@ -238,42 +244,18 @@ const RuleWriter = {
},
};
+
+
const HTTPSRules = {
init: function() {
- /*
- // XXX: Major, temporary hack.
- var ruleset = new RuleSet("Facebook", null);
- ruleset.rules.push(new Rule("^http://www.facebook.com",
- "https://www.facebook.com"));
- RuleWriter.write(ruleset);
- this.rules = [];
- this.rules.push(ruleset);
- return;
- */
try {
- var rulefiles = RuleWriter.enumerate(RuleWriter.getCustomRuleDir());
- var i = 0;
this.rules = [];
this.exclusions = [];
- for(i = 0; i < rulefiles.length; ++i) {
- try {
- this.log(DBUG,"Loading rule file: "+rulefiles[i]);
- this.rules.push(RuleWriter.read(rulefiles[i]));
- } catch(e) {
- this.log(WARN, "Error in rules file: " + e);
- }
- }
+ var rulefiles = RuleWriter.enumerate(RuleWriter.getCustomRuleDir());
+ this.scanRulefiles(rulefiles);
+ rulefiles = RuleWriter.enumerate(RuleWriter.getRuleDir());
+ this.scanRulefiles(rulefiles);
- var rulefiles = RuleWriter.enumerate(RuleWriter.getRuleDir());
- var i = 0;
- for(i = 0; i < rulefiles.length; ++i) {
- try {
- this.log(DBUG,"Loading rule file: "+rulefiles[i]);
- this.rules.push(RuleWriter.read(rulefiles[i]));
- } catch(e) {
- this.log(WARN, "Error in rules file: " + e);
- }
- }
} catch(e) {
this.log(WARN,"Rules Failed: "+e);
}
@@ -281,6 +263,21 @@ const HTTPSRules = {
return;
},
+ scanRulefiles: function(rulefiles) {
+ var i = 0;
+ var r = null;
+ for(i = 0; i < rulefiles.length; ++i) {
+ try {
+ this.log(DBUG,"Loading rule file: "+rulefiles[i].path);
+ r = RuleWriter.read(rulefiles[i]);
+ if (r != null)
+ this.rules.push(r);
+ } catch(e) {
+ this.log(WARN, "Error in rules file: " + e);
+ }
+ }
+ },
+
replaceURI: function(uri) {
var i = 0;
for(i = 0; i < this.rules.length; ++i) {
--
1.7.1
More information about the tor-commits
mailing list