From ee1e4d33f8f01f8a53be3a726f922ad5eb6195aa Mon Sep 17 00:00:00 2001 From: HiGarfield Date: Sun, 8 Oct 2023 11:34:17 +0800 Subject: [PATCH] fix possible null pointer dereference cppcheck reports: network.cpp:1717:22: error: Null pointer dereference: payload [ctunullpointer] memcpy(tcp_data, payload, payloadlen); ^ client.cpp:193:22: note: Calling function send_raw0, 2nd argument is null send_raw0(raw_info, 0, 0); ^ network.cpp:2534:20: note: Calling function send_raw_tcp, 2nd argument is null return send_raw_tcp(raw_info, payload, payloadlen); ^ network.cpp:1717:22: note: Dereferencing argument payload that is null memcpy(tcp_data, payload, payloadlen); ^ --- network.cpp | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/network.cpp b/network.cpp index bd01964..6b15894 100644 --- a/network.cpp +++ b/network.cpp @@ -1714,7 +1714,8 @@ int send_raw_tcp(raw_info_t &raw_info, const char *payload, int payloadlen) { / char *tcp_data = send_raw_tcp_buf + +tcph->doff * 4; - memcpy(tcp_data, payload, payloadlen); + if (payload) + memcpy(tcp_data, payload, payloadlen); int tcp_totlen = tcph->doff * 4 + payloadlen; if (raw_ip_version == AF_INET) {