diff options
author | Scott Griepentrog <scott@griepentrog.com> | 2015-08-26 15:26:00 -0500 |
---|---|---|
committer | Scott Griepentrog <sgriepentrog@digium.com> | 2015-08-26 15:32:28 -0500 |
commit | 6862c2a167f4ed2cb8511bb1ae94a13582afa25b (patch) | |
tree | 0bc7a57474819a60b43c638d129331d8bbd96d76 /res/res_pjsip_sdp_rtp.c | |
parent | c01111223f9dbd383a4dd1cf786b63eff214f238 (diff) |
Chaos: handle failed allocation in get_media_encryption_type
If the ast_strndup() call fails to allocate a copy of the
transport string for parsing, fail gracefully.
ASTERISK-25323
Reported by: Scott Griepentrog
Change-Id: Ia4b905ce6d03da53fea526224455c1044b1a5a28
Diffstat (limited to 'res/res_pjsip_sdp_rtp.c')
-rw-r--r-- | res/res_pjsip_sdp_rtp.c | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/res/res_pjsip_sdp_rtp.c b/res/res_pjsip_sdp_rtp.c index 0a5cbcbf9..208d34833 100644 --- a/res/res_pjsip_sdp_rtp.c +++ b/res/res_pjsip_sdp_rtp.c @@ -602,6 +602,9 @@ static enum ast_sip_session_media_encryption get_media_encryption_type(pj_str_t *optimistic = 0; + if (!transport_str) { + return AST_SIP_MEDIA_TRANSPORT_INVALID; + } if (strstr(transport_str, "UDP/TLS")) { return AST_SIP_MEDIA_ENCRYPT_DTLS; } else if (strstr(transport_str, "SAVP")) { |