- l3_offset0 = device_input_next_node_advance[next0];
- l3_offset1 = device_input_next_node_advance[next1];
- l3_offset2 = device_input_next_node_advance[next2];
- l3_offset3 = device_input_next_node_advance[next3];
-
- b0->current_data = l3_offset0 + mb0->data_off;
- b1->current_data = l3_offset1 + mb1->data_off;
- b2->current_data = l3_offset2 + mb2->data_off;
- b3->current_data = l3_offset3 + mb3->data_off;
-
- b0->current_data -= RTE_PKTMBUF_HEADROOM;
- b1->current_data -= RTE_PKTMBUF_HEADROOM;
- b2->current_data -= RTE_PKTMBUF_HEADROOM;
- b3->current_data -= RTE_PKTMBUF_HEADROOM;
-
- b0->current_length = mb0->data_len - l3_offset0;
- b1->current_length = mb1->data_len - l3_offset1;
- b2->current_length = mb2->data_len - l3_offset2;
- b3->current_length = mb3->data_len - l3_offset3;
-
- b0->flags = buffer_flags_template;
- b1->flags = buffer_flags_template;
- b2->flags = buffer_flags_template;
- b3->flags = buffer_flags_template;
-
- vnet_buffer (b0)->sw_if_index[VLIB_RX] = xd->vlib_sw_if_index;
- vnet_buffer (b1)->sw_if_index[VLIB_RX] = xd->vlib_sw_if_index;
- vnet_buffer (b2)->sw_if_index[VLIB_RX] = xd->vlib_sw_if_index;
- vnet_buffer (b3)->sw_if_index[VLIB_RX] = xd->vlib_sw_if_index;
-
- vnet_buffer (b0)->sw_if_index[VLIB_TX] = (u32) ~ 0;
- vnet_buffer (b1)->sw_if_index[VLIB_TX] = (u32) ~ 0;
- vnet_buffer (b2)->sw_if_index[VLIB_TX] = (u32) ~ 0;
- vnet_buffer (b3)->sw_if_index[VLIB_TX] = (u32) ~ 0;
+ vlib_buffer_advance (b0, device_input_next_node_advance[next0]);
+ vlib_buffer_advance (b1, device_input_next_node_advance[next1]);
+ vlib_buffer_advance (b2, device_input_next_node_advance[next2]);
+ vlib_buffer_advance (b3, device_input_next_node_advance[next3]);