[ 
https://issues.apache.org/jira/browse/HADOOP-13910?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15751822#comment-15751822
 ] 

Wei-Chiu Chuang commented on HADOOP-13910:
------------------------------------------

I think the test's behavior depends on Java library.

https://docs.oracle.com/javase/8/docs/technotes/guides/security/jgss/tutorials/KerberosReq.html

{quote}
The algorithm to locate the krb5.conf file is the following:

If the system property java.security.krb5.conf is set, its value is assumed to 
specify the path and file name.

If that system property value is not set, then the configuration file is looked 
for in the directory

<java-home>\lib\security (Windows)
<java-home>/lib/security (Solaris and Linux)
Here <java-home> refers to the directory where the JRE was installed. For 
example, if you have J2SE 5.0 installed on Solaris in a directory named 
/j2sdk1.5, the directory in which the configuration file is looked for is:

/j2sdk1.5/jre/lib/security
If the file is still not found, then an attempt is made to locate it as follows:

/etc/krb5/krb5.conf (Solaris)
c:\winnt\krb5.ini (Windows)
/etc/krb5.conf (Linux)

If the file is still not found, and the configuration information being 
searched for is not the default realm and KDC, then implementation-specific 
defaults are used. If, on the other hand, the configuration information being 
searched for is the default realm and KDC because they weren't specified in 
system properties, and the krb5.conf file is not found either, then an 
exception is thrown.
{quote}

> TestKMS Unable to parse:includedir /etc/krb5.conf.d/
> ----------------------------------------------------
>
>                 Key: HADOOP-13910
>                 URL: https://issues.apache.org/jira/browse/HADOOP-13910
>             Project: Hadoop Common
>          Issue Type: Bug
>    Affects Versions: 3.0.0-alpha2
>         Environment: $ cat /etc/centos-release
> CentOS Linux release 7.2.1511 (Core) 
> $ mvn -vesion
> Apache Maven 3.0.5 (Red Hat 3.0.5-17)
> Maven home: /usr/share/maven
> Java version: 1.8.0_111, vendor: Oracle Corporation
> Java home: /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.111-2.b15.el7_3.x86_64/jre
> Default locale: en_US, platform encoding: UTF-8
> OS name: "linux", version: "3.10.0-327.36.3.el7.x86_64", arch: "amd64", 
> family: "unix"
>            Reporter: John Zhuge
>
> Saw the following error when testing {{TestKMS}}:
> {noformat}
> testSpecialKeyNames(org.apache.hadoop.crypto.key.kms.server.TestKMS)  Time 
> elapsed: 1.175 sec  <<< ERROR!
> java.lang.RuntimeException: Unable to parse:includedir /etc/krb5.conf.d/
>         at 
> org.apache.kerby.kerberos.kerb.common.Krb5Parser.load(Krb5Parser.java:72)
>         at 
> org.apache.kerby.kerberos.kerb.common.Krb5Conf.addKrb5Config(Krb5Conf.java:47)
>         at 
> org.apache.kerby.kerberos.kerb.client.ClientUtil.getDefaultConfig(ClientUtil.java:94)
>         at 
> org.apache.kerby.kerberos.kerb.client.KrbClientBase.<init>(KrbClientBase.java:51)
>         at 
> org.apache.kerby.kerberos.kerb.client.KrbClient.<init>(KrbClient.java:38)
>         at 
> org.apache.kerby.kerberos.kerb.server.SimpleKdcServer.<init>(SimpleKdcServer.java:54)
>         at org.apache.hadoop.minikdc.MiniKdc.start(MiniKdc.java:280)
>         at 
> org.apache.hadoop.crypto.key.kms.server.TestKMS.setUpMiniKdc(TestKMS.java:265)
>         at 
> org.apache.hadoop.crypto.key.kms.server.TestKMS.setUpMiniKdc(TestKMS.java:285)
>         at 
> org.apache.hadoop.crypto.key.kms.server.TestKMS.setUp(TestKMS.java:99)
> testKMSRestartKerberosAuth(org.apache.hadoop.crypto.key.kms.server.TestKMS)  
> Time elapsed: 1.004 sec  <<< ERROR!
> java.lang.RuntimeException: Unable to parse:includedir /etc/krb5.conf.d/
>         at 
> org.apache.kerby.kerberos.kerb.common.Krb5Parser.load(Krb5Parser.java:72)
>         at 
> org.apache.kerby.kerberos.kerb.common.Krb5Conf.addKrb5Config(Krb5Conf.java:47)
>         at 
> org.apache.kerby.kerberos.kerb.client.ClientUtil.getDefaultConfig(ClientUtil.java:94)
>         at 
> org.apache.kerby.kerberos.kerb.client.KrbClientBase.<init>(KrbClientBase.java:51)
>         at 
> org.apache.kerby.kerberos.kerb.client.KrbClient.<init>(KrbClient.java:38)
>         at 
> org.apache.kerby.kerberos.kerb.server.SimpleKdcServer.<init>(SimpleKdcServer.java:54)
>         at org.apache.hadoop.minikdc.MiniKdc.start(MiniKdc.java:280)
>         at 
> org.apache.hadoop.crypto.key.kms.server.TestKMS.setUpMiniKdc(TestKMS.java:265)
>         at 
> org.apache.hadoop.crypto.key.kms.server.TestKMS.setUpMiniKdc(TestKMS.java:285)
>         at 
> org.apache.hadoop.crypto.key.kms.server.TestKMS.setUp(TestKMS.java:99)
> {noformat}
> {{TestKDiag}} has the same error. After removing directive {{includedir}} 
> from {{/etc/krb5.conf}}, the tests passed.
> See http://bugs.java.com/bugdatabase/view_bug.do?bug_id=8029994.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to