← Back to team overview

openjdk team mailing list archive

[Bug 561124] Re: firefox sets LD_LIBRARY_PATH which breaks the icedtea6-plugin

 

This bug was fixed in the package openjdk-6 - 6b18-1.8-0ubuntu1

---------------
openjdk-6 (6b18-1.8-0ubuntu1) lucid; urgency=low

  * Update IcedTea6 to the icedtea6-1.8 release.
  * Fix builds on Ubuntu/dapper and Debian/lenny.
  * On hppa, configure --without-rhino --disable-plugin.
  * Fix Hitachi SH configury. Closes: #575346.
  * Start a window manager when running the tests. Prefer metacity,
    as more tests pass with it.
  * Let XToolkit.isTraySupported() return true, if Compiz is running.
    Works around sun#6438179. LP: #300948.
  * Make <java_home>/jre/lib/security/nss.cfg a config file.
  * Fail in the configuration of the packages, if /proc is not mounted.
    java currently uses tricks to find its own shared libraries depending
    on the path of the binary. Will be changed in OpenJDK7. Closes: #576453.
  * Fix PR icedtea/469, testsuite failures with the NSS based security
    provider. LP: #556549.
  * Do not pass LD_LIBRARY_PATH from the plugin to the java process.
    While libnss3.so gets loaded from /usr/lib, the dependent libraries
    are loaded from MOZILLA_FIVE_HOME (See #561216 for the wrong firefox
    config). LP: #561124.
    Closes as well: LP: #551328, #554909, #560829, #549010, #553452.
  * Always build shark with hs14.
 -- Matthias Klose <doko@xxxxxxxxxx>   Wed, 14 Apr 2010 01:53:33 +0200

** Changed in: openjdk-6 (Ubuntu Lucid)
       Status: In Progress => Fix Released

-- 
firefox sets LD_LIBRARY_PATH which breaks the icedtea6-plugin
https://bugs.launchpad.net/bugs/561124
You received this bug notification because you are a member of OpenJDK,
which is subscribed to openjdk-6 in ubuntu.

Status in OpenJDK: Fix Released
Status in “firefox” package in Ubuntu: Triaged
Status in “openjdk-6” package in Ubuntu: Fix Released
Status in “firefox” source package in Lucid: Triaged
Status in “openjdk-6” source package in Lucid: Fix Released

Bug description:
Binary package hint: firefox

starting with openjdk/icedtea-1.7, a NSS based security provider is supported by icedtea.

The firefox start script in MOZILLA_FIVE_HOME sets LD_LIBRARY_PATH to include MOZILLA_FIVE_HOME and a number of subdirectories of MOZILLA_FIVE_HOME. The current NSS provider code seems to honor LD_LIBRARY_PATH, and loads the libnss3.so provided by the browser.

Caused by: java.io.IOException: An incompatible version of NSS is already loaded, 3.7 or later required
        at sun.security.pkcs11.Secmod.isInitialized(Secmod.java:130)
        at sun.security.pkcs11.SunPKCS11.<init>(SunPKCS11.java:168)

(wondering why the nss version shipped with firefox 3.6.3 identifies itself as 3.7).

However the openjdk build is configured for the nss version configured at build time, and you can run it with more than one browser, so it makes sense to use the libnss version which was detected at openjdk build time.

My current solution/workaround is to pass a modified LD_LIBRARY_PATH to the subprocess such that the libnss3.so which was configured at build time is always used.

The setting of LD_LIBRARY_PATH in the run-mozilla.sh start script may be convenient, but it does break plugins which are built to be independent of the browser used.

Things to do on the browser side:

 - why does firefox use it's own outdated libnss copy, and doesn't use the system nss3?
 - why does the nss shipped with firefox identifies itself with 3.7?
 - the firefox startup script should not set LD_LIBRARY_PATH, but search itself for libs
   in known places.

for a proposed workaround for the icedtea6-plugin to work with this broken plugin, see http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=461





References