[ONOS-5623] Enhance map server to handle Info-Request control msg

Change-Id: If5f68041fbef786e912fc17e33a0e296df73cd3d
diff --git a/protocols/lisp/msg/src/main/java/org/onosproject/lisp/msg/protocols/DefaultLispInfoReply.java b/protocols/lisp/msg/src/main/java/org/onosproject/lisp/msg/protocols/DefaultLispInfoReply.java
index 29cd39e..5ab4f96 100644
--- a/protocols/lisp/msg/src/main/java/org/onosproject/lisp/msg/protocols/DefaultLispInfoReply.java
+++ b/protocols/lisp/msg/src/main/java/org/onosproject/lisp/msg/protocols/DefaultLispInfoReply.java
@@ -128,7 +128,7 @@
 
 
         @Override
-        public InfoReplyBuilder withInfoReply(boolean infoReply) {
+        public InfoReplyBuilder withIsInfoReply(boolean infoReply) {
             this.infoReply = infoReply;
             return this;
         }
@@ -236,7 +236,7 @@
             LispNatLcafAddress natLcafAddress = new LispNatLcafAddress.NatLcafAddressReader().readFrom(byteBuf);
 
             return new DefaultInfoReplyBuilder()
-                    .withInfoReply(lispInfo.isInfoReply())
+                    .withIsInfoReply(lispInfo.isInfoReply())
                     .withNonce(lispInfo.getNonce())
                     .withKeyId(lispInfo.getKeyId())
                     .withAuthDataLength(lispInfo.getAuthDataLength())
diff --git a/protocols/lisp/msg/src/main/java/org/onosproject/lisp/msg/protocols/DefaultLispInfoRequest.java b/protocols/lisp/msg/src/main/java/org/onosproject/lisp/msg/protocols/DefaultLispInfoRequest.java
index a24fd1a..18a055f 100644
--- a/protocols/lisp/msg/src/main/java/org/onosproject/lisp/msg/protocols/DefaultLispInfoRequest.java
+++ b/protocols/lisp/msg/src/main/java/org/onosproject/lisp/msg/protocols/DefaultLispInfoRequest.java
@@ -114,7 +114,7 @@
 
 
         @Override
-        public InfoRequestBuilder withInfoReply(boolean infoReply) {
+        public InfoRequestBuilder withIsInfoReply(boolean infoReply) {
             this.infoReply = infoReply;
             return this;
         }
@@ -215,7 +215,7 @@
             LispInfo lispInfo = DefaultLispInfo.deserialize(byteBuf);
 
             return new DefaultInfoRequestBuilder()
-                    .withInfoReply(lispInfo.isInfoReply())
+                    .withIsInfoReply(lispInfo.isInfoReply())
                     .withNonce(lispInfo.getNonce())
                     .withKeyId(lispInfo.getKeyId())
                     .withAuthDataLength(lispInfo.getAuthDataLength())
diff --git a/protocols/lisp/msg/src/main/java/org/onosproject/lisp/msg/protocols/InfoBuilder.java b/protocols/lisp/msg/src/main/java/org/onosproject/lisp/msg/protocols/InfoBuilder.java
index 655eb49..159bbd7 100644
--- a/protocols/lisp/msg/src/main/java/org/onosproject/lisp/msg/protocols/InfoBuilder.java
+++ b/protocols/lisp/msg/src/main/java/org/onosproject/lisp/msg/protocols/InfoBuilder.java
@@ -29,7 +29,7 @@
      * @param infoReply info reply
      * @return T object
      */
-    T withInfoReply(boolean infoReply);
+    T withIsInfoReply(boolean infoReply);
 
     /**
      * Sets nonce value.
diff --git a/protocols/lisp/msg/src/main/java/org/onosproject/lisp/msg/protocols/LispInfoReply.java b/protocols/lisp/msg/src/main/java/org/onosproject/lisp/msg/protocols/LispInfoReply.java
index 05c642c..4e8af92 100644
--- a/protocols/lisp/msg/src/main/java/org/onosproject/lisp/msg/protocols/LispInfoReply.java
+++ b/protocols/lisp/msg/src/main/java/org/onosproject/lisp/msg/protocols/LispInfoReply.java
@@ -20,8 +20,8 @@
 /**
  * LISP info reply message interface.
  * <p>
- * LISP info reply message format is defined in draft-ermagan-lisp-nat-traversal-01.
- * https://tools.ietf.org/html/draft-ermagan-lisp-nat-traversal-01#page-8
+ * LISP info reply message format is defined in draft-ermagan-lisp-nat-traversal-11.
+ * https://tools.ietf.org/html/draft-ermagan-lisp-nat-traversal-11#page-9
  *
  * <pre>
  * {@literal
diff --git a/protocols/lisp/msg/src/main/java/org/onosproject/lisp/msg/protocols/LispInfoRequest.java b/protocols/lisp/msg/src/main/java/org/onosproject/lisp/msg/protocols/LispInfoRequest.java
index 81a9dcf..40fb1f8 100644
--- a/protocols/lisp/msg/src/main/java/org/onosproject/lisp/msg/protocols/LispInfoRequest.java
+++ b/protocols/lisp/msg/src/main/java/org/onosproject/lisp/msg/protocols/LispInfoRequest.java
@@ -18,8 +18,8 @@
 /**
  * LISP info request message interface.
  * <p>
- * LISP info request message format is defined in draft-ermagan-lisp-nat-traversal-01.
- * https://tools.ietf.org/html/draft-ermagan-lisp-nat-traversal-01#page-7
+ * LISP info request message format is defined in draft-ermagan-lisp-nat-traversal-11.
+ * https://tools.ietf.org/html/draft-ermagan-lisp-nat-traversal-11#page-7
  *
  * <pre>
  * {@literal
diff --git a/protocols/lisp/msg/src/main/java/org/onosproject/lisp/msg/types/LispAfiAddress.java b/protocols/lisp/msg/src/main/java/org/onosproject/lisp/msg/types/LispAfiAddress.java
index 7f67277..0942431 100644
--- a/protocols/lisp/msg/src/main/java/org/onosproject/lisp/msg/types/LispAfiAddress.java
+++ b/protocols/lisp/msg/src/main/java/org/onosproject/lisp/msg/types/LispAfiAddress.java
@@ -92,6 +92,7 @@
             // handle no address
             if (afiCode == NO_ADDRESS.getIanaCode()) {
                 byteBuf.readUnsignedShort();
+                return new LispNoAddress.NoAddressReader().readFrom(byteBuf);
             }
 
             // handle IPv4 and IPv6 address
@@ -136,6 +137,9 @@
             byteBuf.writeShort(address.getAfi().getIanaCode());
 
             switch (address.getAfi()) {
+                case NO_ADDRESS:
+                    new LispNoAddress.NoAddressWriter().writeTo(byteBuf, (LispNoAddress) address);
+                    break;
                 case IP4:
                     new LispIpAddress.IpAddressWriter().writeTo(byteBuf, (LispIpv4Address) address);
                     break;
diff --git a/protocols/lisp/msg/src/main/java/org/onosproject/lisp/msg/types/LispNoAddress.java b/protocols/lisp/msg/src/main/java/org/onosproject/lisp/msg/types/LispNoAddress.java
index a8894eb..a36c386 100644
--- a/protocols/lisp/msg/src/main/java/org/onosproject/lisp/msg/types/LispNoAddress.java
+++ b/protocols/lisp/msg/src/main/java/org/onosproject/lisp/msg/types/LispNoAddress.java
@@ -49,7 +49,7 @@
 
         @Override
         public void writeTo(ByteBuf byteBuf, LispNoAddress address) throws LispWriterException {
-
+            // since there is nothing to write to channel, we just leave it empty
         }
     }
 }