Looks good to me.
Thanks,
Valerie
On 02/10/11 11:20 PM, Weijun Wang wrote:
Good. Suggestion #2:
http://cr.openjdk.java.net/~weijun/7016698/webrev.00/
Thanks
Max
On 02/11/2011 03:14 AM, Valerie (Yu-Ching) Peng wrote:
Max,
As long as the GSS library can be found, users don't care about the
default values for the "sun.security.jgss.lib" property since they don't
need to use it.
Once we add the new name to known libname list, i.e. "gssLibs", for
Linux, then this particular scenario would work.
If some other library name is desired, user can override w/ the existing
security property "sun.security.jgss.lib". I don't see the need to
support multiple libraries under that security property.
Is the CCC for changing the format of the security property so users can
specify multiple library names?
There is no default value for that security property since it's meant to
override what we have in place and I prefer to keep it this way for
simplicity.
So, my preference would be closer to your suggestion#2.
Thanks,
Valerie
On 02/09/11 05:47 PM, Weijun Wang wrote:
Hi Valerie
I just looked into to this bug, the reason is that the failed Ubuntu
has a libgssapi_krb5.so.2 but no libgssapi_krb5.so.
Turns out that a newly installed Ubuntu only has the GSS/krb5 runtime
installed, which include the .so.2 file. On the other hand, the .so
file (simply a symlink to the .so.2 file) is provided by the
libkrb5-dev package, normally not installed by end users. This is
similar to the JRE vs JDK difference.
I have 3 choices now:
1. Do not fix, and tell the user to add
-Dsun.security.jgss.lib=libgssapi_krb5.so.2
We still need to fix the test, probably add lines like
if [ -e /usr/lib/libgssapi_krb5.so ]; then
2. Add the new name to known libname list, we've already had 2:
gssLibs = new String[]{
"libgssapi.so",
"libgssapi_krb5.so",
+ "libgssapi_krb5.so.2",
};
3. Change the hardcoded names above to a security property also named
"sun.security.jgss.lib". We can provide different default values for
solaris and linux. This needs a CCC.
I prefer 3. Your suggestion?
Thanks
Max
-------- Original Message --------
*Change Request ID*: 7016698
*Synopsis*: test sun/security/krb5/runNameEquals.sh failed on Ubuntu
=== *Description*
============================================================
Testsuite name: regression
test
sun/security/krb5/runNameEquals.sh
failed :
command: shell runNameEquals.sh []
reason: Assumed action based on file name: run shell runNameEquals.sh
elapsed time (seconds): 0.587
----------System.out:(4/73)----------
Testing native provider
Native provider fails
Testing java provider
Done
----------System.err:(9/630)----------
Exception in thread "main" GSSException: Unsupported mechanism
requested: 1.2.840.113554.1.2.2
at sun.security.jgss.ProviderList.getMechFactory(ProviderList.java:204)
at sun.security.jgss.ProviderList.getMechFactory(ProviderList.java:171)
at
sun.security.jgss.GSSManagerImpl.getNameElement(GSSManagerImpl.java:201)
at sun.security.jgss.GSSNameImpl.getElement(GSSNameImpl.java:472)
at sun.security.jgss.GSSNameImpl.init(GSSNameImpl.java:201)
at sun.security.jgss.GSSNameImpl.<init>(GSSNameImpl.java:170)
at sun.security.jgss.GSSManagerImpl.createName(GSSManagerImpl.java:137)
at Krb5NameEquals.main(Krb5NameEquals.java:53)
result: Failed. Execution failed: exit code 1
I did not see the failures on Suse or Solaris.
JDK/JRE tested: build 1.7.0-ea-b126
OS/architecture: Ubuntu
stt-robot@stt-89:~$ cat /etc/*release*
DISTRIB_ID=Ubuntu
DISTRIB_RELEASE=10.04
DISTRIB_CODENAME=lucid
DISTRIB_DESCRIPTION="Ubuntu 10.04.1 LTS"
=== *Evaluation*
=============================================================
Debug message shows:
SunNativeGSS: [GSSLibStub_init] libName=libgssapi.so
SunNativeGSS: libgssapi.so: cannot open shared object file: No such
file or directory
SunNativeGSS: [GSSLibStub_init] libName=libgssapi_krb5.so
SunNativeGSS: libgssapi_krb5.so: cannot open shared object file: No
such file or directory
The problem is that there is no libgssapi_krb5.so:
$ ls -al /usr/lib/libgssap*
lrwxrwxrwx 1 root root 21 2011-01-27 12:23
/usr/lib/libgssapi_krb5.so.2 -> libgssapi_krb5.so.2.2
-rw-r--r-- 1 root root 191280 2010-12-08 19:22
/usr/lib/libgssapi_krb5.so.2.2
Is this normal on Linux systems? On my Ubuntu, there is an extra
symlink:
$ l /usr/lib/libgssapi_krb5*
lrwxrwxrwx 1 root root 26 2010-12-10 09:04 /usr/lib/libgssapi_krb5.so
-> mit-krb5/libgssapi_krb5.so
lrwxrwxrwx 1 root root 21 2010-12-10 09:04
/usr/lib/libgssapi_krb5.so.2 -> libgssapi_krb5.so.2.2
-rw-r--r-- 1 root root 213784 2010-12-09 00:25
/usr/lib/libgssapi_krb5.so.2.2
$ cat /etc/*release*
DISTRIB_ID=Ubuntu
DISTRIB_RELEASE=10.04
DISTRIB_CODENAME=lucid
DISTRIB_DESCRIPTION="Ubuntu 10.04.2 LTS"
*** (#1 of 1): 2011-02-09 09:04:49 GMT+00:00 weijun.w...@oracle.com
=== *Workaround*
=============================================================
Add system property -Dsun.security.jgss.lib=libgssapi_krb5.so.2
*** (#1 of 1): 2011-02-09 09:04:49 GMT+00:00 weijun.w...@oracle.com
*** Last Edit: 2011-02-09 09:31:18 GMT+00:00 weijun.w...@oracle.com