OpenSDN source code
agent.h File Reference
#include <vector>
#include <stdint.h>
#include <string>
#include <net/ethernet.h>
#include <boost/intrusive_ptr.hpp>
#include <base/intrusive_ptr_back_ref.h>
#include <cmn/agent_cmn.h>
#include <base/connection_info.h>
#include "net/mac_address.h"
#include "oper/agent_types.h"
Include dependency graph for agent.h:

Go to the source code of this file.

Classes

class  Agent
 

Namespaces

 OVSDB
 

Macros

#define MULTICAST_LABEL_RANGE_START   1024
 
#define MULTICAST_LABEL_BLOCK_SIZE   2048
 
#define MIN_UNICAST_LABEL_RANGE   4098
 
#define MAX_XMPP_SERVERS   2
 
#define XMPP_SERVER_PORT   5269
 
#define XMPP_DNS_SERVER_PORT   53
 
#define METADATA_IP_ADDR   ntohl(inet_addr("169.254.169.254"))
 
#define METADATA_PORT   8775
 
#define METADATA_NAT_PORT   80
 
#define AGENT_INIT_TASKNAME   "Agent::Init"
 
#define INSTANCE_MANAGER_TASK_NAME   "Agent::InstanceManager"
 
#define AGENT_SHUTDOWN_TASKNAME   "Agent::Shutdown"
 
#define AGENT_FLOW_STATS_MANAGER_TASK   "Agent::FlowStatsManager"
 
#define AGENT_SANDESH_TASKNAME   "Agent::Sandesh"
 
#define IPV4_MULTICAST_BASE_ADDRESS   "224.0.0.0"
 
#define IPV6_MULTICAST_BASE_ADDRESS   "ff00::"
 
#define MULTICAST_BASE_ADDRESS_PLEN   8
 
#define FLOWS_LIMIT_UNLIMITED   uint32_t(0)
 
#define VROUTER_SERVER_PORT   20914
 
#define kLogFilesCount   10
 
#define kLogFileSize   (2*1024*1024)
 
#define CFG_BACKUP_DIR   "/var/lib/contrail/backup"
 
#define CFG_BACKUP_COUNT   2
 
#define CFG_BACKUP_IDLE_TIMEOUT   (10*1000)
 
#define CFG_RESTORE_AUDIT_TIMEOUT   (15*1000)
 
#define kTaskFlowEvent   "Agent::FlowEvent"
 
#define kTaskFlowKSync   "Agent::FlowKSync"
 
#define kTaskFlowUpdate   "Agent::FlowUpdate"
 
#define kTaskFlowDelete   "Agent::FlowDelete"
 
#define kTaskFlowMgmt   "Agent::FlowMgmt"
 
#define kTaskFlowAudit   "KSync::FlowAudit"
 
#define kTaskFlowLogging   "Agent::FlowLogging"
 
#define kTaskFlowStatsCollector   "Flow::StatsCollector"
 
#define kTaskSessionStatsCollector   "Flow::SessionStatsCollector"
 
#define kTaskSessionStatsCollectorEvent   "Flow::SessionStatsCollectorEvent"
 
#define kTaskFlowStatsUpdate   "Agent::FlowStatsUpdate"
 
#define kTaskHealthCheck   "Agent::HealthCheck"
 
#define kTaskCryptTunnel   "Agent::CryptTunnel"
 
#define kTaskDBExclude   "Agent::DBExcludeTask"
 
#define kTaskConfigManager   "Agent::ConfigManager"
 
#define kTaskHttpRequstHandler   "http::RequestHandlerTask"
 
#define kAgentResourceRestoreTask   "Agent::ResoureRestore"
 
#define kAgentResourceBackUpTask   "Agent::ResourceBackup"
 
#define kTaskMacLearning   "Agent::MacLearning"
 
#define kTaskMacLearningMgmt   "Agent::MacLearningMgmt"
 
#define kTaskMacAging   "Agent::MacAging"
 
#define kInterfaceDbTablePrefix   "db.interface"
 
#define kVnDbTablePrefix   "db.vn"
 
#define kVmDbTablePrefix   "db.vm"
 
#define kVrfDbTablePrefix   "db.vrf.0"
 
#define kMplsDbTablePrefix   "db.mpls"
 
#define kAclDbTablePrefix   "db.acl"
 
#define kV4UnicastRouteDbTableSuffix   "uc.route.0"
 
#define kV6UnicastRouteDbTableSuffix   "uc.route6.0"
 
#define kL2RouteDbTableSuffix   "l2.route.0"
 
#define kMcastRouteDbTableSuffix   "mc.route.0"
 
#define kEvpnRouteDbTableSuffix   "evpn.route.0"
 
#define kEventNotifierTask   "Agent::EventNotifier"
 

Typedefs

typedef boost::intrusive_ptr< InterfaceInterfaceRef
 
typedef boost::intrusive_ptr< const InterfaceInterfaceConstRef
 
typedef IntrusivePtrRef< InterfaceInterfaceBackRef
 
typedef boost::intrusive_ptr< VmEntryVmEntryRef
 
typedef boost::intrusive_ptr< const VmEntryVmEntryConstRef
 
typedef IntrusivePtrRef< VmEntryVmEntryBackRef
 
typedef IntrusivePtrRef< const VmEntryVmEntryConstBackRef
 
typedef boost::intrusive_ptr< VnEntryVnEntryRef
 
typedef boost::intrusive_ptr< const VnEntryVnEntryConstRef
 
typedef boost::intrusive_ptr< SgEntrySgEntryRef
 
typedef boost::intrusive_ptr< const SgEntrySgEntryConstRef
 
typedef boost::intrusive_ptr< TagEntryTagEntryRef
 
typedef boost::intrusive_ptr< const TagEntryTagEntryConstRef
 
typedef IntrusivePtrRef< VrfEntryVrfEntryRef
 
typedef IntrusivePtrRef< const VrfEntryVrfEntryConstRef
 
typedef boost::intrusive_ptr< MplsLabelMplsLabelRef
 
typedef boost::intrusive_ptr< MirrorEntryMirrorEntryRef
 
typedef boost::intrusive_ptr< VxLanIdVxLanIdRef
 
typedef boost::intrusive_ptr< MulticastPolicyEntryMulticastPolicyEntryRef
 
typedef boost::intrusive_ptr< const MulticastPolicyEntryMulticastPolicyEntryConstRef
 
typedef boost::intrusive_ptr< RouteRouteRef
 
typedef boost::intrusive_ptr< NextHopNextHopRef
 
typedef boost::intrusive_ptr< const NextHopNextHopConstRef
 
typedef boost::intrusive_ptr< CryptTunnelEntryCryptTunnelEntryRef
 
typedef boost::intrusive_ptr< const CryptTunnelEntryCryptTunnelEntryConstRef
 
typedef boost::intrusive_ptr< AddrBase > AddrRef
 
typedef boost::intrusive_ptr< AclDBEntryAclDBEntryRef
 
typedef boost::intrusive_ptr< const AclDBEntryAclDBEntryConstRef
 
typedef boost::intrusive_ptr< PolicySetPolicySetRef
 
typedef boost::intrusive_ptr< const AclDBEntryPolicySetConstRef
 
typedef boost::intrusive_ptr< PhysicalDevicePhysicalDeviceRef
 
typedef boost::intrusive_ptr< const PhysicalDevicePhysicalDeviceConstRef
 
typedef boost::intrusive_ptr< PhysicalDeviceVnPhysicalDeviceVnRef
 
typedef boost::intrusive_ptr< const PhysicalDeviceVnPhysicalDeviceVnConstRef
 
typedef boost::intrusive_ptr< HealthCheckServiceHealthCheckServiceRef
 
typedef boost::intrusive_ptr< ForwardingClassForwardingClassRef
 
typedef boost::intrusive_ptr< const ForwardingClassForwardingClassConstRef
 
typedef boost::intrusive_ptr< AgentQosConfigAgentQosConfigRef
 
typedef boost::intrusive_ptr< const AgentQosConfigAgentQosConfigConstRef
 
typedef boost::intrusive_ptr< QosQueueQosQueueRef
 
typedef boost::intrusive_ptr< const QosQueueQosQueueConstRef
 
typedef boost::intrusive_ptr< BridgeDomainEntryBridgeDomainRef
 
typedef boost::intrusive_ptr< const BridgeDomainEntryBridgeDomainConstRef
 
typedef boost::intrusive_ptr< SecurityLoggingObjectSecurityLoggingObjectRef
 
typedef boost::intrusive_ptr< const SecurityLoggingObjectSecurityLoggingObjectConstRef
 
typedef std::vector< int > SecurityGroupList
 
typedef std::vector< int > TagList
 
typedef std::vector< boost::uuids::uuidUuidList
 
typedef std::vector< std::string > CommunityList
 
typedef std::set< std::string > VnListType
 
typedef std::map< std::string, std::string > VrLimitExceeded
 
typedef std::pair< std::string, std::string > VrLimitData
 
typedef std::vector< Ip4AddressAddressList
 
typedef std::vector< Interface * > InterfaceList
 
typedef std::vector< std::string > InterfaceNameList
 

Functions

void intrusive_ptr_release (const Interface *p)
 
void intrusive_ptr_add_ref (const Interface *p)
 
void intrusive_ptr_add_back_ref (const IntrusiveReferrer ref, const Interface *p)
 
void intrusive_ptr_del_back_ref (const IntrusiveReferrer ref, const Interface *p)
 
void intrusive_ptr_release (const VmEntry *p)
 
void intrusive_ptr_add_ref (const VmEntry *p)
 
void intrusive_ptr_add_back_ref (const IntrusiveReferrer ref, const VmEntry *p)
 
void intrusive_ptr_del_back_ref (const IntrusiveReferrer ref, const VmEntry *p)
 
void intrusive_ptr_release (const VnEntry *p)
 
void intrusive_ptr_add_ref (const VnEntry *p)
 
void intrusive_ptr_release (const SgEntry *p)
 
void intrusive_ptr_add_ref (const SgEntry *p)
 
void intrusive_ptr_release (const TagEntry *p)
 
void intrusive_ptr_add_ref (const TagEntry *p)
 
void intrusive_ptr_add_back_ref (const IntrusiveReferrer ref, const VrfEntry *p)
 
void intrusive_ptr_del_back_ref (const IntrusiveReferrer ref, const VrfEntry *p)
 
void intrusive_ptr_release (const VrfEntry *p)
 
void intrusive_ptr_add_ref (const VrfEntry *p)
 
void intrusive_ptr_release (const MplsLabel *p)
 
void intrusive_ptr_add_ref (const MplsLabel *p)
 
void intrusive_ptr_release (const MirrorEntry *p)
 
void intrusive_ptr_add_ref (const MirrorEntry *p)
 
void intrusive_ptr_release (const VxLanId *p)
 
void intrusive_ptr_add_ref (const VxLanId *p)
 
void intrusive_ptr_release (const MulticastPolicyEntry *p)
 
void intrusive_ptr_add_ref (const MulticastPolicyEntry *p)
 
void intrusive_ptr_release (const Route *p)
 
void intrusive_ptr_add_ref (const Route *p)
 
void intrusive_ptr_release (const NextHop *p)
 
void intrusive_ptr_add_ref (const NextHop *p)
 
void intrusive_ptr_release (const CryptTunnelEntry *p)
 
void intrusive_ptr_add_ref (const CryptTunnelEntry *p)
 
void intrusive_ptr_release (const AddrBase *p)
 
void intrusive_ptr_add_ref (const AddrBase *p)
 
void intrusive_ptr_release (const AclDBEntry *p)
 
void intrusive_ptr_add_ref (const AclDBEntry *p)
 
void intrusive_ptr_release (const PolicySet *p)
 
void intrusive_ptr_add_ref (const PolicySet *p)
 
void intrusive_ptr_release (const PhysicalDevice *p)
 
void intrusive_ptr_add_ref (const PhysicalDevice *p)
 
void intrusive_ptr_release (const PhysicalDeviceVn *p)
 
void intrusive_ptr_add_ref (const PhysicalDeviceVn *p)
 
void intrusive_ptr_release (const HealthCheckService *p)
 
void intrusive_ptr_add_ref (const HealthCheckService *p)
 
void intrusive_ptr_release (const ForwardingClass *p)
 
void intrusive_ptr_add_ref (const ForwardingClass *p)
 
void intrusive_ptr_release (const AgentQosConfig *p)
 
void intrusive_ptr_add_ref (const AgentQosConfig *p)
 
void intrusive_ptr_release (const QosQueueRef *p)
 
void intrusive_ptr_add_ref (const QosQueueRef *p)
 
void intrusive_ptr_release (const BridgeDomainEntry *p)
 
void intrusive_ptr_add_ref (const BridgeDomainEntry *p)
 
void intrusive_ptr_release (const SecurityLoggingObject *p)
 
void intrusive_ptr_add_ref (const SecurityLoggingObject *p)
 
void RouterIdDepInit (Agent *agent)
 

Macro Definition Documentation

◆ AGENT_FLOW_STATS_MANAGER_TASK

#define AGENT_FLOW_STATS_MANAGER_TASK   "Agent::FlowStatsManager"

Definition at line 300 of file agent.h.

◆ AGENT_INIT_TASKNAME

#define AGENT_INIT_TASKNAME   "Agent::Init"

Definition at line 297 of file agent.h.

◆ AGENT_SANDESH_TASKNAME

#define AGENT_SANDESH_TASKNAME   "Agent::Sandesh"

Definition at line 301 of file agent.h.

◆ AGENT_SHUTDOWN_TASKNAME

#define AGENT_SHUTDOWN_TASKNAME   "Agent::Shutdown"

Definition at line 299 of file agent.h.

◆ CFG_BACKUP_COUNT

#define CFG_BACKUP_COUNT   2

Definition at line 316 of file agent.h.

◆ CFG_BACKUP_DIR

#define CFG_BACKUP_DIR   "/var/lib/contrail/backup"

Definition at line 315 of file agent.h.

◆ CFG_BACKUP_IDLE_TIMEOUT

#define CFG_BACKUP_IDLE_TIMEOUT   (10*1000)

Definition at line 317 of file agent.h.

◆ CFG_RESTORE_AUDIT_TIMEOUT

#define CFG_RESTORE_AUDIT_TIMEOUT   (15*1000)

Definition at line 318 of file agent.h.

◆ FLOWS_LIMIT_UNLIMITED

#define FLOWS_LIMIT_UNLIMITED   uint32_t(0)

Definition at line 306 of file agent.h.

◆ INSTANCE_MANAGER_TASK_NAME

#define INSTANCE_MANAGER_TASK_NAME   "Agent::InstanceManager"

Definition at line 298 of file agent.h.

◆ IPV4_MULTICAST_BASE_ADDRESS

#define IPV4_MULTICAST_BASE_ADDRESS   "224.0.0.0"

Definition at line 302 of file agent.h.

◆ IPV6_MULTICAST_BASE_ADDRESS

#define IPV6_MULTICAST_BASE_ADDRESS   "ff00::"

Definition at line 303 of file agent.h.

◆ kAclDbTablePrefix

#define kAclDbTablePrefix   "db.acl"

Definition at line 352 of file agent.h.

◆ kAgentResourceBackUpTask

#define kAgentResourceBackUpTask   "Agent::ResourceBackup"

Definition at line 342 of file agent.h.

◆ kAgentResourceRestoreTask

#define kAgentResourceRestoreTask   "Agent::ResoureRestore"

Definition at line 341 of file agent.h.

◆ kEventNotifierTask

#define kEventNotifierTask   "Agent::EventNotifier"

Definition at line 358 of file agent.h.

◆ kEvpnRouteDbTableSuffix

#define kEvpnRouteDbTableSuffix   "evpn.route.0"

Definition at line 357 of file agent.h.

◆ kInterfaceDbTablePrefix

#define kInterfaceDbTablePrefix   "db.interface"

Definition at line 347 of file agent.h.

◆ kL2RouteDbTableSuffix

#define kL2RouteDbTableSuffix   "l2.route.0"

Definition at line 355 of file agent.h.

◆ kLogFilesCount

#define kLogFilesCount   10

Definition at line 310 of file agent.h.

◆ kLogFileSize

#define kLogFileSize   (2*1024*1024)

Definition at line 311 of file agent.h.

◆ kMcastRouteDbTableSuffix

#define kMcastRouteDbTableSuffix   "mc.route.0"

Definition at line 356 of file agent.h.

◆ kMplsDbTablePrefix

#define kMplsDbTablePrefix   "db.mpls"

Definition at line 351 of file agent.h.

◆ kTaskConfigManager

#define kTaskConfigManager   "Agent::ConfigManager"

Definition at line 339 of file agent.h.

◆ kTaskCryptTunnel

#define kTaskCryptTunnel   "Agent::CryptTunnel"

Definition at line 336 of file agent.h.

◆ kTaskDBExclude

#define kTaskDBExclude   "Agent::DBExcludeTask"

Definition at line 338 of file agent.h.

◆ kTaskFlowAudit

#define kTaskFlowAudit   "KSync::FlowAudit"

Definition at line 328 of file agent.h.

◆ kTaskFlowDelete

#define kTaskFlowDelete   "Agent::FlowDelete"

Definition at line 326 of file agent.h.

◆ kTaskFlowEvent

#define kTaskFlowEvent   "Agent::FlowEvent"

Definition at line 323 of file agent.h.

◆ kTaskFlowKSync

#define kTaskFlowKSync   "Agent::FlowKSync"

Definition at line 324 of file agent.h.

◆ kTaskFlowLogging

#define kTaskFlowLogging   "Agent::FlowLogging"

Definition at line 329 of file agent.h.

◆ kTaskFlowMgmt

#define kTaskFlowMgmt   "Agent::FlowMgmt"

Definition at line 327 of file agent.h.

◆ kTaskFlowStatsCollector

#define kTaskFlowStatsCollector   "Flow::StatsCollector"

Definition at line 330 of file agent.h.

◆ kTaskFlowStatsUpdate

#define kTaskFlowStatsUpdate   "Agent::FlowStatsUpdate"

Definition at line 333 of file agent.h.

◆ kTaskFlowUpdate

#define kTaskFlowUpdate   "Agent::FlowUpdate"

Definition at line 325 of file agent.h.

◆ kTaskHealthCheck

#define kTaskHealthCheck   "Agent::HealthCheck"

Definition at line 335 of file agent.h.

◆ kTaskHttpRequstHandler

#define kTaskHttpRequstHandler   "http::RequestHandlerTask"

Definition at line 340 of file agent.h.

◆ kTaskMacAging

#define kTaskMacAging   "Agent::MacAging"

Definition at line 345 of file agent.h.

◆ kTaskMacLearning

#define kTaskMacLearning   "Agent::MacLearning"

Definition at line 343 of file agent.h.

◆ kTaskMacLearningMgmt

#define kTaskMacLearningMgmt   "Agent::MacLearningMgmt"

Definition at line 344 of file agent.h.

◆ kTaskSessionStatsCollector

#define kTaskSessionStatsCollector   "Flow::SessionStatsCollector"

Definition at line 331 of file agent.h.

◆ kTaskSessionStatsCollectorEvent

#define kTaskSessionStatsCollectorEvent   "Flow::SessionStatsCollectorEvent"

Definition at line 332 of file agent.h.

◆ kV4UnicastRouteDbTableSuffix

#define kV4UnicastRouteDbTableSuffix   "uc.route.0"

Definition at line 353 of file agent.h.

◆ kV6UnicastRouteDbTableSuffix

#define kV6UnicastRouteDbTableSuffix   "uc.route6.0"

Definition at line 354 of file agent.h.

◆ kVmDbTablePrefix

#define kVmDbTablePrefix   "db.vm"

Definition at line 349 of file agent.h.

◆ kVnDbTablePrefix

#define kVnDbTablePrefix   "db.vn"

Definition at line 348 of file agent.h.

◆ kVrfDbTablePrefix

#define kVrfDbTablePrefix   "db.vrf.0"

Definition at line 350 of file agent.h.

◆ MAX_XMPP_SERVERS

#define MAX_XMPP_SERVERS   2

Definition at line 291 of file agent.h.

◆ METADATA_IP_ADDR

#define METADATA_IP_ADDR   ntohl(inet_addr("169.254.169.254"))

Definition at line 294 of file agent.h.

◆ METADATA_NAT_PORT

#define METADATA_NAT_PORT   80

Definition at line 296 of file agent.h.

◆ METADATA_PORT

#define METADATA_PORT   8775

Definition at line 295 of file agent.h.

◆ MIN_UNICAST_LABEL_RANGE

#define MIN_UNICAST_LABEL_RANGE   4098

Definition at line 290 of file agent.h.

◆ MULTICAST_BASE_ADDRESS_PLEN

#define MULTICAST_BASE_ADDRESS_PLEN   8

Definition at line 304 of file agent.h.

◆ MULTICAST_LABEL_BLOCK_SIZE

#define MULTICAST_LABEL_BLOCK_SIZE   2048

Definition at line 288 of file agent.h.

◆ MULTICAST_LABEL_RANGE_START

#define MULTICAST_LABEL_RANGE_START   1024

Definition at line 287 of file agent.h.

◆ VROUTER_SERVER_PORT

#define VROUTER_SERVER_PORT   20914

Definition at line 308 of file agent.h.

◆ XMPP_DNS_SERVER_PORT

#define XMPP_DNS_SERVER_PORT   53

Definition at line 293 of file agent.h.

◆ XMPP_SERVER_PORT

#define XMPP_SERVER_PORT   5269

Definition at line 292 of file agent.h.

Typedef Documentation

◆ AclDBEntryConstRef

typedef boost::intrusive_ptr<const AclDBEntry> AclDBEntryConstRef

Definition at line 143 of file agent.h.

◆ AclDBEntryRef

typedef boost::intrusive_ptr<AclDBEntry> AclDBEntryRef

Definition at line 142 of file agent.h.

◆ AddressList

typedef std::vector<Ip4Address> AddressList

Definition at line 217 of file agent.h.

◆ AddrRef

typedef boost::intrusive_ptr<AddrBase> AddrRef

Definition at line 137 of file agent.h.

◆ AgentQosConfigConstRef

typedef boost::intrusive_ptr<const AgentQosConfig> AgentQosConfigConstRef

Definition at line 178 of file agent.h.

◆ AgentQosConfigRef

typedef boost::intrusive_ptr<AgentQosConfig> AgentQosConfigRef

Definition at line 177 of file agent.h.

◆ BridgeDomainConstRef

typedef boost::intrusive_ptr<const BridgeDomainEntry> BridgeDomainConstRef

Definition at line 190 of file agent.h.

◆ BridgeDomainRef

typedef boost::intrusive_ptr<BridgeDomainEntry> BridgeDomainRef

Definition at line 189 of file agent.h.

◆ CommunityList

typedef std::vector<std::string> CommunityList

Definition at line 204 of file agent.h.

◆ CryptTunnelEntryConstRef

typedef boost::intrusive_ptr<const CryptTunnelEntry> CryptTunnelEntryConstRef

Definition at line 132 of file agent.h.

◆ CryptTunnelEntryRef

typedef boost::intrusive_ptr<CryptTunnelEntry> CryptTunnelEntryRef

Definition at line 131 of file agent.h.

◆ ForwardingClassConstRef

typedef boost::intrusive_ptr<const ForwardingClass> ForwardingClassConstRef

Definition at line 172 of file agent.h.

◆ ForwardingClassRef

typedef boost::intrusive_ptr<ForwardingClass> ForwardingClassRef

Definition at line 171 of file agent.h.

◆ HealthCheckServiceRef

typedef boost::intrusive_ptr<HealthCheckService> HealthCheckServiceRef

Definition at line 166 of file agent.h.

◆ InterfaceBackRef

Definition at line 54 of file agent.h.

◆ InterfaceConstRef

typedef boost::intrusive_ptr<const Interface> InterfaceConstRef

Definition at line 51 of file agent.h.

◆ InterfaceList

typedef std::vector<Interface *> InterfaceList

Definition at line 218 of file agent.h.

◆ InterfaceNameList

typedef std::vector<std::string> InterfaceNameList

Definition at line 219 of file agent.h.

◆ InterfaceRef

typedef boost::intrusive_ptr<Interface> InterfaceRef

Definition at line 50 of file agent.h.

◆ MirrorEntryRef

typedef boost::intrusive_ptr<MirrorEntry> MirrorEntryRef

Definition at line 100 of file agent.h.

◆ MplsLabelRef

typedef boost::intrusive_ptr<MplsLabel> MplsLabelRef

Definition at line 95 of file agent.h.

◆ MulticastPolicyEntryConstRef

typedef boost::intrusive_ptr< const MulticastPolicyEntry > MulticastPolicyEntryConstRef

Definition at line 111 of file agent.h.

◆ MulticastPolicyEntryRef

typedef boost::intrusive_ptr< MulticastPolicyEntry > MulticastPolicyEntryRef

Definition at line 110 of file agent.h.

◆ NextHopConstRef

typedef boost::intrusive_ptr<const NextHop> NextHopConstRef

Definition at line 126 of file agent.h.

◆ NextHopRef

typedef boost::intrusive_ptr<NextHop> NextHopRef

Definition at line 125 of file agent.h.

◆ PhysicalDeviceConstRef

typedef boost::intrusive_ptr<const PhysicalDevice> PhysicalDeviceConstRef

Definition at line 155 of file agent.h.

◆ PhysicalDeviceRef

typedef boost::intrusive_ptr<PhysicalDevice> PhysicalDeviceRef

Definition at line 154 of file agent.h.

◆ PhysicalDeviceVnConstRef

typedef boost::intrusive_ptr<const PhysicalDeviceVn> PhysicalDeviceVnConstRef

Definition at line 161 of file agent.h.

◆ PhysicalDeviceVnRef

typedef boost::intrusive_ptr<PhysicalDeviceVn> PhysicalDeviceVnRef

Definition at line 160 of file agent.h.

◆ PolicySetConstRef

typedef boost::intrusive_ptr<const AclDBEntry> PolicySetConstRef

Definition at line 149 of file agent.h.

◆ PolicySetRef

typedef boost::intrusive_ptr<PolicySet> PolicySetRef

Definition at line 148 of file agent.h.

◆ QosQueueConstRef

typedef boost::intrusive_ptr<const QosQueue> QosQueueConstRef

Definition at line 184 of file agent.h.

◆ QosQueueRef

typedef boost::intrusive_ptr<QosQueue> QosQueueRef

Definition at line 183 of file agent.h.

◆ RouteRef

typedef boost::intrusive_ptr<Route> RouteRef

Definition at line 120 of file agent.h.

◆ SecurityGroupList

typedef std::vector<int> SecurityGroupList

Definition at line 201 of file agent.h.

◆ SecurityLoggingObjectConstRef

typedef boost::intrusive_ptr<const SecurityLoggingObject> SecurityLoggingObjectConstRef

Definition at line 196 of file agent.h.

◆ SecurityLoggingObjectRef

typedef boost::intrusive_ptr<SecurityLoggingObject> SecurityLoggingObjectRef

Definition at line 195 of file agent.h.

◆ SgEntryConstRef

typedef boost::intrusive_ptr<const SgEntry> SgEntryConstRef

Definition at line 76 of file agent.h.

◆ SgEntryRef

typedef boost::intrusive_ptr<SgEntry> SgEntryRef

Definition at line 75 of file agent.h.

◆ TagEntryConstRef

typedef boost::intrusive_ptr<const TagEntry> TagEntryConstRef

Definition at line 82 of file agent.h.

◆ TagEntryRef

typedef boost::intrusive_ptr<TagEntry> TagEntryRef

Definition at line 81 of file agent.h.

◆ TagList

typedef std::vector<int> TagList

Definition at line 202 of file agent.h.

◆ UuidList

typedef std::vector<boost::uuids::uuid> UuidList

Definition at line 203 of file agent.h.

◆ VmEntryBackRef

Definition at line 63 of file agent.h.

◆ VmEntryConstBackRef

Definition at line 64 of file agent.h.

◆ VmEntryConstRef

typedef boost::intrusive_ptr<const VmEntry> VmEntryConstRef

Definition at line 60 of file agent.h.

◆ VmEntryRef

typedef boost::intrusive_ptr<VmEntry> VmEntryRef

Definition at line 59 of file agent.h.

◆ VnEntryConstRef

typedef boost::intrusive_ptr<const VnEntry> VnEntryConstRef

Definition at line 70 of file agent.h.

◆ VnEntryRef

typedef boost::intrusive_ptr<VnEntry> VnEntryRef

Definition at line 69 of file agent.h.

◆ VnListType

typedef std::set<std::string> VnListType

Definition at line 212 of file agent.h.

◆ VrfEntryConstRef

Definition at line 88 of file agent.h.

◆ VrfEntryRef

Definition at line 87 of file agent.h.

◆ VrLimitData

typedef std::pair<std::string, std::string> VrLimitData

Definition at line 215 of file agent.h.

◆ VrLimitExceeded

typedef std::map<std::string, std::string> VrLimitExceeded

Definition at line 214 of file agent.h.

◆ VxLanIdRef

typedef boost::intrusive_ptr<VxLanId> VxLanIdRef

Definition at line 105 of file agent.h.

Function Documentation

◆ intrusive_ptr_add_back_ref() [1/3]

void intrusive_ptr_add_back_ref ( const IntrusiveReferrer  ref,
const Interface p 
)

◆ intrusive_ptr_add_back_ref() [2/3]

void intrusive_ptr_add_back_ref ( const IntrusiveReferrer  ref,
const VmEntry p 
)

◆ intrusive_ptr_add_back_ref() [3/3]

void intrusive_ptr_add_back_ref ( const IntrusiveReferrer  ref,
const VrfEntry p 
)

◆ intrusive_ptr_add_ref() [1/24]

void intrusive_ptr_add_ref ( const AclDBEntry p)

◆ intrusive_ptr_add_ref() [2/24]

void intrusive_ptr_add_ref ( const AddrBase *  p)

◆ intrusive_ptr_add_ref() [3/24]

void intrusive_ptr_add_ref ( const AgentQosConfig p)

◆ intrusive_ptr_add_ref() [4/24]

void intrusive_ptr_add_ref ( const BridgeDomainEntry p)

◆ intrusive_ptr_add_ref() [5/24]

void intrusive_ptr_add_ref ( const CryptTunnelEntry p)

◆ intrusive_ptr_add_ref() [6/24]

void intrusive_ptr_add_ref ( const ForwardingClass p)

◆ intrusive_ptr_add_ref() [7/24]

void intrusive_ptr_add_ref ( const HealthCheckService p)

◆ intrusive_ptr_add_ref() [8/24]

void intrusive_ptr_add_ref ( const Interface p)

◆ intrusive_ptr_add_ref() [9/24]

void intrusive_ptr_add_ref ( const MirrorEntry p)

◆ intrusive_ptr_add_ref() [10/24]

void intrusive_ptr_add_ref ( const MplsLabel p)

◆ intrusive_ptr_add_ref() [11/24]

void intrusive_ptr_add_ref ( const MulticastPolicyEntry p)

◆ intrusive_ptr_add_ref() [12/24]

void intrusive_ptr_add_ref ( const NextHop p)

◆ intrusive_ptr_add_ref() [13/24]

void intrusive_ptr_add_ref ( const PhysicalDevice p)

◆ intrusive_ptr_add_ref() [14/24]

void intrusive_ptr_add_ref ( const PhysicalDeviceVn p)

◆ intrusive_ptr_add_ref() [15/24]

void intrusive_ptr_add_ref ( const PolicySet p)

◆ intrusive_ptr_add_ref() [16/24]

void intrusive_ptr_add_ref ( const QosQueueRef p)

◆ intrusive_ptr_add_ref() [17/24]

void intrusive_ptr_add_ref ( const Route p)

◆ intrusive_ptr_add_ref() [18/24]

void intrusive_ptr_add_ref ( const SecurityLoggingObject p)

◆ intrusive_ptr_add_ref() [19/24]

void intrusive_ptr_add_ref ( const SgEntry p)

◆ intrusive_ptr_add_ref() [20/24]

void intrusive_ptr_add_ref ( const TagEntry p)

◆ intrusive_ptr_add_ref() [21/24]

void intrusive_ptr_add_ref ( const VmEntry p)

◆ intrusive_ptr_add_ref() [22/24]

void intrusive_ptr_add_ref ( const VnEntry p)

◆ intrusive_ptr_add_ref() [23/24]

void intrusive_ptr_add_ref ( const VrfEntry p)

◆ intrusive_ptr_add_ref() [24/24]

void intrusive_ptr_add_ref ( const VxLanId p)

◆ intrusive_ptr_del_back_ref() [1/3]

void intrusive_ptr_del_back_ref ( const IntrusiveReferrer  ref,
const Interface p 
)

◆ intrusive_ptr_del_back_ref() [2/3]

void intrusive_ptr_del_back_ref ( const IntrusiveReferrer  ref,
const VmEntry p 
)

◆ intrusive_ptr_del_back_ref() [3/3]

void intrusive_ptr_del_back_ref ( const IntrusiveReferrer  ref,
const VrfEntry p 
)

◆ intrusive_ptr_release() [1/24]

void intrusive_ptr_release ( const AclDBEntry p)

◆ intrusive_ptr_release() [2/24]

void intrusive_ptr_release ( const AddrBase *  p)

◆ intrusive_ptr_release() [3/24]

void intrusive_ptr_release ( const AgentQosConfig p)

◆ intrusive_ptr_release() [4/24]

void intrusive_ptr_release ( const BridgeDomainEntry p)

◆ intrusive_ptr_release() [5/24]

void intrusive_ptr_release ( const CryptTunnelEntry p)

◆ intrusive_ptr_release() [6/24]

void intrusive_ptr_release ( const ForwardingClass p)

◆ intrusive_ptr_release() [7/24]

void intrusive_ptr_release ( const HealthCheckService p)

◆ intrusive_ptr_release() [8/24]

void intrusive_ptr_release ( const Interface p)

◆ intrusive_ptr_release() [9/24]

void intrusive_ptr_release ( const MirrorEntry p)

◆ intrusive_ptr_release() [10/24]

void intrusive_ptr_release ( const MplsLabel p)

◆ intrusive_ptr_release() [11/24]

void intrusive_ptr_release ( const MulticastPolicyEntry p)

◆ intrusive_ptr_release() [12/24]

void intrusive_ptr_release ( const NextHop p)

◆ intrusive_ptr_release() [13/24]

void intrusive_ptr_release ( const PhysicalDevice p)

◆ intrusive_ptr_release() [14/24]

void intrusive_ptr_release ( const PhysicalDeviceVn p)

◆ intrusive_ptr_release() [15/24]

void intrusive_ptr_release ( const PolicySet p)

◆ intrusive_ptr_release() [16/24]

void intrusive_ptr_release ( const QosQueueRef p)

◆ intrusive_ptr_release() [17/24]

void intrusive_ptr_release ( const Route p)

◆ intrusive_ptr_release() [18/24]

void intrusive_ptr_release ( const SecurityLoggingObject p)

◆ intrusive_ptr_release() [19/24]

void intrusive_ptr_release ( const SgEntry p)

◆ intrusive_ptr_release() [20/24]

void intrusive_ptr_release ( const TagEntry p)

◆ intrusive_ptr_release() [21/24]

void intrusive_ptr_release ( const VmEntry p)

◆ intrusive_ptr_release() [22/24]

void intrusive_ptr_release ( const VnEntry p)

◆ intrusive_ptr_release() [23/24]

void intrusive_ptr_release ( const VrfEntry p)

◆ intrusive_ptr_release() [24/24]

void intrusive_ptr_release ( const VxLanId p)

◆ RouterIdDepInit()

void RouterIdDepInit ( Agent agent)

Definition at line 45 of file controller/src/vnsw/agent/contrail/main.cc.

Here is the call graph for this function: