From cb41830f3b890ffa5702ad9c32fa70bafa162f7b Mon Sep 17 00:00:00 2001 From: Giles Heron Date: Thu, 30 Jun 2016 18:03:21 +1000 Subject: [PATCH] add check for null IP address when serializing MAC/IP advertisment route Change-Id: I4562587fd32a6d6576d7f2f59f180068d1d86282 Signed-off-by: Giles Heron --- .../bgp/evpn/impl/nlri/MACIpAdvRParser.java | 16 ++++++++++------ 1 file changed, 10 insertions(+), 6 deletions(-) diff --git a/bgp/evpn/src/main/java/org/opendaylight/protocol/bgp/evpn/impl/nlri/MACIpAdvRParser.java b/bgp/evpn/src/main/java/org/opendaylight/protocol/bgp/evpn/impl/nlri/MACIpAdvRParser.java index 4295769a2e..e132f58ca8 100644 --- a/bgp/evpn/src/main/java/org/opendaylight/protocol/bgp/evpn/impl/nlri/MACIpAdvRParser.java +++ b/bgp/evpn/src/main/java/org/opendaylight/protocol/bgp/evpn/impl/nlri/MACIpAdvRParser.java @@ -125,12 +125,16 @@ final class MACIpAdvRParser extends AbstractEvpnNlri { private static ByteBuf serializeIp(final IpAddress ipAddress) { final ByteBuf body = Unpooled.buffer(); - if (ipAddress.getIpv4Address() != null) { - body.writeByte(Ipv4Util.IP4_BITS_LENGTH); - body.writeBytes(Ipv4Util.bytesForAddress(ipAddress.getIpv4Address())); - } else if (ipAddress.getIpv6Address() != null) { - body.writeByte(Ipv6Util.IPV6_BITS_LENGTH); - body.writeBytes(Ipv6Util.bytesForAddress(ipAddress.getIpv6Address())); + if (ipAddress != null) { + if (ipAddress.getIpv4Address() != null) { + body.writeByte(Ipv4Util.IP4_BITS_LENGTH); + body.writeBytes(Ipv4Util.bytesForAddress(ipAddress.getIpv4Address())); + } else if (ipAddress.getIpv6Address() != null) { + body.writeByte(Ipv6Util.IPV6_BITS_LENGTH); + body.writeBytes(Ipv6Util.bytesForAddress(ipAddress.getIpv6Address())); + } else { + body.writeZero(ZERO_BYTE); + } } else { body.writeZero(ZERO_BYTE); } -- 2.36.6