commit e6b06c64d7a2294a0f3def31d8e51acd751f40c9
Author: Arthur Edelstein <arthuredelstein(a)gmail.com>
Date: Wed Apr 20 14:07:37 2016 -0700
squash! Bug #13749.2: Regression tests for first-party isolation of cache
Test for network isolation as well
---
netwerk/test/browser/browser_cacheFirstParty.js | 36 +++++++++++++++++++++++++
1 file changed, 36 insertions(+)
diff --git a/netwerk/test/browser/browser_cacheFirstParty.js b/netwerk/test/browser/browser_cacheFirstParty.…
[View More]js
index 970043d..08b3231 100644
--- a/netwerk/test/browser/browser_cacheFirstParty.js
+++ b/netwerk/test/browser/browser_cacheFirstParty.js
@@ -25,6 +25,8 @@ Cu.import("resource://gre/modules/Task.jsm");
let tempScope = {}; // Avoid 'leaked window property' error.
Cu.import("resource://gre/modules/LoadContextInfo.jsm", tempScope);
let LoadContextInfo = tempScope.LoadContextInfo;
+let thirdPartyUtil = Cc["@mozilla.org/thirdpartyutil;1"]
+ .getService(Ci.mozIThirdPartyUtil);
// __listen(target, eventType, timeoutMs, useCapture)__.
// Calls addEventListener on target, with the given eventType.
@@ -144,10 +146,43 @@ let checkCachePopulation = function* (pref, numberOfDomains) {
}
};
+// __observeChannels(onChannel)__.
+// onChannel is called for every http channel request. Returns a zero-arg stop() function.
+let observeChannels = function (onChannel) {
+ let channelObserver = {
+ observe: function(subject, topic, data) {
+ if (topic === "http-on-modify-request") {
+ onChannel(subject.QueryInterface(Components.interfaces.nsIHttpChannel));
+ }
+ }
+ };
+ Services.obs.addObserver(channelObserver, "http-on-modify-request", /* ownsWeak */ false);
+ return function () { Services.obs.removeObserver(channelObserver, "http-on-modify-request"); };
+};
+
+// __channelFirstPartyHost(aChannel)__.
+// Returns the first-party host for the given channel.
+let channelFirstPartyHost = function (aChannel) {
+ let channel = aChannel.QueryInterface(Ci.nsIChannel),
+ firstPartyURI = thirdPartyUtil.getFirstPartyURIFromChannel(channel, true)
+ .QueryInterface(Ci.nsIURI);
+ return thirdPartyUtil.getFirstPartyHostForIsolation(firstPartyURI);
+}
+
// The main testing function.
// Launch a Task.jsm coroutine so we can open tabs and wait for each of them to open,
// one by one.
add_task(function* () {
+ // Here we check to see if each channel has the correct first party assigned.
+ // All "thirdPartyChild" resources are loaded from a third-party
+ // "example.net" host, but they should all report either an "example.com"
+ // or an "example.org" first-party domain.
+ let stopObservingChannels = observeChannels(function (channel) {
+ if (channel.originalURI.spec.contains("thirdPartyChild")) {
+ let firstPartyHost = channelFirstPartyHost(channel);
+ ok(firstPartyHost === "example.com" || firstPartyHost === "example.org", "first party is " + firstPartyHost);
+ }
+ });
// Keep original pref value for restoring after the tests.
let originalPrefValue = Services.prefs.getIntPref(privacyPref);
// Test the pref with both values: 2 (isolating by first party) or 0 (not isolating)
@@ -169,6 +204,7 @@ add_task(function* () {
// Clean up by removing tabs.
tabs.forEach(tab => gBrowser.removeTab(tab));
}
+ stopObservingChannels();
// Restore the pref to its original value.
Services.prefs.setIntPref(privacyPref, originalPrefValue);
});
[View Less]
commit d5f56352dedb116a81c47810ad09a86f02bdcaab
Author: Translation commit bot <translation(a)torproject.org>
Date: Fri Apr 22 15:45:48 2016 +0000
Update translations for tor-launcher-network-settings_completed
---
es/network-settings.dtd | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/es/network-settings.dtd b/es/network-settings.dtd
index 13b8c28..ac15664 100644
--- a/es/network-settings.dtd
+++ b/es/network-settings.dtd
@@ -65,7 +65,7 @@
<!ENTITY …
[View More]torsettings.copyLog "Copiar el registro de mensajes(log) de Tor al portapapeles">
<!ENTITY torsettings.bridgeHelpTitle "Ayuda de repetidores puente ('bridge relays')">
<!ENTITY torsettings.bridgeHelp1 "Si no puede conectarse a la red Tor, podría ser que su proveedor de servicios de Internet (ISP) u otra agencia, esté bloqueando Tor.  A menudo, puede evitar este problema usando puentes ('bridges') de Tor, que son repetidores ('relays') de salida de la red Tor que no son públicos, y es más difícil que sean bloqueados.">
-<!ENTITY torsettings.bridgeHelp1B "Puede usar el conjunto de direcciones de repetidores puente ('bridge') preconfigurado proporcionado, o puede obtener un conjunto de direcciones personalizado usando uno de estos tres métodos:">
+<!ENTITY torsettings.bridgeHelp1B "Puede usar el juego preconfigurado de direcciones de puentes proporcionado, o puede obtener un juego personalizado de direcciones usando uno de estos métodos:">
<!ENTITY torsettings.bridgeHelp2Heading "Mediante la web">
<!ENTITY torsettings.bridgeHelp2 "Use un navegador web para visitar https://bridges.torproject.org">
<!ENTITY torsettings.bridgeHelp3Heading "Mediante el correo electrónico automático">
[View Less]
commit cac26cd6c2327540c883663dd93e4958009c4e8c
Author: Translation commit bot <translation(a)torproject.org>
Date: Fri Apr 22 15:45:44 2016 +0000
Update translations for tor-launcher-network-settings
---
es/network-settings.dtd | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/es/network-settings.dtd b/es/network-settings.dtd
index a6db1ee..ac15664 100644
--- a/es/network-settings.dtd
+++ b/es/network-settings.dtd
@@ -65,7 +65,7 @@
<!ENTITY torsettings.…
[View More]copyLog "Copiar el registro de mensajes(log) de Tor al portapapeles">
<!ENTITY torsettings.bridgeHelpTitle "Ayuda de repetidores puente ('bridge relays')">
<!ENTITY torsettings.bridgeHelp1 "Si no puede conectarse a la red Tor, podría ser que su proveedor de servicios de Internet (ISP) u otra agencia, esté bloqueando Tor.  A menudo, puede evitar este problema usando puentes ('bridges') de Tor, que son repetidores ('relays') de salida de la red Tor que no son públicos, y es más difícil que sean bloqueados.">
-<!ENTITY torsettings.bridgeHelp1B "You may use the preconfigured, provided set of bridge addresses or you may obtain a custom set of addresses by using one of these methods:">
+<!ENTITY torsettings.bridgeHelp1B "Puede usar el juego preconfigurado de direcciones de puentes proporcionado, o puede obtener un juego personalizado de direcciones usando uno de estos métodos:">
<!ENTITY torsettings.bridgeHelp2Heading "Mediante la web">
<!ENTITY torsettings.bridgeHelp2 "Use un navegador web para visitar https://bridges.torproject.org">
<!ENTITY torsettings.bridgeHelp3Heading "Mediante el correo electrónico automático">
[View Less]
commit 0222697a13f58c084b6390d19274ab1577ef2665
Author: Translation commit bot <translation(a)torproject.org>
Date: Fri Apr 22 15:45:39 2016 +0000
Update translations for tor-launcher-properties_completed
---
es/torlauncher.properties | 1 +
1 file changed, 1 insertion(+)
diff --git a/es/torlauncher.properties b/es/torlauncher.properties
index 5283bd1..7cb7788 100644
--- a/es/torlauncher.properties
+++ b/es/torlauncher.properties
@@ -36,6 +36,7 @@ torlauncher.quit_win=Salir
…
[View More]torlauncher.done=Listo
torlauncher.forAssistance=Para obtener ayuda, contacte con %S
+torlauncher.forAssistance2=Para asistencia, visite %S
torlauncher.copiedNLogMessages=Copia completada. %S mensajes de registro ('log') de Tor están listos para ser pegados en un editor de texto o en un mensaje de correo electrónico.
[View Less]
commit 659e0bdad18e5f4550cb7de8b4248354af5870c9
Author: Georg Koppen <gk(a)torproject.org>
Date: Fri Apr 22 08:49:32 2016 +0000
fixup! TB4: Tor Browser's Firefox preference overrides.
We disable `media.navigator.enabled` as a defense-in-depth to avoid
media devices getting exposed. (bug 16328)
---
browser/app/profile/000-tor-browser.js | 3 +++
1 file changed, 3 insertions(+)
diff --git a/browser/app/profile/000-tor-browser.js b/browser/app/profile/000-tor-browser.js
…
[View More]index fbe6fb4..b2beff5 100644
--- a/browser/app/profile/000-tor-browser.js
+++ b/browser/app/profile/000-tor-browser.js
@@ -175,6 +175,9 @@ pref("plugin.state.flash", 1);
pref("plugins.hide_infobar_for_missing_plugin", true);
pref("plugins.hideMissingPluginsNotification", true);
pref("media.peerconnection.enabled", false); // Disable WebRTC interfaces
+// Disables media devices but only if `media.peerconnection.enabled` is set to
+// `false` as well. (see bug 16328 for this defense-in-depth measure)
+pref("media.navigator.enabled", false);
// GMPs: We make sure they don't show up on the Add-on panel and confuse users.
// And the external update/donwload server must not get pinged. We apply a
// clever solution for https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=769716.
[View Less]
commit 54958f512cfc610208f1fe851d3f766940dfb0ae
Author: Georg Koppen <gk(a)torproject.org>
Date: Fri Apr 22 14:17:32 2016 +0000
Fold in older changelogs
---
Bundle-Data/Docs/ChangeLog.txt | 36 ++++++++++++++++++++++++++++++++++++
1 file changed, 36 insertions(+)
diff --git a/Bundle-Data/Docs/ChangeLog.txt b/Bundle-Data/Docs/ChangeLog.txt
index 3b3cfd8..8c5d733 100644
--- a/Bundle-Data/Docs/ChangeLog.txt
+++ b/Bundle-Data/Docs/ChangeLog.txt
@@ -1,3 +1,10 @@
+Tor Browser 6.0a4-…
[View More]hardened -- March 17 2016
+ * All Platforms
+ * Update Firefox to 38.7.1esr
+ * Update Torbutton to 1.9.5.2
+ * Bug 18557: Exempt Graphite from the Security Slider
+ * Bug 18536: Make Mosaddegh and MaBishomarim available on port 80 and 443
+
Tor Browser 6.0a4 -- March 17 2016
* All Platforms
* Update Firefox to 38.7.1esr
@@ -5,6 +12,13 @@ Tor Browser 6.0a4 -- March 17 2016
* Bug 18557: Exempt Graphite from the Security Slider
* Bug 18536: Make Mosaddegh and MaBishomarim available on port 80 and 443
+Tor Browser 5.5.4 -- March 16 2016
+ * All Platforms
+ * Update Firefox to 38.7.1esr
+ * Update Torbutton to 1.9.4.5
+ * Bug 18557: Exempt Graphite from the Security Slider
+ * Bug 18536: Make Mosaddegh and MaBishomarim available on port 80 and 443
+
Tor Browser 6.0a3-hardened -- March 8
* All Platforms
* Update Firefox to 38.7.0esr
@@ -108,6 +122,28 @@ Tor Browser 5.5.1 -- February 4 2016
* Linux
* Bug 18172: Add Emoji support
+Tor Browser 6.0a1-hardened -- January 27 2016
+ * All Platforms
+ * Update Firefox to 38.6.0esr
+ * Update NoScript to 2.9.0.2
+ * Update Torbutton to 1.9.5
+ * Bug 16990: Show circuit display for connections using multi-party channels
+ * Bug 18019: Avoid empty prompt shown after non-en-US update
+ * Bug 18004: Remove Tor fundraising donation banner
+ * Code cleanup
+ * Translation updates
+ * Update Tor Launcher to 0.2.8.3
+ * Bug 18113: Randomly permutate available default bridges of chosen type
+ * Bug 11773: Setup wizard UI flow improvements
+ * Translation updates
+ * Bug 17428: Remove Flashproxy
+ * Bug 18115+18104+18071+18091: Update/add new obfs4 bridge
+ * Bug 18072: Change recommended pluggable transport type to obfs4
+ * Bug 18008: Create a new MAR Signing key and bake it into Tor Browser
+ * Bug 16322: Use onion address for DuckDuckGo search engine
+ * Bug 17917: Changelog after update is empty if JS is disabled
+ * Bug 17790: Map the proper SHIFT characters to the digit keys (fix of #15646)
+
Tor Browser 6.0a1 -- January 27 2016
* All Platforms
* Update Firefox to 38.6.0esr
[View Less]