JDK-6343020 : libpkcs11.so will led process crush when install SunONE Web server 6.1SP4 on Solaris 8 using J2SE5.0
  • Type: Bug
  • Component: security-libs
  • Sub-Component: javax.crypto:pkcs11
  • Affected Version: 5.0
  • Priority: P3
  • Status: Closed
  • Resolution: Won't Fix
  • OS: solaris_8
  • CPU: sparc
  • Submitted: 2005-10-28
  • Updated: 2010-09-29
  • Resolved: 2005-10-28
Related Reports
Relates :  
Description
while the customer try to install our Web Server 6.1 on Solaris 8 with J2SE5.0, the next error occured, install process crashed.
--------------------------------------------------------------------
# ./installer
#
# An unexpected error has been detected by HotSpot Virtual Machine:
#
#  SIGSEGV (0xb) at pc=0xfe252b44, pid=7904, tid=1
#
# Java VM: Java HotSpot(TM) Server VM (1.5.0_01-b08 mixed mode)
# Problematic frame:
# V  [libjvm.so+0x252b44]
#
# An error report file with more information is saved as hs_err_pid7904.log
#
# If you would like to submit a bug report, please visit:
#   http://java.sun.com/webapps/bugreport/crash.jsp
#
Abnormal terminated - core dunmped
--------------------------------------------------------------------
Soalris 10 provide a new libary name "/usr/lib/libpkcs11.so".In the crypto function of J2SE5.0, this libary is used.
but there is this lib in Solris 8 nad Solaris 9.
in this case, because the customer has installed a security product make by Sun, while this security peoduct installing,it will make a symbolic link to /usr/lib/libpkcs11.so.
then in this OE,when J2SE use its crypto function,it will use the lib: /usr/lib/libpkcs11.so
while JVM call the function "C_GetFunctionList()",(in fact, there no such a function is this version of /usr/lib/libpkcs11.so provide by the security product.), will meet a exception. in this condition, we should ignore this exception and go on the process because this is no a fatal error, but it lead JVM crashed.

Comments
EVALUATION I doubt that a system where arbitrary libraries have been placed into /usr/lib is considered a supported Solaris configuration. The 3rd party application should not do that. With repect to the crash, this is caused by an incorrect free() call in PKCS#11 wrapper code. This has been already fixed in Mustang as part of code cleanup for 6313675. We do not plan to backport this fix to a 5.0 update release unless this bug is escalated, closing.
28-10-2005

SUGGESTED FIX In this condition,ignore this exception and let the process go on.
28-10-2005

WORK AROUND Rename the file name of /usr/lib/libpkcs11.so 1) Stop Systemwalke (/bin/centricmanager) 2) Rename /usr/lib/libpkcs11.so temporaly 3) Install WebServer 4) Put the name of /usr/lib/libpkcs11.so bask to original name 5) Restart Systemwalke *** (#1 of 1): ###@###.###
28-10-2005