--- openflow-2010-10-14-3.h	2015-07-23 09:54:16.336479329 -0700
+++ openflow-2010-10-14-4.h	2015-07-23 09:54:16.344479329 -0700
@@ -860,7 +860,9 @@
     OFPET_FLOW_MOD_FAILED,      /* Problem modifying flow entry. */
     OFPET_GROUP_MOD_FAILED,     /* Problem modifying group entry. */
     OFPET_PORT_MOD_FAILED,      /* Port mod request failed. */
-    OFPET_QUEUE_OP_FAILED       /* Queue operation failed. */
+    OFPET_TABLE_MOD_FAILED,     /* Table mod request failed. */
+    OFPET_QUEUE_OP_FAILED,       /* Queue operation failed. */
+    OFPET_SWITCH_CONFIG_FAILED  /* Switch config request failed. */
 };
 
 /* ofp_error_msg 'code' values for OFPET_HELLO_FAILED.  'data' contains an
@@ -960,6 +962,13 @@
     OFPPMFC_BAD_HW_ADDR          /* Specified hardware address is wrong. */
 };
 
+/* ofp_error_msg 'code' values for OFPET_TABLE_MOD_FAILED.  'data' contains
+ * at least the first 64 bytes of the failed request. */
+enum ofp_table_mod_failed_code {
+    OFPTMFC_BAD_TABLE,           /* Specified table does not exist. */
+    OFPTMFC_BAD_CONFIG           /* Specified config is invalid. */
+};
+
 /* ofp_error msg 'code' values for OFPET_QUEUE_OP_FAILED. 'data' contains
  * at least the first 64 bytes of the failed request */
 enum ofp_queue_op_failed_code {
@@ -968,6 +977,13 @@
     OFPQOFC_EPERM               /* Permissions error. */
 };
 
+/* ofp_error_msg 'code' values for OFPET_SWITCH_CONFIG_FAILED. 'data' contains
+ * at least the first 64 bytes of the failed request. */
+enum ofp_switch_config_failed_code {
+    OFPSCFC_BAD_FLAGS,           /* Specified flags is invalid. */
+    OFPSCFC_BAD_LEN              /* Specified len is invalid. */
+};
+
 /* OFPT_ERROR: Error message (datapath -> controller). */
 struct ofp_error_msg {
     struct ofp_header header;
