summaryrefslogtreecommitdiffstats
path: root/browser/components/resistfingerprinting/test/browser/file_reduceTimePrecision_iframe_worker.sjs
diff options
context:
space:
mode:
authorDaniel Baumann <daniel.baumann@progress-linux.org>2024-04-07 17:32:43 +0000
committerDaniel Baumann <daniel.baumann@progress-linux.org>2024-04-07 17:32:43 +0000
commit6bf0a5cb5034a7e684dcc3500e841785237ce2dd (patch)
treea68f146d7fa01f0134297619fbe7e33db084e0aa /browser/components/resistfingerprinting/test/browser/file_reduceTimePrecision_iframe_worker.sjs
parentInitial commit. (diff)
downloadthunderbird-upstream.tar.xz
thunderbird-upstream.zip
Adding upstream version 1:115.7.0.upstream/1%115.7.0upstream
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to 'browser/components/resistfingerprinting/test/browser/file_reduceTimePrecision_iframe_worker.sjs')
-rw-r--r--browser/components/resistfingerprinting/test/browser/file_reduceTimePrecision_iframe_worker.sjs34
1 files changed, 34 insertions, 0 deletions
diff --git a/browser/components/resistfingerprinting/test/browser/file_reduceTimePrecision_iframe_worker.sjs b/browser/components/resistfingerprinting/test/browser/file_reduceTimePrecision_iframe_worker.sjs
new file mode 100644
index 0000000000..7791c05c06
--- /dev/null
+++ b/browser/components/resistfingerprinting/test/browser/file_reduceTimePrecision_iframe_worker.sjs
@@ -0,0 +1,34 @@
+"use strict";
+
+function handleRequest(request, response) {
+ response.setHeader("Content-Type", "application/javascript");
+
+ let content = `onconnect = function(e) {
+ let port = e.ports[0];
+
+ let navigatorObj = self.navigator;
+ let result = [];
+
+ // Known ways to generate time stamps, in milliseconds
+ const timeStampCodes = [
+ 'performance.now()',
+ 'new Date().getTime()',
+ 'new Event("").timeStamp',
+ 'new File([], "").lastModified',
+ ];
+
+ for (let timeStampCode of timeStampCodes) {
+ let timeStamp = eval(timeStampCode);
+
+ result.push({
+ 'name': 'worker ' + timeStampCode,
+ 'value': timeStamp
+ });
+ }
+
+ port.postMessage(result);
+ port.start();
+ };`;
+
+ response.write(content);
+}