pg: Choose the input interface from the stream's rx

Type: fix

Signed-off-by: Neale Ranns <nranns@cisco.com>
Change-Id: I656918a417d33ec6bea30054805e03ae19c38f2d
diff --git a/src/scripts/vnet/mpls-to-dot1ad b/src/scripts/vnet/mpls-to-dot1ad
index 93d3a70..ea8418e 100644
--- a/src/scripts/vnet/mpls-to-dot1ad
+++ b/src/scripts/vnet/mpls-to-dot1ad
@@ -43,7 +43,7 @@
   name v2g
   limit 1
   node ethernet-input
-  interface pg1.12
+  interface pg1
   data {
       hex 0x000000000011005056b77c8388a80020810000210102030405060708
   }
diff --git a/src/vnet/pg/input.c b/src/vnet/pg/input.c
index 60fc96e..c8f3d9f 100644
--- a/src/vnet/pg/input.c
+++ b/src/vnet/pg/input.c
@@ -1623,9 +1623,11 @@
   u8 feature_arc_index = fm->device_input_feature_arc_index;
   cm = &fm->feature_config_mains[feature_arc_index];
   u32 current_config_index = ~(u32) 0;
-  pg_interface_t *pi = pool_elt_at_index (pg->interfaces, s->pg_if_index);
+  pg_interface_t *pi;
   int i;
 
+  pi = pool_elt_at_index (pg->interfaces,
+			  pg->if_id_by_sw_if_index[s->sw_if_index[VLIB_RX]]);
   bi0 = s->buffer_indices;
 
   n_packets_in_fifo = pg_stream_fill (pg, s, n_packets_to_generate);