diff options
author | Kinsey Moore <kmoore@digium.com> | 2013-11-01 12:40:40 +0000 |
---|---|---|
committer | Kinsey Moore <kmoore@digium.com> | 2013-11-01 12:40:40 +0000 |
commit | 98dea21bc14a16831710beaadb3b859b7b7a0637 (patch) | |
tree | 0892301be5bc5d940b5beb197984aebd01a17274 /include/asterisk/rtp_engine.h | |
parent | 4053f36a71fcb0d8354a9023c9514d51c0011892 (diff) |
chan_sip: Fix RTCP port for SRFLX ICE candidates
This corrects one-way audio between Asterisk and Chrome/jssip as a
result of Asterisk inserting the incorrect RTCP port into RTCP SRFLX
ICE candidates. This also exposes an ICE component enumeration to
extract further details from candidates.
(closes issue ASTERISK-21383)
Reported by: Shaun Clark
Review: https://reviewboard.asterisk.org/r/2967/
........
Merged revisions 402345 from http://svn.asterisk.org/svn/asterisk/branches/11
........
Merged revisions 402348 from http://svn.asterisk.org/svn/asterisk/branches/12
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@402349 65c4cc65-6c06-0410-ace0-fbb531ad65f3
Diffstat (limited to 'include/asterisk/rtp_engine.h')
-rw-r--r-- | include/asterisk/rtp_engine.h | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/include/asterisk/rtp_engine.h b/include/asterisk/rtp_engine.h index 68003f56b..9d6c7b4f4 100644 --- a/include/asterisk/rtp_engine.h +++ b/include/asterisk/rtp_engine.h @@ -381,10 +381,16 @@ enum ast_rtp_ice_candidate_type { AST_RTP_ICE_CANDIDATE_TYPE_RELAYED, /*!< ICE relayed candidate, which represents the address allocated in TURN server. */ }; +/*! \brief ICE component types */ +enum ast_rtp_ice_component_type { + AST_RTP_ICE_COMPONENT_RTP = 1, + AST_RTP_ICE_COMPONENT_RTCP = 2, +}; + /*! \brief Structure for an ICE candidate */ struct ast_rtp_engine_ice_candidate { char *foundation; /*!< Foundation identifier */ - unsigned int id; /*!< Component identifier */ + enum ast_rtp_ice_component_type id; /*!< Component identifier */ char *transport; /*!< Transport for the media */ int priority; /*!< Priority which is used if multiple candidates can be used */ struct ast_sockaddr address; /*!< Address of the candidate */ |