From f1cfaa6e899e148ccd29de8221c9ede0b207a636 Mon Sep 17 00:00:00 2001 From: Srivats P Date: Wed, 22 Mar 2023 16:28:41 +0530 Subject: [PATCH] Fix MacOS build break For some reason udiffTimeStamp is not defined for MacOS. To be investigated later. --- server/pcaptxthread.cpp | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/server/pcaptxthread.cpp b/server/pcaptxthread.cpp index dc20bb8..0dd8719 100644 --- a/server/pcaptxthread.cpp +++ b/server/pcaptxthread.cpp @@ -159,9 +159,16 @@ bool PcapTxThread::appendToPacketList(long sec, long nsec, // If not enough space, update usecDelay and alloc a new seq if (!currentPacketSequence_->hasFreeSpace(2*sizeof(pcap_pkthdr)+length)) { +#if 0 // FIXME: temporary MacOS build fix currentPacketSequence_->usecDelay_ = udiffTimeStamp( ¤tPacketSequence_->lastPacket_->ts, &pktHdr.ts); - +#else + struct timeval diff; + timersub(&pktHdr.ts, ¤tPacketSequence_->lastPacket_->ts, &diff); + currentPacketSequence_->usecDelay_ = diff.tv_usec; + if (diff.tv_sec) + currentPacketSequence_->usecDelay_ += diff.tv_sec*1e6; +#endif //! \todo (LOW): calculate sendqueue size currentPacketSequence_ = new PacketSequence(trackStreamStats_); packetSequenceList_.append(currentPacketSequence_);