public static void addMatchIpProtocol(MatchBuilder match, final short ipProtocol) { IpMatchBuilder ipMatch = new IpMatchBuilder(); // ipv4 version ipMatch.setIpProtocol(ipProtocol); match.setIpMatch(mergeIpMatch(match, ipMatch)); }
@Override public Optional<MatchBuilder> process(@Nonnull IpEcnCase source, MatchResponseConvertorData data, ConvertorExecutor convertorExecutor) { final MatchBuilder matchBuilder = data.getMatchBuilder(); final IpMatchBuilder ipMatchBuilder = data.getIpMatchBuilder(); IpEcn ipEcn = source.getIpEcn(); if (ipEcn != null) { ipMatchBuilder.setIpEcn(ipEcn.getEcn()); matchBuilder.setIpMatch(ipMatchBuilder.build()); } return Optional.of(matchBuilder); } }
@Override public Optional<MatchBuilder> process(@Nonnull IpProtoCase source, MatchResponseConvertorData data, ConvertorExecutor convertorExecutor) { final MatchBuilder matchBuilder = data.getMatchBuilder(); final IpMatchBuilder ipMatchBuilder = data.getIpMatchBuilder(); IpProto ipProto = source.getIpProto(); Short protocolNumber = ipProto.getProtocolNumber(); if (protocolNumber != null) { ipMatchBuilder.setIpProtocol(protocolNumber); matchBuilder.setIpMatch(ipMatchBuilder.build()); } return Optional.of(matchBuilder); } }
@Override public Optional<MatchBuilder> process(@Nonnull IpDscpCase source, MatchResponseConvertorData data, ConvertorExecutor convertorExecutor) { final MatchBuilder matchBuilder = data.getMatchBuilder(); final IpMatchBuilder ipMatchBuilder = data.getIpMatchBuilder(); IpDscp ipDscp = source.getIpDscp(); if (ipDscp != null) { ipMatchBuilder.setIpDscp(new Dscp(ipDscp.getDscp().getValue())); matchBuilder.setIpMatch(ipMatchBuilder.build()); } return Optional.of(matchBuilder); } }
public static void addMatchDscp(MatchBuilder match, short dscpVal) { addMatchEtherType(match, ETHERTYPE_IPV4); IpMatchBuilder ipMatch = new IpMatchBuilder(); Dscp dscp = new Dscp(dscpVal); ipMatch.setIpDscp(dscp); match.setIpMatch(mergeIpMatch(match, ipMatch)); }
/** * Add a DSCP match to an existing match * @param matchBuilder Map matchBuilder MatchBuilder Object with a match * @param dscpValue * @return {@link MatchBuilder} */ public static MatchBuilder addDscp(MatchBuilder matchBuilder, short dscpValue) { createEtherTypeMatch(matchBuilder, new EtherType(ETHERTYPE_IPV4)); return matchBuilder.setIpMatch( new IpMatchBuilder() .setIpDscp(new Dscp(dscpValue)) .build()); }
public static void addMatchTcpSyn(MatchBuilder match) { IpMatchBuilder ipMatch = new IpMatchBuilder(); // ipv4 version ipMatch.setIpProtocol(IP_PROTOCOL_TCP); match.setIpMatch(mergeIpMatch(match, ipMatch)); TcpFlagsMatchBuilder tcpFlagMatch = new TcpFlagsMatchBuilder(); tcpFlagMatch.setTcpFlags(TCP_FLAG_SYN); match.setTcpFlagsMatch(tcpFlagMatch.build()); }
@Override protected List<MatchBuilder> update(List<MatchBuilder> matches, Map<String, ParameterValue> params) { Long proto = params.get(IpProtoClassifierDefinition.PROTO_PARAM).getIntValue(); for (MatchBuilder match : matches) { IpMatchBuilder imb; if (match.getIpMatch() != null) { equalOrNotSetValidation(match.getIpMatch().getIpProtocol(), proto); continue; } else { imb = new IpMatchBuilder(); } imb.setIpProtocol(proto.shortValue()); match.setIpMatch(imb.build()); } return matches; }
/** * Create tcp proto syn match. * * @param matchBuilder the match builder * @return matchBuilder match builder */ public static MatchBuilder createTcpProtoSynMatch(MatchBuilder matchBuilder) { // TCP Protocol Match IpMatchBuilder ipMatch = new IpMatchBuilder(); // ipv4 version ipMatch.setIpProtocol((short) 6); matchBuilder.setIpMatch(ipMatch.build()); TcpFlagMatchBuilder tcpFlagMatch = new TcpFlagMatchBuilder(); tcpFlagMatch.setTcpFlag(TCP_SYN); matchBuilder.setTcpFlagMatch(tcpFlagMatch.build()); return matchBuilder; }
/** * Create tcp proto syn match. * * @param matchBuilder the match builder * @return matchBuilder match builder */ public static MatchBuilder createTcpProtoSynMatch(MatchBuilder matchBuilder) { // TCP Protocol Match IpMatchBuilder ipMatch = new IpMatchBuilder(); // ipv4 version ipMatch.setIpProtocol((short) 6); matchBuilder.setIpMatch(ipMatch.build()); TcpFlagMatchBuilder tcpFlagMatch = new TcpFlagMatchBuilder(); tcpFlagMatch.setTcpFlag(TCP_SYN); matchBuilder.setTcpFlagMatch(tcpFlagMatch.build()); return matchBuilder; }
/** * Create tcp proto syn match. * * @param matchBuilder the match builder * @return matchBuilder match builder */ public static MatchBuilder createTcpProtoSynMatch(MatchBuilder matchBuilder) { // TCP Protocol Match // ipv4 version IpMatchBuilder ipMatch = new IpMatchBuilder(); ipMatch.setIpProtocol((short) 6); matchBuilder.setIpMatch(ipMatch.build()); TcpFlagsMatchBuilder tcpFlagsMatch = new TcpFlagsMatchBuilder(); tcpFlagsMatch.setTcpFlags(TCP_SYN); matchBuilder.setTcpFlagsMatch(tcpFlagsMatch.build()); return matchBuilder; }
/** * Match ICMPv6 code and type * * @param matchBuilder MatchBuilder Object * @param type short representing an ICMP type * @param code short representing an ICMP code * @return matchBuilder Map MatchBuilder Object with a match */ public static MatchBuilder createICMPv6Match(MatchBuilder matchBuilder, short type, short code) { // Build the IPv6 Match required per OVS Syntax IpMatchBuilder ipmatch = new IpMatchBuilder(); ipmatch.setIpProtocol((short) 58); matchBuilder.setIpMatch(ipmatch.build()); // Build the ICMPv6 Match Icmpv6MatchBuilder icmpv6match = new Icmpv6MatchBuilder(); if (type != ALL_ICMP || code != ALL_ICMP) { icmpv6match.setIcmpv6Type(type); icmpv6match.setIcmpv6Code(code); } matchBuilder.setIcmpv6Match(icmpv6match.build()); return matchBuilder; }
public static org.opendaylight.yang.gen.v1.urn.opendaylight.flow.types.rev131026.flow.Match toMatch( Match sourceMatch) { if (sourceMatch != null) { MatchBuilder targetBuilder = new MatchBuilder(); targetBuilder.setEthernetMatch(ethernetMatch(sourceMatch)); targetBuilder.setIpMatch(ipMatch(sourceMatch)); targetBuilder.setVlanMatch(vlanMatch(sourceMatch)); targetBuilder.setLayer3Match(layer3Match(sourceMatch)); targetBuilder.setLayer4Match(layer4Match(sourceMatch)); targetBuilder.setInPort(inPortMatch(sourceMatch)); return targetBuilder.build(); } return null; }
/** * @return */ private static MatchBuilder createToSMatch() { final MatchBuilder match = new MatchBuilder(); final EthernetMatchBuilder ethmatch = new EthernetMatchBuilder(); final EthernetTypeBuilder ethtype = new EthernetTypeBuilder(); final EtherType type = new EtherType(0x0800L); ethmatch.setEthernetType(ethtype.setType(type).build()); match.setEthernetMatch(ethmatch.build()); final IpMatchBuilder ipmatch = new IpMatchBuilder(); // ipv4 version ipmatch.setIpProtocol((short) 6); final Dscp dscp = new Dscp((short) 8); ipmatch.setIpDscp(dscp); match.setIpMatch(ipmatch.build()); return match; }
/** * Create Source TCP Port Match * * @param matchBuilder MatchBuilder Object without a match yet * @param tcpport Integer representing a source TCP port * @return matchBuilder Map MatchBuilder Object with a match */ public static MatchBuilder createSetSrcTcpMatch(MatchBuilder matchBuilder, PortNumber tcpport) { EthernetMatchBuilder ethType = new EthernetMatchBuilder(); EthernetTypeBuilder ethTypeBuilder = new EthernetTypeBuilder(); ethTypeBuilder.setType(new EtherType(IPV4_LONG)); ethType.setEthernetType(ethTypeBuilder.build()); matchBuilder.setEthernetMatch(ethType.build()); IpMatchBuilder ipmatch = new IpMatchBuilder(); ipmatch.setIpProtocol((short) 6); matchBuilder.setIpMatch(ipmatch.build()); TcpMatchBuilder tcpmatch = new TcpMatchBuilder(); tcpmatch.setTcpSourcePort(tcpport); matchBuilder.setLayer4Match(tcpmatch.build()); return matchBuilder; }
/** * Create Destination TCP Port Match * * @param matchBuilder MatchBuilder Object without a match yet * @param tcpDstPort Integer representing a destination TCP port * @return matchBuilder Map MatchBuilder Object with a match */ public static MatchBuilder createSetDstTcpMatch(MatchBuilder matchBuilder, PortNumber tcpDstPort) { EthernetMatchBuilder ethType = new EthernetMatchBuilder(); EthernetTypeBuilder ethTypeBuilder = new EthernetTypeBuilder(); ethTypeBuilder.setType(new EtherType(IPV4_LONG)); ethType.setEthernetType(ethTypeBuilder.build()); matchBuilder.setEthernetMatch(ethType.build()); IpMatchBuilder ipmatch = new IpMatchBuilder(); ipmatch.setIpProtocol((short) 6); matchBuilder.setIpMatch(ipmatch.build()); TcpMatchBuilder tcpmatch = new TcpMatchBuilder(); tcpmatch.setTcpDestinationPort(tcpDstPort); matchBuilder.setLayer4Match(tcpmatch.build()); return matchBuilder; }
/** * Create Destination TCP Port Match * * @param matchBuilder MatchBuilder Object without a match yet * @param tcpDstPort Integer representing a destination TCP port * @return matchBuilder Map MatchBuilder Object with a match */ public static MatchBuilder createSetDstTcpMatch(MatchBuilder matchBuilder, PortNumber tcpDstPort) { EthernetMatchBuilder ethType = new EthernetMatchBuilder(); EthernetTypeBuilder ethTypeBuilder = new EthernetTypeBuilder(); ethTypeBuilder.setType(new EtherType(0x0800L)); ethType.setEthernetType(ethTypeBuilder.build()); matchBuilder.setEthernetMatch(ethType.build()); IpMatchBuilder ipmatch = new IpMatchBuilder(); ipmatch.setIpProtocol((short) 6); matchBuilder.setIpMatch(ipmatch.build()); TcpMatchBuilder tcpmatch = new TcpMatchBuilder(); tcpmatch.setTcpDestinationPort(tcpDstPort); matchBuilder.setLayer4Match(tcpmatch.build()); return matchBuilder; }
/** * @return */ private static MatchBuilder createICMPv4Match() { final MatchBuilder match = new MatchBuilder(); final EthernetMatchBuilder eth = new EthernetMatchBuilder(); final EthernetTypeBuilder ethTypeBuilder = new EthernetTypeBuilder(); ethTypeBuilder.setType(new EtherType(0x0800L)); eth.setEthernetType(ethTypeBuilder.build()); match.setEthernetMatch(eth.build()); final IpMatchBuilder ipmatch = new IpMatchBuilder(); // ipv4 version ipmatch.setIpProtocol((short) 1); match.setIpMatch(ipmatch.build()); final Icmpv4MatchBuilder icmpv4match = new Icmpv4MatchBuilder(); // icmpv4 // match icmpv4match.setIcmpv4Type((short) 8); icmpv4match.setIcmpv4Code((short) 0); match.setIcmpv4Match(icmpv4match.build()); return match; }
/** * @return */ private static MatchBuilder createL4TCPMatch() { final MatchBuilder match = new MatchBuilder(); final EthernetMatchBuilder eth = new EthernetMatchBuilder(); final EthernetTypeBuilder ethTypeBuilder = new EthernetTypeBuilder(); ethTypeBuilder.setType(new EtherType(0x0800L)); eth.setEthernetType(ethTypeBuilder.build()); match.setEthernetMatch(eth.build()); final IpMatchBuilder ipmatch = new IpMatchBuilder(); // ipv4 version ipmatch.setIpProtocol((short) 6); match.setIpMatch(ipmatch.build()); final PortNumber srcport = new PortNumber(1213); final PortNumber dstport = new PortNumber(646); final TcpMatchBuilder tcpmatch = new TcpMatchBuilder(); // tcp match tcpmatch.setTcpSourcePort(srcport); tcpmatch.setTcpDestinationPort(dstport); match.setLayer4Match(tcpmatch.build()); return match; }
/** * @return */ private static MatchBuilder createL4UDPMatch() { final MatchBuilder match = new MatchBuilder(); final EthernetMatchBuilder eth = new EthernetMatchBuilder(); final EthernetTypeBuilder ethTypeBuilder = new EthernetTypeBuilder(); ethTypeBuilder.setType(new EtherType(0x0800L)); eth.setEthernetType(ethTypeBuilder.build()); match.setEthernetMatch(eth.build()); final IpMatchBuilder ipmatch = new IpMatchBuilder(); // ipv4 version ipmatch.setIpProtocol((short) 17); match.setIpMatch(ipmatch.build()); final PortNumber srcport = new PortNumber(1325); final PortNumber dstport = new PortNumber(42); final UdpMatchBuilder udpmatch = new UdpMatchBuilder(); // udp match udpmatch.setUdpDestinationPort(dstport); udpmatch.setUdpSourcePort(srcport); match.setLayer4Match(udpmatch.build()); return match; }