- pcap_add_buffer (&pif->pcap_main, vm, bi0,
- ETHERNET_MAX_PACKET_BYTES);
+ if (b->flags & VLIB_BUFFER_IS_TRACED)
+ {
+ pg_output_trace_t *t = vlib_add_trace (vm, node, b, sizeof (*t));
+ t->buffer_index = bi0;
+ clib_memcpy (&t->buffer, b, sizeof (b[0]) - sizeof (b->pre_data));
+ clib_memcpy (t->buffer.pre_data, b->data + b->current_data,
+ sizeof (t->buffer.pre_data));