Hi,
I have been working on porting the secure updater patches from Tor Browser to Tor Messenger. While the updater works fine, there is a small issue where the updater can't find the dynamic libraries on Linux and OS X. (Windows is fine.)
Here is for example what I get on Linux:
tor-messenger/Browser/updates/0/updater: error while loading shared libraries: libmozsqlite3.so: cannot open shared object file: No such file or directory
The error on OS X is almost similar. Setting LD_LIBRARY_PATH and DYLD_LIBRARY_PATH to "." alleviates this issue but I doubt if that is the proper way of doing it.
We are applying #4234 and #13379 to our builds, and even #18900 that sets the library path for the updater, but clearly I am missing something here.
Any thoughts on how to fix this the right way? Thanks!
Hi,
I have been working on porting the secure updater patches from Tor Browser to Tor Messenger. While the updater works fine, there is a small issue where the updater can't find the dynamic libraries on Linux and OS X. (Windows is fine.)
Here is for example what I get on Linux:
tor-messenger/Browser/updates/0/updater: error while loading shared libraries: libmozsqlite3.so: cannot open shared object file: No such file or directory
The error on OS X is almost similar. Setting LD_LIBRARY_PATH and DYLD_LIBRARY_PATH to "." alleviates this issue but I doubt if that is the proper way of doing it.
We are applying #4234 and #13379 to our builds, and even #18900 that sets the library path for the updater, but clearly I am missing something here.
Any thoughts on how to fix this the right way? Thanks!
OK I managed to figure it out: I had disabled --enable-verify-mar and therefore the library path was not added to linker's search path as MOZ_VERIFY_MAR_SIGNATURE was false in nsUpdateDriver.cpp.
+#if defined(MOZ_VERIFY_MAR_SIGNATURE) && (defined(MAR_NSS) || \ + (!defined(XP_WIN) && !defined(XP_MACOSX) && !defined(MOZ_WIDGET_GONK)))
Sigh.