OpenSDN source code
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
EvpnRoutingPath Class Reference

#include <agent_path.h>

Inheritance diagram for EvpnRoutingPath:
Collaboration diagram for EvpnRoutingPath:

Public Member Functions

 EvpnRoutingPath (const Peer *peer, AgentRoute *rt, VrfEntryConstRef routing_vrf)
 
virtual ~EvpnRoutingPath ()
 
const VrfEntryrouting_vrf () const
 
void set_routing_vrf (const VrfEntry *vrf)
 
void DeleteEvpnType5Route (Agent *agent, const AgentRoute *rt) const
 
- Public Member Functions inherited from AgentPath
 AgentPath (const Peer *peer, AgentRoute *rt)
 
virtual ~AgentPath ()
 
virtual const NextHopComputeNextHop (Agent *agent) const
 
virtual bool IsLess (const AgentPath &right) const
 
virtual const AgentPathUsablePath () const
 
virtual bool Sync (AgentRoute *sync_route)
 
void ImportPrevActiveNH (Agent *agent, NextHop *nh)
 
virtual bool PostChangeNH (Agent *agent, NextHop *nh)
 
const SecurityGroupListsg_list () const
 
const TagListtag_list () const
 
const CommunityListcommunities () const
 
const std::string & dest_vn_name () const
 
const VnListTypedest_vn_list () const
 
const std::string & origin_vn () const
 
void GetDestinationVnList (std::vector< std::string > *vn_list) const
 
uint32_t GetActiveLabel () const
 
NextHopnexthop () const
 
const Peerpeer () const
 
uint32_t label () const
 
uint32_t vxlan_id () const
 
TunnelType::Type tunnel_type () const
 
uint32_t tunnel_bmap () const
 
const IpAddressgw_ip () const
 
const std::string & vrf_name () const
 
bool force_policy () const
 
const bool unresolved () const
 
const Ip4Addresstunnel_dest () const
 
bool is_subnet_discard () const
 
const IpAddress subnet_service_ip () const
 
TunnelType::Type GetTunnelType () const
 
void set_nexthop (NextHop *nh)
 
void set_vxlan_id (uint32_t vxlan_id)
 
void set_label (uint32_t label)
 
void set_dest_vn_list (const VnListType &dest_vn_list)
 
void set_origin_vn (const std::string &origin_vn)
 
void set_unresolved (bool unresolved)
 
void set_gw_ip (const IpAddress &addr)
 
void set_force_policy (bool force_policy)
 
void set_vrf_name (const std::string &vrf_name)
 
void set_tunnel_bmap (TunnelType::TypeBmap bmap)
 
void set_tunnel_type (TunnelType::Type type)
 
void set_sg_list (const SecurityGroupList &sg)
 
void set_tag_list (const TagList &tag)
 
void set_communities (const CommunityList &communities)
 
void clear_sg_list ()
 
void clear_tag_list ()
 
void clear_communities ()
 
void set_tunnel_dest (const Ip4Address &tunnel_dest)
 
void set_is_subnet_discard (bool discard)
 
void set_subnet_service_ip (const IpAddress &ip)
 
void set_copy_local_path (bool copy_local_path)
 
void set_local_ecmp_mpls_label (MplsLabel *mpls)
 
bool dest_vn_match (const std::string &vn) const
 
const MplsLabellocal_ecmp_mpls_label () const
 
void ClearDependantRoute ()
 
void ResetDependantRoute (AgentRoute *rt)
 
const AgentRoutedependant_rt () const
 
bool ChangeNH (Agent *agent, NextHop *nh)
 
void SyncRoute (bool sync)
 
bool RouteNeedsSync ()
 
uint32_t GetTunnelBmap () const
 
bool UpdateNHPolicy (Agent *agent)
 
bool UpdateTunnelType (Agent *agent, const AgentRoute *sync_route)
 
bool ResolveGwNextHops (Agent *agent, const AgentRoute *sync_route)
 
bool RebakeAllTunnelNHinCompositeNH (const AgentRoute *sync_route)
 
virtual std::string ToString () const
 
void SetSandeshData (PathSandeshData &data) const
 
uint32_t preference () const
 
uint32_t sequence () const
 
const PathPreferencepath_preference () const
 
PathPreferencepath_preference_non_const ()
 
void set_path_preference (const PathPreference &rp)
 
void set_composite_nh_key (CompositeNHKey *key)
 
CompositeNHKeycomposite_nh_key ()
 
bool ReorderCompositeNH (Agent *agent, CompositeNHKey *nh, bool &comp_nh_policy, const AgentPath *local_path)
 
bool ChangeCompositeNH (Agent *agent, CompositeNHKey *nh)
 
const Ip4AddressNexthopIp (Agent *agent) const
 
MacAddress arp_mac () const
 
void set_arp_mac (const MacAddress &mac)
 
const Interfacearp_interface () const
 
void set_arp_interface (const Interface *intf)
 
bool arp_valid () const
 
void set_arp_valid (bool valid)
 
bool ecmp_suppressed () const
 
void set_ecmp_suppressed (bool suppresed)
 
bool CopyArpData ()
 
bool CopyNdpData ()
 
const IpAddressGetFixedIp () const
 
const EcmpLoadBalanceecmp_load_balance () const
 
void set_ecmp_load_balance (const EcmpLoadBalance &ecmp_load_balance)
 
bool is_local () const
 
void set_is_local (bool is_local)
 
bool is_health_check_service () const
 
void set_is_health_check_service (bool val)
 
bool etree_leaf () const
 
void set_etree_leaf (bool leaf)
 
bool layer2_control_word () const
 
void set_layer2_control_word (bool layer2_control_word)
 
void set_native_vrf_id (uint32_t vrf_id)
 
uint32_t native_vrf_id () const
 
void UpdateEcmpHashFields (const Agent *agent, const EcmpLoadBalance &ecmp_load_balance, DBRequest &nh_req)
 
uint64_t peer_sequence_number () const
 
void set_peer_sequence_number (uint64_t sequence_number)
 
bool ResyncControlWord (const AgentRoute *rt)
 
bool inactive () const
 
void set_inactive (bool inactive)
 
void ResetEcmpHashFields ()
 
void CopyLocalPath (CompositeNHKey *composite_nh_key, const AgentPath *local_path)
 
AgentRouteGetParentRoute ()
 
void ResetEcmpMemberList (AgentPathEcmpComponentPtrList list)
 
AgentRouteTableGetDependentTable () const
 
void SetDependentTable (AgentRouteTable *table)
 
void SetDynamicLearntRouteFlag (bool is_learnt_route)
 
bool IsDynamicLearntRoute ()
 
- Public Member Functions inherited from Path
 Path ()
 
virtual ~Path ()
 
const uint64_t time_stamp_usecs () const
 
void set_time_stamp_usecs (uint64_t time_stamp_usecs)
 

Private Member Functions

 DISALLOW_COPY_AND_ASSIGN (EvpnRoutingPath)
 

Private Attributes

VrfEntryConstRef routing_vrf_
 
uint32_t l3_vrf_vxlan_id_
 

Detailed Description

Definition at line 1225 of file agent_path.h.

Constructor & Destructor Documentation

EvpnRoutingPath::EvpnRoutingPath ( const Peer peer,
AgentRoute rt,
VrfEntryConstRef  routing_vrf 
)

Definition at line 2048 of file agent_path.cc.

EvpnRoutingPath::~EvpnRoutingPath ( )
virtual

Definition at line 2055 of file agent_path.cc.

Member Function Documentation

void EvpnRoutingPath::DeleteEvpnType5Route ( Agent agent,
const AgentRoute rt 
) const

Definition at line 2066 of file agent_path.cc.

Here is the call graph for this function:

EvpnRoutingPath::DISALLOW_COPY_AND_ASSIGN ( EvpnRoutingPath  )
private
const VrfEntry * EvpnRoutingPath::routing_vrf ( ) const

Definition at line 2058 of file agent_path.cc.

void EvpnRoutingPath::set_routing_vrf ( const VrfEntry vrf)

Definition at line 2062 of file agent_path.cc.

Here is the call graph for this function:

Member Data Documentation

uint32_t EvpnRoutingPath::l3_vrf_vxlan_id_
private

Definition at line 1237 of file agent_path.h.

VrfEntryConstRef EvpnRoutingPath::routing_vrf_
private

Definition at line 1236 of file agent_path.h.


The documentation for this class was generated from the following files: