]> 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:33:16 +0000 (10:33 -0600)
ASTERISK-29205 #close

Change-Id: Ib7aa65644e8df76e2378d7613ee7cf751b9d0bea

res/res_rtp_asterisk.c

index 1820ab100e46e029eb7696191f31cf574c3ac840..2ed18318f0a3cfdec8ea67868c7ea2028488a5ce 100644 (file)
@@ -6871,7 +6871,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;
                        }
@@ -6905,7 +6905,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;
                }
        }