[Author Prev][Author Next][Thread Prev][Thread Next][Author Index][Thread Index]
[tor-commits] [torbirdy/master] Bug #6314: Round Date header down to nearest minute.
commit 7169642643b91f203782d8e6a885d53fbb43f49e
Author: Arthur Edelstein <arthuredelstein@xxxxxxxxx>
Date: Tue Dec 8 16:59:22 2015 -0800
Bug #6314: Round Date header down to nearest minute.
---
components/torbirdy.js | 20 ++++++++++++++++++++
1 file changed, 20 insertions(+)
diff --git a/components/torbirdy.js b/components/torbirdy.js
index 5867f98..1dd87fe 100644
--- a/components/torbirdy.js
+++ b/components/torbirdy.js
@@ -312,6 +312,25 @@ var TorBirdyOldPrefs = [
"network.proxy.http",
]
+// sanitizeDateHeaders()
+// Run this function to make sure that the Date header in a new message
+// is rounded down to the nearest minute.
+function sanitizeDateHeaders() {
+ // Import the jsmime module that is used to generate mail headers.
+ let { jsmime } = Components.utils.import("resource:///modules/jsmime.jsm");
+ // Inject our own structured encoder to the default header emitter,
+ // to override the default Date encoder with a rounded-down version.
+ jsmime.headeremitter.addStructuredEncoder("Date", function (date) {
+ // Copy date
+ let roundedDate = new Date(date.getTime());
+ // Round down to the nearest minute.
+ roundedDate.setSeconds(0);
+ // Use the headeremitter's addDate function to format it properly.
+ // `this` magically refers to the headeremitter object.
+ this.addDate(roundedDate);
+ });
+}
+
function TorBirdy() {
this._uninstall = false;
this.wrappedJSObject = this;
@@ -339,6 +358,7 @@ function TorBirdy() {
this.setAccountPrefs();
this.setPrefs();
+ sanitizeDateHeaders();
dump("TorBirdy registered!\n");
}
_______________________________________________
tor-commits mailing list
tor-commits@xxxxxxxxxxxxxxxxxxxx
https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-commits