[HTTPS-E Rulesets] please give pointers on: "uri.host is explosive!"

Manne Laukkanen manne.laukkanen at sci.fi
Mon Dec 30 05:12:01 PST 2013


Hi!
With quick Googling did not find a full explanation on:
"uri.host is explosive!"

Skimming through code (not being familiar with slice function nor having 
time now to study it) , it seems to have something to do with 
encountering .something uri suffixes when resolving host...and if 
so..what? And it is in the case of catching... "e3"? Does this stand for 
"3rd error?" err...what?

If you give me an explanation I am happy to pull the code, add the 
comments to the portion in the code and push just to help other people 
being equally confounded by this message. There are others. (e.g. 
https://groups.google.com/forum/#!msg/mozilla.support.firefox/f3T_Fyt13ZU/Gfn2l7vGI0UJ)

Thank you and sorry to bug you and tell me what to do to open this bit 
of functioning of your good tool.

SOURCE (most recent version?):
// example.com. is equivalent to example.com
523 // example.com.. is invalid, but firefox would load it anyway
524 try {
525 if (uri.host)
526 try {
527 var h = uri.host;
528 if (h.charAt(h.length - 1) == ".") {
529 while (h.charAt(h.length - 1) == ".")
530 h = h.slice(0,-1);
531 uri = uri.clone();
532 uri.host = h;
533 }
534 } catch(e) {
535 this.log(WARN, "Failed to normalise domain: ");
536 try {this.log(WARN, input_uri.host);}
537 catch(e2) {this.log(WARN, "bang" + e + " & " + e2 + " & "+ input_uri);}
538 }
539 } catch(e3) {
540 this.log(WARN, "uri.host is explosive!");
541 try { this.log(WARN, "(" + uri.spec + ")"); }
542 catch(e4) { this.log(WARN, "(and unprintable)"); }
543 }
544 return uri;
545 },


More information about the HTTPS-Everywhere-Rules mailing list