From f7f671d18bbdaf8d7e408fe61fb2572e4c7e34fd Mon Sep 17 00:00:00 2001 From: Jukka Rissanen Date: Wed, 22 Nov 2017 09:49:19 +0200 Subject: [PATCH] samples: net: zperf: Check pkt before accessing it The pkt was accessed before NULL check. Coverity-CID: 179250 Fixes #5059 Signed-off-by: Jukka Rissanen --- samples/net/zperf/src/zperf_udp_uploader.c | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/samples/net/zperf/src/zperf_udp_uploader.c b/samples/net/zperf/src/zperf_udp_uploader.c index 78b7ba7679f..2116d5ba061 100644 --- a/samples/net/zperf/src/zperf_udp_uploader.c +++ b/samples/net/zperf/src/zperf_udp_uploader.c @@ -27,6 +27,11 @@ static inline void zperf_upload_decode_stat(struct net_pkt *pkt, u16_t offset; u16_t pos; + if (!pkt) { + printk(TAG "ERROR! Failed to receive statistic\n"); + return; + } + frag = net_frag_get_pos(pkt, net_pkt_ip_hdr_len(pkt) + net_pkt_ipv6_ext_len(pkt) + @@ -39,10 +44,7 @@ static inline void zperf_upload_decode_stat(struct net_pkt *pkt, } /* Decode stat */ - if (!pkt) { - printk(TAG "ERROR! Failed to receive statistic\n"); - return; - } else if (net_pkt_appdatalen(pkt) < + if (net_pkt_appdatalen(pkt) < (sizeof(struct zperf_server_hdr) + sizeof(struct zperf_udp_datagram))) { printk(TAG "ERROR! Statistics too small\n");