case OFPTYPE_ROLE_REQUEST:
case OFPTYPE_ROLE_REPLY:
case OFPTYPE_ROLE_STATUS:
+ case OFPTYPE_REQUESTFORWARD:
case OFPTYPE_SET_FLOW_FORMAT:
case OFPTYPE_FLOW_MOD_TABLE_ID:
case OFPTYPE_SET_PACKET_IN_FORMAT:
case OFPTYPE_METER_FEATURES_STATS_REPLY:
case OFPTYPE_TABLE_FEATURES_STATS_REQUEST:
case OFPTYPE_TABLE_FEATURES_STATS_REPLY:
+ case OFPTYPE_TABLE_DESC_REQUEST:
+ case OFPTYPE_TABLE_DESC_REPLY:
case OFPTYPE_BUNDLE_CONTROL:
case OFPTYPE_BUNDLE_ADD_MESSAGE:
+ case OFPTYPE_NXT_GENEVE_TABLE_MOD:
+ case OFPTYPE_NXT_GENEVE_TABLE_REQUEST:
+ case OFPTYPE_NXT_GENEVE_TABLE_REPLY:
default:
if (VLOG_IS_DBG_ENABLED()) {
char *s = ofp_to_string(msg->data, msg->size, 2);
/* Extract flow data from 'opi' into 'flow'. */
dp_packet_use_const(&pkt, pi.packet, pi.packet_len);
flow_extract(&pkt, &flow);
- flow.in_port.ofp_port = pi.fmd.in_port;
- flow.tunnel.tun_id = pi.fmd.tun_id;
+ flow.in_port.ofp_port = pi.flow_metadata.flow.in_port.ofp_port;
+ flow.tunnel.tun_id = pi.flow_metadata.flow.tunnel.tun_id;
/* Choose output port. */
out_port = lswitch_choose_destination(sw, &flow);
/* Make actions. */
- queue_id = get_queue_id(sw, pi.fmd.in_port);
+ queue_id = get_queue_id(sw, pi.flow_metadata.flow.in_port.ofp_port);
ofpbuf_use_stack(&ofpacts, ofpacts_stub, sizeof ofpacts_stub);
if (out_port == OFPP_NONE) {
/* No actions. */
po.packet = NULL;
po.packet_len = 0;
}
- po.in_port = pi.fmd.in_port;
+ po.in_port = pi.flow_metadata.flow.in_port.ofp_port;
po.ofpacts = ofpacts.data;
po.ofpacts_len = ofpacts.size;