[asterisk-commits] may: branch may/ooh323_ipv6 r293885 - in /team/may/ooh323_ipv6: ./ addons/ ad...
SVN commits to the Asterisk project
asterisk-commits at lists.digium.com
Wed Nov 3 16:33:46 CDT 2010
Author: may
Date: Wed Nov 3 16:33:42 2010
New Revision: 293885
URL: http://svnview.digium.com/svn/asterisk?view=rev&rev=293885
Log:
simple tests are work, rtp and signalling are right, search client
support h323 with ipv6
Added:
team/may/ooh323_ipv6/todo (with props)
Modified:
team/may/ooh323_ipv6/addons/chan_ooh323.c
team/may/ooh323_ipv6/addons/ooh323c/src/ooh323.c
team/may/ooh323_ipv6/addons/ooh323c/src/ooq931.c
Modified: team/may/ooh323_ipv6/addons/chan_ooh323.c
URL: http://svnview.digium.com/svn/asterisk/team/may/ooh323_ipv6/addons/chan_ooh323.c?view=diff&rev=293885&r1=293884&r2=293885
==============================================================================
--- team/may/ooh323_ipv6/addons/chan_ooh323.c (original)
+++ team/may/ooh323_ipv6/addons/chan_ooh323.c Wed Nov 3 16:33:42 2010
@@ -3886,8 +3886,7 @@
int configure_local_rtp(struct ooh323_pvt *p, ooCallData *call)
{
- char *lhost = NULL;
- char *lport = NULL;
+ char *lhost=NULL, *lport=NULL;
struct ast_sockaddr tmp;
ooMediaInfo mediaInfo;
int x;
@@ -3910,8 +3909,10 @@
}
/* figure out our local RTP port and tell the H.323 stack about it*/
ast_rtp_instance_get_local_address(p->rtp, &tmp);
- lhost = ast_sockaddr_stringify_host(&tmp);
+ /* lhost = ast_sockaddr_stringify_host(&tmp);*/
+ lhost = gIP;
lport = ast_sockaddr_stringify_port(&tmp);
+ ast_verbose("rtp address: %s:%s\n", lhost, lport);
if (p->rtptimeout) {
ast_rtp_instance_set_timeout(p->rtp, p->rtptimeout);
Modified: team/may/ooh323_ipv6/addons/ooh323c/src/ooh323.c
URL: http://svnview.digium.com/svn/asterisk/team/may/ooh323_ipv6/addons/ooh323c/src/ooh323.c?view=diff&rev=293885&r1=293884&r2=293885
==============================================================================
--- team/may/ooh323_ipv6/addons/ooh323c/src/ooh323.c (original)
+++ team/may/ooh323_ipv6/addons/ooh323c/src/ooh323.c Wed Nov 3 16:33:42 2010
@@ -502,7 +502,7 @@
}
ip6 = &setup->sourceCallSignalAddress.u.ip6Address->ip;
- inet_ntop(AF_INET6, ip->data, call->remoteIP, INET6_ADDRSTRLEN);
+ inet_ntop(AF_INET6, ip6->data, call->remoteIP, INET6_ADDRSTRLEN);
call->remotePort = setup->sourceCallSignalAddress.u.ip6Address->port;
} else {
if(setup->sourceCallSignalAddress.t != T_H225TransportAddress_ipAddress)
Modified: team/may/ooh323_ipv6/addons/ooh323c/src/ooq931.c
URL: http://svnview.digium.com/svn/asterisk/team/may/ooh323_ipv6/addons/ooh323c/src/ooq931.c?view=diff&rev=293885&r1=293884&r2=293885
==============================================================================
--- team/may/ooh323_ipv6/addons/ooh323c/src/ooq931.c (original)
+++ team/may/ooh323_ipv6/addons/ooh323c/src/ooq931.c Wed Nov 3 16:33:42 2010
@@ -2169,7 +2169,7 @@
OOCTXT *pctxt;
OOH323CallData *call;
int ret=OO_OK, i=0, irand=0;
- char tmp[30]="\0";
+ char tmp[2+8*4+7]="\0";
char *ip=NULL, *port = NULL;
struct timeval tv;
struct timespec ts;
@@ -2216,7 +2216,7 @@
}
- ret = ooParseDestination(call, dest, tmp, 24, &call->remoteAliases);
+ ret = ooParseDestination(call, dest, tmp, 2+8*4+7, &call->remoteAliases);
if(ret != OO_OK)
{
OOTRACEERR2("Error: Failed to parse the destination string %s for "
@@ -2228,7 +2228,7 @@
/* Check whether we have ip address */
if(!ooUtilsIsStrEmpty(tmp)) {
ip = tmp;
- port = strchr(tmp, ':');
+ port = strrchr(tmp, ':');
*port = '\0';
port++;
strcpy(call->remoteIP, ip);
@@ -2926,7 +2926,7 @@
H225Facility_UUIE *facility=NULL;
OOCTXT *pctxt = &gH323ep.msgctxt;
OOH323CallData *call;
- char ip[30]="\0", *pcPort=NULL;
+ char ip[2+8*4+7]="\0", *pcPort=NULL;
H225TransportAddress_ipAddress *fwdCallSignalIpAddress;
H225TransportAddress_ip6Address *fwdCallSignalIp6Address;
@@ -2947,7 +2947,7 @@
return OO_FAILED;
}
- ret = ooParseDestination(call, dest, ip, 20,
+ ret = ooParseDestination(call, dest, ip, 2+8*4+7,
&call->pCallFwdData->aliases);
if(ret != OO_OK)
{
@@ -2959,7 +2959,7 @@
if(!ooUtilsIsStrEmpty(ip))
{
- pcPort = strchr(ip, ':');
+ pcPort = strrchr(ip, ':');
if(pcPort)
{
*pcPort = '\0';
@@ -3598,6 +3598,17 @@
return OO_OK;
}
+ if (gH323ep.v6Mode && strstr(dest, "::")) {
+ if(strlen(dest)+1>len)
+ {
+ OOTRACEERR1("Error:Insufficient buffer space for parsed ip - "
+ "ooParseDestination\n");
+ return OO_FAILED;
+ }
+ strcpy(parsedIP, dest);
+ return OO_OK;
+ }
+
/* alias at host */
strncpy(tmp, dest, sizeof(tmp)-1);
tmp[sizeof(tmp)-1]='\0';
Added: team/may/ooh323_ipv6/todo
URL: http://svnview.digium.com/svn/asterisk/team/may/ooh323_ipv6/todo?view=auto&rev=293885
==============================================================================
--- team/may/ooh323_ipv6/todo (added)
+++ team/may/ooh323_ipv6/todo Wed Nov 3 16:33:42 2010
@@ -1,0 +1,3 @@
+understand about stringify_host
+make accurate ooParseDestination
+ipv4 in ipv6 mode
Propchange: team/may/ooh323_ipv6/todo
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: team/may/ooh323_ipv6/todo
------------------------------------------------------------------------------
svn:keywords = Author Date Id Revision
Propchange: team/may/ooh323_ipv6/todo
------------------------------------------------------------------------------
svn:mime-type = text/plain
More information about the asterisk-commits
mailing list