add bsn_udf extension
diff --git a/c_gen/c_type_maps.py b/c_gen/c_type_maps.py
index 19d7587..2b46932 100644
--- a/c_gen/c_type_maps.py
+++ b/c_gen/c_type_maps.py
@@ -544,6 +544,22 @@
         case 0x0b: return OF_OXM_BSN_L3_SRC_CLASS_ID_MASKED;
         case 0x0c: return OF_OXM_BSN_L3_DST_CLASS_ID;
         case 0x0d: return OF_OXM_BSN_L3_DST_CLASS_ID_MASKED;
+        case 0x10: return OF_OXM_BSN_UDF0;
+        case 0x11: return OF_OXM_BSN_UDF0_MASKED;
+        case 0x12: return OF_OXM_BSN_UDF1;
+        case 0x13: return OF_OXM_BSN_UDF1_MASKED;
+        case 0x14: return OF_OXM_BSN_UDF2;
+        case 0x15: return OF_OXM_BSN_UDF2_MASKED;
+        case 0x16: return OF_OXM_BSN_UDF3;
+        case 0x17: return OF_OXM_BSN_UDF3_MASKED;
+        case 0x18: return OF_OXM_BSN_UDF4;
+        case 0x19: return OF_OXM_BSN_UDF4_MASKED;
+        case 0x1a: return OF_OXM_BSN_UDF5;
+        case 0x1b: return OF_OXM_BSN_UDF5_MASKED;
+        case 0x1c: return OF_OXM_BSN_UDF6;
+        case 0x1d: return OF_OXM_BSN_UDF6_MASKED;
+        case 0x1e: return OF_OXM_BSN_UDF7;
+        case 0x1f: return OF_OXM_BSN_UDF7_MASKED;
         default: return OF_OBJECT_INVALID;
         }
     } else {