diff options
author | markster <markster@f38db490-d61c-443f-a65b-d21fe96a405b> | 2001-04-17 16:49:37 +0000 |
---|---|---|
committer | markster <markster@f38db490-d61c-443f-a65b-d21fe96a405b> | 2001-04-17 16:49:37 +0000 |
commit | 90d033de5d4143db41bf62fd6af7e3c593b0121a (patch) | |
tree | 22858a326f415fa2d890d69ae3c4df1c9229b137 /pbx | |
parent | f7102843df416c1875367054596cc120a7a77aab (diff) |
Version 0.1.8 from FTP
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@290 f38db490-d61c-443f-a65b-d21fe96a405b
Diffstat (limited to 'pbx')
-rwxr-xr-x | pbx/pbx_config.c | 24 |
1 files changed, 19 insertions, 5 deletions
diff --git a/pbx/pbx_config.c b/pbx/pbx_config.c index 9bf224a66..24b0bbed2 100755 --- a/pbx/pbx_config.c +++ b/pbx/pbx_config.c @@ -23,15 +23,17 @@ static char *dtext = "Text Extension Configuration"; static char *config = "extensions.conf"; +static char *registrar = "pbx_config"; static int static_config = 0; int unload_module(void) { + ast_context_destroy(NULL, registrar); return 0; } -int load_module(void) +static int pbx_load_module(void) { struct ast_config *cfg; struct ast_variable *v; @@ -49,7 +51,7 @@ int load_module(void) cxt = ast_category_browse(cfg, cxt); continue; } - if ((con=ast_context_create(cxt))) { + if ((con=ast_context_create(cxt, registrar))) { v = ast_variable_browse(cfg, cxt); while(v) { if (!strcasecmp(v->name, "exten")) { @@ -66,12 +68,12 @@ int load_module(void) 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 (ast_add_extension2(con, 0, ext, atoi(pri), appl, strdup(data), free, registrar)) { + ast_log(LOG_WARNING, "Unable to register extension at line %d\n", v->lineno); } free(tc); } else if(!strcasecmp(v->name, "include")) { - if (ast_context_add_include2(con, v->value)) + if (ast_context_add_include2(con, v->value, registrar)) ast_log(LOG_WARNING, "Unable to include context '%s' in context '%s'\n", v->value, cxt); } v = v->next; @@ -84,6 +86,18 @@ int load_module(void) return 0; } +int load_module(void) +{ + return pbx_load_module(); +} + +int reload(void) +{ + ast_context_destroy(NULL, registrar); + load_module(); + return 0; +} + int usecount(void) { return 0; |