Pier Angelo Vendrame pushed to branch mullvad-browser-128.8.0esr-14.5-1 at The Tor Project / Applications / Mullvad Browser
Commits:
4ac56788 by Henry Wilkes at 2025-03-24T13:40:55+00:00
fixup! MB 39: Add home page about:mullvad-browser
MB 410: Update learn more link text.
- - - - -
c4649816 by Henry Wilkes at 2025-03-24T13:40:56+00:00
fixup! Mullvad Browser strings
MB 410: Update learn more link text.
- - - - -
2 changed files:
- browser/components/mullvad-browser/content/aboutMullvadBrowser.html
- toolkit/locales/en-US/toolkit/global/mullvad-browser.ftl
Changes:
=====================================
browser/components/mullvad-browser/content/aboutMullvadBrowser.html
=====================================
@@ -72,7 +72,7 @@
<p data-l10n-id="about-mullvad-browser-use-vpn">
<a data-l10n-name="with-vpn-link" href="https://mullvad.net"></a>
</p>
- <p data-l10n-id="about-mullvad-browser-learn-more">
+ <p data-l10n-id="about-mullvad-browser-learn-more2">
<a
data-l10n-name="learn-more-link"
href="https://mullvad.net/browser"
=====================================
toolkit/locales/en-US/toolkit/global/mullvad-browser.ftl
=====================================
@@ -15,7 +15,7 @@ mullvad-about-telemetryLink = Telemetry
about-mullvad-browser-developed-by = Developed in collaboration between the <a data-l10n-name="tor-project-link">Tor Project</a> and <a data-l10n-name="mullvad-vpn-link">Mullvad VPN</a>
about-mullvad-browser-use-vpn = Get more privacy by using the browser <a data-l10n-name="with-vpn-link">with Mullvad VPN</a>.
-about-mullvad-browser-learn-more = Curious to learn more about the browser? <a data-l10n-name="learn-more-link">Take a dive into the mole hole</a>.
+about-mullvad-browser-learn-more2 = Curious to learn more about the browser? <a data-l10n-name="learn-more-link">Read more on our website</a>.
# Update message.
# <a data-l10n-name="update-link"> should contain the link text and close with </a>.
View it on GitLab: https://gitlab.torproject.org/tpo/applications/mullvad-browser/-/compare/77…
--
View it on GitLab: https://gitlab.torproject.org/tpo/applications/mullvad-browser/-/compare/77…
You're receiving this email because of your account on gitlab.torproject.org.
morgan deleted tag mullvad-browser-128.8.0esr-14.5-1-build4 at The Tor Project / Applications / Mullvad Browser
--
You're receiving this email because of your account on gitlab.torproject.org.
morgan pushed to branch mullvad-browser-128.8.0esr-14.5-1 at The Tor Project / Applications / Mullvad Browser
WARNING: The push did not contain any new commits, but force pushed to delete the commits and changes below.
Deleted commits:
4ac56788 by Henry Wilkes at 2025-03-24T13:40:55+00:00
fixup! MB 39: Add home page about:mullvad-browser
MB 410: Update learn more link text.
- - - - -
c4649816 by Henry Wilkes at 2025-03-24T13:40:56+00:00
fixup! Mullvad Browser strings
MB 410: Update learn more link text.
- - - - -
2 changed files:
- browser/components/mullvad-browser/content/aboutMullvadBrowser.html
- toolkit/locales/en-US/toolkit/global/mullvad-browser.ftl
Changes:
=====================================
browser/components/mullvad-browser/content/aboutMullvadBrowser.html
=====================================
@@ -72,7 +72,7 @@
<p data-l10n-id="about-mullvad-browser-use-vpn">
<a data-l10n-name="with-vpn-link" href="https://mullvad.net"></a>
</p>
- <p data-l10n-id="about-mullvad-browser-learn-more">
+ <p data-l10n-id="about-mullvad-browser-learn-more2">
<a
data-l10n-name="learn-more-link"
href="https://mullvad.net/browser"
=====================================
toolkit/locales/en-US/toolkit/global/mullvad-browser.ftl
=====================================
@@ -15,7 +15,7 @@ mullvad-about-telemetryLink = Telemetry
about-mullvad-browser-developed-by = Developed in collaboration between the <a data-l10n-name="tor-project-link">Tor Project</a> and <a data-l10n-name="mullvad-vpn-link">Mullvad VPN</a>
about-mullvad-browser-use-vpn = Get more privacy by using the browser <a data-l10n-name="with-vpn-link">with Mullvad VPN</a>.
-about-mullvad-browser-learn-more = Curious to learn more about the browser? <a data-l10n-name="learn-more-link">Take a dive into the mole hole</a>.
+about-mullvad-browser-learn-more2 = Curious to learn more about the browser? <a data-l10n-name="learn-more-link">Read more on our website</a>.
# Update message.
# <a data-l10n-name="update-link"> should contain the link text and close with </a>.
View it on GitLab: https://gitlab.torproject.org/tpo/applications/mullvad-browser/-/compare/77…
--
View it on GitLab: https://gitlab.torproject.org/tpo/applications/mullvad-browser/-/compare/77…
You're receiving this email because of your account on gitlab.torproject.org.
morgan pushed to branch tor-browser-128.8.0esr-14.0-1 at The Tor Project / Applications / Tor Browser
Commits:
cb0f7b5c by Yannis Juglaret at 2025-03-26T20:28:42+00:00
Bug 1956398 - Avoid duplicating pseudo-handles in ipc_channel_win.cc. r=nika a=RyanVM
Differential Revision: https://phabricator.services.mozilla.com/D243135
- - - - -
1 changed file:
- ipc/chromium/src/chrome/common/ipc_channel_win.cc
Changes:
=====================================
ipc/chromium/src/chrome/common/ipc_channel_win.cc
=====================================
@@ -30,6 +30,34 @@
using namespace mozilla::ipc;
+namespace {
+
+// This logic is borrowed from Chromium's `base/win/win_util.h`. It allows us
+// to distinguish pseudo-handle values, such as returned by GetCurrentProcess()
+// (-1), GetCurrentThread() (-2), and potentially more. The code there claims
+// that fuzzers have found issues up until -12 with DuplicateHandle.
+//
+// https://source.chromium.org/chromium/chromium/src/+/36dbbf38697dd1e23ef8944…
+inline bool IsPseudoHandle(HANDLE handle) {
+ auto handleValue = static_cast<int32_t>(reinterpret_cast<uintptr_t>(handle));
+ return -12 <= handleValue && handleValue < 0;
+}
+
+// A real handle is a handle that is not a pseudo-handle. Always preferably use
+// this variant over ::DuplicateHandle. Only use stock ::DuplicateHandle if you
+// explicitly need the ability to duplicate a pseudo-handle.
+inline bool DuplicateRealHandle(HANDLE source_process, HANDLE source_handle,
+ HANDLE target_process, LPHANDLE target_handle,
+ DWORD desired_access, BOOL inherit_handle,
+ DWORD options) {
+ MOZ_RELEASE_ASSERT(!IsPseudoHandle(source_handle));
+ return static_cast<bool>(::DuplicateHandle(
+ source_process, source_handle, target_process, target_handle,
+ desired_access, inherit_handle, options));
+}
+
+} // namespace
+
namespace IPC {
//------------------------------------------------------------------------------
@@ -595,7 +623,7 @@ bool Channel::ChannelImpl::AcceptHandles(Message& msg) {
nsTArray<mozilla::UniqueFileHandle> handles(num_handles);
for (uint32_t handleValue : payload) {
HANDLE ipc_handle = Uint32ToHandle(handleValue);
- if (!ipc_handle || ipc_handle == INVALID_HANDLE_VALUE) {
+ if (!ipc_handle || IsPseudoHandle(ipc_handle)) {
CHROMIUM_LOG(ERROR)
<< "Attempt to accept invalid or null handle from process "
<< other_pid_ << " for message " << msg.name() << " in AcceptHandles";
@@ -613,9 +641,10 @@ bool Channel::ChannelImpl::AcceptHandles(Message& msg) {
CHROMIUM_LOG(ERROR) << "other_process_ is invalid in AcceptHandles";
return false;
}
- if (!::DuplicateHandle(other_process_, ipc_handle, GetCurrentProcess(),
- getter_Transfers(local_handle), 0, FALSE,
- DUPLICATE_SAME_ACCESS | DUPLICATE_CLOSE_SOURCE)) {
+ if (!DuplicateRealHandle(
+ other_process_, ipc_handle, GetCurrentProcess(),
+ getter_Transfers(local_handle), 0, FALSE,
+ DUPLICATE_SAME_ACCESS | DUPLICATE_CLOSE_SOURCE)) {
DWORD err = GetLastError();
// Don't log out a scary looking error if this failed due to the target
// process terminating.
@@ -688,9 +717,9 @@ bool Channel::ChannelImpl::TransferHandles(Message& msg) {
CHROMIUM_LOG(ERROR) << "other_process_ is invalid in TransferHandles";
return false;
}
- if (!::DuplicateHandle(GetCurrentProcess(), local_handle.get(),
- other_process_, &ipc_handle, 0, FALSE,
- DUPLICATE_SAME_ACCESS)) {
+ if (!DuplicateRealHandle(GetCurrentProcess(), local_handle.get(),
+ other_process_, &ipc_handle, 0, FALSE,
+ DUPLICATE_SAME_ACCESS)) {
DWORD err = GetLastError();
// Don't log out a scary looking error if this failed due to the target
// process terminating.
View it on GitLab: https://gitlab.torproject.org/tpo/applications/tor-browser/-/commit/cb0f7b5…
--
View it on GitLab: https://gitlab.torproject.org/tpo/applications/tor-browser/-/commit/cb0f7b5…
You're receiving this email because of your account on gitlab.torproject.org.
morgan pushed to branch main at The Tor Project / Applications / tor-browser-build
Commits:
b1128a7e by Nicolas Vigier at 2025-03-26T17:14:40+00:00
Bug 41365: Indent download*.json files
- - - - -
1 changed file:
- tools/update-responses/update_responses
Changes:
=====================================
tools/update-responses/update_responses
=====================================
@@ -465,11 +465,11 @@ sub write_downloads_json {
downloads => get_version_downloads($config, $version),
};
write_htdocs($channel, '.', 'downloads.json',
- JSON->new->utf8->canonical->encode($data));
+ JSON->new->utf8->canonical->pretty->encode($data));
my $pp_downloads = get_perplatform_downloads($config, $version, $tag);
foreach my $os (keys %{$pp_downloads}) {
write_htdocs($channel, '.', "download-$os.json",
- JSON->new->utf8->canonical->encode($pp_downloads->{$os}));
+ JSON->new->utf8->canonical->pretty->encode($pp_downloads->{$os}));
}
}
View it on GitLab: https://gitlab.torproject.org/tpo/applications/tor-browser-build/-/commit/b…
--
View it on GitLab: https://gitlab.torproject.org/tpo/applications/tor-browser-build/-/commit/b…
You're receiving this email because of your account on gitlab.torproject.org.
Pier Angelo Vendrame pushed to branch main at The Tor Project / Applications / tor-browser-build
Commits:
efdc0f34 by Pier Angelo Vendrame at 2025-03-26T12:21:51+01:00
Bug 41407: Use Lyrebird for the Snowflake transport.
- - - - -
912bbd1d by Pier Angelo Vendrame at 2025-03-26T12:21:52+01:00
Bug 41410: Use the Lyrebird name on Android.
We were still using the libObfs4proxy.so name for compatibility with
the legacy Tor integration.
However, this was deleted some time ago, so we can switch to the
Lyrebird name.
- - - - -
8 changed files:
- − projects/browser/Bundle-Data/Docs-TBB/Licenses/PluggableTransports/LICENSE.SNOWFLAKE
- projects/browser/build
- − projects/snowflake/README.md
- − projects/snowflake/build
- − projects/snowflake/config
- projects/tor-expert-bundle/build
- projects/tor-expert-bundle/config
- projects/tor-expert-bundle/pt_config.json
Changes:
=====================================
projects/browser/Bundle-Data/Docs-TBB/Licenses/PluggableTransports/LICENSE.SNOWFLAKE deleted
=====================================
@@ -1,32 +0,0 @@
- This file contains the license for "Snowflake"
- a free software project which provides a WebRTC pluggable transport.
-
-================================================================================
-Copyright (c) 2016, Serene Han, Arlo Breault
-All rights reserved.
-
-Redistribution and use in source and binary forms, with or without modification,
-are permitted provided that the following conditions are met:
-
- * Redistributions of source code must retain the above copyright notice, this
-list of conditions and the following disclaimer.
-
- * Redistributions in binary form must reproduce the above copyright notice,
-this list of conditions and the following disclaimer in the documentation and/or
-other materials provided with the distribution.
-
- * Neither the names of the copyright owners nor the names of its
-contributors may be used to endorse or promote products derived from this
-software without specific prior written permission.
-
-THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
-ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
-WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
-DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR
-ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
-(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
-LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON
-ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
-SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-================================================================================
=====================================
projects/browser/build
=====================================
@@ -108,9 +108,7 @@ mv [% c('input_files_by_name/noscript') %] "$TBDIR/$EXTSPATH/{73a6fe31-595d-460b
[% END -%]
# Move READMEs from tor-expert-bundle to the doc dir
- mkdir -p "$TBDIR/$DOCSPATH/snowflake" [% IF c("var/macos_universal") %]"$TBDIR_AARCH64/$DOCSPATH/snowflake"[% END %]
mkdir -p "$TBDIR/$DOCSPATH/conjure" [% IF c("var/macos_universal") %]"$TBDIR_AARCH64/$DOCSPATH/conjure"[% END %]
- mv_tbdir tor/pluggable_transports/README.SNOWFLAKE.md "$DOCSPATH/snowflake/README.md"
mv_tbdir tor/pluggable_transports/README.CONJURE.md "$DOCSPATH/conjure/README.md"
# Move the PTs to where TB expects them
=====================================
projects/snowflake/README.md deleted
=====================================
@@ -1,7 +0,0 @@
-This is the Snowflake pluggable transport.
-
-# Vendored dependencies
-
-Snowflake is written in Go, and we version the expected hash of the vendored
-dependencies. Please refer to `doc/how-to-update-go-dependencies.txt` for
-further information on how we manage dependencies of Go projects.
=====================================
projects/snowflake/build deleted
=====================================
@@ -1,31 +0,0 @@
-#!/bin/bash
-[% c("var/set_default_env") -%]
-[% pc('go', 'var/setup', { go_tarfile => c('input_files_by_name/go') }) %]
-distdir=/var/tmp/dist/[% project %]
-mkdir -p $distdir
-
-[% IF c("var/android") -%]
- [% pc(c('var/compiler'), 'var/setup', { compiler_tarfile => c('input_files_by_name/' _ c('var/compiler')) }) %]
- # We need to explicitly set CGO_ENABLED with Go 1.13.x as the Android build
- # breaks otherwise.
- export CGO_ENABLED=1
-[% END -%]
-
-mkdir -p /var/tmp/build
-tar -C /var/tmp/build -xf [% project %]-[% c('version') %].tar.[% c('compress_tar') %]
-cd /var/tmp/build/[% project %]-[% c('version') %]
-
-tar -xf $rootdir/[% c('input_files_by_name/go_vendor') %]
-
-cd client
-go build -ldflags '-s[% IF c("var/android") %] -checklinkname=0[% END %]' -tags 'nopshufb,noasm,packetioSizeHardlimit,purego,safe,appengine,disableunsafe'
-cp -a client[% IF c("var/windows") %].exe[% END %] $distdir/snowflake-client[% IF c("var/windows") %].exe[% END %]
-
-cd ..
-cp -a README.md $distdir/README.SNOWFLAKE.md
-
-cd $distdir
-[% c('tar', {
- tar_src => [ '.' ],
- tar_args => '-caf ' _ dest_dir _ '/' _ c('filename'),
- }) %]
=====================================
projects/snowflake/config deleted
=====================================
@@ -1,38 +0,0 @@
-# vim: filetype=yaml sw=2
-version: '2.11.0'
-git_url: https://gitlab.torproject.org/tpo/anti-censorship/pluggable-transports/snow…
-git_hash: 'v[% c("version") %]'
-gpg_keyring: anti-censorship.gpg
-tag_gpg_id: 1
-
-container:
- use_container: 1
-
-var:
- go_vendor_sha256sum: 4c21a75c2fd0997a13fc5bb99991ff2c7149fb2342b857b06c70a18c4cb2ac89
-
-targets:
- nightly:
- git_hash: main
- version: '[% c("abbrev") %]'
- tag_gpg_id: 0
- var:
- go_vendor_sha256sum: ''
-
-steps:
- build:
- filename: '[% project %]-[% c("version") %]-[% c("var/osname") %]-[% c("var/build_id") %].tar.[% c("compress_tar") %]'
- input_files:
- - project: container-image
- - name: go
- project: go
- - name: '[% c("var/compiler") %]'
- project: '[% c("var/compiler") %]'
- enable: '[% c("var/android") %]'
- - name: go_vendor
- pkg_type: go_vendor
- project: snowflake
- norec:
- sha256sum: '[% c("var/go_vendor_sha256sum") %]'
- target_replace:
- '^torbrowser-(?!testbuild).*': 'torbrowser-linux-x86_64'
=====================================
projects/tor-expert-bundle/build
=====================================
@@ -14,7 +14,6 @@ cd tor
mkdir pluggable_transports && cd pluggable_transports
tar -xkf $rootdir/[% c('input_files_by_name/lyrebird') %]
-tar -xkf $rootdir/[% c('input_files_by_name/snowflake') %]
[% IF c('input_files_by_name/conjure') -%]
tar -xkf $rootdir/[% c('input_files_by_name/conjure') %]
[% END -%]
@@ -35,8 +34,7 @@ cd $distdir
mkdir -p aar/assets/common
cp -a tor/libTor.so aar/jni/$abi/
- cp -a tor/pluggable_transports/lyrebird aar/jni/$abi/libObfs4proxy.so
- cp -a tor/pluggable_transports/snowflake-client aar/jni/$abi/libSnowflake.so
+ cp -a tor/pluggable_transports/lyrebird aar/jni/$abi/libLyrebird.so
[% IF c('input_files_by_name/conjure') -%]
cp -a tor/pluggable_transports/conjure-client aar/jni/$abi/libConjure.so
[% END -%]
=====================================
projects/tor-expert-bundle/config
=====================================
@@ -16,8 +16,6 @@ input_files:
project: tor
- name: lyrebird
project: lyrebird
- - name: snowflake
- project: snowflake
- name: conjure
project: conjure
enable: '[% !c("var/android-x86") && !c("var/android-x86_64") %]'
=====================================
projects/tor-expert-bundle/pt_config.json
=====================================
@@ -1,8 +1,7 @@
{
"recommendedDefault" : "obfs4",
"pluggableTransports" : {
- "lyrebird" : "ClientTransportPlugin meek_lite,obfs2,obfs3,obfs4,scramblesuit,webtunnel exec ${pt_path}lyrebird${pt_extension}",
- "snowflake" : "ClientTransportPlugin snowflake exec ${pt_path}snowflake-client${pt_extension}",
+ "lyrebird" : "ClientTransportPlugin meek_lite,obfs2,obfs3,obfs4,scramblesuit,snowflake,webtunnel exec ${pt_path}lyrebird${pt_extension}",
"conjure" : "ClientTransportPlugin conjure exec ${pt_path}conjure-client${pt_extension} -registerURL https://registration.refraction.network/api"
},
"bridges" : {
View it on GitLab: https://gitlab.torproject.org/tpo/applications/tor-browser-build/-/compare/…
--
View it on GitLab: https://gitlab.torproject.org/tpo/applications/tor-browser-build/-/compare/…
You're receiving this email because of your account on gitlab.torproject.org.