]> git.ipfire.org Git - thirdparty/asterisk.git/commitdiff
res_rtp_asterisk.c: Fix signed mismatch that leads to overflow
authorSean Bright <sean.bright@gmail.com>
Fri, 11 Dec 2020 20:49:48 +0000 (15:49 -0500)
committerGeorge Joseph <gjoseph@digium.com>
Thu, 18 Feb 2021 16:32:58 +0000 (10:32 -0600)
ASTERISK-29205 #close

Change-Id: Ib7aa65644e8df76e2378d7613ee7cf751b9d0bea

res/res_rtp_asterisk.c

index 6004a2f21298337f6a39cf488cc51e16543f0192..aed7a891b1284bd7f4668b53bc60434d55950924 100644 (file)
@@ -6771,7 +6771,7 @@ static int rtp_transport_wide_cc_feedback_produce(const void *data)
                        /* If there is no more room left for storing packets stop now, we leave 20
                         * extra bits at the end just in case.
                         */
-                       if ((sizeof(bdata) - (packet_len + delta_len + 20)) < 0) {
+                       if (packet_len + delta_len + 20 > sizeof(bdata)) {
                                res = -1;
                                break;
                        }
@@ -6805,7 +6805,7 @@ static int rtp_transport_wide_cc_feedback_produce(const void *data)
                previous_packet = statistics;
 
                /* If there is no more room left in the packet stop handling of any subsequent packets */
-               if ((sizeof(bdata) - (packet_len + delta_len + 20)) < 0) {
+               if (packet_len + delta_len + 20 > sizeof(bdata)) {
                        break;
                }
        }