aboutsummaryrefslogtreecommitdiffstats
path: root/channels
diff options
context:
space:
mode:
authorfile <file@f38db490-d61c-443f-a65b-d21fe96a405b>2006-11-30 21:18:24 +0000
committerfile <file@f38db490-d61c-443f-a65b-d21fe96a405b>2006-11-30 21:18:24 +0000
commit260b85dbbc8de8357490cc0e26eb73f09f210943 (patch)
tree50e05458979ea7ce5639c4ef524257e3ea958b34 /channels
parent74ad2ee9b28a6c2ae1560ab25fd344f24fa2fb54 (diff)
Do not do a partial bridge for Google Talk since we need to handle STUN. (issue #8448 reported by phsultan)
git-svn-id: http://svn.digium.com/svn/asterisk/branches/1.4@48168 f38db490-d61c-443f-a65b-d21fe96a405b
Diffstat (limited to 'channels')
-rw-r--r--channels/chan_gtalk.c9
1 files changed, 5 insertions, 4 deletions
diff --git a/channels/chan_gtalk.c b/channels/chan_gtalk.c
index 6b039a174..59f40cc61 100644
--- a/channels/chan_gtalk.c
+++ b/channels/chan_gtalk.c
@@ -163,7 +163,6 @@ struct gtalk_container {
};
static const char desc[] = "Gtalk Channel";
-static const char type[] = "Gtalk";
static int usecnt = 0;
AST_MUTEX_DEFINE_STATIC(usecnt_lock);
@@ -195,7 +194,7 @@ static int gtalk_get_codec(struct ast_channel *chan);
/*! \brief PBX interface structure for channel registration */
static const struct ast_channel_tech gtalk_tech = {
- .type = type,
+ .type = "Gtalk",
.description = "Gtalk Channel Driver",
.capabilities = ((AST_FORMAT_MAX_AUDIO << 1) - 1),
.requester = gtalk_request,
@@ -223,7 +222,7 @@ static struct in_addr __ourip;
/*! \brief RTP driver interface */
static struct ast_rtp_protocol gtalk_rtp = {
- type: "gtalk",
+ type: "Gtalk",
get_rtp_info: gtalk_get_rtp_peer,
set_rtp_peer: gtalk_set_rtp_peer,
get_codec: gtalk_get_codec,
@@ -922,10 +921,12 @@ static struct ast_channel *gtalk_new(struct gtalk *client, struct gtalk_pvt *i,
fmt = ast_best_codec(tmp->nativeformats);
if (i->rtp) {
+ ast_rtp_setstun(i->rtp, 1);
tmp->fds[0] = ast_rtp_fd(i->rtp);
tmp->fds[1] = ast_rtcp_fd(i->rtp);
}
if (i->vrtp) {
+ ast_rtp_setstun(i->rtp, 1);
tmp->fds[2] = ast_rtp_fd(i->vrtp);
tmp->fds[3] = ast_rtcp_fd(i->vrtp);
}
@@ -1796,7 +1797,7 @@ static int load_module(void)
/* Make sure we can register our channel type */
if (ast_channel_register(&gtalk_tech)) {
- ast_log(LOG_ERROR, "Unable to register channel class %s\n", type);
+ ast_log(LOG_ERROR, "Unable to register channel class %s\n", gtalk_tech.type);
return -1;
}
return 0;