diff options
author | Jenkins2 <jenkins2@gerrit.asterisk.org> | 2017-05-01 14:16:55 -0500 |
---|---|---|
committer | Gerrit Code Review <gerrit2@gerrit.digium.api> | 2017-05-01 14:16:55 -0500 |
commit | 94b97e0835423505bb19294feb59fb2ed05deae7 (patch) | |
tree | eaff9604130467b553137a04d63ff66938bc4966 /res/res_rtp_asterisk.c | |
parent | 09cde039a3e3871d66d6b1e78051fb143674d814 (diff) | |
parent | d6535c0080632bce5ed555904d5198c04e040ffb (diff) |
Merge "SDP API: Add SSRC-level attributes"
Diffstat (limited to 'res/res_rtp_asterisk.c')
-rw-r--r-- | res/res_rtp_asterisk.c | 25 |
1 files changed, 25 insertions, 0 deletions
diff --git a/res/res_rtp_asterisk.c b/res/res_rtp_asterisk.c index d0d795939..85e2425cb 100644 --- a/res/res_rtp_asterisk.c +++ b/res/res_rtp_asterisk.c @@ -474,6 +474,8 @@ static void ast_rtp_stun_request(struct ast_rtp_instance *instance, struct ast_s static void ast_rtp_stop(struct ast_rtp_instance *instance); static int ast_rtp_qos_set(struct ast_rtp_instance *instance, int tos, int cos, const char* desc); static int ast_rtp_sendcng(struct ast_rtp_instance *instance, int level); +static unsigned int ast_rtp_get_ssrc(struct ast_rtp_instance *instance); +static const char *ast_rtp_get_cname(struct ast_rtp_instance *instance); #ifdef HAVE_OPENSSL_SRTP static int ast_rtp_activate(struct ast_rtp_instance *instance); @@ -1903,6 +1905,8 @@ static struct ast_rtp_engine asterisk_rtp_engine = { .dtls = &ast_rtp_dtls, .activate = ast_rtp_activate, #endif + .ssrc_get = ast_rtp_get_ssrc, + .cname_get = ast_rtp_get_cname, }; #ifdef HAVE_OPENSSL_SRTP @@ -5815,6 +5819,27 @@ static int ast_rtp_sendcng(struct ast_rtp_instance *instance, int level) return res; } +/*! \pre instance is locked */ +static unsigned int ast_rtp_get_ssrc(struct ast_rtp_instance *instance) +{ + struct ast_rtp *rtp = ast_rtp_instance_get_data(instance); + + return rtp->ssrc; +} + +/*! \pre instance is locked */ +static const char *ast_rtp_get_cname(struct ast_rtp_instance *instance) +{ + /* XXX + * + * Asterisk currently puts a zero-length CNAME value in RTCP SDES items, + * meaning our CNAME will always be an empty string. In future, should + * Asterisk actually start using meaningful CNAMEs, this function will + * need to return that instead of an empty string + */ + return ""; +} + #ifdef HAVE_OPENSSL_SRTP static void dtls_perform_setup(struct dtls_details *dtls) { |