--- openflow-2012-03-02.h	2015-07-23 09:54:16.916479353 -0700
+++ openflow-2012-03-02-2.h	2015-07-23 09:54:16.924479353 -0700
@@ -145,6 +145,9 @@
     /* Controller role change request messages. */
     OFPT_ROLE_REQUEST       = 24, /* Controller/switch message */
     OFPT_ROLE_REPLY         = 25, /* Controller/switch message */
+
+    /* Asynchronous message configuration. */
+    OFPT_SET_ASYNC_CONFIG   = 26, /* Controller/switch message */
 };
 
 /* Header on all OpenFlow packets. */
@@ -1913,4 +1916,13 @@
 };
 OFP_ASSERT(sizeof(struct ofp_role_request) == 24);
 
+/* Configures asynchronous messages for the current connection. */
+struct ofp_async_config {
+    struct ofp_header header;      /* Type OFPT_SET_ASYNC_CONFIG. */
+    uint32_t packet_in_mask[2];    /* Bitmasks of OFPR_* values. */
+    uint32_t port_status_mask[2];  /* Bitmasks of OFPRR_* values. */
+    uint32_t flow_removed_mask[2]; /* Bitmasks of OFPPR_* values. */
+};
+OFP_ASSERT(sizeof(struct ofp_async_config) == 32);
+
 #endif /* openflow/openflow.h */
