diff options
Diffstat (limited to 'pcapplusplus.cpp')
-rw-r--r-- | pcapplusplus.cpp | 9 |
1 files changed, 7 insertions, 2 deletions
diff --git a/pcapplusplus.cpp b/pcapplusplus.cpp index ea0acb7..0848401 100644 --- a/pcapplusplus.cpp +++ b/pcapplusplus.cpp @@ -1,5 +1,3 @@ -#include "pcapplusplus.h" - #include <chrono> #include <EthLayer.h> #include <exception> @@ -12,6 +10,8 @@ #include <tuple> #include <UdpLayer.h> +#include "pcapplusplus.h" + PcapPlusPlus::PcapPlusPlus(std::string fileName) : rawPackets(), parsedPackets() { reader = pcpp::IFileReaderDevice::getReader(fileName); @@ -69,6 +69,11 @@ bool PcapPlusPlus::processPacket(pcpp::Packet & packet) return false; if (reader->getNextPacket(rawPacket)) { + if (rawPackets.size() == 0) { + const auto & pktTs = rawPacket.getPacketTimeStamp(); + firstPacketTs = pktTs.tv_sec; + firstPacketTs += pktTs.tv_nsec / 10e9f; + } rawPackets.emplace_back(std::move(rawPacket)); pcpp::Packet parsedPacket(&rawPackets.back(), false); |