*/
package org.opendaylight.netvirt.aclservice.tests
-import org.opendaylight.genius.mdsalutil.actions.ActionNxResubmit
-import org.opendaylight.genius.mdsalutil.FlowEntity
+import org.opendaylight.genius.mdsalutil.FlowEntityBuilder
import org.opendaylight.genius.mdsalutil.MetaDataUtil
+import org.opendaylight.genius.mdsalutil.actions.ActionNxResubmit
import org.opendaylight.genius.mdsalutil.instructions.InstructionApplyActions
+import org.opendaylight.genius.mdsalutil.instructions.InstructionGotoTable
+import org.opendaylight.genius.mdsalutil.instructions.InstructionWriteMetadata
import org.opendaylight.genius.mdsalutil.matches.MatchArpSha
+import org.opendaylight.genius.mdsalutil.matches.MatchArpSpa
+import org.opendaylight.genius.mdsalutil.matches.MatchEthernetSource
import org.opendaylight.genius.mdsalutil.matches.MatchEthernetType
import org.opendaylight.genius.mdsalutil.matches.MatchIcmpv6
import org.opendaylight.genius.mdsalutil.matches.MatchIpProtocol
+import org.opendaylight.genius.mdsalutil.matches.MatchIpv4Destination
+import org.opendaylight.genius.mdsalutil.matches.MatchIpv4Source
+import org.opendaylight.genius.mdsalutil.matches.MatchMetadata
import org.opendaylight.genius.mdsalutil.matches.MatchUdpDestinationPort
import org.opendaylight.genius.mdsalutil.matches.MatchUdpSourcePort
-import org.opendaylight.genius.mdsalutil.matches.MatchMetadata
+import org.opendaylight.genius.mdsalutil.nxmatches.NxMatchRegister
+import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.inet.types.rev130715.Ipv4Prefix
import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.yang.types.rev130715.MacAddress
+import org.opendaylight.yang.gen.v1.urn.opendaylight.openflowjava.nx.match.rev140421.NxmNxReg6
+
+import static extension org.opendaylight.mdsal.binding.testutils.XtendBuilderExtensions.operator_doubleGreaterThan
class FlowEntryObjectsBase {
protected def fixedIngressFlowsPort1() {
#[
- new FlowEntity(123bi) => [
+ new FlowEntityBuilder >> [
+ dpnId = 123bi
cookie = 110100480bi
flowId = "Ingress_DHCP_Server_v4123_987__Permit_"
- flowName = "ACL"
- instructionInfoList = #[
- new InstructionApplyActions(#[
- new ActionNxResubmit(220 as short)
- ])
- ]
+ flowName = "ACL"
+ instructionInfoList = #[
+ new InstructionApplyActions(#[
+ new ActionNxResubmit(220 as short)
+ ])
+ ]
matchInfoList = #[
new MatchEthernetType(2048L),
new MatchIpProtocol(17 as short),
new MatchUdpDestinationPort(68),
new MatchUdpSourcePort(67),
- new MatchMetadata(1085217976614912bi, MetaDataUtil.METADATA_MASK_LPORT_TAG)
+ new NxMatchRegister(NxmNxReg6, 252672L, 268435200L)
]
priority = 63010
tableId = 241 as short
],
- new FlowEntity(123bi) => [
+ new FlowEntityBuilder >> [
+ dpnId = 123bi
cookie = 110100480bi
flowId = "Ingress_DHCP_Server_v6_123_987___Permit_"
flowName = "ACL"
new MatchIpProtocol(17 as short),
new MatchUdpDestinationPort(546),
new MatchUdpSourcePort(547),
- new MatchMetadata(1085217976614912bi, MetaDataUtil.METADATA_MASK_LPORT_TAG)
+ new NxMatchRegister(NxmNxReg6, 252672L, 268435200L)
]
priority = 63010
tableId = 241 as short
],
- new FlowEntity(123bi) => [
+ new FlowEntityBuilder >> [
+ dpnId = 123bi
cookie = 110100480bi
flowId = "Ingress_ICMPv6_123_987_130_Permit_"
flowName = "ACL"
new MatchEthernetType(34525L),
new MatchIpProtocol(58 as short),
new MatchIcmpv6(130 as short, 0 as short),
- new MatchMetadata(1085217976614912bi, MetaDataUtil.METADATA_MASK_LPORT_TAG)
+ new NxMatchRegister(NxmNxReg6, 252672L, 268435200L)
]
priority = 63010
tableId = 241 as short
],
- new FlowEntity(123bi) => [
+ new FlowEntityBuilder >> [
+ dpnId = 123bi
cookie = 110100480bi
flowId = "Ingress_ICMPv6_123_987_135_Permit_"
flowName = "ACL"
new MatchEthernetType(34525L),
new MatchIpProtocol(58 as short),
new MatchIcmpv6(135 as short, 0 as short),
- new MatchMetadata(1085217976614912bi, MetaDataUtil.METADATA_MASK_LPORT_TAG)
+ new NxMatchRegister(NxmNxReg6, 252672L, 268435200L)
]
priority = 63010
tableId = 241 as short
],
- new FlowEntity(123bi) => [
+ new FlowEntityBuilder >> [
+ dpnId = 123bi
cookie = 110100480bi
flowId = "Ingress_ICMPv6_123_987_136_Permit_"
flowName = "ACL"
new MatchEthernetType(34525L),
new MatchIpProtocol(58 as short),
new MatchIcmpv6(136 as short, 0 as short),
- new MatchMetadata(1085217976614912bi, MetaDataUtil.METADATA_MASK_LPORT_TAG)
+ new NxMatchRegister(NxmNxReg6, 252672L, 268435200L)
]
priority = 63010
tableId = 241 as short
],
- new FlowEntity(123bi) => [
+ new FlowEntityBuilder >> [
+ dpnId = 123bi
cookie = 110100480bi
flowId = "Ingress_ARP_123_987"
flowName = "ACL"
]
matchInfoList = #[
new MatchEthernetType(2054L),
- new MatchMetadata(1085217976614912bi, MetaDataUtil.METADATA_MASK_LPORT_TAG)
+ new NxMatchRegister(NxmNxReg6, 252672L, 268435200L)
]
priority = 63010
tableId = 241 as short
protected def fixedEgressFlowsPort1() {
#[
- new FlowEntity(123bi) => [
+ new FlowEntityBuilder >> [
+ dpnId = 123bi
cookie = 110100480bi
- flowId = "Egress_DHCP_Client_v4123_987__Permit_"
+ flowId = "Egress_DHCP_Client_v4123_987_0D:AA:D8:42:30:F3_Permit_"
flowName = "ACL"
instructionInfoList = #[
new InstructionApplyActions(#[
new MatchIpProtocol(17 as short),
new MatchUdpDestinationPort(67),
new MatchUdpSourcePort(68),
- new MatchMetadata(1085217976614912bi, MetaDataUtil.METADATA_MASK_LPORT_TAG)
+ new MatchMetadata(1085217976614912bi, MetaDataUtil.METADATA_MASK_LPORT_TAG),
+ new MatchEthernetSource(new MacAddress("0D:AA:D8:42:30:F3"))
]
priority = 63010
tableId = 211 as short
],
- new FlowEntity(123bi) => [
+ new FlowEntityBuilder >> [
+ dpnId = 123bi
cookie = 110100480bi
- flowId = "Egress_DHCP_Client_v6_123_987__Permit_"
+ flowId = "Egress_DHCP_Client_v6_123_987_0D:AA:D8:42:30:F3_Permit_"
flowName = "ACL"
instructionInfoList = #[
new InstructionApplyActions(#[
new MatchIpProtocol(17 as short),
new MatchUdpDestinationPort(547),
new MatchUdpSourcePort(546),
- new MatchMetadata(1085217976614912bi, MetaDataUtil.METADATA_MASK_LPORT_TAG)
+ new MatchMetadata(1085217976614912bi, MetaDataUtil.METADATA_MASK_LPORT_TAG),
+ new MatchEthernetSource(new MacAddress("0D:AA:D8:42:30:F3"))
]
priority = 63010
tableId = 211 as short
],
- new FlowEntity(123bi) => [
+ new FlowEntityBuilder >> [
+ dpnId = 123bi
cookie = 110100480bi
flowId = "Egress_DHCP_Server_v4123_987__Drop_"
flowName = "ACL"
priority = 63010
tableId = 211 as short
],
- new FlowEntity(123bi) => [
+ new FlowEntityBuilder >> [
+ dpnId = 123bi
cookie = 110100480bi
flowId = "Egress_DHCP_Server_v6_123_987__Drop_"
flowName = "ACL"
priority = 63010
tableId = 211 as short
],
- new FlowEntity(123bi) => [
+ new FlowEntityBuilder >> [
+ dpnId = 123bi
cookie = 110100480bi
flowId = "Egress_ICMPv6_123_987_134_Drop_"
flowName = "ACL"
priority = 63020
tableId = 211 as short
],
- new FlowEntity(123bi) => [
+ new FlowEntityBuilder >> [
+ dpnId = 123bi
cookie = 110100480bi
flowId = "Egress_ICMPv6_123_987_133_Permit_"
flowName = "ACL"
priority = 63010
tableId = 211 as short
],
- new FlowEntity(123bi) => [
+ new FlowEntityBuilder >> [
+ dpnId = 123bi
cookie = 110100480bi
flowId = "Egress_ICMPv6_123_987_135_Permit_"
flowName = "ACL"
priority = 63010
tableId = 211 as short
],
- new FlowEntity(123bi) => [
+ new FlowEntityBuilder >> [
+ dpnId = 123bi
cookie = 110100480bi
flowId = "Egress_ICMPv6_123_987_136_Permit_"
flowName = "ACL"
]
priority = 63010
tableId = 211 as short
- ],
- new FlowEntity(123bi) => [
+ ]
+ ] + fixedEgressArpFlowsPort1
+
+ }
+
+ protected def fixedEgressArpFlowsPort1() {
+ #[
+ new FlowEntityBuilder >> [
+ dpnId = 123bi
cookie = 110100480bi
- flowId = "Egress_ARP_123_987_0D:AA:D8:42:30:F3"
+ flowId = "Egress_ARP_123_987_0D:AA:D8:42:30:F310.0.0.1/32"
flowName = "ACL"
instructionInfoList = #[
new InstructionApplyActions(#[
matchInfoList = #[
new MatchEthernetType(2054L),
new MatchArpSha(new MacAddress("0D:AA:D8:42:30:F3")),
+ new MatchEthernetSource(new MacAddress("0D:AA:D8:42:30:F3")),
+ new MatchArpSpa(new Ipv4Prefix("10.0.0.1/32")),
new MatchMetadata(1085217976614912bi, MetaDataUtil.METADATA_MASK_LPORT_TAG)
]
priority = 63010
tableId = 211 as short
]
- ]
+ ]
}
-
protected def fixedIngressFlowsPort2() {
#[
- new FlowEntity(123bi) => [
+ new FlowEntityBuilder >> [
+ dpnId = 123bi
cookie = 110100480bi
flowId = "Ingress_DHCP_Server_v4123_987__Permit_"
flowName = "ACL"
new MatchIpProtocol(17 as short),
new MatchUdpDestinationPort(68),
new MatchUdpSourcePort(67),
- new MatchMetadata(1085217976614912bi, MetaDataUtil.METADATA_MASK_LPORT_TAG)
+ new NxMatchRegister(NxmNxReg6, 252672L, 268435200L)
]
priority = 63010
tableId = 241 as short
],
- new FlowEntity(123bi) => [
+ new FlowEntityBuilder >> [
+ dpnId = 123bi
cookie = 110100480bi
flowId = "Ingress_DHCP_Server_v6_123_987___Permit_"
flowName = "ACL"
new MatchIpProtocol(17 as short),
new MatchUdpDestinationPort(546),
new MatchUdpSourcePort(547),
- new MatchMetadata(1085217976614912bi, MetaDataUtil.METADATA_MASK_LPORT_TAG)
+ new NxMatchRegister(NxmNxReg6, 252672L, 268435200L)
]
priority = 63010
tableId = 241 as short
],
- new FlowEntity(123bi) => [
+ new FlowEntityBuilder >> [
+ dpnId = 123bi
cookie = 110100480bi
flowId = "Ingress_ICMPv6_123_987_130_Permit_"
flowName = "ACL"
new MatchEthernetType(34525L),
new MatchIpProtocol(58 as short),
new MatchIcmpv6(130 as short, 0 as short),
- new MatchMetadata(1085217976614912bi, MetaDataUtil.METADATA_MASK_LPORT_TAG)
+ new NxMatchRegister(NxmNxReg6, 252672L, 268435200L)
]
priority = 63010
tableId = 241 as short
],
- new FlowEntity(123bi) => [
+ new FlowEntityBuilder >> [
+ dpnId = 123bi
cookie = 110100480bi
flowId = "Ingress_ICMPv6_123_987_135_Permit_"
flowName = "ACL"
new MatchEthernetType(34525L),
new MatchIpProtocol(58 as short),
new MatchIcmpv6(135 as short, 0 as short),
- new MatchMetadata(1085217976614912bi, MetaDataUtil.METADATA_MASK_LPORT_TAG)
+ new NxMatchRegister(NxmNxReg6, 252672L, 268435200L)
]
priority = 63010
tableId = 241 as short
],
- new FlowEntity(123bi) => [
+ new FlowEntityBuilder >> [
+ dpnId = 123bi
cookie = 110100480bi
flowId = "Ingress_ICMPv6_123_987_136_Permit_"
flowName = "ACL"
new MatchEthernetType(34525L),
new MatchIpProtocol(58 as short),
new MatchIcmpv6(136 as short, 0 as short),
- new MatchMetadata(1085217976614912bi, MetaDataUtil.METADATA_MASK_LPORT_TAG)
+ new NxMatchRegister(NxmNxReg6, 252672L, 268435200L)
]
priority = 63010
tableId = 241 as short
],
- new FlowEntity(123bi) => [
+ new FlowEntityBuilder >> [
+ dpnId = 123bi
cookie = 110100480bi
flowId = "Ingress_ARP_123_987"
flowName = "ACL"
]
matchInfoList = #[
new MatchEthernetType(2054L),
- new MatchMetadata(1085217976614912bi, MetaDataUtil.METADATA_MASK_LPORT_TAG)
+ new NxMatchRegister(NxmNxReg6, 252672L, 268435200L)
]
priority = 63010
tableId = 241 as short
protected def fixedEgressFlowsPort2 () {
#[
- new FlowEntity(123bi) => [
+ new FlowEntityBuilder >> [
+ dpnId = 123bi
cookie = 110100480bi
- flowId = "Egress_DHCP_Client_v4123_987__Permit_"
+ flowId = "Egress_DHCP_Client_v4123_987_0D:AA:D8:42:30:F4_Permit_"
flowName = "ACL"
instructionInfoList = #[
new InstructionApplyActions(#[
new MatchIpProtocol(17 as short),
new MatchUdpDestinationPort(67 as short),
new MatchUdpSourcePort(68 as short),
- new MatchMetadata(1085217976614912bi, MetaDataUtil.METADATA_MASK_LPORT_TAG)
+ new MatchMetadata(1085217976614912bi, MetaDataUtil.METADATA_MASK_LPORT_TAG),
+ new MatchEthernetSource(new MacAddress("0D:AA:D8:42:30:F4"))
]
priority = 63010
tableId = 211 as short
],
- new FlowEntity(123bi) => [
+ new FlowEntityBuilder >> [
+ dpnId = 123bi
cookie = 110100480bi
- flowId = "Egress_DHCP_Client_v6_123_987__Permit_"
+ flowId = "Egress_DHCP_Client_v6_123_987_0D:AA:D8:42:30:F4_Permit_"
flowName = "ACL"
instructionInfoList = #[
new InstructionApplyActions(#[
new MatchIpProtocol(17 as short),
new MatchUdpDestinationPort(547 as short),
new MatchUdpSourcePort(546 as short),
- new MatchMetadata(1085217976614912bi, MetaDataUtil.METADATA_MASK_LPORT_TAG)
+ new MatchMetadata(1085217976614912bi, MetaDataUtil.METADATA_MASK_LPORT_TAG),
+ new MatchEthernetSource(new MacAddress("0D:AA:D8:42:30:F4"))
]
priority = 63010
tableId = 211 as short
],
- new FlowEntity(123bi) => [
+ new FlowEntityBuilder >> [
+ dpnId = 123bi
cookie = 110100480bi
flowId = "Egress_DHCP_Server_v4123_987__Drop_"
flowName = "ACL"
priority = 63010
tableId = 211 as short
],
- new FlowEntity(123bi) => [
+ new FlowEntityBuilder >> [
+ dpnId = 123bi
cookie = 110100480bi
flowId = "Egress_DHCP_Server_v6_123_987__Drop_"
flowName = "ACL"
priority = 63010
tableId = 211 as short
],
- new FlowEntity(123bi) => [
+ new FlowEntityBuilder >> [
+ dpnId = 123bi
cookie = 110100480bi
flowId = "Egress_ICMPv6_123_987_134_Drop_"
flowName = "ACL"
priority = 63020
tableId = 211 as short
],
- new FlowEntity(123bi) => [
+ new FlowEntityBuilder >> [
+ dpnId = 123bi
cookie = 110100480bi
flowId = "Egress_ICMPv6_123_987_133_Permit_"
flowName = "ACL"
priority = 63010
tableId = 211 as short
],
- new FlowEntity(123bi) => [
+ new FlowEntityBuilder >> [
+ dpnId = 123bi
cookie = 110100480bi
flowId = "Egress_ICMPv6_123_987_135_Permit_"
flowName = "ACL"
priority = 63010
tableId = 211 as short
],
- new FlowEntity(123bi) => [
+ new FlowEntityBuilder >> [
+ dpnId = 123bi
cookie = 110100480bi
flowId = "Egress_ICMPv6_123_987_136_Permit_"
flowName = "ACL"
]
priority = 63010
tableId = 211 as short
- ],
- new FlowEntity(123bi) => [
+ ]
+ ] + fixedEgressArpFlowsPort2
+ }
+
+ protected def fixedEgressArpFlowsPort2() {
+ #[
+ new FlowEntityBuilder >> [
+ dpnId = 123bi
cookie = 110100480bi
- flowId = "Egress_ARP_123_987_0D:AA:D8:42:30:F4"
+ flowId = "Egress_ARP_123_987_0D:AA:D8:42:30:F410.0.0.2/32"
flowName = "ACL"
instructionInfoList = #[
new InstructionApplyActions(#[
matchInfoList = #[
new MatchEthernetType(2054L),
new MatchArpSha(new MacAddress("0D:AA:D8:42:30:F4")),
+ new MatchEthernetSource(new MacAddress("0D:AA:D8:42:30:F4")),
+ new MatchArpSpa(new Ipv4Prefix("10.0.0.2/32")),
new MatchMetadata(1085217976614912bi, MetaDataUtil.METADATA_MASK_LPORT_TAG)
]
priority = 63010
tableId = 211 as short
]
- ]
-
+ ]
}
protected def fixedIngressFlowsPort3() {
#[
- new FlowEntity(123bi) => [
+ new FlowEntityBuilder >> [
+ dpnId = 123bi
cookie = 110100480bi
flowId = "Ingress_DHCP_Server_v4123_987__Permit_"
flowName = "ACL"
new MatchIpProtocol(17 as short),
new MatchUdpDestinationPort(68),
new MatchUdpSourcePort(67),
- new MatchMetadata(1085217976614912bi, MetaDataUtil.METADATA_MASK_LPORT_TAG)
+ new NxMatchRegister(NxmNxReg6, 252672L, 268435200L)
]
priority = 63010
tableId = 241 as short
],
- new FlowEntity(123bi) => [
+ new FlowEntityBuilder >> [
+ dpnId = 123bi
cookie = 110100480bi
flowId = "Ingress_DHCP_Server_v6_123_987___Permit_"
flowName = "ACL"
new MatchIpProtocol(17 as short),
new MatchUdpDestinationPort(546),
new MatchUdpSourcePort(547),
- new MatchMetadata(1085217976614912bi, MetaDataUtil.METADATA_MASK_LPORT_TAG)
+ new NxMatchRegister(NxmNxReg6, 252672L, 268435200L)
]
priority = 63010
tableId = 241 as short
],
- new FlowEntity(123bi) => [
+ new FlowEntityBuilder >> [
+ dpnId = 123bi
cookie = 110100480bi
flowId = "Ingress_ICMPv6_123_987_130_Permit_"
flowName = "ACL"
new MatchEthernetType(34525L),
new MatchIpProtocol(58 as short),
new MatchIcmpv6(130 as short, 0 as short),
- new MatchMetadata(1085217976614912bi, MetaDataUtil.METADATA_MASK_LPORT_TAG)
+ new NxMatchRegister(NxmNxReg6, 252672L, 268435200L)
]
priority = 63010
tableId = 241 as short
],
- new FlowEntity(123bi) => [
+ new FlowEntityBuilder >> [
+ dpnId = 123bi
cookie = 110100480bi
flowId = "Ingress_ICMPv6_123_987_135_Permit_"
flowName = "ACL"
new MatchEthernetType(34525L),
new MatchIpProtocol(58 as short),
new MatchIcmpv6(135 as short, 0 as short),
- new MatchMetadata(1085217976614912bi, MetaDataUtil.METADATA_MASK_LPORT_TAG)
+ new NxMatchRegister(NxmNxReg6, 252672L, 268435200L)
]
priority = 63010
tableId = 241 as short
],
- new FlowEntity(123bi) => [
+ new FlowEntityBuilder >> [
+ dpnId = 123bi
cookie = 110100480bi
flowId = "Ingress_ICMPv6_123_987_136_Permit_"
flowName = "ACL"
new MatchEthernetType(34525L),
new MatchIpProtocol(58 as short),
new MatchIcmpv6(136 as short, 0 as short),
- new MatchMetadata(1085217976614912bi, MetaDataUtil.METADATA_MASK_LPORT_TAG)
+ new NxMatchRegister(NxmNxReg6, 252672L, 268435200L)
]
priority = 63010
tableId = 241 as short
],
- new FlowEntity(123bi) => [
+ new FlowEntityBuilder >> [
+ dpnId = 123bi
cookie = 110100480bi
flowId = "Ingress_ARP_123_987"
flowName = "ACL"
]
matchInfoList = #[
new MatchEthernetType(2054L),
- new MatchMetadata(1085217976614912bi, MetaDataUtil.METADATA_MASK_LPORT_TAG)
+ new NxMatchRegister(NxmNxReg6, 252672L, 268435200L)
]
priority = 63010
tableId = 241 as short
protected def fixedEgressFlowsPort3 () {
#[
- new FlowEntity(123bi) => [
+ new FlowEntityBuilder >> [
+ dpnId = 123bi
cookie = 110100480bi
- flowId = "Egress_DHCP_Client_v4123_987__Permit_"
+ flowId = "Egress_DHCP_Client_v4123_987_0D:AA:D8:42:30:F5_Permit_"
flowName = "ACL"
instructionInfoList = #[
new InstructionApplyActions(#[
new MatchIpProtocol(17 as short),
new MatchUdpDestinationPort(67),
new MatchUdpSourcePort(68),
- new MatchMetadata(1085217976614912bi, MetaDataUtil.METADATA_MASK_LPORT_TAG)
+ new MatchMetadata(1085217976614912bi, MetaDataUtil.METADATA_MASK_LPORT_TAG),
+ new MatchEthernetSource(new MacAddress("0D:AA:D8:42:30:F5"))
]
priority = 63010
tableId = 211 as short
],
- new FlowEntity(123bi) => [
+ new FlowEntityBuilder >> [
+ dpnId = 123bi
cookie = 110100480bi
- flowId = "Egress_DHCP_Client_v6_123_987__Permit_"
+ flowId = "Egress_DHCP_Client_v6_123_987_0D:AA:D8:42:30:F5_Permit_"
flowName = "ACL"
instructionInfoList = #[
new InstructionApplyActions(#[
new MatchIpProtocol(17 as short),
new MatchUdpDestinationPort(547),
new MatchUdpSourcePort(546),
- new MatchMetadata(1085217976614912bi, MetaDataUtil.METADATA_MASK_LPORT_TAG)
+ new MatchMetadata(1085217976614912bi, MetaDataUtil.METADATA_MASK_LPORT_TAG),
+ new MatchEthernetSource(new MacAddress("0D:AA:D8:42:30:F5"))
]
priority = 63010
tableId = 211 as short
],
- new FlowEntity(123bi) => [
+ new FlowEntityBuilder >> [
+ dpnId = 123bi
cookie = 110100480bi
flowId = "Egress_DHCP_Server_v4123_987__Drop_"
flowName = "ACL"
priority = 63010
tableId = 211 as short
],
- new FlowEntity(123bi) => [
+ new FlowEntityBuilder >> [
+ dpnId = 123bi
cookie = 110100480bi
flowId = "Egress_DHCP_Server_v6_123_987__Drop_"
flowName = "ACL"
priority = 63010
tableId = 211 as short
],
- new FlowEntity(123bi) => [
+ new FlowEntityBuilder >> [
+ dpnId = 123bi
cookie = 110100480bi
flowId = "Egress_ICMPv6_123_987_134_Drop_"
flowName = "ACL"
priority = 63020
tableId = 211 as short
],
- new FlowEntity(123bi) => [
+ new FlowEntityBuilder >> [
+ dpnId = 123bi
cookie = 110100480bi
flowId = "Egress_ICMPv6_123_987_133_Permit_"
flowName = "ACL"
priority = 63010
tableId = 211 as short
],
- new FlowEntity(123bi) => [
+ new FlowEntityBuilder >> [
+ dpnId = 123bi
cookie = 110100480bi
flowId = "Egress_ICMPv6_123_987_135_Permit_"
flowName = "ACL"
priority = 63010
tableId = 211 as short
],
- new FlowEntity(123bi) => [
+ new FlowEntityBuilder >> [
+ dpnId = 123bi
cookie = 110100480bi
flowId = "Egress_ICMPv6_123_987_136_Permit_"
flowName = "ACL"
priority = 63010
tableId = 211 as short
],
- new FlowEntity(123bi) => [
+ new FlowEntityBuilder >> [
+ dpnId = 123bi
cookie = 110100480bi
- flowId = "Egress_ARP_123_987_0D:AA:D8:42:30:F5"
+ flowId = "Egress_ARP_123_987_0D:AA:D8:42:30:F510.0.0.3/32"
flowName = "ACL"
instructionInfoList = #[
new InstructionApplyActions(#[
matchInfoList = #[
new MatchEthernetType(2054L),
new MatchArpSha(new MacAddress("0D:AA:D8:42:30:F5")),
+ new MatchEthernetSource(new MacAddress("0D:AA:D8:42:30:F5")),
+ new MatchArpSpa(new Ipv4Prefix("10.0.0.3/32")),
new MatchMetadata(1085217976614912bi, MetaDataUtil.METADATA_MASK_LPORT_TAG)
]
priority = 63010
static def fixedIngressFlowsPort4() {
#[
- new FlowEntity(123bi) => [
+ new FlowEntityBuilder >> [
+ dpnId = 123bi
cookie = 110100480bi
flowId = "Ingress_DHCP_Server_v4123_987__Permit_"
flowName = "ACL"
new MatchIpProtocol(17 as short),
new MatchUdpDestinationPort(68),
new MatchUdpSourcePort(67),
- new MatchMetadata(1085217976614912bi, MetaDataUtil.METADATA_MASK_LPORT_TAG)
+ new NxMatchRegister(NxmNxReg6, 252672L, 268435200L)
]
priority = 63010
tableId = 241 as short
],
- new FlowEntity(123bi) => [
+ new FlowEntityBuilder >> [
+ dpnId = 123bi
cookie = 110100480bi
flowId = "Ingress_DHCP_Server_v6_123_987___Permit_"
flowName = "ACL"
new MatchIpProtocol(17 as short),
new MatchUdpDestinationPort(546),
new MatchUdpSourcePort(547),
- new MatchMetadata(1085217976614912bi, MetaDataUtil.METADATA_MASK_LPORT_TAG)
+ new NxMatchRegister(NxmNxReg6, 252672L, 268435200L)
]
priority = 63010
tableId = 241 as short
],
- new FlowEntity(123bi) => [
+ new FlowEntityBuilder >> [
+ dpnId = 123bi
cookie = 110100480bi
flowId = "Ingress_ICMPv6_123_987_130_Permit_"
flowName = "ACL"
new MatchEthernetType(34525L),
new MatchIpProtocol(58 as short),
new MatchIcmpv6(130 as short, 0 as short),
- new MatchMetadata(1085217976614912bi, MetaDataUtil.METADATA_MASK_LPORT_TAG)
+ new NxMatchRegister(NxmNxReg6, 252672L, 268435200L)
]
priority = 63010
tableId = 241 as short
],
- new FlowEntity(123bi) => [
+ new FlowEntityBuilder >> [
+ dpnId = 123bi
cookie = 110100480bi
flowId = "Ingress_ICMPv6_123_987_135_Permit_"
flowName = "ACL"
new MatchEthernetType(34525L),
new MatchIpProtocol(58 as short),
new MatchIcmpv6(135 as short, 0 as short),
- new MatchMetadata(1085217976614912bi, MetaDataUtil.METADATA_MASK_LPORT_TAG)
+ new NxMatchRegister(NxmNxReg6, 252672L, 268435200L)
]
priority = 63010
tableId = 241 as short
],
- new FlowEntity(123bi) => [
+ new FlowEntityBuilder >> [
+ dpnId = 123bi
cookie = 110100480bi
flowId = "Ingress_ICMPv6_123_987_136_Permit_"
flowName = "ACL"
new MatchEthernetType(34525L),
new MatchIpProtocol(58 as short),
new MatchIcmpv6(136 as short, 0 as short),
- new MatchMetadata(1085217976614912bi, MetaDataUtil.METADATA_MASK_LPORT_TAG)
+ new NxMatchRegister(NxmNxReg6, 252672L, 268435200L)
]
priority = 63010
tableId = 241 as short
],
- new FlowEntity(123bi) => [
+ new FlowEntityBuilder >> [
+ dpnId = 123bi
cookie = 110100480bi
flowId = "Ingress_ARP_123_987"
flowName = "ACL"
]
matchInfoList = #[
new MatchEthernetType(2054L),
- new MatchMetadata(1085217976614912bi, MetaDataUtil.METADATA_MASK_LPORT_TAG)
+ new NxMatchRegister(NxmNxReg6, 252672L, 268435200L)
]
priority = 63010
tableId = 241 as short
static def fixedEgressFlowsPort4 () {
#[
- new FlowEntity(123bi) => [
+ new FlowEntityBuilder >> [
+ dpnId = 123bi
cookie = 110100480bi
flowId = "Egress_DHCP_Client_v4123_987__Permit_"
flowName = "ACL"
priority = 63010
tableId = 211 as short
],
- new FlowEntity(123bi) => [
+ new FlowEntityBuilder >> [
+ dpnId = 123bi
cookie = 110100480bi
flowId = "Egress_DHCP_Client_v6_123_987__Permit_"
flowName = "ACL"
priority = 63010
tableId = 211 as short
],
- new FlowEntity(123bi) => [
+ new FlowEntityBuilder >> [
+ dpnId = 123bi
cookie = 110100480bi
flowId = "Egress_DHCP_Server_v4123_987__Drop_"
flowName = "ACL"
priority = 63010
tableId = 211 as short
],
- new FlowEntity(123bi) => [
+ new FlowEntityBuilder >> [
+ dpnId = 123bi
cookie = 110100480bi
flowId = "Egress_DHCP_Server_v6_123_987__Drop_"
flowName = "ACL"
priority = 63010
tableId = 211 as short
],
- new FlowEntity(123bi) => [
+ new FlowEntityBuilder >> [
+ dpnId = 123bi
cookie = 110100480bi
flowId = "Egress_ICMPv6_123_987_134_Drop_"
flowName = "ACL"
priority = 63020
tableId = 211 as short
],
- new FlowEntity(123bi) => [
+ new FlowEntityBuilder >> [
+ dpnId = 123bi
cookie = 110100480bi
flowId = "Egress_ICMPv6_123_987_133_Permit_"
flowName = "ACL"
priority = 63010
tableId = 211 as short
],
- new FlowEntity(123bi) => [
+ new FlowEntityBuilder >> [
+ dpnId = 123bi
cookie = 110100480bi
flowId = "Egress_ICMPv6_123_987_135_Permit_"
flowName = "ACL"
priority = 63010
tableId = 211 as short
],
- new FlowEntity(123bi) => [
+ new FlowEntityBuilder >> [
+ dpnId = 123bi
cookie = 110100480bi
flowId = "Egress_ICMPv6_123_987_136_Permit_"
flowName = "ACL"
priority = 63010
tableId = 211 as short
],
- new FlowEntity(123bi) => [
+ new FlowEntityBuilder >> [
+ dpnId = 123bi
cookie = 110100480bi
- flowId = "Egress_ARP_123_0D:AA:D8:42:30:F6"
+ flowId = "Egress_ARP_123_987_0D:AA:D8:42:30:F6"
flowName = "ACL"
instructionInfoList = #[
new InstructionApplyActions(#[
matchInfoList = #[
new MatchEthernetType(2054L),
new MatchArpSha(new MacAddress("0D:AA:D8:42:30:F6")),
+ new MatchEthernetSource(new MacAddress("0D:AA:D8:42:30:F6")),
new MatchMetadata(1085217976614912bi, MetaDataUtil.METADATA_MASK_LPORT_TAG)
]
priority = 63010
tableId = 211 as short
],
- new FlowEntity(123bi) => [
+ new FlowEntityBuilder >> [
+ dpnId = 123bi
cookie = 110100480bi
- flowId = "Egress_ARP_123_0D:AA:D8:42:30:F6"
+ flowId = "Egress_ARP_123_987_0D:AA:D8:42:30:F6"
flowName = "ACL"
instructionInfoList = #[
new InstructionApplyActions(#[
matchInfoList = #[
new MatchEthernetType(2054L),
new MatchArpSha(new MacAddress("0D:AA:D8:42:30:F6")),
+ new MatchEthernetSource(new MacAddress("0D:AA:D8:42:30:F6")),
new MatchMetadata(1085217976614912bi, MetaDataUtil.METADATA_MASK_LPORT_TAG)
]
priority = 63010
]
}
+ protected def remoteFlows() {
+ remoteIngressFlowsPort1
+ + remoteEgressFlowsPort1
+ + remoteIngressFlowsPort2
+ + remoteEgressFlowsPort2
+ }
+
+ protected def remoteIngressFlowsPort1() {
+ #[
+ remoteIngressFlowsPort("10.0.0.1")
+ ]
+ }
+
+ protected def remoteIngressFlowsPort2() {
+ #[
+ remoteIngressFlowsPort("10.0.0.2")
+ ]
+ }
+
+ protected def remoteEgressFlowsPort1() {
+ #[
+ remoteEgressFlowsPort("10.0.0.1")
+ ]
+ }
+
+ protected def remoteEgressFlowsPort2() {
+ #[
+ remoteEgressFlowsPort("10.0.0.2")
+ ]
+ }
+
+ protected def remoteIngressFlowsPort(String ip) {
+ new FlowEntityBuilder >> [
+ dpnId = 123bi
+ cookie = 110100480bi
+ flowId = "Acl_Filter_Egress_" + ip + "/32_5000"
+ flowName = "ACL"
+ instructionInfoList = #[
+ new InstructionWriteMetadata(4bi, 16777214bi),
+ new InstructionGotoTable(213 as short)
+ ]
+ matchInfoList = #[
+ new MatchMetadata(83886080000bi, 1099494850560bi),
+ new MatchEthernetType(2048L),
+ new MatchIpv4Destination(ip, "32")
+ ]
+ priority = 50
+ tableId = 212 as short
+ ]
+ }
+
+ protected def remoteEgressFlowsPort(String ip) {
+ new FlowEntityBuilder >> [
+ dpnId = 123bi
+ cookie = 110100480bi
+ flowId = "Acl_Filter_Ingress_" + ip + "/32_5000"
+ flowName = "ACL"
+ instructionInfoList = #[
+ new InstructionWriteMetadata(4bi, 16777214bi),
+ new InstructionGotoTable(243 as short)
+ ]
+ matchInfoList = #[
+ new MatchMetadata(83886080000bi, 1099494850560bi),
+ new MatchEthernetType(2048L),
+ new MatchIpv4Source(ip, "32")
+ ]
+ priority = 50
+ tableId = 242 as short
+ ]
+ }
+
protected def expectedFlows(String mac) {
// Code auto. generated by https://github.com/vorburger/xtendbeans
#[
- new FlowEntity(123bi) => [
+ new FlowEntityBuilder >> [
+ dpnId = 123bi
cookie = 110100480bi
flowId = "Ingress_DHCP_Server_v4123_987__Permit_"
flowName = "ACL"
new MatchIpProtocol(17 as short),
new MatchUdpDestinationPort(68),
new MatchUdpSourcePort(67),
- new MatchMetadata(1085217976614912bi, MetaDataUtil.METADATA_MASK_LPORT_TAG)
+ new NxMatchRegister(NxmNxReg6, 252672L, 268435200L)
]
priority = 63010
tableId = 241 as short
],
- new FlowEntity(123bi) => [
+ new FlowEntityBuilder >> [
+ dpnId = 123bi
cookie = 110100480bi
flowId = "Ingress_DHCP_Server_v6_123_987___Permit_"
flowName = "ACL"
new MatchIpProtocol(17 as short),
new MatchUdpDestinationPort(546),
new MatchUdpSourcePort(547),
- new MatchMetadata(1085217976614912bi, MetaDataUtil.METADATA_MASK_LPORT_TAG)
+ new NxMatchRegister(NxmNxReg6, 252672L, 268435200L)
]
priority = 63010
tableId = 241 as short
],
- new FlowEntity(123bi) => [
+ new FlowEntityBuilder >> [
+ dpnId = 123bi
cookie = 110100480bi
flowId = "Ingress_ICMPv6_123_987_130_Permit_"
flowName = "ACL"
new MatchEthernetType(34525L),
new MatchIpProtocol(58 as short),
new MatchIcmpv6(130 as short, 0 as short),
- new MatchMetadata(1085217976614912bi, MetaDataUtil.METADATA_MASK_LPORT_TAG)
+ new NxMatchRegister(NxmNxReg6, 252672L, 268435200L)
]
priority = 63010
tableId = 241 as short
],
- new FlowEntity(123bi) => [
+ new FlowEntityBuilder >> [
+ dpnId = 123bi
cookie = 110100480bi
flowId = "Ingress_ICMPv6_123_987_135_Permit_"
flowName = "ACL"
new MatchEthernetType(34525L),
new MatchIpProtocol(58 as short),
new MatchIcmpv6(135 as short, 0 as short),
- new MatchMetadata(1085217976614912bi, MetaDataUtil.METADATA_MASK_LPORT_TAG)
+ new NxMatchRegister(NxmNxReg6, 252672L, 268435200L)
]
priority = 63010
tableId = 241 as short
],
- new FlowEntity(123bi) => [
+ new FlowEntityBuilder >> [
+ dpnId = 123bi
cookie = 110100480bi
flowId = "Ingress_ICMPv6_123_987_136_Permit_"
flowName = "ACL"
new MatchEthernetType(34525L),
new MatchIpProtocol(58 as short),
new MatchIcmpv6(136 as short, 0 as short),
- new MatchMetadata(1085217976614912bi, MetaDataUtil.METADATA_MASK_LPORT_TAG)
+ new NxMatchRegister(NxmNxReg6, 252672L, 268435200L)
]
priority = 63010
tableId = 241 as short
],
- new FlowEntity(123bi) => [
+ new FlowEntityBuilder >> [
+ dpnId = 123bi
cookie = 110100480bi
flowId = "Ingress_ARP_123_987"
flowName = "ACL"
]
matchInfoList = #[
new MatchEthernetType(2054L),
- new MatchMetadata(1085217976614912bi, MetaDataUtil.METADATA_MASK_LPORT_TAG)
+ new NxMatchRegister(NxmNxReg6, 252672L, 268435200L)
]
priority = 63010
tableId = 241 as short
],
- new FlowEntity(123bi) => [
+ new FlowEntityBuilder >> [
+ dpnId = 123bi
cookie = 110100480bi
- flowId = "Egress_DHCP_Client_v4123_987__Permit_"
+ flowId = "Egress_DHCP_Client_v4123_987_" + mac + "_Permit_"
flowName = "ACL"
instructionInfoList = #[
new InstructionApplyActions(#[
new MatchIpProtocol(17 as short),
new MatchUdpDestinationPort(67),
new MatchUdpSourcePort(68),
- new MatchMetadata(1085217976614912bi, MetaDataUtil.METADATA_MASK_LPORT_TAG)
+ new MatchMetadata(1085217976614912bi, MetaDataUtil.METADATA_MASK_LPORT_TAG),
+ new MatchEthernetSource(new MacAddress(mac))
]
priority = 63010
tableId = 211 as short
],
- new FlowEntity(123bi) => [
+ new FlowEntityBuilder >> [
+ dpnId = 123bi
cookie = 110100480bi
- flowId = "Egress_DHCP_Client_v6_123_987__Permit_"
+ flowId = "Egress_DHCP_Client_v6_123_987_" + mac + "_Permit_"
flowName = "ACL"
instructionInfoList = #[
new InstructionApplyActions(#[
new MatchIpProtocol(17 as short),
new MatchUdpDestinationPort(547),
new MatchUdpSourcePort(546),
- new MatchMetadata(1085217976614912bi, MetaDataUtil.METADATA_MASK_LPORT_TAG)
+ new MatchMetadata(1085217976614912bi, MetaDataUtil.METADATA_MASK_LPORT_TAG),
+ new MatchEthernetSource(new MacAddress(mac))
]
priority = 63010
tableId = 211 as short
],
- new FlowEntity(123bi) => [
+ new FlowEntityBuilder >> [
+ dpnId = 123bi
cookie = 110100480bi
flowId = "Egress_DHCP_Server_v4123_987__Drop_"
flowName = "ACL"
priority = 63010
tableId = 211 as short
],
- new FlowEntity(123bi) => [
+ new FlowEntityBuilder >> [
+ dpnId = 123bi
cookie = 110100480bi
flowId = "Egress_DHCP_Server_v6_123_987__Drop_"
flowName = "ACL"
priority = 63010
tableId = 211 as short
],
- new FlowEntity(123bi) => [
+ new FlowEntityBuilder >> [
+ dpnId = 123bi
cookie = 110100480bi
flowId = "Egress_ICMPv6_123_987_134_Drop_"
flowName = "ACL"
priority = 63020
tableId = 211 as short
],
- new FlowEntity(123bi) => [
+ new FlowEntityBuilder >> [
+ dpnId = 123bi
cookie = 110100480bi
flowId = "Egress_ICMPv6_123_987_133_Permit_"
flowName = "ACL"
priority = 63010
tableId = 211 as short
],
- new FlowEntity(123bi) => [
+ new FlowEntityBuilder >> [
+ dpnId = 123bi
cookie = 110100480bi
flowId = "Egress_ICMPv6_123_987_135_Permit_"
flowName = "ACL"
priority = 63010
tableId = 211 as short
],
- new FlowEntity(123bi) => [
+ new FlowEntityBuilder >> [
+ dpnId = 123bi
cookie = 110100480bi
flowId = "Egress_ICMPv6_123_987_136_Permit_"
flowName = "ACL"
]
priority = 63010
tableId = 211 as short
+ ],
+ new FlowEntityBuilder >> [
+ dpnId = 123bi
+ cookie = 110100480bi
+ flowId = "Egress_ARP_123_987_" + mac
+ flowName = "ACL"
+ instructionInfoList = #[
+ new InstructionApplyActions(#[
+ new ActionNxResubmit
+ ])
+ ]
+ matchInfoList = #[
+ new MatchEthernetType(2054L),
+ new MatchArpSha(new MacAddress(mac)),
+ new MatchEthernetSource(new MacAddress(mac)),
+ new MatchMetadata(1085217976614912bi, 1152920405095219200bi)
+ ]
+ priority = 63010
+ tableId = 211 as short
]
]
}