You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@directory.apache.org by pl...@apache.org on 2015/07/29 08:46:26 UTC

directory-kerby git commit: DIRKRB-387 NullPointerException of kinit tool.

Repository: directory-kerby
Updated Branches:
  refs/heads/master 8bc444435 -> 5abee8928


DIRKRB-387 NullPointerException of kinit tool.


Project: http://git-wip-us.apache.org/repos/asf/directory-kerby/repo
Commit: http://git-wip-us.apache.org/repos/asf/directory-kerby/commit/5abee892
Tree: http://git-wip-us.apache.org/repos/asf/directory-kerby/tree/5abee892
Diff: http://git-wip-us.apache.org/repos/asf/directory-kerby/diff/5abee892

Branch: refs/heads/master
Commit: 5abee89289663420f3097c30b41d806261386f1f
Parents: 8bc4444
Author: plusplusjiajia <ji...@intel.com>
Authored: Wed Jul 29 14:51:36 2015 +0800
Committer: plusplusjiajia <ji...@intel.com>
Committed: Wed Jul 29 14:51:36 2015 +0800

----------------------------------------------------------------------
 kerby-dist/tool-dist/conf/krb5.conf                   |  5 +++--
 .../apache/kerby/kerberos/tool/kinit/KinitOption.java |  3 ++-
 .../apache/kerby/kerberos/tool/kinit/KinitTool.java   | 14 ++++++++++----
 3 files changed, 15 insertions(+), 7 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/directory-kerby/blob/5abee892/kerby-dist/tool-dist/conf/krb5.conf
----------------------------------------------------------------------
diff --git a/kerby-dist/tool-dist/conf/krb5.conf b/kerby-dist/tool-dist/conf/krb5.conf
index 69859cc..698daac 100644
--- a/kerby-dist/tool-dist/conf/krb5.conf
+++ b/kerby-dist/tool-dist/conf/krb5.conf
@@ -18,5 +18,6 @@
 
 [libdefaults]
     kdc_realm = EXAMPLE.COM
-    kdc_tcp_port = 8014
-    kdc_udp_port = 8015
+    default_realm = EXAMPLE.COM
+    kdc_udp_port = 8014
+    kdc_tcp_port = 8015

http://git-wip-us.apache.org/repos/asf/directory-kerby/blob/5abee892/kerby-tool/client-tool/src/main/java/org/apache/kerby/kerberos/tool/kinit/KinitOption.java
----------------------------------------------------------------------
diff --git a/kerby-tool/client-tool/src/main/java/org/apache/kerby/kerberos/tool/kinit/KinitOption.java b/kerby-tool/client-tool/src/main/java/org/apache/kerby/kerberos/tool/kinit/KinitOption.java
index da31558..a0dc587 100644
--- a/kerby-tool/client-tool/src/main/java/org/apache/kerby/kerberos/tool/kinit/KinitOption.java
+++ b/kerby-tool/client-tool/src/main/java/org/apache/kerby/kerberos/tool/kinit/KinitOption.java
@@ -47,7 +47,8 @@ public enum KinitOption implements KOption {
     KRB5_CACHE("-c", "Kerberos 5 cache name", KOptionType.STR),
     SERVICE("-S", "service", KOptionType.STR),
     ARMOR_CACHE("-T", "armor credential cache", KOptionType.FILE),
-    XATTR("-X", "<attribute>[=<value>]", KOptionType.STR);
+    XATTR("-X", "<attribute>[=<value>]", KOptionType.STR),
+    CONF_DIR("-conf", "conf dir", KOptionType.DIR);
 
     private String name;
     private KOptionType type = KOptionType.NONE;

http://git-wip-us.apache.org/repos/asf/directory-kerby/blob/5abee892/kerby-tool/client-tool/src/main/java/org/apache/kerby/kerberos/tool/kinit/KinitTool.java
----------------------------------------------------------------------
diff --git a/kerby-tool/client-tool/src/main/java/org/apache/kerby/kerberos/tool/kinit/KinitTool.java b/kerby-tool/client-tool/src/main/java/org/apache/kerby/kerberos/tool/kinit/KinitTool.java
index 932ed94..769f0c9 100644
--- a/kerby-tool/client-tool/src/main/java/org/apache/kerby/kerberos/tool/kinit/KinitTool.java
+++ b/kerby-tool/client-tool/src/main/java/org/apache/kerby/kerberos/tool/kinit/KinitTool.java
@@ -39,7 +39,7 @@ import java.util.Scanner;
 public class KinitTool {
 
     private static final String USAGE =
-            "Usage: kinit [-V] [-l lifetime] [-s start_time]\n"
+            "Usage: kinit -conf conf_dir [-V] [-l lifetime] [-s start_time]\n"
                     + "\t\t[-r renewable_life] [-f | -F] [-p | -P] -n [-a | -A] [-C] [-E]\n"
                     + "\t\t[-v] [-R] [-k [-i|-t keytab_file]] [-c cachename]\n"
                     + "\t\t[-S service_name] [-T ticket_armor_cache]\n"
@@ -111,7 +111,13 @@ public class KinitTool {
             ktOptions.add(KinitOption.USER_PASSWD, password);
         }
 
-        KrbClient krbClient = getClient();
+        File confDir = null;
+        if (ktOptions.contains(KinitOption.CONF_DIR)) {
+            confDir = ktOptions.getDirOption(KinitOption.CONF_DIR);
+        } else {
+            printUsage("Can't get the conf dir!");
+        }
+        KrbClient krbClient = getClient(confDir);
         TgtTicket tgt = krbClient.requestTgtWithOptions(
                 ToolUtil.convertOptions(ktOptions));
 
@@ -138,8 +144,8 @@ public class KinitTool {
     /**
      * Init the client.
      */
-    private static KrbClient getClient() throws KrbException {
-        KrbClient krbClient = new KrbClient();
+    private static KrbClient getClient(File confDir) throws KrbException {
+        KrbClient krbClient = new KrbClient(confDir);
         krbClient.init();
         return krbClient;
     }