From 7369ecc8296a0329e424596ff71c60629add3ce2 Mon Sep 17 00:00:00 2001
From: neil_a_wilson <neil_a_wilson@localhost>
Date: Wed, 21 Feb 2007 19:44:18 +0000
Subject: [PATCH] Redesign the server to support multiple key manager providers, trust manager providers, and certificate mappers, and update the components which need access to those elements so that they can specify which one they want to use.  Among other things, this will provide the ability to use different certificates for different listeners, and provide template configuration entries that make it easier for users to enable SSL and/or StartTLS.

---
 opends/src/server/org/opends/server/api/ClientConnection.java |   46 ++++++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 46 insertions(+), 0 deletions(-)

diff --git a/opends/src/server/org/opends/server/api/ClientConnection.java b/opends/src/server/org/opends/server/api/ClientConnection.java
index 48a98ea..4eaa9b8 100644
--- a/opends/src/server/org/opends/server/api/ClientConnection.java
+++ b/opends/src/server/org/opends/server/api/ClientConnection.java
@@ -1442,6 +1442,52 @@
 
 
   /**
+   * Retrieves the DN of the key manager provider that should be used
+   * for operations requiring access to a key manager.  The default
+   * implementation returns {@code null} to indicate that no key
+   * manager provider is avaialble, but subclasses should override
+   * this method to return a valid DN if they perform operations which
+   * may need access to a key manager.
+   *
+   * @return  The DN of the key manager provider that should be used
+   *          for operations requiring access to a key manager, or
+   *          {@code null} if there is no key manager provider
+   *          configured for this client connection.
+   */
+  public DN getKeyManagerProviderDN()
+  {
+    assert debugEnter(CLASS_NAME, "getKeyManagerProviderDN");
+
+    // In the default implementation, we'll return null.
+    return null;
+  }
+
+
+
+  /**
+   * Retrieves the DN of the trust manager provider that should be
+   * used for operations requiring access to a trust manager.  The
+   * default implementation returns {@code null} to indicate that no
+   * trust manager provider is avaialble, but subclasses should
+   * override this method to return a valid DN if they perform
+   * operations which may need access to a trust manager.
+   *
+   * @return  The DN of the trust manager provider that should be used
+   *          for operations requiring access to a trust manager, or
+   *          {@code null} if there is no trust manager provider
+   *          configured for this client connection.
+   */
+  public DN getTrustManagerProviderDN()
+  {
+    assert debugEnter(CLASS_NAME, "getTrustManagerProviderDN");
+
+    // In the default implementation, we'll return null.
+    return null;
+  }
+
+
+
+  /**
    * Retrieves a string representation of this client connection.
    *
    * @return  A string representation of this client connection.

--
Gitblit v1.10.0