15 using std::unique_ptr;
70 return *src_instance->
GetRD();
72 boost::system::error_code ec;
74 if ((ec.value() != 0)) {
80 return *src_instance->
GetRD();
106 if (dest_route == NULL) {
108 rtp->
Add(dest_route);
124 if (dest_path != NULL) {
161 if (!uinfo)
return false;
162 uinfo_slist->push_front(*uinfo);
boost::asio::ip::address_v4 Ip4Address
boost::intrusive_ptr< const BgpAttr > BgpAttrPtr
BgpAttrPtr ReplaceExtCommunityAndLocate(const BgpAttr *attr, ExtCommunityPtr extcomm)
BgpAttrPtr ReplaceSourceRdAndLocate(const BgpAttr *attr, const RouteDistinguisher &source_rd)
const RouteDistinguisher & source_rd() const
uint32_t GetLabel() const
uint32_t GetFlags() const
const uint32_t GetPathId() const
const BgpAttr * GetAttr() const
PathSource GetSource() const
const BgpAttr * GetOriginalAttr() const
bool RemoveSecondaryPath(const BgpRoute *src_rt, BgpPath::PathSource src, const IPeer *peer, uint32_t path_id)
BgpPath * FindSecondaryPath(BgpRoute *src_rt, BgpPath::PathSource src, const IPeer *peer, uint32_t path_id)
void InsertPath(BgpPath *path)
void SetReplicateInfo(const BgpTable *table, const BgpRoute *rt)
RoutingInstance * routing_instance()
UpdateInfo * GetUpdateInfo(RibOut *ribout, BgpRoute *route, const RibPeerSet &peerset)
virtual Address::Family family() const =0
const std::string & name() const
void Notify(DBEntryBase *entry)
virtual void Add(DBEntry *entry)
DBEntry * Find(const DBEntry *entry)
virtual DBTablePartBase * GetTablePartition(const DBRequestKey *key)
static void RegisterFactory(const std::string &prefix, CreateFunction create_fn)
static int PartitionCount()
virtual const std::string & ToString() const =0
virtual bool IsXmppPeer() const =0
virtual bool IsRouterTypeBGPaaS() const =0
const Ip4Prefix & GetPrefix() const
static size_t HashFunction(const Ip4Prefix &addr)
void UpdateRoute(const InetVpnPrefix &inetvpn_prefix, const IPeer *peer, BgpAttrPtr inetvpn_attrp)
static InetVpnPrefix FromString(const std::string &str, boost::system::error_code *errorp=NULL)
const InetVpnPrefix & GetPrefix() const
virtual std::unique_ptr< DBEntry > AllocEntry(const DBRequestKey *key) const
static DBTableBase * CreateTable(DB *db, const std::string &name)
InetVpnTable(DB *db, const std::string &name)
virtual bool Export(RibOut *ribout, Route *route, const RibPeerSet &peerset, UpdateInfoSList &info_slist)
virtual BgpRoute * RouteReplicate(BgpServer *server, BgpTable *src_table, BgpRoute *src_rt, const BgpPath *path, ExtCommunityPtr ptr)
virtual BgpRoute * TableFind(DBTablePartition *rtp, const DBRequestKey *prefix)
virtual std::unique_ptr< DBEntry > AllocEntryStr(const std::string &key) const
virtual size_t Hash(const DBEntry *entry) const
Ip4Address ip4_addr() const
const RouteDistinguisher * GetRD() const
BgpTable * GetTable(Address::Family fmly)
static RouteDistinguisher GenerateDistinguisher(const BgpTable *src_table, const BgpPath *src_path)
MODULE_INITIALIZER(RegisterFactory)
static void RegisterFactory()