2
0
mirror of https://github.com/openvswitch/ovs synced 2025-09-02 23:35:27 +00:00

nicira-ext: Renumber NXT_FLOW_MOD_TABLE_ID.

We don't know of anyone using this command in production yet, so it seems
reasonable to give it a new number instead of coping with it having a
conflicting number.
This commit is contained in:
Ben Pfaff
2011-06-09 15:18:21 -07:00
parent 6c222e55fa
commit d1e9b9bf30
2 changed files with 11 additions and 26 deletions

View File

@@ -141,19 +141,15 @@ enum nicira_type {
NXT_ROLE_REQUEST,
NXT_ROLE_REPLY,
/* Flexible flow specification (aka NXM = Nicira Extended Match). */
NXT_SET_FLOW_FORMAT, /* Set flow format. */
NXT_FLOW_MOD, /* Analogous to OFPT_FLOW_MOD. */
NXT_FLOW_REMOVED, /* Analogous to OFPT_FLOW_REMOVED. */
/* Use the upper 8 bits of the 'command' member in struct ofp_flow_mod to
* designate the table to which a flow is to be added? See the big comment
* on struct nxt_flow_mod_table_id for more information.
*
* A screwup caused this extension to be assigned the same value as
* NXT_SET_FLOW_FORMAT (see below). The two extensions do have different
* lengths, so they can still be distinguished. */
NXT_FLOW_MOD_TABLE_ID,
/* Flexible flow specification (aka NXM = Nicira Extended Match). */
NXT_SET_FLOW_FORMAT = NXT_FLOW_MOD_TABLE_ID, /* Set flow format. */
NXT_FLOW_MOD, /* Analogous to OFPT_FLOW_MOD. */
NXT_FLOW_REMOVED /* Analogous to OFPT_FLOW_REMOVED. */
* on struct nxt_flow_mod_table_id for more information. */
NXT_FLOW_MOD_TABLE_ID
};
/* Header for Nicira vendor stats request and reply messages. */

View File

@@ -373,6 +373,10 @@ ofputil_decode_vendor(const struct ofp_header *oh,
{ OFPUTIL_NXT_FLOW_REMOVED,
NXT_FLOW_REMOVED, "NXT_FLOW_REMOVED",
sizeof(struct nx_flow_removed), 8 },
{ OFPUTIL_NXT_FLOW_MOD_TABLE_ID,
NXT_FLOW_MOD_TABLE_ID, "NXT_FLOW_MOD_TABLE_ID",
sizeof(struct nxt_flow_mod_table_id), 0 },
};
static const struct ofputil_msg_category nxt_category = {
@@ -399,21 +403,6 @@ ofputil_decode_vendor(const struct ofp_header *oh,
}
nh = (const struct nicira_header *) oh;
if (nh->subtype == htonl(NXT_FLOW_MOD_TABLE_ID)
&& oh->length == htons(sizeof(struct nxt_flow_mod_table_id))) {
/* NXT_SET_FLOW_FORMAT and NXT_FLOW_MOD_TABLE_ID accidentally have the
* same value but different lengths. ofputil_lookup_openflow_message()
* doesn't support this case, so special case it here. */
static const struct ofputil_msg_type nxt_flow_mod_table_id =
{ OFPUTIL_NXT_FLOW_MOD_TABLE_ID,
NXT_FLOW_MOD_TABLE_ID, "NXT_FLOW_MOD_TABLE_ID",
sizeof(struct nxt_flow_mod_table_id), 0 };
*typep = &nxt_flow_mod_table_id;
return 0;
}
return ofputil_lookup_openflow_message(&nxt_category, ntohl(nh->subtype),
ntohs(oh->length), typep);
}