Adding eth masking in match
Change-Id: I95e0ee66b1c6c139de7672f9bc04871fd0ead6d7
diff --git a/core/api/src/main/java/org/onosproject/net/flow/criteria/Criteria.java b/core/api/src/main/java/org/onosproject/net/flow/criteria/Criteria.java
index 4259f5d..e306871 100644
--- a/core/api/src/main/java/org/onosproject/net/flow/criteria/Criteria.java
+++ b/core/api/src/main/java/org/onosproject/net/flow/criteria/Criteria.java
@@ -86,6 +86,17 @@
}
/**
+ * Creates a masked match on ETH_DST field using the specified value and mask.
+ *
+ * @param mac MAC address value
+ * @param mask MAC address masking
+ * @return match criterion
+ */
+ public static Criterion matchEthDstMasked(MacAddress mac, MacAddress mask) {
+ return new EthCriterion(mac, mask, Type.ETH_DST_MASKED);
+ }
+
+ /**
* Creates a match on ETH_SRC field using the specified value. This value
* may be a wildcard mask.
*
@@ -97,6 +108,17 @@
}
/**
+ * Creates a masked match on ETH_SRC field using the specified value and mask.
+ *
+ * @param mac MAC address value
+ * @param mask MAC address masking
+ * @return match criterion
+ */
+ public static Criterion matchEthSrcMasked(MacAddress mac, MacAddress mask) {
+ return new EthCriterion(mac, mask, Type.ETH_SRC_MASKED);
+ }
+
+ /**
* Creates a match on ETH_TYPE field using the specified value.
*
* @param ethType eth type value (16 bits unsigned integer)