pm->flags |= PCAP_MAIN_INIT_DONE;
pm->n_packets_captured = 0;
pm->n_pcap_data_written = 0;
+ clib_spinlock_init (&pm->lock);
/* Write file header. */
- memset (&fh, 0, sizeof (fh));
+ clib_memset (&fh, 0, sizeof (fh));
fh.magic = 0xa1b2c3d4;
fh.major_version = 2;
fh.minor_version = 4;
while ((n = read (fd, &ph, sizeof (ph))) != 0)
{
u8 *data;
+ u64 timestamp;
+ u32 timestamp_sec;
+ u32 timestamp_usec;
if (need_swap)
{
clib_max (pm->max_packet_bytes, ph.n_bytes_in_packet);
}
+ timestamp_sec = ph.time_in_sec;
+ timestamp_usec = ph.time_in_usec;
+ timestamp = ((u64) timestamp_sec) * 1000000 + (u64) timestamp_usec;
vec_add1 (pm->packets_read, data);
+ vec_add1 (pm->timestamps, timestamp);
}
done: