DIRKRB-613 Tests fails on systems with includedir in /etc/krb5.conf.
diff --git a/kerby-kerb/kerb-common/src/main/java/org/apache/kerby/kerberos/kerb/common/Krb5Parser.java b/kerby-kerb/kerb-common/src/main/java/org/apache/kerby/kerberos/kerb/common/Krb5Parser.java
index 9f4196c..2a72add 100644
--- a/kerby-kerb/kerb-common/src/main/java/org/apache/kerby/kerberos/kerb/common/Krb5Parser.java
+++ b/kerby-kerb/kerb-common/src/main/java/org/apache/kerby/kerberos/kerb/common/Krb5Parser.java
@@ -68,7 +68,15 @@
             }   else if (line.startsWith("[")) {
                 insertSections(line, br, items);
                 originLine = br.readLine();
-            }   else {
+            } else if (line.startsWith("include")) {
+                String[] splited = line.trim().split("\\s+");
+                if (splited.length == 2) {
+                    items.put(splited[0], splited[1]);
+                } else {
+                    throw new RuntimeException("Unable to parse:" + originLine);
+                }
+                originLine = br.readLine();
+            } else {
                 throw new RuntimeException("Unable to parse:" + originLine);
             }
         }
@@ -105,6 +113,9 @@
         for (Map.Entry<String, Object> item : items.entrySet()) {
             if (item.getKey().equals(sectionName)) {
                 value = item.getValue();
+                if (keys.length == 0) {
+                    return value;
+                }
                 Map<String, Object> map = (Map) item.getValue();
                 for (Map.Entry<String, Object> entry : map.entrySet()) {
                     if (entry.getKey().equals(keys[0])) {
diff --git a/kerby-kerb/kerb-common/src/test/java/org/apache/kerby/kerberos/kerb/Krb5ParserTest.java b/kerby-kerb/kerb-common/src/test/java/org/apache/kerby/kerberos/kerb/Krb5ParserTest.java
index fb09722..89e5fab 100644
--- a/kerby-kerb/kerb-common/src/test/java/org/apache/kerby/kerberos/kerb/Krb5ParserTest.java
+++ b/kerby-kerb/kerb-common/src/test/java/org/apache/kerby/kerberos/kerb/Krb5ParserTest.java
@@ -42,8 +42,10 @@
         Krb5Parser k = new Krb5Parser(new File(url.getFile()));
         k.load();
 
-        assertThat(k.getSections().size()).isEqualTo(4);
+        assertThat(k.getSections().size()).isEqualTo(5);
         assertThat(k.getSections().contains("libdefaults")).isTrue();
+        assertThat(k.getSections().contains("include")).isTrue();
+        assertThat(k.getSection("include")).isEqualTo("/etc");
 
         assertThat(k.getSection("libdefaults", "dns_lookup_kdc")).isEqualTo("false");
         assertThat(k.getSection("realms", "ATHENA.MIT.EDU") instanceof Map).isTrue();
diff --git a/kerby-kerb/kerb-common/src/test/resources/krb5.conf b/kerby-kerb/kerb-common/src/test/resources/krb5.conf
index 1a5b35e..43c62e2 100644
--- a/kerby-kerb/kerb-common/src/test/resources/krb5.conf
+++ b/kerby-kerb/kerb-common/src/test/resources/krb5.conf
@@ -15,6 +15,7 @@
 # See the License for the specific language governing permissions and
 # limitations under the License.
 #
+include /etc
 [libdefaults]
   default_realm = KRB.COM
   kdc_host = kdc-server.example.com