Bugfix: Parse the LCAF address by referring to length field value
Change-Id: Ia43521f531ad03f609219048f0fb1485118cd181
diff --git a/protocols/lisp/msg/src/test/java/org/onosproject/lisp/msg/protocols/DefaultLispInfoReplyTest.java b/protocols/lisp/msg/src/test/java/org/onosproject/lisp/msg/protocols/DefaultLispInfoReplyTest.java
index 2ab8002..7e3849a 100644
--- a/protocols/lisp/msg/src/test/java/org/onosproject/lisp/msg/protocols/DefaultLispInfoReplyTest.java
+++ b/protocols/lisp/msg/src/test/java/org/onosproject/lisp/msg/protocols/DefaultLispInfoReplyTest.java
@@ -30,6 +30,7 @@
import org.onosproject.lisp.msg.protocols.LispInfoReply.InfoReplyBuilder;
import org.onosproject.lisp.msg.types.LispIpv4Address;
import org.onosproject.lisp.msg.types.LispNatLcafAddress;
+import org.onosproject.lisp.msg.types.LispNatLcafAddress.NatAddressBuilder;
import static org.hamcrest.MatcherAssert.assertThat;
import static org.hamcrest.Matchers.is;
@@ -58,14 +59,14 @@
LispIpv4Address address1 = new LispIpv4Address(IpAddress.valueOf("192.168.1.4"));
- LispNatLcafAddress natLcafAddress1 = new LispNatLcafAddress.NatAddressBuilder()
- .withLength((short) 0)
- .withMsUdpPortNumber(msUdpPortNumber1)
- .withEtrUdpPortNumber(etrUdpPortNumber1)
- .withGlobalEtrRlocAddress(globalEtrRlocAddress1)
- .withMsRlocAddress(msRlocAddress1)
- .withPrivateEtrRlocAddress(privateEtrRlocAddress1)
- .build();
+ LispNatLcafAddress natLcafAddress1 = new NatAddressBuilder()
+ .withLength((short) 0)
+ .withMsUdpPortNumber(msUdpPortNumber1)
+ .withEtrUdpPortNumber(etrUdpPortNumber1)
+ .withGlobalEtrRlocAddress(globalEtrRlocAddress1)
+ .withMsRlocAddress(msRlocAddress1)
+ .withPrivateEtrRlocAddress(privateEtrRlocAddress1)
+ .build();
reply1 = builder1
.withNonce(1L)
@@ -97,14 +98,14 @@
LispIpv4Address address2 = new LispIpv4Address(IpAddress.valueOf("192.168.2.4"));
- LispNatLcafAddress natLcafAddress2 = new LispNatLcafAddress.NatAddressBuilder()
- .withLength((short) 0)
- .withMsUdpPortNumber(msUdpPortNumber2)
- .withEtrUdpPortNumber(etrUdpPortNumber2)
- .withGlobalEtrRlocAddress(globalEtrRlocAddress2)
- .withMsRlocAddress(msRlocAddress2)
- .withPrivateEtrRlocAddress(privateEtrRlocAddress2)
- .build();
+ LispNatLcafAddress natLcafAddress2 = new NatAddressBuilder()
+ .withLength((short) 0)
+ .withMsUdpPortNumber(msUdpPortNumber2)
+ .withEtrUdpPortNumber(etrUdpPortNumber2)
+ .withGlobalEtrRlocAddress(globalEtrRlocAddress2)
+ .withMsRlocAddress(msRlocAddress2)
+ .withPrivateEtrRlocAddress(privateEtrRlocAddress2)
+ .build();
reply2 = builder3
.withNonce(2L)
@@ -135,7 +136,7 @@
LispIpv4Address msRlocAddress1 = new LispIpv4Address(IpAddress.valueOf("192.168.1.2"));
LispIpv4Address privateEtrRlocAddress1 = new LispIpv4Address(IpAddress.valueOf("192.168.1.3"));
- LispNatLcafAddress natLcafAddress = new LispNatLcafAddress.NatAddressBuilder()
+ LispNatLcafAddress natLcafAddress = new NatAddressBuilder()
.withLength((short) 0)
.withMsUdpPortNumber(msUdpPortNumber1)
.withEtrUdpPortNumber(etrUdpPortNumber1)
diff --git a/protocols/lisp/msg/src/test/java/org/onosproject/lisp/msg/types/LispNatLcafAddressTest.java b/protocols/lisp/msg/src/test/java/org/onosproject/lisp/msg/types/LispNatLcafAddressTest.java
index f8584bdc..2fb6b25 100644
--- a/protocols/lisp/msg/src/test/java/org/onosproject/lisp/msg/types/LispNatLcafAddressTest.java
+++ b/protocols/lisp/msg/src/test/java/org/onosproject/lisp/msg/types/LispNatLcafAddressTest.java
@@ -15,6 +15,7 @@
*/
package org.onosproject.lisp.msg.types;
+import com.google.common.collect.ImmutableList;
import com.google.common.testing.EqualsTester;
import io.netty.buffer.ByteBuf;
import io.netty.buffer.Unpooled;
@@ -28,6 +29,8 @@
import org.onosproject.lisp.msg.types.LispNatLcafAddress.NatLcafAddressReader;
import org.onosproject.lisp.msg.types.LispNatLcafAddress.NatLcafAddressWriter;
+import java.util.List;
+
import static org.hamcrest.MatcherAssert.assertThat;
import static org.hamcrest.Matchers.is;
@@ -51,6 +54,10 @@
LispIpv4Address msRlocAddress1 = new LispIpv4Address(IpAddress.valueOf("192.168.1.2"));
LispIpv4Address privateEtrRlocAddress1 = new LispIpv4Address(IpAddress.valueOf("192.168.1.3"));
+ LispIpv4Address rtrRloc11 = new LispIpv4Address(IpAddress.valueOf("10.1.1.1"));
+ LispIpv4Address rtrRloc12 = new LispIpv4Address(IpAddress.valueOf("10.1.1.2"));
+ List<LispAfiAddress> rtrRlocs1 = ImmutableList.of(rtrRloc11, rtrRloc12);
+
address1 = builder1
.withLength((short) 0)
.withMsUdpPortNumber(msUdpPortNumber1)
@@ -58,6 +65,7 @@
.withGlobalEtrRlocAddress(globalEtrRlocAddress1)
.withMsRlocAddress(msRlocAddress1)
.withPrivateEtrRlocAddress(privateEtrRlocAddress1)
+ .withRtrRlocAddresses(rtrRlocs1)
.build();
NatAddressBuilder builder2 = new NatAddressBuilder();
@@ -69,6 +77,7 @@
.withGlobalEtrRlocAddress(globalEtrRlocAddress1)
.withMsRlocAddress(msRlocAddress1)
.withPrivateEtrRlocAddress(privateEtrRlocAddress1)
+ .withRtrRlocAddresses(rtrRlocs1)
.build();
NatAddressBuilder builder3 = new NatAddressBuilder();
@@ -79,6 +88,10 @@
LispIpv4Address msRlocAddress2 = new LispIpv4Address(IpAddress.valueOf("192.168.2.2"));
LispIpv4Address privateEtrRlocAddress2 = new LispIpv4Address(IpAddress.valueOf("192.168.2.3"));
+ LispIpv4Address rtrRloc21 = new LispIpv4Address(IpAddress.valueOf("10.1.2.1"));
+ LispIpv4Address rtrRloc22 = new LispIpv4Address(IpAddress.valueOf("10.1.2.2"));
+ List<LispAfiAddress> rtrRlocs2 = ImmutableList.of(rtrRloc21, rtrRloc22);
+
address2 = builder3
.withLength((short) 0)
.withMsUdpPortNumber(msUdpPortNumber2)
@@ -86,6 +99,7 @@
.withGlobalEtrRlocAddress(globalEtrRlocAddress2)
.withMsRlocAddress(msRlocAddress2)
.withPrivateEtrRlocAddress(privateEtrRlocAddress2)
+ .withRtrRlocAddresses(rtrRlocs2)
.build();
}
diff --git a/protocols/lisp/msg/src/test/java/org/onosproject/lisp/msg/types/LispTeLcafAddressTest.java b/protocols/lisp/msg/src/test/java/org/onosproject/lisp/msg/types/LispTeLcafAddressTest.java
index 1b58f60..b800e6e 100644
--- a/protocols/lisp/msg/src/test/java/org/onosproject/lisp/msg/types/LispTeLcafAddressTest.java
+++ b/protocols/lisp/msg/src/test/java/org/onosproject/lisp/msg/types/LispTeLcafAddressTest.java
@@ -26,8 +26,8 @@
import org.onosproject.lisp.msg.exceptions.LispReaderException;
import org.onosproject.lisp.msg.exceptions.LispWriterException;
import org.onosproject.lisp.msg.types.LispTeLcafAddress.TeAddressBuilder;
-import org.onosproject.lisp.msg.types.LispTeLcafAddress.TeAddressBuilder.TeLcafAddressReader;
-import org.onosproject.lisp.msg.types.LispTeLcafAddress.TeAddressBuilder.TeLcafAddressWriter;
+import org.onosproject.lisp.msg.types.LispTeLcafAddress.TeLcafAddressReader;
+import org.onosproject.lisp.msg.types.LispTeLcafAddress.TeLcafAddressWriter;
import org.onosproject.lisp.msg.types.LispTeRecord.TeRecordBuilder;
import static org.hamcrest.MatcherAssert.assertThat;