Richard Pospesel:
So I've tracked down the root of the problem here: we're not currently building nor packaging wow_helper.exe with Tor Browser. This exe is a necessary part of the sandbox init process for Vista (but not newer Windows OSes)
But that's only affecting 64bit Vista, right? FWIW: The upstream bug is https://bugzilla.mozilla.org/show_bug.cgi?id=1110760.
I'm able to build locally with mingw via:
x86_64-w64-mingw32-g++ -m64 -municode -static -static-libgcc -static-libstdc++ -I../../.. *.cc -o wow_helper.exe
Dropping that exe into the Browser folder lets sandbox'd tabs work once more!
That said, getting this building with FF's build system and also updating RBM to work with the new dependencies requires some specialized knowledge I don't currently have, so any pointers on this front would be great.
We don't have a 64bit toolchain ready for the stable series, which makes it a bit harder.
Just spit-balling, but the main hurdles as I see them are as follows:
- firefox : wow_helper is built with special Makefile.in configuration
file which temporarily overwrites the CXX, LIB and friends to point to the 64-bit MSVC compiler toolchain. We can probably do a similar thing here with x86_64-w64-mingw32-g++
- rbm : need to update the docker image to install the x86_64 version of
the mingw toolchain.
- tor-browser : will need to update the nsis installer and possibly
other things to properly include and deploy the wow_helper.exe
I am not convinced we'd need the latter. I think we could just copy the .exe into the Browser dir during the bundle step?
However, Chromium removed this entire code path back in 2016 when they dropped support for XP and Vista, and somewhere between version 52.6 and latest this code path was also removed in Firefox. So, depending on the timeline for updating Tor Browser to latest, we may just want to ignore this issue just do a simpler code patch that disables sandboxing all together for those under Windows 7.
I am fine with disabling sandboxing as an option. Could we just apply that to the problematic Windows version (i.e. Vista 64bit if I understand this correctly)? Thera are WINVER and _WIN32_WINNT_VISTA defines used in the codebase which might be things to look into.
Georg
best, -Richard _______________________________________________ tbb-dev mailing list tbb-dev@lists.torproject.org https://lists.torproject.org/cgi-bin/mailman/listinfo/tbb-dev