OpenSDN source code
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
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

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

Definition at line 122 of file acl_entry_spec.h.

Constructor & Destructor Documentation

AclEntrySpec::AclEntrySpec ( )
inline

Definition at line 119 of file acl_entry_spec.h.

Member Function Documentation

void AclEntrySpec::AddMirrorEntry ( Agent agent) const

Definition at line 1434 of file acl.cc.

Here is the call graph for this function:

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:

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:

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:

bool AclEntrySpec::Populate ( const autogen::MatchConditionType *  match_condition)
bool AclEntrySpec::Populate ( Agent agent,
IFMapNode node,
const autogen::FirewallRule *  fw_rule 
)
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:

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

Definition at line 1091 of file acl.cc.

Here is the call graph for this function:

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

Definition at line 1062 of file acl.cc.

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:

void AclEntrySpec::ReverseAddress ( AclEntrySpec ace_spec)

Definition at line 1104 of file acl.cc.

void AclEntrySpec::ReversePort ( AclEntrySpec ace_spec)

Definition at line 1120 of file acl.cc.

Member Data Documentation

std::vector<ActionSpec> AclEntrySpec::action_l

Definition at line 156 of file acl_entry_spec.h.

AddressMatch::AddressType AclEntrySpec::dst_addr_type

Definition at line 133 of file acl_entry_spec.h.

std::vector<AclAddressInfo> AclEntrySpec::dst_ip_list

Definition at line 134 of file acl_entry_spec.h.

uuid AclEntrySpec::dst_policy_id

Definition at line 135 of file acl_entry_spec.h.

std::string AclEntrySpec::dst_policy_id_str

Definition at line 136 of file acl_entry_spec.h.

std::vector<RangeSpec> AclEntrySpec::dst_port

Definition at line 146 of file acl_entry_spec.h.

int AclEntrySpec::dst_sg_id

Definition at line 137 of file acl_entry_spec.h.

TagList AclEntrySpec::dst_tags

Definition at line 150 of file acl_entry_spec.h.

Address::Family AclEntrySpec::family

Definition at line 159 of file acl_entry_spec.h.

AclEntryID AclEntrySpec::id

Definition at line 124 of file acl_entry_spec.h.

TagList AclEntrySpec::match_tags

Definition at line 153 of file acl_entry_spec.h.

std::vector<RangeSpec> AclEntrySpec::protocol

Definition at line 140 of file acl_entry_spec.h.

std::string AclEntrySpec::rule_uuid

Definition at line 165 of file acl_entry_spec.h.

ServiceGroupMatch::ServicePortList AclEntrySpec::service_group

Definition at line 152 of file acl_entry_spec.h.

AddressMatch::AddressType AclEntrySpec::src_addr_type

Definition at line 127 of file acl_entry_spec.h.

std::vector<AclAddressInfo> AclEntrySpec::src_ip_list

Definition at line 128 of file acl_entry_spec.h.

uuid AclEntrySpec::src_policy_id

Definition at line 129 of file acl_entry_spec.h.

std::string AclEntrySpec::src_policy_id_str

Definition at line 130 of file acl_entry_spec.h.

std::vector<RangeSpec> AclEntrySpec::src_port

Definition at line 143 of file acl_entry_spec.h.

int AclEntrySpec::src_sg_id

Definition at line 131 of file acl_entry_spec.h.

TagList AclEntrySpec::src_tags

Definition at line 149 of file acl_entry_spec.h.

bool AclEntrySpec::terminal

Definition at line 148 of file acl_entry_spec.h.

AclTypeSpecT AclEntrySpec::type

Definition at line 123 of file acl_entry_spec.h.


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