12 #include "bgp/bgp_peer_types.h"
34 if (loc->second->IsDeleted())
42 BgpStaticObjectFactory::Create<BgpPeer>(
server,
instance(), config);
144 if (loc->second == peer) {
169 if (ip_address.empty())
172 boost::system::error_code ec;
173 boost::asio::ip::tcp::endpoint endpoint;
188 BgpPeerNameMap::iterator iter;
192 if (boost::iequals(up_or_down,
"up") && !peer->
IsReady())
194 if (boost::iequals(up_or_down,
"down") && peer->
IsReady())
203 BgpPeerNameMap::iterator iter;
212 BgpPeerNameMap::iterator iter;
232 peer_key.
endpoint.address(remote_endpoint.address());
235 BgpPeerKeyMap::const_iterator loc =
peers_by_key_.lower_bound(peer_key);
239 if (loc->second->peer_key().endpoint.address() !=
255 BgpPeerKeyMap::const_iterator loc =
peers_by_key_.upper_bound(peer_key);
boost::asio::ip::tcp::endpoint Endpoint
void ClearAllInternalPeers()
virtual BgpPeer * PeerLookup(std::string name) const
const std::string & name() const
#define RTINSTANCE_LOG_PEER(type, rtinstance, peer, level, flags,...)
BgpPeerNameMap peers_by_name_
BgpPeer * TriggerPeerDeletion(const BgpNeighborConfig *config)
virtual BgpPeer * PeerFind(std::string address) const
const std::string & name() const
const std::string & name() const
virtual BgpProto::BgpPeerType PeerType() const
RoutingInstanceInfo GetDataCollection(const char *operation)
boost::asio::ip::tcp::endpoint endpoint
virtual const std::string & ToString() const
const BgpPeer * NextPeer(const BgpPeerKey &key) const
const BgpPeerKey & peer_key() const
const RoutingInstance * instance() const
void PeerResurrect(std::string name)
const std::string & peer_name() const
BgpConfigManager * config_manager()
#define RTINSTANCE_LOG_FLAG_ALL
#define CHECK_CONCURRENCY(...)
virtual const BgpNeighborConfig * FindNeighbor(const std::string &instance_name, const std::string &name) const =0
void InsertPeer(TcpSession::Endpoint remote, BgpPeer *peer)
const RoutingInstanceMgr * manager() const
#define ROUTING_INSTANCE_COLLECTOR_INFO(info)
IpAddress AddressFromString(const std::string &ip_address_str, boost::system::error_code *ec)
void RemovePeerByKey(BgpPeerKey key, BgpPeer *peer)
virtual bool IsReady() const
void InsertPeerByName(const std::string name, BgpPeer *peer)
void RemovePeerByName(const std::string name, BgpPeer *peer)
virtual BgpPeer * PeerLocate(BgpServer *server, const BgpNeighborConfig *config)
BgpServer * server() const
BgpPeerKeyMap peers_by_key_
TcpSession::Endpoint endpoint() const
virtual void DestroyIPeer(IPeer *ipeer)
#define BGP_LOG_PEER(type, peer, level, flags, dir, arg)
RoutingInstance * instance_
size_t GetNeighborCount(std::string up_or_down)
void InsertPeerByKey(BgpPeerKey key, BgpPeer *peer)