From 5d75c058777f6dd5e425d4f6786847a524b09be0 Mon Sep 17 00:00:00 2001 From: Mark Spencer Date: Fri, 30 Mar 2001 16:31:28 +0000 Subject: Version 0.1.7 from FTP git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@258 65c4cc65-6c06-0410-ace0-fbb531ad65f3 --- pbx/pbx_config.c | 43 ++++++++++++++++++++++++++----------------- 1 file changed, 26 insertions(+), 17 deletions(-) (limited to 'pbx') diff --git a/pbx/pbx_config.c b/pbx/pbx_config.c index 1468d8331..9bf224a66 100755 --- a/pbx/pbx_config.c +++ b/pbx/pbx_config.c @@ -37,7 +37,6 @@ int load_module(void) struct ast_variable *v; char *cxt, *ext, *pri, *appl, *data, *tc; struct ast_context *con; - cfg = ast_load(config); if (cfg) { @@ -53,24 +52,29 @@ int load_module(void) if ((con=ast_context_create(cxt))) { v = ast_variable_browse(cfg, cxt); while(v) { - tc = strdup(v->value); - ext = strtok(tc, ","); - if (!ext) - ext=""; - pri = strtok(NULL, ","); - if (!pri) - pri=""; - appl = strtok(NULL, ","); - if (!appl) - appl=""; - data = strtok(NULL, ","); - if (!data) - data=""; - if (ast_add_extension2(con, 0, ext, atoi(pri), appl, strdup(data), free)) { - ast_log(LOG_WARNING, "Unable to register extension\n"); + if (!strcasecmp(v->name, "exten")) { + tc = strdup(v->value); + ext = strtok(tc, ","); + if (!ext) + ext=""; + pri = strtok(NULL, ","); + if (!pri) + pri=""; + appl = strtok(NULL, ","); + if (!appl) + appl=""; + data = strtok(NULL, ","); + if (!data) + data=""; + if (ast_add_extension2(con, 0, ext, atoi(pri), appl, strdup(data), free)) { + ast_log(LOG_WARNING, "Unable to register extension\n"); + } + free(tc); + } else if(!strcasecmp(v->name, "include")) { + if (ast_context_add_include2(con, v->value)) + ast_log(LOG_WARNING, "Unable to include context '%s' in context '%s'\n", v->value, cxt); } v = v->next; - free(tc); } } cxt = ast_category_browse(cfg, cxt); @@ -89,3 +93,8 @@ char *description(void) { return dtext; } + +char *key(void) +{ + return ASTERISK_GPL_KEY; +} -- cgit v1.2.3