Yes, dynamic header type #f (i.e. 15) is DT_RPATH [1], so not likely related.
Do you get other messages or a stack with the crash? Have you tried the GAbi++ runtime [2] (assuming you don't need additional functionality that stlport/gnustl provides? Jim [1] http://www.sco.com/developers/gabi/latest/ch5.dynamic.html [2] http://androidxref.com/4.3_r2.1/xref/ndk/docs/CPLUSPLUS-SUPPORT.html#75 On 10/22/13 1:12 PM, Carl Wallace wrote: > To self-reply and top post, I got rid of the dynamic header type #f not > handled warnings by omitting rpath in the library. Still crash on throw > though. > > On 10/22/13 11:46 AM, "Carl Wallace" <[email protected]> wrote: > >> I am continuing my effort to get exception handling working with an >> external library. Here's a summary of current status. Any help is >> welcome. >> >> I have a restartless extension (.xpi file) that installs modutil, pcscd >> and coolkey. The modutil utility is from the Fennec build, the other two >> are external to the Mozilla build. The extension may need to be a >> non-restartless extension ultimately but for now it is restartless. The >> rough actions performed by the extension are as follows: >> >> 1) Copy binaries and a few library files to fennec/bin. I could not run >> the binaries from the folder within the extension but execution from a >> newly created bin folder works fine. The extension also sets up folders >> and copies configuration files required by pcscd. >> 2) During installation the extension starts pcscd and uses modutil to >> register an sdcard with the NSS store used by Fennec during the >> installation. Exceptions are thrown and caught successfully during this >> registration. >> 3) During browser start-up, the extension starts pcscd and adds the bin >> folder to LD_LIBRARY_PATH. >> 4) When browsing to a page that requires TLS client authentication, the >> browser loads the coolkey library which interacts with the pcscd service. >> A PIN prompt is displayed then the application crashes when an exception >> is thrown inside the coolkey library. >> >> The exception is part of a throw/catch I added to libcoolkey to make sure >> I always hit an exception until this is resolved. The libcoolkey library >> is linked against gnustl_shared. The .so is installed by the extension. >> I know this .so is loaded as the behavior when I move the .so file is >> different (I am not prompted for a PIN and the browsers continues to an >> error page displayed by the server). Initially I was using NDK n8e but >> have also tried with n9. >> >> I noticed the following warnings in logcat shortly before a crash: >> >> E GeckoLinker: >> /data/data/org.mozilla.fennec_cwallace/bin/libcoolkeypk11.so: Warning: >> dynamic header type #f not handled >> E GeckoLinker: >> /data/data/org.mozilla.fennec_cwallace/bin/libcoolkeypk11.so: Warning: >> unhandled flags #8 not handled >> >> >> Several NSS libraries also generate the unhandled flags warning, but the >> dynamic header type warning only appears for the library that is causing >> the crash. Are these warnings problematic? It seems strange that >> exceptions are thrown/caught when the library is loaded by modutil, but >> not when loaded by the browser. >> >> I have tried using gnustl and stlport in both static and shared forms. >> When using stlport (static or shared), the coolkey library cannot be >> loaded with the following error: >> >> "Cannot load library: reloc_library[1310]: 5237 cannot locate >> '_ZNSsD1Ev'? >> >> As above, I confirmed the shared version of stlport is being used by >> moving the library and observing a different error. Unlike the gnustl >> behavior, I am unable to load libcoolkey into modutil when it is linked >> against stlport. >> >> > > > _______________________________________________ > mobile-firefox-dev mailing list > [email protected] > https://mail.mozilla.org/listinfo/mobile-firefox-dev > _______________________________________________ mobile-firefox-dev mailing list [email protected] https://mail.mozilla.org/listinfo/mobile-firefox-dev

