]> git.puffer.fish Git - matthieu/frr.git/commitdiff
pimd: untrusted argument (2) (Coverity 1465491)
authorpaco <paco@voltanet.io>
Mon, 25 Jun 2018 13:25:26 +0000 (15:25 +0200)
committerpaco <paco@voltanet.io>
Mon, 25 Jun 2018 15:37:48 +0000 (17:37 +0200)
Additional fix over 18e994a0437cfba9f4c09bd62293e13e49ea774b (PR #2457)

Previous correction was not enough for fixing the Coverity warning. Now we
ensure we don't overflow the buffer.

Signed-off-by: F. Aragon <paco@voltanet.io>
pimd/mtracebis.c

index c63a6eeca983fa8fbe1b31d3c9fb9060b7d921b2..a0e8fd127030152a0fbff9bd9053bda8d09c0ad9 100644 (file)
@@ -303,6 +303,9 @@ static int recv_response(int fd, int *hops, struct igmp_mtrace *mtracer)
        if (mtrace_len < (int)MTRACE_HDR_SIZE)
                return -1;
 
+       if (mtrace_len > (int)MTRACE_BUF_LEN)
+               return -1;
+
        sum = mtrace->checksum;
        mtrace->checksum = 0;
        if (sum != in_cksum(mtrace, mtrace_len)) {