[tor-bugs] #20691 [Applications/Tor Browser]: Alpha updates are not getting applied when trying to update to 6.5a4(-hardened)
Tor Bug Tracker & Wiki
blackhole at torproject.org
Thu Nov 17 02:44:40 UTC 2016
#20691: Alpha updates are not getting applied when trying to update to
6.5a4(-hardened)
--------------------------------------+--------------------------
Reporter: gk | Owner: tbb-team
Type: defect | Status: new
Priority: Immediate | Milestone:
Component: Applications/Tor Browser | Version:
Severity: Critical | Resolution:
Keywords: TorBrowserTeam201611 | Actual Points:
Parent ID: | Points:
Reviewer: | Sponsor:
--------------------------------------+--------------------------
Comment (by mcs):
I found signed mar files here:
https://people.torproject.org/~gk/builds/6.5a4/ and was able to reproduce
this problem by hosting an incremental mar file on my own server. My last-
update.log file contained the following:
{{{
Performing a staged update
PATCH DIRECTORY /home/brade/Desktop/tb-
test/Browser/TorBrowser/UpdateInfo/updates/0
INSTALLATION DIRECTORY /home/brade/Desktop/tb-test/Browser
WORKING DIRECTORY /home/brade/Desktop/tb-test/Browser/updated
ensure_copy: failed to open the file for reading: /home/brade/Desktop/tb-
test/Browser/TorBrowser/Data/Tor/control.socket, err: 6
failed: 6
calling QuitProgressUI
}}}
It seems that the updater code is not smart enough to skip Unix domain
sockets when copying the installation directory during the staged update
process. I was able to update successfully on a 64-bit Linux system after
I used `about:config` to set `app.update.staging.enabled` to false. The
bad news is that as far as I know we cannot disable staged updates from
the update manifest (server-side XML). Using the full mar file will result
in the same problem as gk experienced.
I will try to think of a workaround but at the moment I do not have any
ideas. I will ask Kathy about this problem in the morning.
A small bit of good news: I did not do any testing, but this problem
should not occur on Windows (no Unix domain sockets and no staged updates
either).
On OSX, I am able to successfully apply the update (the control port Unix
domain socket is in the `TorBrowser-Data` directory, which is outside the
scope of what the updater touches, so the ensure_copy problem does not
occur). But on the OSX system that I used for testing, after the update
was applied and the browser restarted, tor failed to start. This happened
because quotes are missing from the `ControlPort unix:...` argument which
was passed on the tor command line by Tor Launcher (I have spaces in my
path). But we fixed that problem in Tor Launcher! After a little more
investigation I learned that Tor Launcher was not updated in the profile
or in the `TorBrowser.app/Contents/Resources/distribution/extensions`
directory. I don't know why yet though, and we might need a new ticket for
OSX. The dmg files have the correct Tor Launcher. I have not checked the
complete mar files and I have not done enough analysis to determine if
the incremental mar files are flawed or if the updater failed to update
the xpi properly.
--
Ticket URL: <https://trac.torproject.org/projects/tor/ticket/20691#comment:2>
Tor Bug Tracker & Wiki <https://trac.torproject.org/>
The Tor Project: anonymity online
More information about the tor-bugs
mailing list