The add_output_action() function takes an OpenFlow port number, but
the enqueue action passes it a datapath port number.
xlate_enqueue_action(struct action_xlate_ctx *ctx,
const struct ofp_action_enqueue *oae)
{
xlate_enqueue_action(struct action_xlate_ctx *ctx,
const struct ofp_action_enqueue *oae)
{
- uint16_t ofp_port, odp_port;
uint32_t flow_priority, priority;
int error;
uint32_t flow_priority, priority;
int error;
} else if (ofp_port == ctx->flow.in_port) {
return;
}
} else if (ofp_port == ctx->flow.in_port) {
return;
}
- odp_port = ofp_port_to_odp_port(ofp_port);
/* Add datapath actions. */
flow_priority = ctx->flow.priority;
ctx->flow.priority = priority;
/* Add datapath actions. */
flow_priority = ctx->flow.priority;
ctx->flow.priority = priority;
- add_output_action(ctx, odp_port);
+ add_output_action(ctx, ofp_port);
ctx->flow.priority = flow_priority;
/* Update NetFlow output port. */
ctx->flow.priority = flow_priority;
/* Update NetFlow output port. */