of_tunnel_id support for OXM is added.
diff --git a/java_gen/pre-written/src/main/java/org/projectfloodlight/openflow/protocol/match/MatchField.java b/java_gen/pre-written/src/main/java/org/projectfloodlight/openflow/protocol/match/MatchField.java
index aebcbb2..c5f9167 100644
--- a/java_gen/pre-written/src/main/java/org/projectfloodlight/openflow/protocol/match/MatchField.java
+++ b/java_gen/pre-written/src/main/java/org/projectfloodlight/openflow/protocol/match/MatchField.java
@@ -20,6 +20,7 @@
 import org.projectfloodlight.openflow.types.OFValueType;
 import org.projectfloodlight.openflow.types.OFVlanVidMatch;
 import org.projectfloodlight.openflow.types.TransportPort;
+import org.projectfloodlight.openflow.types.U64;
 import org.projectfloodlight.openflow.types.U32;
 import org.projectfloodlight.openflow.types.U8;
 import org.projectfloodlight.openflow.types.UDF;
@@ -176,6 +177,9 @@
             new MatchField<U8>("mpls_tc", MatchFields.MPLS_TC,
                     new Prerequisite<EthType>(MatchField.ETH_TYPE, EthType.MPLS_UNICAST, EthType.MPLS_MULTICAST));
 
+    public final static MatchField<U64> TUNNEL_ID = 
+            new MatchField<U64>("tunnel_id", MatchFields.TUNNEL_ID);
+
     public final static MatchField<OFBitMask128> BSN_IN_PORTS_128 =
             new MatchField<OFBitMask128>("bsn_in_ports_128", MatchFields.BSN_IN_PORTS_128);
 
diff --git a/java_gen/pre-written/src/main/java/org/projectfloodlight/openflow/protocol/match/MatchFields.java b/java_gen/pre-written/src/main/java/org/projectfloodlight/openflow/protocol/match/MatchFields.java
index d1e2ee9..021ba71 100644
--- a/java_gen/pre-written/src/main/java/org/projectfloodlight/openflow/protocol/match/MatchFields.java
+++ b/java_gen/pre-written/src/main/java/org/projectfloodlight/openflow/protocol/match/MatchFields.java
@@ -38,6 +38,7 @@
     IPV6_ND_TLL,
     MPLS_LABEL,
     MPLS_TC,
+    TUNNEL_ID,
     BSN_IN_PORTS_128,
     BSN_LAG_ID,
     BSN_VRF,
diff --git a/java_gen/pre-written/src/main/java/org/projectfloodlight/openflow/types/IPAddress.java b/java_gen/pre-written/src/main/java/org/projectfloodlight/openflow/types/IPAddress.java
index 6ca39fe..6a1868e 100644
--- a/java_gen/pre-written/src/main/java/org/projectfloodlight/openflow/types/IPAddress.java
+++ b/java_gen/pre-written/src/main/java/org/projectfloodlight/openflow/types/IPAddress.java
@@ -31,14 +31,14 @@
 
     /**
      * Perform a low level AND operation on the bits of two IPAddress<?> objects
-     * @param   IPAddress<?> other
+     * @param   other F
      * @return  new IPAddress<?> object after the AND oper
      */
     public abstract F and(F other);
 
     /**
      * Perform a low level OR operation on the bits of two IPAddress<?> objects
-     * @param   IPAddress<?> other
+     * @param   other F
      * @return  new IPAddress<?> object after the AND oper
      */
     public abstract F or(F other);
diff --git a/java_gen/pre-written/src/main/java/org/projectfloodlight/openflow/types/U64.java b/java_gen/pre-written/src/main/java/org/projectfloodlight/openflow/types/U64.java
index f480c47..70f362d 100644
--- a/java_gen/pre-written/src/main/java/org/projectfloodlight/openflow/types/U64.java
+++ b/java_gen/pre-written/src/main/java/org/projectfloodlight/openflow/types/U64.java
@@ -32,6 +32,10 @@
     private final static long ZERO_VAL = 0;
     public final static U64 ZERO = new U64(ZERO_VAL);
 
+    private static final long NO_MASK_VAL = 0xFFffFFffFFffFFffL;
+    public final static U64 NO_MASK = new U64(NO_MASK_VAL);
+    public static final U64 FULL_MASK = ZERO;
+
     private final long raw;
 
     protected U64(final long raw) {