diff options
author | Richard Mudgett <rmudgett@digium.com> | 2015-09-17 16:59:18 -0500 |
---|---|---|
committer | Richard Mudgett <rmudgett@digium.com> | 2015-09-17 16:59:18 -0500 |
commit | 4cc59533b903b3d55e8b388f28385287e712ae62 (patch) | |
tree | 9048b6b3bbcc52a4cff2804949ca5401b4318475 /res/res_pjsip_diversion.c | |
parent | a665b3128177fc87036d7eb8b3174ac85e791d22 (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 49f789212..4d9aca4a1 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, |