mirror of
https://github.com/signalwire/freeswitch.git
synced 2025-03-12 12:18:18 +00:00
patch for FSCORE-219
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@10554 d0543943-73ff-0310-b7d9-9358b9ac24b2
This commit is contained in:
parent
c3ddf82c4f
commit
0820d565af
@ -147,6 +147,7 @@ SWITCH_DECLARE(switch_stun_packet_t *) switch_stun_packet_parse(uint8_t *buf, ui
|
||||
*/
|
||||
SWITCH_DECLARE(const char *) switch_stun_value_to_name(int32_t type, uint32_t value);
|
||||
|
||||
SWITCH_DECLARE(char *) switch_stun_host_lookup(const char *host, switch_memory_pool_t *pool);
|
||||
|
||||
/*!
|
||||
\brief Extract a mapped address (IP:PORT) from a packet attribute
|
||||
|
@ -448,7 +448,9 @@ switch_status_t sofia_glue_ext_address_lookup(sofia_profile_t *profile, private_
|
||||
return status;
|
||||
}
|
||||
|
||||
if (!strncasecmp(sourceip, "stun:", 5)) {
|
||||
if (!strncasecmp(sourceip, "host:", 5)) {
|
||||
status = (*ip = switch_stun_host_lookup(sourceip + 5, pool)) ? SWITCH_STATUS_SUCCESS : SWITCH_STATUS_FALSE;
|
||||
} else if (!strncasecmp(sourceip, "stun:", 5)) {
|
||||
char *p;
|
||||
|
||||
if (!(profile->pflags & PFLAG_STUN_ENABLED)) {
|
||||
|
@ -428,6 +428,16 @@ SWITCH_DECLARE(uint8_t) switch_stun_packet_attribute_add_username(switch_stun_pa
|
||||
return 1;
|
||||
}
|
||||
|
||||
SWITCH_DECLARE(char *) switch_stun_host_lookup(const char *host, switch_memory_pool_t *pool)
|
||||
{
|
||||
switch_sockaddr_t *addr = NULL;
|
||||
char buf[30];
|
||||
|
||||
switch_sockaddr_info_get(&addr, host, SWITCH_UNSPEC, 0, 0, pool);
|
||||
return switch_core_strdup(pool, switch_str_nil(switch_get_addr(buf, sizeof(buf), addr)));
|
||||
|
||||
}
|
||||
|
||||
SWITCH_DECLARE(switch_status_t) switch_stun_lookup(char **ip,
|
||||
switch_port_t *port, char *stunip, switch_port_t stunport, char **err, switch_memory_pool_t *pool)
|
||||
{
|
||||
|
Loading…
x
Reference in New Issue
Block a user