aboutgitcodebugslistschat
diff options
context:
space:
mode:
authorDavid Gibson <david@gibson.dropbear.id.au>2022-09-28 14:33:23 +1000
committerStefano Brivio <sbrivio@redhat.com>2022-09-29 12:22:13 +0200
commite2b7d370d08257c14d9288d6b7534d45d57c6816 (patch)
tree2d983354d69bf8cad6e58497bb22802293db911a
parentdf74984c520cb7a5141e7a46c5c1c71bf31355b7 (diff)
downloadpasst-e2b7d370d08257c14d9288d6b7534d45d57c6816.tar
passt-e2b7d370d08257c14d9288d6b7534d45d57c6816.tar.gz
passt-e2b7d370d08257c14d9288d6b7534d45d57c6816.tar.bz2
passt-e2b7d370d08257c14d9288d6b7534d45d57c6816.tar.lz
passt-e2b7d370d08257c14d9288d6b7534d45d57c6816.tar.xz
passt-e2b7d370d08257c14d9288d6b7534d45d57c6816.tar.zst
passt-e2b7d370d08257c14d9288d6b7534d45d57c6816.zip
cppcheck: Work around false positive NULL pointer dereference error
Some versions of cppcheck could errneously report a NULL pointer deference inside a sizeof(). This is now fixed in cppcheck upstream[0]. For systems using an affected version, add a suppression to work around the bug. Also add an unmatchedSuppression suppression so the suppression itself doesn't cause a warning if you *do* have a fixed cppcheck. [0] https://github.com/danmar/cppcheck/pull/4471 Signed-off-by: David Gibson <david@gibson.dropbear.id.au> Signed-off-by: Stefano Brivio <sbrivio@redhat.com>
-rw-r--r--tcp.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/tcp.c b/tcp.c
index e45dfda..b694792 100644
--- a/tcp.c
+++ b/tcp.c
@@ -1734,6 +1734,7 @@ static int tcp_update_seqack_wnd(const struct ctx *c, struct tcp_conn *conn,
{
uint32_t prev_wnd_to_tap = conn->wnd_to_tap << conn->ws_to_tap;
uint32_t prev_ack_to_tap = conn->seq_ack_to_tap;
+ /* cppcheck-suppress [ctunullpointer, unmatchedSuppression] */
socklen_t sl = sizeof(*tinfo);
struct tcp_info tinfo_new;
uint32_t new_wnd_to_tap = prev_wnd_to_tap;