From 41bef7c0b619c7bc925326451a56071b5736580a Mon Sep 17 00:00:00 2001
From: Matthew Swift <matthew.swift@forgerock.com>
Date: Wed, 19 Jun 2013 08:36:16 +0000
Subject: [PATCH] Fix OPENDJ-986: Exception when reading messages from Replication server RS
---
opends/src/server/org/opends/server/replication/protocol/ReplServerStartMsg.java | 23 ++++++-----------------
1 files changed, 6 insertions(+), 17 deletions(-)
diff --git a/opends/src/server/org/opends/server/replication/protocol/ReplServerStartMsg.java b/opends/src/server/org/opends/server/replication/protocol/ReplServerStartMsg.java
index 6fce977..faa68cd 100644
--- a/opends/src/server/org/opends/server/replication/protocol/ReplServerStartMsg.java
+++ b/opends/src/server/org/opends/server/replication/protocol/ReplServerStartMsg.java
@@ -23,6 +23,7 @@
*
*
* Copyright 2006-2009 Sun Microsystems, Inc.
+ * Portions copyright 2013 ForgeRock AS.
*/
package org.opends.server.replication.protocol;
@@ -72,7 +73,6 @@
* @param baseDn base DN for which the ReplServerStartMsg is created.
* @param windowSize The window size.
* @param serverState our ServerState for this baseDn.
- * @param protocolVersion The replication protocol version of the creator.
* @param generationId The generationId for this server.
* @param sslEncryption Whether to continue using SSL to encrypt messages
* after the start messages have been exchanged.
@@ -82,13 +82,12 @@
public ReplServerStartMsg(int serverId, String serverURL, String baseDn,
int windowSize,
ServerState serverState,
- short protocolVersion,
long generationId,
boolean sslEncryption,
byte groupId,
int degradedStatusThreshold)
{
- super(protocolVersion, generationId);
+ super((short) -1 /* version set when sending */, generationId);
this.serverId = serverId;
this.serverURL = serverURL;
if (baseDn != null)
@@ -302,21 +301,11 @@
* {@inheritDoc}
*/
@Override
- public byte[] getBytes()
- throws UnsupportedEncodingException
- {
- return getBytes(ProtocolVersion.getCurrentVersion());
- }
-
- /**
- * {@inheritDoc}
- */
- @Override
- public byte[] getBytes(short protocolVersion)
+ public byte[] getBytes(short sessionProtocolVersion)
throws UnsupportedEncodingException
{
// If an older version requested, encode in the requested way
- switch(protocolVersion)
+ switch(sessionProtocolVersion)
{
case ProtocolVersion.REPLICATION_PROTOCOL_V1:
return getBytes_V1();
@@ -344,8 +333,8 @@
byteServerState.length + 1;
/* encode the header in a byte[] large enough */
- byte resultByteArray[] =
- encodeHeader(MSG_TYPE_REPL_SERVER_START, length, protocolVersion);
+ byte resultByteArray[] = encodeHeader(MSG_TYPE_REPL_SERVER_START, length,
+ sessionProtocolVersion);
int pos = headerLength;
--
Gitblit v1.10.0