From 0d6c47daf12ae94aec0f633e22552f553ec5d4df Mon Sep 17 00:00:00 2001
From: dugan <dugan@localhost>
Date: Fri, 29 Sep 2006 18:19:45 +0000
Subject: [PATCH] Fix null pointer exception handling

---
 opends/src/server/org/opends/server/config/JMXMBean.java |   36 +++++++++++++++++-------------------
 1 files changed, 17 insertions(+), 19 deletions(-)

diff --git a/opends/src/server/org/opends/server/config/JMXMBean.java b/opends/src/server/org/opends/server/config/JMXMBean.java
index 6e70af4..92d2b13 100644
--- a/opends/src/server/org/opends/server/config/JMXMBean.java
+++ b/opends/src/server/org/opends/server/config/JMXMBean.java
@@ -1213,30 +1213,28 @@
   }
 
   /**
-   * Get the client connection to use.
+   * Get the client JMX connection to use. Returns null if an Exception is caught or if 
+   * the AccessControlContext subject is null.
    *
-   * @return The JmxClientConnection
+   * @return The JmxClientConnection.
    */
   private JmxClientConnection getClientConnection()
   {
-    java.security.AccessControlContext acc = java.security.AccessController
-        .getContext();
-    javax.security.auth.Subject subject = javax.security.auth.Subject
-        .getSubject(acc);
-
-    try
-    {
-      Set privateCreds = subject.getPrivateCredentials(Credential.class);
-
-      JmxClientConnection jmxClientConnection = ((Credential) privateCreds
-          .iterator().next()).getClientConnection();
-
+      JmxClientConnection jmxClientConnection=null;
+      java.security.AccessControlContext acc = java.security.AccessController
+      .getContext();
+      try
+      {
+          javax.security.auth.Subject subject = javax.security.auth.Subject
+          .getSubject(acc);
+          if(subject != null) {
+              Set privateCreds = subject.getPrivateCredentials(Credential.class);
+              jmxClientConnection = ((Credential) privateCreds
+                      .iterator().next()).getClientConnection();
+          }
+      }
+      catch (Exception e) {}
       return jmxClientConnection;
-    }
-    catch (Exception e)
-    {
-      return null;
-    }
   }
 }
 

--
Gitblit v1.10.0