cppcheck 2.12 (which Fedora 38 has updated, for one) introduces a
number of new warnings. Unfortunately, at least one of these is a
clear bug in cppcheck.
This series fixes a number of the new warnings reported in passt
(patches 1..3) and works around the remaining cppcheck bug (patch 4).
I'm pretty confident that patches 1 & 2 are safe and beneficial to
apply regardless of which cppcheck we're using.
Patch 3 is a little more dubious, because it potentially increases the
cppcheck runtime. On my system it doesn't seem to make a significant
difference, but that might not always stay true.
Patch 4 is a tricky one. It applies a specific suppression to work
around the cppcheck bug. That's necessary to get a pass with the
currently available cppcheck. However, it's ugly and we'd like to
remove it once the bug is fixed, but have no obvious way to remind us
to do that. What we want to do here kind of depends how long it takes
the bug to be fixed, which isn't clear at the moment.
David Gibson (4):
cppcheck: Make many pointers const
conf: Remove overly cryptic selection of forward table
cppcheck: Use "exhaustive" level checking when available
cppcheck: Work around bug in cppcheck 2.12.0
Makefile | 6 ++++++
conf.c | 25 +++++++++++--------------
isolation.c | 2 +-
isolation.h | 2 +-
log.c | 6 +++---
netlink.c | 6 +++---
netlink.h | 6 +++---
pasta.c | 4 ++--
pasta.h | 2 +-
tap.c | 14 +++++++-------
tap.h | 6 +++---
tcp.c | 25 ++++++++++++++++---------
tcp_conn.h | 2 +-
tcp_splice.c | 5 +++--
tcp_splice.h | 3 ++-
udp.c | 4 ++--
udp.h | 2 +-
util.c | 5 +++--
util.h | 4 ++--
19 files changed, 71 insertions(+), 58 deletions(-)
--
2.41.0