pcapplusplus: Fix build with gcc14

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Armin Kuster <akuster808@gmail.com>

----
v2]
Scarthgap has the same error as master: initialize timespec variable.

pcapplusplus/23.09/git/Packet++/src/RawPacket.cpp:23:18: error: 'nsec_time.timespec::<anonymous>' is used uninitialized [-Werror=uninitialized]
|    23 |         timespec nsec_time;
|       |                  ^~~~~~~~~
| cc1plus: all warnings being treated as errors
This commit is contained in:
Khem Raj
2024-05-06 12:18:52 -07:00
committed by Armin Kuster
parent 5b010b412b
commit 4a7bb77f7e
3 changed files with 73 additions and 1 deletions

View File

@@ -0,0 +1,35 @@
From 298dec6f87061914c85049faca3d0ff3310d1794 Mon Sep 17 00:00:00 2001
From: Khem Raj <raj.khem@gmail.com>
Date: Mon, 6 May 2024 12:15:30 -0700
Subject: [PATCH] initialize timespec variable
Fixes build warnings with GCC14
/mnt/b/yoe/master/build/tmp/work/core2-32-yoe-linux/pcapplusplus/23.09/git/Packet++/src/RawPacket.cpp: In constructor 'pcpp::RawPacket::RawPacket(const uint8_t*, int, timeval, bool, pcpp::LinkLayerType)':
/mnt/b/yoe/master/build/tmp/work/core2-32-yoe-linux/pcapplusplus/23.09/git/Packet++/src/RawPacket.cpp:23:18: error: 'nsec_time.timespec::<anonymous>' is used uninitialized [-Werror=uninitialized]
23 | timespec nsec_time;
| ^~~~~~~~~
cc1plus: all warnings being treated as errors
Upstream-Status: Submitted [https://github.com/seladb/PcapPlusPlus/pull/1389]
Signed-off-by: Khem Raj <raj.khem@gmail.com>
---
Packet++/src/RawPacket.cpp | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/Packet++/src/RawPacket.cpp b/Packet++/src/RawPacket.cpp
index 8ad52d52..07dbbbe2 100644
--- a/Packet++/src/RawPacket.cpp
+++ b/Packet++/src/RawPacket.cpp
@@ -20,7 +20,7 @@ void RawPacket::init(bool deleteRawDataAtDestructor)
RawPacket::RawPacket(const uint8_t* pRawData, int rawDataLen, timeval timestamp, bool deleteRawDataAtDestructor, LinkLayerType layerType)
{
- timespec nsec_time;
+ timespec nsec_time = {};
TIMEVAL_TO_TIMESPEC(&timestamp, &nsec_time);
init(deleteRawDataAtDestructor);
setRawData(pRawData, rawDataLen, nsec_time, layerType);
--
2.45.0

View File

@@ -0,0 +1,34 @@
From 742f564ee80749e9f1f3363092775545e37c0f87 Mon Sep 17 00:00:00 2001
From: Khem Raj <raj.khem@gmail.com>
Date: Thu, 9 May 2024 17:02:09 -0700
Subject: [PATCH] packet++: Initialize m_ExternalRawData in IDnsResource
constructor
Fixes following warning with GCC-14
Packet++/src/DnsResource.cpp:29:24: error: '*this.pcpp::IDnsResource::m_ExternalRawData' may be used uninitialized [-Werror=maybe-uninitialized]
29 | return m_ExternalRawData;
| ^~~~~~~~~~~~~~~~~
Upstream-Status: Submitted [https://github.com/seladb/PcapPlusPlus/pull/1391]
Signed-off-by: Khem Raj <raj.khem@gmail.com>
---
Packet++/src/DnsResource.cpp | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/Packet++/src/DnsResource.cpp b/Packet++/src/DnsResource.cpp
index fec1bf05..c1f97041 100644
--- a/Packet++/src/DnsResource.cpp
+++ b/Packet++/src/DnsResource.cpp
@@ -10,7 +10,7 @@ namespace pcpp
{
IDnsResource::IDnsResource(DnsLayer* dnsLayer, size_t offsetInLayer)
- : m_DnsLayer(dnsLayer), m_OffsetInLayer(offsetInLayer), m_NextResource(nullptr)
+ : m_DnsLayer(dnsLayer), m_OffsetInLayer(offsetInLayer), m_NextResource(nullptr), m_ExternalRawData(nullptr)
{
char decodedName[4096];
m_NameLength = decodeName((const char*)getRawData(), decodedName);
--
2.45.0

View File

@@ -7,7 +7,10 @@ LIC_FILES_CHKSUM = "file://LICENSE;md5=911690f51af322440237a253d695d19f"
DEPENDS = "libpcap"
SRC_URI = "git://github.com/seladb/PcapPlusPlus.git;protocol=https;branch=master"
SRC_URI = "git://github.com/seladb/PcapPlusPlus.git;protocol=https;branch=master \
file://0001-packet-Initialize-m_ExternalRawData-in-IDnsResource-.patch \
file://0001-initialize-timespec-variable.patch"
SRCREV = "4cf8ed44f9dd145f874dc1dd747dfefcfcab75be"
S = "${WORKDIR}/git"