OpenSDN source code
AclEntrySpec Class Reference

#include <acl_entry_spec.h>

Collaboration diagram for AclEntrySpec:

Public Types

typedef boost::uuids::uuid uuid
 

Public Member Functions

 AclEntrySpec ()
 
bool Populate (const autogen::MatchConditionType *match_condition)
 
bool Populate (Agent *agent, IFMapNode *node, const autogen::FirewallRule *fw_rule)
 
bool PopulateServiceGroup (const autogen::ServiceGroup *service_group)
 
void PopulateAction (const AclTable *acl_table, const autogen::ActionListType &action_list)
 
void AddMirrorEntry (Agent *agent) const
 
void BuildAddressInfo (const std::string &prefix, int plen, std::vector< AclAddressInfo > *list)
 
void Reverse (AclEntrySpec *ace_spec, AclEntryID::Type type, bool swap_address, bool swap_port)
 
void ReverseAddress (AclEntrySpec *ace_spec)
 
void ReversePort (AclEntrySpec *ace_spec)
 
bool BuildAddressGroup (Agent *agent, IFMapNode *node, const std::string &name, bool source)
 
IFMapNodeGetAddressGroup (Agent *agent, IFMapNode *node, const std::string &name)
 
void PopulateServiceType (const autogen::FirewallServiceType *fst)
 

Public Attributes

AclTypeSpecT type
 
AclEntryID id
 
AddressMatch::AddressType src_addr_type
 
std::vector< AclAddressInfosrc_ip_list
 
uuid src_policy_id
 
std::string src_policy_id_str
 
int src_sg_id
 
AddressMatch::AddressType dst_addr_type
 
std::vector< AclAddressInfodst_ip_list
 
uuid dst_policy_id
 
std::string dst_policy_id_str
 
int dst_sg_id
 
std::vector< RangeSpecprotocol
 
std::vector< RangeSpecsrc_port
 
std::vector< RangeSpecdst_port
 
bool terminal
 
TagList src_tags
 
TagList dst_tags
 
ServiceGroupMatch::ServicePortList service_group
 
TagList match_tags
 
std::vector< ActionSpecaction_l
 
Address::Family family
 
std::string rule_uuid
 

Detailed Description

Definition at line 115 of file acl_entry_spec.h.

Member Typedef Documentation

◆ uuid

typedef boost::uuids::uuid AclEntrySpec::uuid

Definition at line 122 of file acl_entry_spec.h.

Constructor & Destructor Documentation

◆ AclEntrySpec()

AclEntrySpec::AclEntrySpec ( )
inline

Definition at line 119 of file acl_entry_spec.h.

Member Function Documentation

◆ AddMirrorEntry()

void AclEntrySpec::AddMirrorEntry ( Agent agent) const

Definition at line 1434 of file acl.cc.

Here is the call graph for this function:

◆ BuildAddressGroup()

bool AclEntrySpec::BuildAddressGroup ( Agent agent,
IFMapNode node,
const std::string &  name,
bool  source 
)

Definition at line 1184 of file acl.cc.

Here is the call graph for this function:

◆ BuildAddressInfo()

void AclEntrySpec::BuildAddressInfo ( const std::string &  prefix,
int  plen,
std::vector< AclAddressInfo > *  list 
)

Definition at line 1042 of file acl.cc.

Here is the call graph for this function:

◆ GetAddressGroup()

IFMapNode * AclEntrySpec::GetAddressGroup ( Agent agent,
IFMapNode node,
const std::string &  name 
)

Definition at line 1161 of file acl.cc.

Here is the call graph for this function:

◆ Populate() [1/2]

bool AclEntrySpec::Populate ( Agent agent,
IFMapNode node,
const autogen::FirewallRule *  fw_rule 
)

◆ Populate() [2/2]

bool AclEntrySpec::Populate ( const autogen::MatchConditionType *  match_condition)

◆ PopulateAction()

void AclEntrySpec::PopulateAction ( const AclTable acl_table,
const autogen::ActionListType &  action_list 
)

Definition at line 1475 of file acl.cc.

Here is the call graph for this function:

◆ PopulateServiceGroup()

bool AclEntrySpec::PopulateServiceGroup ( const autogen::ServiceGroup *  service_group)

Definition at line 1091 of file acl.cc.

Here is the call graph for this function:

◆ PopulateServiceType()

void AclEntrySpec::PopulateServiceType ( const autogen::FirewallServiceType *  fst)

Definition at line 1062 of file acl.cc.

◆ Reverse()

void AclEntrySpec::Reverse ( AclEntrySpec ace_spec,
AclEntryID::Type  type,
bool  swap_address,
bool  swap_port 
)

Definition at line 1137 of file acl.cc.

Here is the call graph for this function:

◆ ReverseAddress()

void AclEntrySpec::ReverseAddress ( AclEntrySpec ace_spec)

Definition at line 1104 of file acl.cc.

◆ ReversePort()

void AclEntrySpec::ReversePort ( AclEntrySpec ace_spec)

Definition at line 1120 of file acl.cc.

Member Data Documentation

◆ action_l

std::vector<ActionSpec> AclEntrySpec::action_l

Definition at line 156 of file acl_entry_spec.h.

◆ dst_addr_type

AddressMatch::AddressType AclEntrySpec::dst_addr_type

Definition at line 133 of file acl_entry_spec.h.

◆ dst_ip_list

std::vector<AclAddressInfo> AclEntrySpec::dst_ip_list

Definition at line 134 of file acl_entry_spec.h.

◆ dst_policy_id

uuid AclEntrySpec::dst_policy_id

Definition at line 135 of file acl_entry_spec.h.

◆ dst_policy_id_str

std::string AclEntrySpec::dst_policy_id_str

Definition at line 136 of file acl_entry_spec.h.

◆ dst_port

std::vector<RangeSpec> AclEntrySpec::dst_port

Definition at line 146 of file acl_entry_spec.h.

◆ dst_sg_id

int AclEntrySpec::dst_sg_id

Definition at line 137 of file acl_entry_spec.h.

◆ dst_tags

TagList AclEntrySpec::dst_tags

Definition at line 150 of file acl_entry_spec.h.

◆ family

Address::Family AclEntrySpec::family

Definition at line 159 of file acl_entry_spec.h.

◆ id

AclEntryID AclEntrySpec::id

Definition at line 124 of file acl_entry_spec.h.

◆ match_tags

TagList AclEntrySpec::match_tags

Definition at line 153 of file acl_entry_spec.h.

◆ protocol

std::vector<RangeSpec> AclEntrySpec::protocol

Definition at line 140 of file acl_entry_spec.h.

◆ rule_uuid

std::string AclEntrySpec::rule_uuid

Definition at line 165 of file acl_entry_spec.h.

◆ service_group

ServiceGroupMatch::ServicePortList AclEntrySpec::service_group

Definition at line 152 of file acl_entry_spec.h.

◆ src_addr_type

AddressMatch::AddressType AclEntrySpec::src_addr_type

Definition at line 127 of file acl_entry_spec.h.

◆ src_ip_list

std::vector<AclAddressInfo> AclEntrySpec::src_ip_list

Definition at line 128 of file acl_entry_spec.h.

◆ src_policy_id

uuid AclEntrySpec::src_policy_id

Definition at line 129 of file acl_entry_spec.h.

◆ src_policy_id_str

std::string AclEntrySpec::src_policy_id_str

Definition at line 130 of file acl_entry_spec.h.

◆ src_port

std::vector<RangeSpec> AclEntrySpec::src_port

Definition at line 143 of file acl_entry_spec.h.

◆ src_sg_id

int AclEntrySpec::src_sg_id

Definition at line 131 of file acl_entry_spec.h.

◆ src_tags

TagList AclEntrySpec::src_tags

Definition at line 149 of file acl_entry_spec.h.

◆ terminal

bool AclEntrySpec::terminal

Definition at line 148 of file acl_entry_spec.h.

◆ type

AclTypeSpecT AclEntrySpec::type

Definition at line 123 of file acl_entry_spec.h.


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