summaryrefslogtreecommitdiff
path: root/include/openvswitch/ofp-table.h
diff options
context:
space:
mode:
authorBen Pfaff <blp@ovn.org>2018-08-29 11:30:13 -0700
committerBen Pfaff <blp@ovn.org>2019-01-15 16:59:37 -0800
commit4e413ac88d4841d7e17de3e36bba3fa12796e938 (patch)
treef2b60dfccac0bec0393e261721cfa78f99458a98 /include/openvswitch/ofp-table.h
parentd1a227ecef81773a748320cee733334d21b484ce (diff)
downloadopenvswitch-4e413ac88d4841d7e17de3e36bba3fa12796e938.tar.gz
ovs-vswitchd: Implement OFPT_TABLE_FEATURES table modification request.
This allows a controller to change the name of OpenFlow flow tables in the OVS software switch. CC: Brad Cowie <brad@cowie.nz> Acked-by: Justin Pettit <jpettit@ovn.org> Signed-off-by: Ben Pfaff <blp@ovn.org>
Diffstat (limited to 'include/openvswitch/ofp-table.h')
-rw-r--r--include/openvswitch/ofp-table.h17
1 files changed, 12 insertions, 5 deletions
diff --git a/include/openvswitch/ofp-table.h b/include/openvswitch/ofp-table.h
index 370ec85ae..8e0a1cbe2 100644
--- a/include/openvswitch/ofp-table.h
+++ b/include/openvswitch/ofp-table.h
@@ -155,7 +155,7 @@ struct ofpbuf *ofputil_encode_table_mod(const struct ofputil_table_mod *,
enum ofputil_protocol);
void ofputil_table_mod_format(struct ds *, const struct ofputil_table_mod *,
const struct ofputil_table_map *);
-char *parse_ofp_table_mod(struct ofputil_table_mod *,
+char *parse_ofp_table_mod(struct ofputil_table_mod *, const char **namep,
const char *table_id, const char *flow_miss_handling,
const struct ofputil_table_map *,
uint32_t *usable_versions)
@@ -271,15 +271,18 @@ struct ofputil_table_features {
struct mf_bitmap wildcard; /* Subset of 'match' that may be wildcarded. */
};
-int ofputil_decode_table_features(struct ofpbuf *,
- struct ofputil_table_features *, bool loose);
+int ofputil_decode_table_features(
+ struct ofpbuf *, struct ofputil_table_features *,
+ struct ofpbuf *raw_properties);
struct ofpbuf *ofputil_encode_table_features_request(enum ofp_version);
struct ofpbuf *ofputil_encode_table_desc_request(enum ofp_version);
-void ofputil_append_table_features_reply(
- const struct ofputil_table_features *tf, struct ovs_list *replies);
+void ofputil_append_table_features(
+ const struct ofputil_table_features *tf,
+ const struct ofpbuf *raw_properties,
+ struct ovs_list *msgs);
void ofputil_table_features_format(
struct ds *, const struct ofputil_table_features *features,
@@ -290,6 +293,10 @@ void ofputil_table_features_format(
void ofputil_table_features_format_finish(struct ds *,
int first_ditto, int last_ditto);
+bool ofputil_table_features_are_superset(
+ const struct ofputil_table_features *super,
+ const struct ofputil_table_features *sub);
+
/* Abstract table stats.
*
* This corresponds to the OpenFlow 1.3 table statistics structure, which only