ofp-errors: Add (draft) OpenFlow 1.5 group mod errors.
[cascardo/ovs.git] / lib / ofp-errors.h
index 2895138..1a3c4fc 100644 (file)
@@ -156,21 +156,6 @@ enum ofperr {
      * is not valid. */
     OFPERR_NXBRC_BAD_REASON,
 
-    /* NX1.0-1.1(1,517), NX1.2+(6).  The 'id' in an NXST_FLOW_MONITOR request
-     * is the same as an existing monitor id (or two monitors in the same
-     * NXST_FLOW_MONITOR request have the same 'id').  */
-    OFPERR_NXBRC_FM_DUPLICATE_ID,
-
-    /* NX1.0-1.1(1,518), NX1.2+(7).  The 'flags' in an NXST_FLOW_MONITOR
-     * request either does not specify at least one of the NXFMF_ADD,
-     * NXFMF_DELETE, or NXFMF_MODIFY flags, or specifies a flag bit that is not
-     * defined. */
-    OFPERR_NXBRC_FM_BAD_FLAGS,
-
-    /* NX1.0-1.1(1,519), NX1.2+(8).  The 'id' in an NXT_FLOW_MONITOR_CANCEL
-     * request is not the id of any existing monitor. */
-    OFPERR_NXBRC_FM_BAD_ID,
-
     /* NX1.0-1.1(1,520), NX1.2+(9).  The 'event' in an NXST_FLOW_MONITOR reply
      * does not specify one of the NXFME_ABBREV, NXFME_ADD, NXFME_DELETE, or
      * NXFME_MODIFY. */
@@ -237,6 +222,10 @@ enum ofperr {
      * unsupported value, or modifies a read-only field. */
     OFPERR_OFPBAC_BAD_SET_ARGUMENT,
 
+    /* NX1.3-1.4(14), OF1.5+(2,16).  Field in Set-Field action has Has-Mask bit
+     * set to 1. */
+    OFPERR_OFPBAC_BAD_SET_MASK,
+
     /* NX1.0-1.1(2,256), NX1.2+(11).  Must-be-zero action argument had nonzero
      * value. */
     OFPERR_NXBAC_MUST_BE_ZERO,
@@ -248,7 +237,8 @@ enum ofperr {
     /* OF1.1+(3,0).  Unknown instruction. */
     OFPERR_OFPBIC_UNKNOWN_INST,
 
-    /* OF1.1+(3,1).  Switch or table does not support the instruction. */
+    /* NX1.0(2,257), OF1.1+(3,1).  Switch or table does not support the
+     * instruction. */
     OFPERR_OFPBIC_UNSUP_INST,
 
     /* OF1.1+(3,2).  Invalid Table-ID specified. */
@@ -272,8 +262,8 @@ enum ofperr {
     /* OF1.2+(3,8).  Permissions error. */
     OFPERR_OFPBIC_EPERM,
 
-    /* ONF1.1+(2600).  Duplicate instruction. */
-    OFPERR_ONFBIC_DUP_INSTRUCTION,
+    /* NX1.1(3,256), ONF1.2-1.3(2600), OF1.4+(3,9).  Duplicate instruction. */
+    OFPERR_OFPBIC_DUP_INST,
 
 /* ## --------------- ## */
 /* ## OFPET_BAD_MATCH ## */
@@ -296,7 +286,8 @@ enum ofperr {
      * arbitrary network address mask. */
     OFPERR_OFPBMC_BAD_NW_ADDR_MASK,
 
-    /* OF1.1+(4,5).  Unsupported wildcard specified in the match. */
+    /* NX1.0(1,262), OF1.1+(4,5).  Unsupported wildcard specified in the
+     * match. */
     OFPERR_OFPBMC_BAD_WILDCARDS,
 
     /* OF1.1+(4,6).  Unsupported field in the match. */
@@ -420,6 +411,14 @@ enum ofperr {
     /* OF1.2+(6,14).  Permissions error. */
     OFPERR_OFPGMFC_EPERM,
 
+    /* OF1.5+(6,15).  Invalid bucket identifier used in
+     * INSERT BUCKET or REMOVE BUCKET command. */
+    OFPERR_OFPGMFC_UNKNOWN_BUCKET,
+
+    /* OF1.5+(6,16).  Can't insert bucket because a bucket
+     * already exist with that bucket-id. */
+    OFPERR_OFPGMFC_BUCKET_EXISTS,
+
 /* ## --------------------- ## */
 /* ## OFPET_PORT_MOD_FAILED ## */
 /* ## --------------------- ## */
@@ -567,22 +566,22 @@ enum ofperr {
      * [Known as OFPTFFC_BAD_ARGUMENT in OF1.3.] */
     OFPERR_OFPBPC_BAD_VALUE,
 
-    /* OF1.4+(14,3).  Can't handle this many properties. */
+    /* ONF1.3(4443), OF1.4+(14,3).  Can't handle this many properties. */
     OFPERR_OFPBPC_TOO_MANY,
 
-    /* OF1.4+(14,4).  A property type was duplicated. */
+    /* ONF1.3(4444), OF1.4+(14,4).  A property type was duplicated. */
     OFPERR_OFPBPC_DUP_TYPE,
 
-    /* OF1.4+(14,5).  Unknown experimenter id specified. */
+    /* ONF1.3(4445), OF1.4+(14,5).  Unknown experimenter id specified. */
     OFPERR_OFPBPC_BAD_EXPERIMENTER,
 
-    /* OF1.4+(14,6).  Unknown exp_type for experimenter id. */
+    /* ONF1.3(4446), OF1.4+(14,6).  Unknown exp_type for experimenter id. */
     OFPERR_OFPBPC_BAD_EXP_TYPE,
 
-    /* OF1.4+(14,7).  Unknown value for experimenter id. */
+    /* ONF1.3(4447), OF1.4+(14,7).  Unknown value for experimenter id. */
     OFPERR_OFPBPC_BAD_EXP_VALUE,
 
-    /* OF1.4+(14,8).  Permissions error. */
+    /* ONF1.3(4448), OF1.4+(14,8).  Permissions error. */
     OFPERR_OFPBPC_EPERM,
 
 /* ## -------------------- ## */
@@ -637,6 +636,38 @@ enum ofperr {
     /* OF1.4+(17,15).  Bundle is locking the resource. */
     OFPERR_OFPBFC_BUNDLE_IN_PROGRESS,
 
+/* ## ------------------------- ## */
+/* ## OFPET_FLOW_MONITOR_FAILED ## */
+/* ## ------------------------- ## */
+
+    /* OF1.4+(16,0).  Unspecified error. */
+    OFPERR_OFPMOFC_UNKNOWN,
+
+    /* NX1.0-1.1(1,517), NX1.2-1.3(6), OF1.4+(16,1).  Monitor not added
+     * because a Monitor ADD attempted to replace an existing Monitor. */
+    OFPERR_OFPMOFC_MONITOR_EXISTS,
+
+    /* OF1.4+(16,2).  Monitor not added because
+     * Monitor specified is invalid. */
+    OFPERR_OFPMOFC_INVALID_MONITOR,
+
+    /* NX1.0-1.1(1,519), NX1.2-1.3(8), OF1.4+(16,3).  Monitor not modified
+     * because a Monitor MODIFY attempted to modify a non-existent Monitor. */
+    OFPERR_OFPMOFC_UNKNOWN_MONITOR,
+
+    /* OF1.4+(16,4).  Unsupported or unknown command. */
+    OFPERR_OFPMOFC_BAD_COMMAND,
+
+    /* NX1.0-1.1(1,518), NX1.2-1.3(7), OF1.4+(16,5).  Flag configuration
+     * unsupported. */
+    OFPERR_OFPMOFC_BAD_FLAGS,
+
+    /* OF1.4+(16,6).  Specified table does not exist. */
+    OFPERR_OFPMOFC_BAD_TABLE_ID,
+
+    /* OF1.4+(16,7).  Error in output port/group. */
+    OFPERR_OFPMOFC_BAD_OUT,
+
 /* ## ------------------ ## */
 /* ## OFPET_EXPERIMENTER ## */
 /* ## ------------------ ## */