From c909d2e1e1139721ec9ed0bbc0fdef7febd6b16a Mon Sep 17 00:00:00 2001
From: Jean-Noel Rouvignac <jean-noel.rouvignac@forgerock.com>
Date: Wed, 17 Sep 2014 08:03:46 +0000
Subject: [PATCH] OPENDJ-1560 modify/modifyrdn operations are not working in mix replication topology
---
opends/src/server/org/opends/server/replication/protocol/ModifyMsg.java | 11 ++++++++---
1 files changed, 8 insertions(+), 3 deletions(-)
diff --git a/opends/src/server/org/opends/server/replication/protocol/ModifyMsg.java b/opends/src/server/org/opends/server/replication/protocol/ModifyMsg.java
index e37158e..db138d1 100644
--- a/opends/src/server/org/opends/server/replication/protocol/ModifyMsg.java
+++ b/opends/src/server/org/opends/server/replication/protocol/ModifyMsg.java
@@ -34,7 +34,11 @@
import org.opends.server.protocols.asn1.ASN1Exception;
import org.opends.server.protocols.internal.InternalClientConnection;
import org.opends.server.replication.common.CSN;
-import org.opends.server.types.*;
+import org.opends.server.types.ByteString;
+import org.opends.server.types.DN;
+import org.opends.server.types.LDAPException;
+import org.opends.server.types.Modification;
+import org.opends.server.types.RawModification;
import org.opends.server.types.operation.PostOperationModifyOperation;
import static org.opends.server.replication.protocol.OperationContext.*;
@@ -197,9 +201,9 @@
final ByteArrayBuilder builder =
encodeHeader(MSG_TYPE_MODIFY, protocolVersion);
builder.appendIntUTF8(encodedMods.length);
- builder.appendByteArray(encodedMods);
+ builder.appendZeroTerminatedByteArray(encodedMods);
builder.appendIntUTF8(encodedEclIncludes.length);
- builder.appendByteArray(encodedEclIncludes);
+ builder.appendZeroTerminatedByteArray(encodedEclIncludes);
return builder.toByteArray();
}
@@ -218,6 +222,7 @@
{
final int modsLen = scanner.nextIntUTF8();
this.encodedMods = scanner.nextByteArray(modsLen);
+ scanner.skipZeroSeparator();
final int eclAttrLen = scanner.nextIntUTF8();
encodedEclIncludes = scanner.nextByteArray(eclAttrLen);
--
Gitblit v1.10.0