From db242078285de4c1039e05b85b8a6eb6714cd21f Mon Sep 17 00:00:00 2001
From: coulbeck <coulbeck@localhost>
Date: Tue, 02 Oct 2007 17:28:42 +0000
Subject: [PATCH] More changes for issue 466. Symmetric key values and instance key identifier values are now represented as Strings instead of byte arrays.

---
 opends/src/server/org/opends/server/extensions/GetSymmetricKeyExtendedOperation.java |   20 +++++++++++++-------
 1 files changed, 13 insertions(+), 7 deletions(-)

diff --git a/opends/src/server/org/opends/server/extensions/GetSymmetricKeyExtendedOperation.java b/opends/src/server/org/opends/server/extensions/GetSymmetricKeyExtendedOperation.java
index 6ab1544..86426d0 100644
--- a/opends/src/server/org/opends/server/extensions/GetSymmetricKeyExtendedOperation.java
+++ b/opends/src/server/org/opends/server/extensions/GetSymmetricKeyExtendedOperation.java
@@ -150,8 +150,8 @@
   {
     // Initialize the variables associated with components that may be included
     // in the request.
-    byte[] requestSymmetricKey = null;
-    byte[] instanceKeyID       = null;
+    String requestSymmetricKey = null;
+    String instanceKeyID       = null;
 
 
 
@@ -175,11 +175,12 @@
         {
           case TYPE_SYMMETRIC_KEY_ELEMENT:
             requestSymmetricKey =
-                 ASN1OctetString.decodeAsOctetString(e).value();
+                 ASN1OctetString.decodeAsOctetString(e).stringValue();
             break;
 
           case TYPE_INSTANCE_KEY_ID_ELEMENT:
-            instanceKeyID = ASN1OctetString.decodeAsOctetString(e).value();
+            instanceKeyID =
+                 ASN1OctetString.decodeAsOctetString(e).stringValue();
             break;
 
           default:
@@ -220,7 +221,7 @@
     CryptoManager cm = DirectoryServer.getCryptoManager();
     try
     {
-      byte[] responseSymmetricKey = cm.rewrapSymmetricKeyAttribute(
+      String responseSymmetricKey = cm.rewrapSymmetricKeyAttribute(
            requestSymmetricKey, instanceKeyID);
 
       operation.setResponseOID(
@@ -233,6 +234,11 @@
       operation.setResultCode(DirectoryServer.getServerErrorResultCode());
       operation.appendErrorMessage(e.getMessageObject());
     }
+    catch (Exception e)
+    {
+      operation.setResultCode(DirectoryServer.getServerErrorResultCode());
+      operation.appendErrorMessage(StaticUtils.getExceptionMessage(e));
+    }
   }
 
   /**
@@ -246,8 +252,8 @@
    * @return  An ASN.1 octet string containing the encoded request value.
    */
   public static ASN1OctetString encodeRequestValue(
-       byte[] symmetricKey,
-       byte[] instanceKeyID)
+       String symmetricKey,
+       String instanceKeyID)
   {
     ArrayList<ASN1Element> elements = new ArrayList<ASN1Element>(2);
 

--
Gitblit v1.10.0