Merge remote-tracking branch 'origin/topic/timw/clang-20-build-warnings'

* origin/topic/timw/clang-20-build-warnings:
  Silence -Wnontrivial-memcall warning in ConnKey methods
This commit is contained in:
Tim Wojtulewicz 2025-06-05 08:22:25 -07:00
commit a289307e50
3 changed files with 11 additions and 5 deletions

View file

@ -1,3 +1,7 @@
8.0.0-dev.367 | 2025-06-05 08:22:25 -0700
* Silence -Wnontrivial-memcall warning in ConnKey methods (Tim Wojtulewicz, Corelight)
8.0.0-dev.363 | 2025-06-05 07:15:59 +0100 8.0.0-dev.363 | 2025-06-05 07:15:59 +0100
* dpd.log to analyzer.log changes: * dpd.log to analyzer.log changes:

View file

@ -1 +1 @@
8.0.0-dev.365 8.0.0-dev.367

View file

@ -33,8 +33,9 @@ ConnKey& ConnKey::operator=(const ConnKey& rhs) {
// Because of padding in the object, this needs to memset to clear out // Because of padding in the object, this needs to memset to clear out
// the extra memory used by padding. Otherwise, the session key stuff // the extra memory used by padding. Otherwise, the session key stuff
// doesn't work quite right. // doesn't work quite right. The static_cast is to silence a
memset(this, 0, sizeof(ConnKey)); // -Wnontrival-memcall warning from clang++ 17 and later.
memset(static_cast<void*>(this), 0, sizeof(ConnKey));
memcpy(&ip1, &rhs.ip1, sizeof(in6_addr)); memcpy(&ip1, &rhs.ip1, sizeof(in6_addr));
memcpy(&ip2, &rhs.ip2, sizeof(in6_addr)); memcpy(&ip2, &rhs.ip2, sizeof(in6_addr));
@ -104,8 +105,9 @@ void ConnKey::Init(const IPAddr& src, const IPAddr& dst, uint16_t src_port, uint
bool one_way) { bool one_way) {
// Because of padding in the object, this needs to memset to clear out // Because of padding in the object, this needs to memset to clear out
// the extra memory used by padding. Otherwise, the session key stuff // the extra memory used by padding. Otherwise, the session key stuff
// doesn't work quite right. // doesn't work quite right. The static_cast is to silence a
memset(this, 0, sizeof(ConnKey)); // -Wnontrival-memcall warning from clang++ 17 and later.
memset(static_cast<void*>(this), 0, sizeof(ConnKey));
// Lookup up connection based on canonical ordering, which is // Lookup up connection based on canonical ordering, which is
// the smaller of <src addr, src port> and <dst addr, dst port> // the smaller of <src addr, src port> and <dst addr, dst port>