mirror of
https://github.com/openvswitch/ovs
synced 2025-09-03 07:45:30 +00:00
ofp-util: Add OFPUTIL_ACTION_INVALID to enum ofputil_action_code.
Possibly the ofputil_decode_action() interface should be rethought now that ofputil_action_code has an invalid value. Reviewed-by: Simon Horman <horms@verge.net.au> Signed-off-by: Ben Pfaff <blp@nicira.com>
This commit is contained in:
@@ -323,6 +323,9 @@ parse_named_action(enum ofputil_action_code code, const struct flow *flow,
|
|||||||
struct ofp_action_tp_port *oata;
|
struct ofp_action_tp_port *oata;
|
||||||
|
|
||||||
switch (code) {
|
switch (code) {
|
||||||
|
case OFPUTIL_ACTION_INVALID:
|
||||||
|
NOT_REACHED();
|
||||||
|
|
||||||
case OFPUTIL_OFPAT10_OUTPUT:
|
case OFPUTIL_OFPAT10_OUTPUT:
|
||||||
parse_output(b, arg);
|
parse_output(b, arg);
|
||||||
break;
|
break;
|
||||||
|
@@ -190,6 +190,9 @@ ofp_print_action(struct ds *s, const union ofp_action *a,
|
|||||||
uint16_t port;
|
uint16_t port;
|
||||||
|
|
||||||
switch (code) {
|
switch (code) {
|
||||||
|
case OFPUTIL_ACTION_INVALID:
|
||||||
|
NOT_REACHED();
|
||||||
|
|
||||||
case OFPUTIL_OFPAT10_OUTPUT:
|
case OFPUTIL_OFPAT10_OUTPUT:
|
||||||
port = ntohs(a->output.port);
|
port = ntohs(a->output.port);
|
||||||
if (port < OFPP_MAX) {
|
if (port < OFPP_MAX) {
|
||||||
|
@@ -3711,6 +3711,9 @@ validate_actions(const union ofp_action *actions, size_t n_actions,
|
|||||||
|
|
||||||
error = 0;
|
error = 0;
|
||||||
switch ((enum ofputil_action_code) code) {
|
switch ((enum ofputil_action_code) code) {
|
||||||
|
case OFPUTIL_ACTION_INVALID:
|
||||||
|
NOT_REACHED();
|
||||||
|
|
||||||
case OFPUTIL_OFPAT10_OUTPUT:
|
case OFPUTIL_OFPAT10_OUTPUT:
|
||||||
error = ofputil_check_output_port(ntohs(a->output.port),
|
error = ofputil_check_output_port(ntohs(a->output.port),
|
||||||
max_ports);
|
max_ports);
|
||||||
@@ -3941,6 +3944,7 @@ int
|
|||||||
ofputil_action_code_from_name(const char *name)
|
ofputil_action_code_from_name(const char *name)
|
||||||
{
|
{
|
||||||
static const char *names[OFPUTIL_N_ACTIONS] = {
|
static const char *names[OFPUTIL_N_ACTIONS] = {
|
||||||
|
NULL,
|
||||||
#define OFPAT10_ACTION(ENUM, STRUCT, NAME) NAME,
|
#define OFPAT10_ACTION(ENUM, STRUCT, NAME) NAME,
|
||||||
#define NXAST_ACTION(ENUM, STRUCT, EXTENSIBLE, NAME) NAME,
|
#define NXAST_ACTION(ENUM, STRUCT, EXTENSIBLE, NAME) NAME,
|
||||||
#include "ofp-util.def"
|
#include "ofp-util.def"
|
||||||
@@ -3965,6 +3969,9 @@ void *
|
|||||||
ofputil_put_action(enum ofputil_action_code code, struct ofpbuf *buf)
|
ofputil_put_action(enum ofputil_action_code code, struct ofpbuf *buf)
|
||||||
{
|
{
|
||||||
switch (code) {
|
switch (code) {
|
||||||
|
case OFPUTIL_ACTION_INVALID:
|
||||||
|
NOT_REACHED();
|
||||||
|
|
||||||
#define OFPAT10_ACTION(ENUM, STRUCT, NAME) \
|
#define OFPAT10_ACTION(ENUM, STRUCT, NAME) \
|
||||||
case OFPUTIL_##ENUM: return ofputil_put_##ENUM(buf);
|
case OFPUTIL_##ENUM: return ofputil_put_##ENUM(buf);
|
||||||
#define NXAST_ACTION(ENUM, STRUCT, EXTENSIBLE, NAME) \
|
#define NXAST_ACTION(ENUM, STRUCT, EXTENSIBLE, NAME) \
|
||||||
|
@@ -598,6 +598,7 @@ bool ofputil_frag_handling_from_string(const char *, enum ofp_config_flags *);
|
|||||||
* (The above list helps developers who want to "grep" for these definitions.)
|
* (The above list helps developers who want to "grep" for these definitions.)
|
||||||
*/
|
*/
|
||||||
enum ofputil_action_code {
|
enum ofputil_action_code {
|
||||||
|
OFPUTIL_ACTION_INVALID,
|
||||||
#define OFPAT10_ACTION(ENUM, STRUCT, NAME) OFPUTIL_##ENUM,
|
#define OFPAT10_ACTION(ENUM, STRUCT, NAME) OFPUTIL_##ENUM,
|
||||||
#define NXAST_ACTION(ENUM, STRUCT, EXTENSIBLE, NAME) OFPUTIL_##ENUM,
|
#define NXAST_ACTION(ENUM, STRUCT, EXTENSIBLE, NAME) OFPUTIL_##ENUM,
|
||||||
#include "ofp-util.def"
|
#include "ofp-util.def"
|
||||||
@@ -607,7 +608,7 @@ enum ofputil_action_code {
|
|||||||
enum {
|
enum {
|
||||||
#define OFPAT10_ACTION(ENUM, STRUCT, NAME) + 1
|
#define OFPAT10_ACTION(ENUM, STRUCT, NAME) + 1
|
||||||
#define NXAST_ACTION(ENUM, STRUCT, EXTENSIBLE, NAME) + 1
|
#define NXAST_ACTION(ENUM, STRUCT, EXTENSIBLE, NAME) + 1
|
||||||
OFPUTIL_N_ACTIONS = 0
|
OFPUTIL_N_ACTIONS = 1
|
||||||
#include "ofp-util.def"
|
#include "ofp-util.def"
|
||||||
};
|
};
|
||||||
|
|
||||||
|
@@ -5397,6 +5397,9 @@ do_xlate_actions(const union ofp_action *in, size_t n_in,
|
|||||||
|
|
||||||
code = ofputil_decode_action_unsafe(ia);
|
code = ofputil_decode_action_unsafe(ia);
|
||||||
switch (code) {
|
switch (code) {
|
||||||
|
case OFPUTIL_ACTION_INVALID:
|
||||||
|
NOT_REACHED();
|
||||||
|
|
||||||
case OFPUTIL_OFPAT10_OUTPUT:
|
case OFPUTIL_OFPAT10_OUTPUT:
|
||||||
xlate_output_action(ctx, &ia->output);
|
xlate_output_action(ctx, &ia->output);
|
||||||
break;
|
break;
|
||||||
|
Reference in New Issue
Block a user