diff options
author | Richard Mudgett <rmudgett@digium.com> | 2015-09-17 16:59:18 -0500 |
---|---|---|
committer | Richard Mudgett <rmudgett@digium.com> | 2015-09-17 17:04:16 -0500 |
commit | e1927915bce78ef54e087ab6dadd03f410884a36 (patch) | |
tree | 6138c516ef346e8e4faf06820836e83a2197a3ed /res/res_pjsip_diversion.c | |
parent | e47396721f9c73b16ac7c7632dcd530f4e5b06c7 (diff) |
CHAOS: res_pjsip_diversion avoid crash if allocation fails
Validate ast_malloc buffer returned before using it in
set_redirecting_value().
ASTERISK-25323
Change-Id: I15d2ed7cb0546818264c0bf251aa40adeae83253
Diffstat (limited to 'res/res_pjsip_diversion.c')
-rw-r--r-- | res/res_pjsip_diversion.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/res/res_pjsip_diversion.c b/res/res_pjsip_diversion.c index 3dfae455b..ea2c7cd13 100644 --- a/res/res_pjsip_diversion.c +++ b/res/res_pjsip_diversion.c @@ -117,7 +117,9 @@ static void set_redirecting_value(char **dst, const pj_str_t *src) { ast_free(*dst); *dst = ast_malloc(pj_strlen(src) + 1); - ast_copy_pj_str(*dst, src, pj_strlen(src) + 1); + if (*dst) { + ast_copy_pj_str(*dst, src, pj_strlen(src) + 1); + } } static void set_redirecting_id(pjsip_name_addr *name_addr, struct ast_party_id *data, |