BGPServerSessionNegotiator: Use the correct AS number 84/21884/3
authorVratko Polak <vrpolak@cisco.com>
Thu, 4 Jun 2015 16:28:10 +0000 (18:28 +0200)
committerGerrit Code Review <gerrit@opendaylight.org>
Tue, 9 Jun 2015 12:57:36 +0000 (12:57 +0000)
Before: toLong() on 2-octet value could result in AS_TRANS.
After: AsNumberUtil.advertizedAsNumber gives the correct 4-octet value.

Change-Id: I46b2a4baa25029b872e9b52c98823ee2b7f956bf
Signed-off-by: Vratko Polak <vrpolak@cisco.com>
bgp/rib-impl/src/main/java/org/opendaylight/protocol/bgp/rib/impl/BGPServerSessionNegotiator.java

index 10cd5e3c110f135cdb491dc359aa5fdbd0e3cb63..75cc519ee8a128f7ac692280207517397feb348d 100644 (file)
@@ -10,6 +10,7 @@ package org.opendaylight.protocol.bgp.rib.impl;
 
 import io.netty.channel.Channel;
 import io.netty.util.concurrent.Promise;
+import org.opendaylight.protocol.bgp.parser.AsNumberUtil;
 import org.opendaylight.protocol.bgp.rib.impl.spi.BGPPeerRegistry;
 import org.opendaylight.protocol.bgp.rib.impl.spi.BGPSessionPreferences;
 import org.opendaylight.protocol.bgp.rib.impl.spi.BGPSessionValidator;
@@ -39,6 +40,6 @@ public final class BGPServerSessionNegotiator extends AbstractBGPSessionNegotiat
 
     @Override
     protected AsNumber getAsNumber(Open openMsg, BGPSessionPreferences preferences) {
-        return new AsNumber(openMsg.getMyAsNumber().longValue());
+        return new AsNumber(AsNumberUtil.advertizedAsNumber(openMsg));
     }
 }