]> git.ipfire.org Git - thirdparty/asterisk.git/commitdiff
AST-2018-005: Add a check for NULL tdata in ast_sip_failover_request
authorGeorge Joseph <gjoseph@digium.com>
Tue, 6 Feb 2018 17:21:32 +0000 (10:21 -0700)
committerGeorge Joseph <gjoseph@digium.com>
Wed, 21 Feb 2018 15:07:07 +0000 (08:07 -0700)
It was discovered that there are some corner cases where a pjsip tsx
might have no last_tx so calling ast_sip_failover_request with
a NULL last_tx as its tdata would cause a crash.

ASTERISK-27618
Reported By:  Sandro Gauci

Change-Id: Ic2b63f6d4ae617c4c19dcdec2a7a6156b54fd15b

res/res_pjsip.c

index 4392677e0e38bd6a2d0930d68b6808eeced03fd3..60d997af4df4117509948fe747f2d9420bf29435 100644 (file)
@@ -3887,7 +3887,8 @@ int ast_sip_failover_request(pjsip_tx_data *tdata)
 {
        pjsip_via_hdr *via;
 
-       if (!tdata->dest_info.addr.count || (tdata->dest_info.cur_addr == tdata->dest_info.addr.count - 1)) {
+       if (!tdata || !tdata->dest_info.addr.count
+               || (tdata->dest_info.cur_addr == tdata->dest_info.addr.count - 1)) {
                /* No more addresses to try */
                return 0;
        }