From 6c0c2eea3e22549589ad6ce4ab7cf71fcfc93969 Mon Sep 17 00:00:00 2001
From: Ludovic Poitou <ludovic.poitou@forgerock.com>
Date: Mon, 30 May 2011 12:27:38 +0000
Subject: [PATCH] Fix issue OPENDJ-171 - OpenDJ does not support a NULL ChangeLog Cookie value. No brainer : If there's no value, create an empty MultiDomainServerState. The server already knows how to deal with them. 

---
 opends/src/server/org/opends/server/controls/ExternalChangelogRequestControl.java |   10 +++++-----
 1 files changed, 5 insertions(+), 5 deletions(-)

diff --git a/opends/src/server/org/opends/server/controls/ExternalChangelogRequestControl.java b/opends/src/server/org/opends/server/controls/ExternalChangelogRequestControl.java
index 8f1fdcc..3d13cd4 100644
--- a/opends/src/server/org/opends/server/controls/ExternalChangelogRequestControl.java
+++ b/opends/src/server/org/opends/server/controls/ExternalChangelogRequestControl.java
@@ -23,6 +23,7 @@
  *
  *
  *      Copyright 2009 Sun Microsystems, Inc.
+ *      Portions Copyright 2011 ForgeRock AS
  */
 package org.opends.server.controls;
 import static org.opends.messages.ProtocolMessages.*;
@@ -66,15 +67,13 @@
         ByteString value)
     throws DirectoryException
     {
+      MultiDomainServerState mdss;
       if (value == null)
       {
-        // FIXME:ECL In the request cookie, empty value is currently rejected.
-        Message message = ERR_PSEARCH_NO_CONTROL_VALUE.get();
-        throw new DirectoryException(ResultCode.PROTOCOL_ERROR, message);
-      }
+        mdss = new MultiDomainServerState();
+      } else {
 
       ASN1Reader reader = ASN1.getReader(value);
-      MultiDomainServerState mdss;
       String mdssValue = null;
       try
       {
@@ -97,6 +96,7 @@
           throw new DirectoryException(ResultCode.PROTOCOL_ERROR, message, e);
         }
       }
+      }
       return new ExternalChangelogRequestControl(isCritical, mdss);
     }
 

--
Gitblit v1.10.0