[ovs-dev] [PATCH 2/2] ofp-msgs: Move most OpenFlow header definitions here.
Ben Pfaff
blp at ovn.org
Fri Feb 19 20:54:59 UTC 2016
Thanks for the reviews. I applied these to master.
On Thu, Feb 18, 2016 at 10:47:06AM -0800, Jarno Rajahalme wrote:
> Acked-by: Jarno Rajahalme <jarno at ovn.org>
>
> > On Jan 27, 2016, at 3:50 PM, Ben Pfaff <blp at ovn.org> wrote:
> >
> > This code was the only user for OpenFlow header definitions other than
> > struct ofp_header itself.
> >
> > Signed-off-by: Ben Pfaff <blp at ovn.org>
> > ---
> > include/openflow/nicira-ext.h | 9 ---------
> > include/openflow/openflow-1.0.h | 20 --------------------
> > include/openflow/openflow-1.1.h | 11 +----------
> > lib/ofp-msgs.c | 39 +++++++++++++++++++++++++++++++++++++++
> > 4 files changed, 40 insertions(+), 39 deletions(-)
> >
> > diff --git a/include/openflow/nicira-ext.h b/include/openflow/nicira-ext.h
> > index fdee330..a209e6a 100644
> > --- a/include/openflow/nicira-ext.h
> > +++ b/include/openflow/nicira-ext.h
> > @@ -68,15 +68,6 @@ struct nx_vendor_error {
> >
> > /* Nicira vendor requests and replies. */
> >
> > -/* Header for Nicira vendor stats request and reply messages in OpenFlow
> > - * 1.0. */
> > -struct nicira10_stats_msg {
> > - struct ofp10_vendor_stats_msg vsm; /* Vendor NX_VENDOR_ID. */
> > - ovs_be32 subtype; /* One of NXST_* below. */
> > - uint8_t pad[4]; /* Align to 64-bits. */
> > -};
> > -OFP_ASSERT(sizeof(struct nicira10_stats_msg) == 24);
> > -
> > /* Fields to use when hashing flows. */
> > enum nx_hash_fields {
> > /* Ethernet source address (NXM_OF_ETH_SRC) only. */
> > diff --git a/include/openflow/openflow-1.0.h b/include/openflow/openflow-1.0.h
> > index db629f7..68c7952 100644
> > --- a/include/openflow/openflow-1.0.h
> > +++ b/include/openflow/openflow-1.0.h
> > @@ -331,15 +331,6 @@ struct ofp10_flow_removed {
> > };
> > OFP_ASSERT(sizeof(struct ofp10_flow_removed) == 80);
> >
> > -/* Statistics request or reply message. */
> > -struct ofp10_stats_msg {
> > - struct ofp_header header;
> > - ovs_be16 type; /* One of the OFPST_* constants. */
> > - ovs_be16 flags; /* Requests: always 0.
> > - * Replies: 0 or OFPSF_REPLY_MORE. */
> > -};
> > -OFP_ASSERT(sizeof(struct ofp10_stats_msg) == 12);
> > -
> > /* Stats request of type OFPST_AGGREGATE or OFPST_FLOW. */
> > struct ofp10_flow_stats_request {
> > struct ofp10_match match; /* Fields to match. */
> > @@ -444,15 +435,4 @@ struct ofp10_queue_stats {
> > };
> > OFP_ASSERT(sizeof(struct ofp10_queue_stats) == 32);
> >
> > -/* Vendor extension stats message. */
> > -struct ofp10_vendor_stats_msg {
> > - struct ofp10_stats_msg osm; /* Type OFPST_VENDOR. */
> > - ovs_be32 vendor; /* Vendor ID:
> > - * - MSB 0: low-order bytes are IEEE OUI.
> > - * - MSB != 0: defined by OpenFlow
> > - * consortium. */
> > - /* Followed by vendor-defined arbitrary additional data. */
> > -};
> > -OFP_ASSERT(sizeof(struct ofp10_vendor_stats_msg) == 16);
> > -
> > #endif /* openflow/openflow-1.0.h */
> > diff --git a/include/openflow/openflow-1.1.h b/include/openflow/openflow-1.1.h
> > index 63d8b41..805f222 100644
> > --- a/include/openflow/openflow-1.1.h
> > +++ b/include/openflow/openflow-1.1.h
> > @@ -1,4 +1,4 @@
> > -/* Copyright (c) 2008, 2011, 2012, 2013, 2014 The Board of Trustees of The Leland Stanford
> > +/* Copyright (c) 2008, 2011, 2012, 2013, 2014, 2016 The Board of Trustees of The Leland Stanford
> > * Junior University
> > *
> > * We are making the OpenFlow specification and associated documentation
> > @@ -382,15 +382,6 @@ struct ofp11_queue_get_config_reply {
> > };
> > OFP_ASSERT(sizeof(struct ofp11_queue_get_config_reply) == 8);
> >
> > -struct ofp11_stats_msg {
> > - struct ofp_header header;
> > - ovs_be16 type; /* One of the OFPST_* constants. */
> > - ovs_be16 flags; /* OFPSF_REQ_* flags (none yet defined). */
> > - uint8_t pad[4];
> > - /* Followed by the body of the request. */
> > -};
> > -OFP_ASSERT(sizeof(struct ofp11_stats_msg) == 16);
> > -
> > /* Stats request of type OFPST_FLOW. */
> > struct ofp11_flow_stats_request {
> > uint8_t table_id; /* ID of table to read (from ofp_table_stats),
> > diff --git a/lib/ofp-msgs.c b/lib/ofp-msgs.c
> > index fcfbb50..bc38f40 100644
> > --- a/lib/ofp-msgs.c
> > +++ b/lib/ofp-msgs.c
> > @@ -52,6 +52,35 @@ struct ofp_vendor_header {
> > };
> > OFP_ASSERT(sizeof(struct ofp_vendor_header) == 16);
> >
> > +/* Statistics request or reply message. */
> > +struct ofp10_stats_msg {
> > + struct ofp_header header;
> > + ovs_be16 type; /* One of the OFPST_* constants. */
> > + ovs_be16 flags; /* Requests: always 0.
> > + * Replies: 0 or OFPSF_REPLY_MORE. */
> > +};
> > +OFP_ASSERT(sizeof(struct ofp10_stats_msg) == 12);
> > +
> > +/* Vendor extension stats message. */
> > +struct ofp10_vendor_stats_msg {
> > + struct ofp10_stats_msg osm; /* Type OFPST_VENDOR. */
> > + ovs_be32 vendor; /* Vendor ID:
> > + * - MSB 0: low-order bytes are IEEE OUI.
> > + * - MSB != 0: defined by OpenFlow
> > + * consortium. */
> > + /* Followed by vendor-defined arbitrary additional data. */
> > +};
> > +OFP_ASSERT(sizeof(struct ofp10_vendor_stats_msg) == 16);
> > +
> > +struct ofp11_stats_msg {
> > + struct ofp_header header;
> > + ovs_be16 type; /* One of the OFPST_* constants. */
> > + ovs_be16 flags; /* OFPSF_REQ_* flags (none yet defined). */
> > + uint8_t pad[4];
> > + /* Followed by the body of the request. */
> > +};
> > +OFP_ASSERT(sizeof(struct ofp11_stats_msg) == 16);
> > +
> > /* Vendor extension stats message. */
> > struct ofp11_vendor_stats_msg {
> > struct ofp11_stats_msg osm; /* Type OFPST_VENDOR. */
> > @@ -68,6 +97,16 @@ struct ofp11_vendor_stats_msg {
> > /* Followed by vendor-defined additional data. */
> > };
> > OFP_ASSERT(sizeof(struct ofp11_vendor_stats_msg) == 24);
> > +
> > +/* Header for Nicira vendor stats request and reply messages in OpenFlow
> > + * 1.0. */
> > +struct nicira10_stats_msg {
> > + struct ofp10_vendor_stats_msg vsm; /* Vendor NX_VENDOR_ID. */
> > + ovs_be32 subtype; /* One of NXST_* below. */
> > + uint8_t pad[4]; /* Align to 64-bits. */
> > +};
> > +OFP_ASSERT(sizeof(struct nicira10_stats_msg) == 24);
> > +
> > /* A thin abstraction of OpenFlow headers:
> > *
> > * - 'version' and 'type' come straight from struct ofp_header, so these are
> > --
> > 2.1.3
> >
> > _______________________________________________
> > dev mailing list
> > dev at openvswitch.org
> > http://openvswitch.org/mailman/listinfo/dev
>
More information about the dev
mailing list