diff --git a/c_gen/templates/loci_show.h b/c_gen/templates/loci_show.h
index b21665d..88fd029 100644
--- a/c_gen/templates/loci_show.h
+++ b/c_gen/templates/loci_show.h
@@ -406,5 +406,6 @@
 #define LOCI_SHOW_u8_dscp(writer, cookie, val) LOCI_SHOW_u8(writer, cookie, val)
 #define LOCI_SHOW_u8_ttl(writer, cookie, val) LOCI_SHOW_u8(writer, cookie, val)
 #define LOCI_SHOW_u32_vpn(writer, cookie, val) LOCI_SHOW_u32(writer, cookie, val)
+#define LOCI_SHOW_u32_flags(writer, cookie, val) LOCI_SHOW_u32(writer, cookie, val)
 
 #endif /* _LOCI_SHOW_H_ */
diff --git a/openflow_input/bsn_vport b/openflow_input/bsn_vport
index 97316b4..82d9d33 100644
--- a/openflow_input/bsn_vport
+++ b/openflow_input/bsn_vport
@@ -42,17 +42,12 @@
     OF_BSN_VPORT_Q_IN_Q_UNTAGGED = 0xffff,
 };
 
-enum ofp_bsn_vport_l2gre_dscp_mode(wire_type=uint8_t) {
-    OF_BSN_VPORT_L2GRE_DSCP_ASSIGN = 0,
-    OF_BSN_VPORT_L2GRE_DSCP_COPY = 1,
-};
+enum ofp_bsn_vport_l2gre_flags(wire_type=uint32_t, bitmask=True) {
+    OF_BSN_VPORT_L2GRE_LOCAL_MAC_IS_VALID = 0x1,
 
-enum ofp_bsn_vport_l2gre_dscp_dont_care(wire_type=uint8_t, complete=False) {
-    OF_BSN_VPORT_L2GRE_DSCP_DONT_CARE = 0xff,
-};
-
-enum ofp_bsn_vport_l2gre_ttl_dont_care(wire_type=uint8_t, complete=False) {
-    OF_BSN_VPORT_L2GRE_TTL_DONT_CARE = 0xff,
+    /* DSCP flags are mutually exclusive */
+    OF_BSN_VPORT_L2GRE_DSCP_ASSIGN = 0x2,
+    OF_BSN_VPORT_L2GRE_DSCP_COPY = 0x4,
 };
 
 // BSN Virtual port object header
@@ -83,15 +78,15 @@
 struct of_bsn_vport_l2gre : of_bsn_vport {
     uint16_t type == 1;
     uint16_t length;
+    enum ofp_bsn_vport_l2gre_flags flags;
     of_port_no_t port_no;       /* OF port number of parent */
     of_mac_addr_t local_mac;    /* Local MAC */
     of_mac_addr_t nh_mac;       /* Next Hop MAC */
     of_ipv4_t src_ip;           /* Source IP */
     of_ipv4_t dst_ip;           /* Destination IP */
-    enum ofp_bsn_vport_l2gre_dscp_mode dscp_mode;
     uint8_t dscp;
     uint8_t ttl;
-    pad(1);
+    pad(2);
     uint32_t vpn;               /* VPN ID (for GRE Key) */
     of_port_name_t if_name;     /* Virtual Interface Name */
 };
diff --git a/test_data/of13/bsn_vport_create_request__l2gre.data b/test_data/of13/bsn_vport_create_request__l2gre.data
index f879651..95f4a7b 100644
--- a/test_data/of13/bsn_vport_create_request__l2gre.data
+++ b/test_data/of13/bsn_vport_create_request__l2gre.data
@@ -1,28 +1,29 @@
 -- binary
 04 04               # version, type
-00 44               # len
+00 48               # len
 01 02 03 04         # xid
 00 5c 16 c7         # experimenter
 00 00 00 0f         # subtype
 00 01               # vport type
-00 34               # vport len
+00 38               # vport len
+00 00 00 03         # vport flags
 00 00 00 01         # vport port no
 0a 0b 0c 0d 0e 0f   # local mac
 01 02 03 04 05 06   # next hop mac
 c0 00 00 02         # src ip
 c0 00 10 02         # dst ip
-00 01 40 00         # dscp mode, dscp, ttl, pad
+01 40 00 00         # dscp, ttl, pad(2)
 00 00 be ef         # vpn
 66 6f 6f 00 00 00 00 00 00 00 00 00 00 00 00 00 # vport if name
 -- python
 ofp.message.bsn_virtual_port_create_request(
 xid=0x01020304, vport=ofp.bsn_vport_l2gre(
+flags=ofp.OF_BSN_VPORT_L2GRE_LOCAL_MAC_IS_VALID | ofp.OF_BSN_VPORT_L2GRE_DSCP_ASSIGN,
 port_no=1,
 local_mac=[0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f],
 nh_mac=[0x01, 0x02, 0x03, 0x04, 0x05, 0x06],
 src_ip=0xc0000002,
 dst_ip=0xc0001002,
-dscp_mode=0,
 dscp=1,
 ttl=64,
 vpn=0xbeef,
@@ -37,12 +38,14 @@
         of_port_name_t if_name = "foo";
         of_mac_addr_t local_mac = { { 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f } };
         of_mac_addr_t nh_mac = { { 0x01, 0x02, 0x03, 0x04, 0x05, 0x06 } };
+        of_bsn_vport_l2gre_flags_set(vport,
+            OF_BSN_VPORT_L2GRE_LOCAL_MAC_IS_VALID |
+            OF_BSN_VPORT_L2GRE_DSCP_ASSIGN);
         of_bsn_vport_l2gre_port_no_set(vport, 1);
         of_bsn_vport_l2gre_local_mac_set(vport, local_mac);
         of_bsn_vport_l2gre_nh_mac_set(vport, nh_mac);
         of_bsn_vport_l2gre_src_ip_set(vport, 0xc0000002);
         of_bsn_vport_l2gre_dst_ip_set(vport, 0xc0001002);
-        of_bsn_vport_l2gre_dscp_mode_set(vport, 0);
         of_bsn_vport_l2gre_dscp_set(vport, 1);
         of_bsn_vport_l2gre_ttl_set(vport, 64);
         of_bsn_vport_l2gre_vpn_set(vport, 0xbeef);
