Add unit tests for LISP address serializer and deserializer
Change-Id: I56538221f3951d18c1feb9343d87cbb46c3ed04d
diff --git a/protocols/lisp/msg/src/main/java/org/onosproject/lisp/msg/types/LispDistinguishedNameAddress.java b/protocols/lisp/msg/src/main/java/org/onosproject/lisp/msg/types/LispDistinguishedNameAddress.java
index 77f1c08..d4be998 100644
--- a/protocols/lisp/msg/src/main/java/org/onosproject/lisp/msg/types/LispDistinguishedNameAddress.java
+++ b/protocols/lisp/msg/src/main/java/org/onosproject/lisp/msg/types/LispDistinguishedNameAddress.java
@@ -84,10 +84,10 @@
public LispDistinguishedNameAddress readFrom(ByteBuf byteBuf) throws LispParseError {
StringBuilder sb = new StringBuilder();
- byte character = byteBuf.readByte();
- while (character != 0) {
- sb.append((char) character);
+ byte character;
+ while (byteBuf.readerIndex() < byteBuf.writerIndex()) {
character = byteBuf.readByte();
+ sb.append((char) character);
}
return new LispDistinguishedNameAddress(sb.toString());
@@ -105,7 +105,7 @@
String distinguishedName = address.getDistinguishedName();
byte[] nameBytes = distinguishedName.getBytes();
for (int i = 0; i < nameBytes.length; i++) {
- byteBuf.writeChar(nameBytes[i]);
+ byteBuf.writeByte(nameBytes[i]);
}
}
}