SWITCH_DECLARE(const char *) switch_core_get_hostname(void);
SWITCH_DECLARE(const char *) switch_core_get_switchname(void);
+SWITCH_DECLARE(char *) switch_core_get_domain(switch_bool_t dup);
+
/*!
\brief Add a global variable to the core
\param varname the name of the variable
}
if (zstr(domain)) {
- dup_domain = switch_core_get_variable_dup("domain");
+ dup_domain = switch_core_get_domain(SWITCH_TRUE);
domain = dup_domain;
}
if (domain) {
*domain++ = '\0';
} else {
- if ((dup_domain = switch_core_get_variable_dup("domain"))) {
+ if ((dup_domain = switch_core_get_domain(SWITCH_TRUE))) {
domain = dup_domain;
}
}
if ((domain = strchr(user, '@'))) {
*domain++ = '\0';
} else {
- if ((dup_domain = switch_core_get_variable_dup("domain"))) {
+ if ((dup_domain = switch_core_get_domain(SWITCH_TRUE))) {
domain = dup_domain;
}
}
if ((domain = strchr(user, '@'))) {
*domain++ = '\0';
} else {
- if ((dup_domain = switch_core_get_variable_dup("domain"))) {
+ if ((dup_domain = switch_core_get_domain(SWITCH_TRUE))) {
domain = dup_domain;
} else {
domain = "cluecon.com";
if (!event || !(domain = switch_event_get_header(event, "conference-domain"))) {
if (!(domain = conference->domain)) {
- dup_domain = switch_core_get_variable_dup("domain");
+ dup_domain = switch_core_get_domain(SWITCH_TRUE);
if (!(domain = dup_domain)) {
domain = "cluecon.com";
}
}
if (!(domain = conference->domain)) {
- dup_domain = switch_core_get_variable_dup("domain");
+ dup_domain = switch_core_get_domain(SWITCH_TRUE);
if (!(domain = dup_domain)) {
domain = "cluecon.com";
}
}
if (!(domain = conference->domain)) {
- dup_domain = switch_core_get_variable_dup("domain");
+ dup_domain = switch_core_get_domain(SWITCH_TRUE);
if (!(domain = dup_domain)) {
domain = "cluecon.com";
}
}
if (zstr(domain_name)) {
- dup_domain_name = switch_core_get_variable_dup("domain");
+ dup_domain_name = switch_core_get_domain(SWITCH_TRUE);
domain_name = dup_domain_name;
}
if ((domain_name = strchr(key_name, '@'))) {
*domain_name++ = '\0';
} else {
- dup_domain_name = switch_core_get_variable_dup("domain");
+ dup_domain_name = switch_core_get_domain(SWITCH_TRUE);
domain_name = dup_domain_name;
}
char *dup_key = NULL;
if (!strchr(key, '@')) {
- dup_key = switch_mprintf("%s@%s", key, switch_core_get_variable("domain"));
+ dup_key = switch_mprintf("%s@%s", key, switch_core_get_domain(SWITCH_FALSE));
key = dup_key;
}
char *dup_key = NULL;
if (!strchr(key, '@')) {
- dup_key = switch_mprintf("%s@%s", key, switch_core_get_variable("domain"));
+ dup_key = switch_mprintf("%s@%s", key, switch_core_get_domain(SWITCH_FALSE));
key = dup_key;
}
if ((domain = strchr(group, '@'))) {
*domain++ = '\0';
} else {
- domain = switch_core_get_variable_dup("domain");
+ domain = switch_core_get_domain(SWITCH_TRUE);
dup_domain = domain;
}
if ((domain = strchr(user, '@'))) {
*domain++ = '\0';
} else {
- domain = switch_core_get_variable_dup("domain");
+ domain = switch_core_get_domain(SWITCH_TRUE);
dup_domain = domain;
}
node->name = switch_core_strdup(node->pool, name);
if (!strchr(name, '@')) {
- domain_name = switch_core_get_variable_dup("domain");
+ domain_name = switch_core_get_domain(SWITCH_TRUE);
node->domain_name = switch_core_strdup(node->pool, domain_name);
}
if (zstr(profile)) profile = "default";
if (zstr(domain)) {
- if ((ddom = switch_core_get_variable_dup("domain"))) {
+ if ((ddom = switch_core_get_domain(SWITCH_TRUE))) {
domain = ddom;
}
}
}
if (zstr(domain_name)) {
- dup_domain_name = switch_core_get_variable_dup("domain");
+ dup_domain_name = switch_core_get_domain(SWITCH_TRUE);
domain_name = dup_domain_name;
}
}
if (zstr(domain)) {
- if ((dup_domain = switch_core_get_variable_dup("domain"))) {
+ if ((dup_domain = switch_core_get_domain(SWITCH_TRUE))) {
domain = dup_domain;
}
profile_name = domain;
}
if (zstr(domain)) {
- ddomain = switch_core_get_variable_dup("domain");
+ ddomain = switch_core_get_domain(SWITCH_TRUE);
domain = ddomain;
}
}
if (zstr(domain)) {
- dup_domain = switch_core_get_variable_dup("domain");
+ dup_domain = switch_core_get_domain(SWITCH_TRUE);
domain = dup_domain;
}
}
if (zstr(domain)) {
- dup_domain = switch_core_get_variable_dup("domain");
+ dup_domain = switch_core_get_domain(SWITCH_TRUE);
domain = dup_domain;
}
sofia_profile_t *profile = NULL;
if (zstr(host)) {
- dup_domain = switch_core_get_variable_dup("domain");
+ dup_domain = switch_core_get_domain(SWITCH_TRUE);
host = dup_domain;
}
if (globals.default_domain) {
domain_name = globals.default_domain;
} else {
- if ((dup_domain = switch_core_get_variable_dup("domain"))) {
+ if ((dup_domain = switch_core_get_domain(SWITCH_TRUE))) {
domain_name = dup_domain;
}
}
return runtime.hostname;
}
+SWITCH_DECLARE(char *) switch_core_get_domain(switch_bool_t dup)
+{
+ char *domain;
+ const char *var;
+
+ switch_thread_rwlock_rdlock(runtime.global_var_rwlock);
+ if (!(var = switch_core_get_variable("domain"))) {
+ var = "freeswitch.local";
+ }
+ if (dup) {
+ domain = strdup(var);
+ } else {
+ domain = (char *) var;
+ }
+ switch_thread_rwlock_unlock(runtime.global_var_rwlock);
+
+ return domain;
+}
SWITCH_DECLARE(switch_status_t) switch_core_get_variables(switch_event_t **event)
{