mirror of
https://github.com/signalwire/freeswitch.git
synced 2025-05-31 02:43:32 +00:00
Wed Mar 4 12:31:05 CST 2009 Pekka Pessi <first.last@nokia.com>
* s2_dns_domain(): more flexible selection of transports by URI parameters git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@12419 d0543943-73ff-0310-b7d9-9358b9ac24b2
This commit is contained in:
parent
721612aa82
commit
980957e967
@ -1 +1 @@
|
|||||||
Wed Mar 4 14:36:40 CST 2009
|
Wed Mar 4 14:37:34 CST 2009
|
||||||
|
@ -97,14 +97,16 @@ void s2_dns_setup(su_root_t *root)
|
|||||||
}
|
}
|
||||||
|
|
||||||
/* Set filter function */
|
/* Set filter function */
|
||||||
void s2_dns_set_filter(int (*filter)(void *data, size_t len, void *userdata),
|
void
|
||||||
|
s2_dns_set_filter(int (*filter)(void *data, size_t len, void *userdata),
|
||||||
void *userdata)
|
void *userdata)
|
||||||
{
|
{
|
||||||
s2dns.filter = filter;
|
s2dns.filter = filter;
|
||||||
s2dns.userdata = userdata;
|
s2dns.userdata = userdata;
|
||||||
}
|
}
|
||||||
|
|
||||||
void s2_dns_teardown(void)
|
void
|
||||||
|
s2_dns_teardown(void)
|
||||||
{
|
{
|
||||||
struct s2_dns_response *r, *next;
|
struct s2_dns_response *r, *next;
|
||||||
su_root_deregister(s2dns.root, s2dns.reg), s2dns.reg = -1;
|
su_root_deregister(s2dns.root, s2dns.reg), s2dns.reg = -1;
|
||||||
@ -442,7 +444,7 @@ static void make_server(char *server, char const *prefix, char const *domain)
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/** Set up DNS domain */
|
/** Set up records for SIP server */
|
||||||
void s2_dns_domain(char const *domain, int use_naptr,
|
void s2_dns_domain(char const *domain, int use_naptr,
|
||||||
/* char *prefix, int priority, url_t const *uri, */
|
/* char *prefix, int priority, url_t const *uri, */
|
||||||
...)
|
...)
|
||||||
@ -471,7 +473,9 @@ void s2_dns_domain(char const *domain, int use_naptr,
|
|||||||
char *services = NULL;
|
char *services = NULL;
|
||||||
|
|
||||||
priority = va_arg(va, int);
|
priority = va_arg(va, int);
|
||||||
uri = va_arg(va, url_t *); assert(uri);
|
uri = va_arg(va, url_t *);
|
||||||
|
if (uri == NULL)
|
||||||
|
continue;
|
||||||
|
|
||||||
if (uri->url_type == url_sips) {
|
if (uri->url_type == url_sips) {
|
||||||
services = "SIPS+D2T";
|
services = "SIPS+D2T";
|
||||||
@ -499,7 +503,9 @@ void s2_dns_domain(char const *domain, int use_naptr,
|
|||||||
|
|
||||||
for (;(prefix = va_arg(va, char *));) {
|
for (;(prefix = va_arg(va, char *));) {
|
||||||
priority = va_arg(va, int);
|
priority = va_arg(va, int);
|
||||||
uri = va_arg(va, url_t *); assert(uri);
|
uri = va_arg(va, url_t *);
|
||||||
|
if (uri == NULL)
|
||||||
|
continue;
|
||||||
|
|
||||||
make_server(server, prefix, domain);
|
make_server(server, prefix, domain);
|
||||||
|
|
||||||
@ -518,7 +524,9 @@ void s2_dns_domain(char const *domain, int use_naptr,
|
|||||||
va_copy(va, va0);
|
va_copy(va, va0);
|
||||||
for (;(prefix = va_arg(va, char *));) {
|
for (;(prefix = va_arg(va, char *));) {
|
||||||
priority = va_arg(va, int);
|
priority = va_arg(va, int);
|
||||||
uri = va_arg(va, url_t *); assert(uri);
|
uri = va_arg(va, url_t *);
|
||||||
|
if (uri == NULL)
|
||||||
|
continue;
|
||||||
|
|
||||||
make_server(server, prefix, domain);
|
make_server(server, prefix, domain);
|
||||||
|
|
||||||
@ -539,7 +547,8 @@ void s2_dns_domain(char const *domain, int use_naptr,
|
|||||||
va_copy(va, va0);
|
va_copy(va, va0);
|
||||||
for (;(prefix = va_arg(va, char *));) {
|
for (;(prefix = va_arg(va, char *));) {
|
||||||
(void)va_arg(va, int);
|
(void)va_arg(va, int);
|
||||||
(void)va_arg(va, url_t *);
|
if (va_arg(va, url_t *) == NULL)
|
||||||
|
continue;
|
||||||
|
|
||||||
memset(m, 0, sizeof m);
|
memset(m, 0, sizeof m);
|
||||||
make_server(server, prefix, domain);
|
make_server(server, prefix, domain);
|
||||||
|
Loading…
x
Reference in New Issue
Block a user