paths should from bgp peer connect points for Internet-to-local traffic
Change-Id: I04c7f5b8efc9279ee3e15fb27435a2201cccb5f1
diff --git a/apps/routing/src/main/java/org/onosproject/routing/config/impl/RoutingConfigurationImpl.java b/apps/routing/src/main/java/org/onosproject/routing/config/impl/RoutingConfigurationImpl.java
index feffe48..60e53a1 100644
--- a/apps/routing/src/main/java/org/onosproject/routing/config/impl/RoutingConfigurationImpl.java
+++ b/apps/routing/src/main/java/org/onosproject/routing/config/impl/RoutingConfigurationImpl.java
@@ -71,6 +71,7 @@
private Map<String, BgpSpeaker> bgpSpeakers = new ConcurrentHashMap<>();
private Map<IpAddress, BgpPeer> bgpPeers = new ConcurrentHashMap<>();
private Set<IpAddress> gatewayIpAddresses = new HashSet<>();
+ private Set<ConnectPoint> bgpPeerConnectPoints = new HashSet<>();
private InvertedRadixTree<LocalIpPrefixEntry>
localPrefixTable4 = new ConcurrentInvertedRadixTree<>(
@@ -108,6 +109,7 @@
}
for (BgpPeer peer : config.getPeers()) {
bgpPeers.put(peer.ipAddress(), peer);
+ bgpPeerConnectPoints.add(peer.connectPoint());
}
for (LocalIpPrefixEntry entry : config.getLocalIp4PrefixEntries()) {
@@ -154,6 +156,11 @@
}
@Override
+ public Set<ConnectPoint> getBgpPeerConnectPoints() {
+ return Collections.unmodifiableSet(bgpPeerConnectPoints);
+ }
+
+ @Override
public Interface getInterface(ConnectPoint connectPoint) {
return hostAdaptor.getInterface(connectPoint);
}