mirror of
https://github.com/asterisk/asterisk.git
synced 2025-09-03 03:20:57 +00:00
Merged revisions 291758 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.8 ........ r291758 | pabelanger | 2010-10-14 11:15:12 -0400 (Thu, 14 Oct 2010) | 11 lines Add the ability for ast_find_ourip to return IPv4, IPv6 or both. While testing chan_gtalk I noticed jabber was using my IPv6 address and not IPv4. When using bindaddr=0.0.0.0 it is possible for ast_find_ourip() to return both IPv6 and IPv4 results. Adding a family parameter gives you the ablility to choose. Since jabber/gtalk/h323 do not support IPv6, we should only return IPv4 results. Review: https://reviewboard.asterisk.org/r/973/ ........ git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@291760 65c4cc65-6c06-0410-ace0-fbb531ad65f3
This commit is contained in:
@@ -720,7 +720,7 @@ int ast_ouraddrfor(const struct ast_sockaddr *them, struct ast_sockaddr *us)
|
||||
return 0;
|
||||
}
|
||||
|
||||
int ast_find_ourip(struct ast_sockaddr *ourip, const struct ast_sockaddr *bindaddr)
|
||||
int ast_find_ourip(struct ast_sockaddr *ourip, const struct ast_sockaddr *bindaddr, int family)
|
||||
{
|
||||
char ourhost[MAXHOSTNAMELEN] = "";
|
||||
struct ast_sockaddr root;
|
||||
@@ -735,7 +735,7 @@ int ast_find_ourip(struct ast_sockaddr *ourip, const struct ast_sockaddr *bindad
|
||||
if (gethostname(ourhost, sizeof(ourhost) - 1)) {
|
||||
ast_log(LOG_WARNING, "Unable to get hostname\n");
|
||||
} else {
|
||||
if (resolve_first(ourip, ourhost, PARSE_PORT_FORBID, 0) == 0) {
|
||||
if (resolve_first(ourip, ourhost, PARSE_PORT_FORBID, family) == 0) {
|
||||
return 0;
|
||||
}
|
||||
}
|
||||
|
Reference in New Issue
Block a user