[svn-commits] file: branch file/pimp_sip_media r380959 - in /team/file/pimp_sip_media: chan...
SVN commits to the Digium repositories
svn-commits at lists.digium.com
Wed Feb 6 06:36:57 CST 2013
Author: file
Date: Wed Feb 6 06:36:52 2013
New Revision: 380959
URL: http://svnview.digium.com/svn/asterisk?view=rev&rev=380959
Log:
Fix a no media flow issue and also allow local Packet2Packet bridging to occur.
Modified:
team/file/pimp_sip_media/channels/chan_gulp.c
team/file/pimp_sip_media/res/res_sip_sdp_audio.c
Modified: team/file/pimp_sip_media/channels/chan_gulp.c
URL: http://svnview.digium.com/svn/asterisk/team/file/pimp_sip_media/channels/chan_gulp.c?view=diff&rev=380959&r1=380958&r2=380959
==============================================================================
--- team/file/pimp_sip_media/channels/chan_gulp.c (original)
+++ team/file/pimp_sip_media/channels/chan_gulp.c Wed Feb 6 06:36:52 2013
@@ -107,10 +107,19 @@
.incoming_response = gulp_incoming_response,
};
-/*! \brief Function called by RTP engine to get local RTP peer */
+/*! \brief Function called by RTP engine to get local audio RTP peer */
static enum ast_rtp_glue_result gulp_get_rtp_peer(struct ast_channel *chan, struct ast_rtp_instance **instance)
{
- return AST_RTP_GLUE_RESULT_FORBID;
+ struct ast_sip_session *session = ast_channel_tech_pvt(chan);
+
+ if (!session || !session->media[AST_SIP_MEDIA_AUDIO].rtp) {
+ return AST_RTP_GLUE_RESULT_FORBID;
+ }
+
+ ao2_ref(session->media[AST_SIP_MEDIA_AUDIO].rtp, +1);
+ *instance = session->media[AST_SIP_MEDIA_AUDIO].rtp;
+
+ return AST_RTP_GLUE_RESULT_LOCAL;
}
/*! \brief Function called by RTP engine to get peer capabilities */
Modified: team/file/pimp_sip_media/res/res_sip_sdp_audio.c
URL: http://svnview.digium.com/svn/asterisk/team/file/pimp_sip_media/res/res_sip_sdp_audio.c?view=diff&rev=380959&r1=380958&r2=380959
==============================================================================
--- team/file/pimp_sip_media/res/res_sip_sdp_audio.c (original)
+++ team/file/pimp_sip_media/res/res_sip_sdp_audio.c Wed Feb 6 06:36:52 2013
@@ -279,7 +279,7 @@
}
/* Ensure that the address provided is valid */
- if (ast_sockaddr_resolve(&addrs, host, PARSE_PORT_FORBID, AST_AF_UNSPEC)) {
+ if (ast_sockaddr_resolve(&addrs, host, PARSE_PORT_FORBID, AST_AF_UNSPEC) <= 0) {
/* The provided host was actually invalid so we error out this negotiation */
return -1;
}
More information about the svn-commits
mailing list