diff --git a/c_gen/c_code_gen.py b/c_gen/c_code_gen.py
index 10668b7..81f5a1a 100644
--- a/c_gen/c_code_gen.py
+++ b/c_gen/c_code_gen.py
@@ -700,6 +700,7 @@
 typedef char of_table_name_t[OF_MAX_TABLE_NAME_LEN];
 typedef char of_desc_str_t[OF_DESC_STR_LEN];
 typedef char of_serial_num_t[OF_SERIAL_NUM_LEN];
+typedef char of_str64_t[64];
 
 typedef struct of_bitmap_128_s {
     uint64_t hi;
diff --git a/c_gen/c_test_gen.py b/c_gen/c_test_gen.py
index 316a2b3..01f1c5d 100644
--- a/c_gen/c_test_gen.py
+++ b/c_gen/c_test_gen.py
@@ -92,6 +92,7 @@
         of_table_name_t="table_name",
         of_desc_str_t="desc_str",
         of_serial_num_t="ser_num",
+        of_str64_t="str64",
         of_mac_addr_t="mac_addr",
         of_ipv6_t="ipv6",
         # Non-scalars; more TBD
@@ -115,7 +116,8 @@
                  "of_match_bmap_t", "of_ipv4_t"]
 string_types = [ "of_port_name_t", "of_table_name_t",
                 "of_desc_str_t", "of_serial_num_t", "of_mac_addr_t",
-                "of_ipv6_t", "of_bitmap_128_t", "of_checksum_128_t"]
+                "of_ipv6_t", "of_bitmap_128_t", "of_checksum_128_t",
+                "of_str64_t"]
 
 scalar_types = integer_types[:]
 scalar_types.extend(string_types)
diff --git a/c_gen/of_g_legacy.py b/c_gen/of_g_legacy.py
index 1fadba0..3311282 100644
--- a/c_gen/of_g_legacy.py
+++ b/c_gen/of_g_legacy.py
@@ -192,6 +192,7 @@
                          short_name="desc_str"),
     of_serial_num_t = dict(bytes=ofp_constants["OF_SERIAL_NUM_LEN"],
                            short_name="ser_num"),
+    of_str64_t = dict(bytes=64, short_name="str64"),
     of_match_v1_t = dict(bytes=40, to_w="match_v1_hton",
                          from_w="match_v1_ntoh",
                          short_name="match_v1"),
@@ -213,7 +214,8 @@
                    "of_port_no_t", "of_fm_cmd_t", "of_wc_bmap_t",
                    "of_match_bmap_t", "of_port_name_t", "of_table_name_t",
                    "of_desc_str_t", "of_serial_num_t", "of_mac_addr_t",
-                   "of_ipv6_t", "of_ipv4_t", "of_bitmap_128_t", "of_checksum_128_t"]
+                   "of_ipv6_t", "of_ipv4_t", "of_bitmap_128_t", "of_checksum_128_t",
+                   "of_str64_t"]
 
 ##
 # LOXI identifiers
diff --git a/c_gen/templates/loci_dump.h b/c_gen/templates/loci_dump.h
index 9cc719c..1344565 100644
--- a/c_gen/templates/loci_dump.h
+++ b/c_gen/templates/loci_dump.h
@@ -90,6 +90,7 @@
 #define LOCI_DUMP_tab_name(writer, cookie, val) LOCI_DUMP_string(writer, cookie, val)
 #define LOCI_DUMP_desc_str(writer, cookie, val) LOCI_DUMP_string(writer, cookie, val)
 #define LOCI_DUMP_ser_num(writer, cookie, val) LOCI_DUMP_string(writer, cookie, val)
+#define LOCI_DUMP_str64(writer, cookie, val) LOCI_DUMP_string(writer, cookie, val)
 
 int loci_dump_match(loci_writer_f writer, void* cookie, of_match_t *match);
 #define LOCI_DUMP_match(writer, cookie, val) loci_dump_match(writer, cookie, &val)
diff --git a/c_gen/templates/loci_show.h b/c_gen/templates/loci_show.h
index 5384837..4389f4c 100644
--- a/c_gen/templates/loci_show.h
+++ b/c_gen/templates/loci_show.h
@@ -158,6 +158,7 @@
 #define LOCI_SHOW_tab_name(writer, cookie, val) LOCI_SHOW_string(writer, cookie, val)
 #define LOCI_SHOW_desc_str(writer, cookie, val) LOCI_SHOW_string(writer, cookie, val)
 #define LOCI_SHOW_ser_num(writer, cookie, val) LOCI_SHOW_string(writer, cookie, val)
+#define LOCI_SHOW_str64(writer, cookie, val) LOCI_SHOW_string(writer, cookie, val)
 
 int loci_show_match(loci_writer_f writer, void *cookie, of_match_t *match);
 #define LOCI_SHOW_match(writer, cookie, val) loci_show_match(writer, cookie, &val)
diff --git a/c_gen/templates/of_wire_buf.h b/c_gen/templates/of_wire_buf.h
index 4736ac0..0723454 100644
--- a/c_gen/templates/of_wire_buf.h
+++ b/c_gen/templates/of_wire_buf.h
@@ -853,6 +853,30 @@
     _wbuf_octets_set(buf, offset, (uint8_t *)sernum, OF_SERIAL_NUM_LEN)
 
 /**
+ * Get a str64 string from a wire buffer
+ * @param wbuf The pointer to the wire buffer structure
+ * @param offset Offset in the wire buffer
+ * @param s The string
+ *
+ * Uses the octets function.
+ */
+
+#define of_wire_buffer_str64_get(buf, offset, s) \
+    _wbuf_octets_get(buf, offset, (uint8_t *)s, 64)
+
+/**
+ * Set a str64 string in a wire buffer
+ * @param wbuf The pointer to the wire buffer structure
+ * @param offset Offset in the wire buffer
+ * @param s Where to store the str64
+ *
+ * Uses the octets function.
+ */
+
+#define of_wire_buffer_str64_set(buf, offset, s) \
+    _wbuf_octets_set(buf, offset, (uint8_t *)s, 64)
+
+/**
  * Get an ipv6 address from a wire buffer
  * @param wbuf The pointer to the wire buffer structure
  * @param offset Offset in the wire buffer
diff --git a/java_gen/java_type.py b/java_gen/java_type.py
index 6188771..be8251b 100644
--- a/java_gen/java_type.py
+++ b/java_gen/java_type.py
@@ -349,6 +349,7 @@
 desc_str = gen_fixed_length_string_jtype(256)
 serial_num = gen_fixed_length_string_jtype(32)
 table_name = gen_fixed_length_string_jtype(32)
+str64 = gen_fixed_length_string_jtype(64)
 ipv4 = JType("IPv4Address") \
         .op(read="IPv4Address.read4Bytes(bb)", \
             write="$name.write4Bytes(bb)",
@@ -526,6 +527,7 @@
         'of_serial_num_t': serial_num,
         'of_port_name_t': port_name,
         'of_table_name_t': table_name,
+        'of_str64_t': str64,
         'of_ipv4_t': ipv4,
         'of_ipv6_t': ipv6,
         'of_wc_bmap_t': flow_wildcards,
diff --git a/loxi_ir/ir_offset.py b/loxi_ir/ir_offset.py
index e705fcc..2e6d004 100644
--- a/loxi_ir/ir_offset.py
+++ b/loxi_ir/ir_offset.py
@@ -95,6 +95,7 @@
     of_table_name_t = (ofp_constants["OF_MAX_TABLE_NAME_LEN"], True),
     of_desc_str_t = (ofp_constants["OF_DESC_STR_LEN"], True),
     of_serial_num_t = (ofp_constants["OF_SERIAL_NUM_LEN"], True),
+    of_str64_t = (64, True),
     of_match_v1_t = (40, True),
     of_match_v2_t = (88, True),
     of_match_v3_t = (8, False),
diff --git a/py_gen/oftype.py b/py_gen/oftype.py
index 3b56308..ddde14a 100644
--- a/py_gen/oftype.py
+++ b/py_gen/oftype.py
@@ -126,6 +126,7 @@
     'of_table_name_t': 32,
     'of_serial_num_t': 32,
     'of_desc_str_t': 256,
+    'of_str64_t': 64,
 }
 
 for (cls, length) in fixed_length_strings.items():
diff --git a/wireshark_gen/field_info.py b/wireshark_gen/field_info.py
index 996accf..b2e9a82 100644
--- a/wireshark_gen/field_info.py
+++ b/wireshark_gen/field_info.py
@@ -39,6 +39,7 @@
     "of_table_name_t": "stringz",
     "of_desc_str_t": "stringz",
     "of_serial_num_t": "stringz",
+    "of_str64_t": "stringz",
     "of_octets_t": "bytes",
     "of_port_no_t": "uint32",
     "of_port_desc_t": "stringz",
@@ -67,6 +68,7 @@
     "of_table_name_t": "NONE",
     "of_desc_str_t": "NONE",
     "of_serial_num_t": "NONE",
+    "of_str64_t": "NONE",
     "of_octets_t": "NONE",
     "of_port_no_t": "DEC",
     "of_port_desc_t": "NONE",
