Skip to content

Commit caaa572

Browse files
committed
fold over use-server to be alias for nameserver param and support back compat with legacy configs
1 parent ea83534 commit caaa572

File tree

1 file changed

+32
-32
lines changed

1 file changed

+32
-32
lines changed

src/mod/applications/mod_enum/mod_enum.c

Lines changed: 32 additions & 32 deletions
Original file line numberDiff line numberDiff line change
@@ -67,7 +67,6 @@ static switch_event_node_t *NODE = NULL;
6767

6868
static struct {
6969
char *root;
70-
char *server;
7170
char *isn_root;
7271
enum_route_t *route_order;
7372
switch_memory_pool_t *pool;
@@ -79,7 +78,6 @@ static struct {
7978
} globals;
8079

8180
SWITCH_DECLARE_GLOBAL_STRING_FUNC(set_global_root, globals.root);
82-
SWITCH_DECLARE_GLOBAL_STRING_FUNC(set_global_server, globals.server);
8381
SWITCH_DECLARE_GLOBAL_STRING_FUNC(set_global_isn_root, globals.isn_root);
8482

8583
static void add_route(char *service, char *regex, char *replace)
@@ -126,8 +124,6 @@ static switch_status_t load_config(void)
126124
const char *val = switch_xml_attr_soft(param, "value");
127125
if (!strcasecmp(var, "default-root")) {
128126
set_global_root(val);
129-
} else if (!strcasecmp(var, "use-server")) {
130-
set_global_server(val);
131127
} else if (!strcasecmp(var, "auto-reload")) {
132128
globals.auto_reload = switch_true(val);
133129
} else if (!strcasecmp(var, "query-timeout")) {
@@ -140,7 +136,7 @@ static switch_status_t load_config(void)
140136
globals.random = switch_true(val);
141137
} else if (!strcasecmp(var, "default-isn-root")) {
142138
set_global_isn_root(val);
143-
} else if (!strcasecmp(var, "nameserver")) {
139+
} else if (!strcasecmp(var, "nameserver") || !strcasecmp(var, "use-server")) {
144140
if ( inameserver < ENUM_MAXNAMESERVERS ) {
145141
globals.nameserver[inameserver] = (char *) val;
146142
inameserver++;
@@ -560,6 +556,7 @@ static switch_status_t enum_lookup(char *root, char *in, enum_record_t **results
560556
int argc;
561557
int x = 0;
562558
char *enum_nameserver_dup;
559+
const char *enum_nameserver = NULL;
563560

564561
*results = NULL;
565562

@@ -577,41 +574,45 @@ static switch_status_t enum_lookup(char *root, char *in, enum_record_t **results
577574

578575
/* Empty the server array */
579576
for(inameserver=0; inameserver<ENUM_MAXNAMESERVERS; inameserver++) {
580-
server[inameserver] = NULL;
577+
server[inameserver] = NULL;
581578
}
582579

583-
if (!(server[0] = switch_core_get_variable("enum-server"))) {
584-
server[0] = globals.server;
580+
inameserver = 0;
581+
582+
/* check for enum_nameserver channel var */
583+
584+
if (channel) {
585+
enum_nameserver = switch_channel_get_variable(channel, "enum_nameserver");
585586
}
586587

587-
/* use config param "nameserver" ( can be up to ENUM_MAXNAMESERVERS ) */
588-
for(inameserver=0; inameserver<ENUM_MAXNAMESERVERS; inameserver++) {
589-
server[inameserver] = NULL;
590-
if ( globals.nameserver[inameserver] != NULL )
591-
{
592-
server[inameserver] = globals.nameserver[inameserver];
593-
};
588+
if (zstr(enum_nameserver)) {
589+
enum_nameserver = switch_core_get_variable("enum-server");
594590
}
595591

596-
/* check for enum_nameserver channel var */
597-
if ( channel != NULL ) {
598-
const char *enum_nameserver = switch_channel_get_variable(channel, "enum_nameserver");
599-
if (!zstr(enum_nameserver))
600-
{
601-
/* Blank the server array */
602-
for(inameserver=0; inameserver<ENUM_MAXNAMESERVERS; inameserver++) {
603-
server[inameserver] = NULL;
604-
}
592+
if (!zstr(enum_nameserver)) {
593+
/* Blank the server array */
594+
for(inameserver=0; inameserver<ENUM_MAXNAMESERVERS; inameserver++) {
595+
server[inameserver] = NULL;
596+
}
605597

606-
enum_nameserver_dup = switch_core_session_strdup(session, enum_nameserver);
607-
argc = switch_separate_string(enum_nameserver_dup, ',', argv, (sizeof(argv) / sizeof(argv[0])));
598+
enum_nameserver_dup = switch_core_session_strdup(session, enum_nameserver);
599+
argc = switch_separate_string(enum_nameserver_dup, ',', argv, (sizeof(argv) / sizeof(argv[0])));
600+
601+
inameserver = 0;
602+
for (x = 0; x < argc; x++) {
603+
server[inameserver] = argv[x];
604+
inameserver++;
605+
}
606+
switch_log_printf(SWITCH_CHANNEL_LOG, SWITCH_LOG_DEBUG, "Enum nameserver override : %s\n", enum_nameserver);
607+
}
608608

609-
inameserver = 0;
610-
for (x = 0; x < argc; x++) {
611-
server[inameserver] = argv[x];
612-
inameserver++;
609+
if (!inameserver) {
610+
/* use config param "nameserver" ( can be up to ENUM_MAXNAMESERVERS ) */
611+
for(inameserver = 0; inameserver<ENUM_MAXNAMESERVERS; inameserver++) {
612+
server[inameserver] = NULL;
613+
if ( globals.nameserver[inameserver] != NULL ) {
614+
server[inameserver] = globals.nameserver[inameserver];
613615
}
614-
switch_log_printf(SWITCH_CHANNEL_LOG, SWITCH_LOG_DEBUG, "Enum nameserver override : %s\n", enum_nameserver);
615616
}
616617
}
617618

@@ -912,7 +913,6 @@ SWITCH_MODULE_SHUTDOWN_FUNCTION(mod_enum_shutdown)
912913
}
913914

914915
switch_safe_free(globals.root);
915-
switch_safe_free(globals.server);
916916
switch_safe_free(globals.isn_root);
917917

918918
return SWITCH_STATUS_UNLOAD;

0 commit comments

Comments
 (0)