def __init__(self): """We are not interested in 'object-group service <name> [tcp|udp|tcp-udp]' variants, as they are legacy. """ DMList.__init__(self, name='ServiceObjectGroup', asa_key=re.compile('^object-group service \S+$'), child_class=ServiceObjectGroup)
def __init__(self, device=None, interfaces=None, include_shared_config=True): ''' @param device: dict to identify the ASA device, passed in from device_script APIs @param interfaces: dict physical interfaces names passed in from device_script APIs @param include_shared_config: boolean Flag to indicate if the function configuration should be modified. ''' DMObject.__init__(self, ifc_key=DeviceModel.__name__) self.device = device self.interfaces = interfaces self.sts_table = {} self.label2nameif = {} #cache of label to nameif map 'All the stuff defined in vnsMDevCfg section of device_specification.xml' self.register_child(Vifs()) self.register_child(DMList('VLAN', Vlan)) self.register_child(VxlanPort('vxlan_port')) self.register_child(NVE('NVE')) self.register_child(TVIs()) self.register_child(DMList('ENCAPASS', EncapAss)) self.register_child(DMList('InterfaceConfig', InterfaceConfig)) self.register_child(PortChannelMembers()) self.register_child(HostObjects()) self.register_child(SubnetObjects()) self.register_child(RangeObjects()) self.register_child(FQDNObjects()) self.register_child(ICMP4Objects()) self.register_child(ICMP6Objects()) self.register_child(ProtocolObjects()) self.register_child(TCPObjects()) self.register_child(UDPObjects()) self.register_child(NetworkObjectGroups()) self.register_child(ServiceObjectGroups()) self.register_child(AccessListList()) self.register_child( AccessListDeployment()) # Must follow AccessListList self.register_child(ClusterConfig()) self.register_child(LoggingConfig()) self.register_child(FailoverConfig()) self.register_child(AccessGroupGlobal()) self.register_child(Timeouts()) self.register_child(BasicThreatDetection()) self.register_child(AdvancedThreatDetection()) self.register_child(ScanningThreatDetection()) self.register_child(NetFlowObjects()) self.register_child(IPAudit()) self.register_child(NTP()) self.register_child(DNS()) self.register_child(SmartCallHome()) self.register_child(GlobalServicePolicyContainer()) 'Child for vsnGrpCfg element' if include_shared_config: self.register_child(SharedConfig())
def __init__(self, name): SimpleType.__init__(self, name, asa_gen_template='object-group network %(name)s') self.register_child(Description()) self.register_child( DMList(name='host_ip_address', child_class=HostObject, asa_key='network-object host')) self.register_child( DMList(name='object_name', child_class=ObjectObject, asa_key='network-object object')) self.register_child( DMList(name='network_ip_address', child_class=NetworkObject, asa_key='network-object')) self.register_child( DMList(name='object_group_name', child_class=GroupObject, asa_key='group-object'))
def __init__(self, name): SimpleType.__init__(self, name, asa_gen_template='interface BVI%(bvi_id)s') self.register_child(IPv4Addr('ipv4_address')) self.register_child( DMList(name='ipv6_address_with_prefix', child_class=IPv6Addr, asa_key='ipv6 address')) self.register_child(IPv6Enable('ipv6_enable')) self.register_child(IPv6NDDad('ipv6_nd_dad_attempts')) self.register_child(IPv6NDNsInterval('ipv6_nd_ns_interval')) self.register_child(IPv6NDReachable('ipv6_nd_reachable_time')) self.member1 = BridgeGroupMember() self.member2 = BridgeGroupMember() self.response_parser = cli_interaction.ignore_info_response_parser
def __init__(self, instance): SimpleType.__init__(self, ifc_key=instance, asa_gen_template='object-group service %(name)s') self.register_child(Description()) children = [ # ifc_key child_class asa_key ('protocol_type', ProtocolObject, '^service-object \S+$'), ('object_name', ObjectObject, '^service-object object'), ('tcp', TCPObject, '^service-object tcp '), ('udp', UDPObject, '^service-object udp '), ('tcp-udp', TCPUDPObject, '^service-object tcp-udp'), ('icmp', ICMPObject, '^service-object icmp '), ('icmp6', ICMP6Object, '^service-object icmp6'), ('object_group_name', GroupObject, '^group-object'), ] for ifc_key, child_class, asa_key in children: self.register_child( DMList(ifc_key, child_class, re.compile(asa_key)))
def __init__(self): DMList.__init__(self, name='BridgeGroupIntf', asa_key='interface BVI', child_class=BridgeGroupIntf)
def ifc2asa(self, no_asa_cfg_stack, asa_cfg_list): "Override the default implementation to make sure child referenced by other child comes in earlier" self.sort_children() DMList.ifc2asa(self, no_asa_cfg_stack, asa_cfg_list)
def create_firewall1(self, name): if not name in self.children: self.register_child(Firewall(name)) DMList.create_missing_ifc_delta_cfg(self)
def __init__(self): DMList.__init__(self, name='PortChannelMember', asa_key='interface', child_class=PortChannelMember)
def __init__(self): DMList.__init__(self, name='PortChannelMember', asa_key = 'interface', child_class=PortChannelMember)
def __init__(self): DMList.__init__(self, name='NetworkObjectGroup', asa_key='object-group network', child_class=NetworkObjectGroup)
def __init__(self, name, child_class, asa_sub_key): DMList.__init__(self, name, child_class, asa_key='object network') self.asa_sub_key = asa_sub_key
def __init__(self, name, child_class, asa_sub_key): DMList.__init__(self, name, child_class, asa_key='object service') self.asa_sub_key = asa_sub_key
def __init__(self): DMList.__init__(self, Firewall.__name__, Firewall)
def ifc2asa(self, no_asa_cfg_stack, asa_cfg_list): 'Override the default implementation to make sure child referenced by other child comes in earlier' self.sort_children() DMList.ifc2asa(self, no_asa_cfg_stack, asa_cfg_list)
def __init__(self, name, child_class, asa_sub_key): DMList.__init__(self, name, child_class, asa_key = 'object network') self.asa_sub_key = asa_sub_key