diff options
author | rizzo <rizzo@f38db490-d61c-443f-a65b-d21fe96a405b> | 2007-12-20 09:55:05 +0000 |
---|---|---|
committer | rizzo <rizzo@f38db490-d61c-443f-a65b-d21fe96a405b> | 2007-12-20 09:55:05 +0000 |
commit | 0a8518b7c882ee0c0e954fac34fb488d42a9fc00 (patch) | |
tree | 0d6c0aea4374306de8f0b0397b8c7138771c6870 /utils/ael_main.c | |
parent | 832aa00d113c434ab218ae2321b88be1df51d074 (diff) |
modify http://svn.digium.com/view/asterisk?view=rev&rev=93603
so that paths and filename are writable by asterisk.c without
causing segfaults.
This involves defining the variables as const char *,
and having them point to as static, writable buffer
defined in asterisk.c
On passing, fix some errors in using these variables
in some files in utils/ , and in res/snmp/agent.c
which was redefining a variable without using paths.h
(not applicable to 1.4)
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@94168 f38db490-d61c-443f-a65b-d21fe96a405b
Diffstat (limited to 'utils/ael_main.c')
-rw-r--r-- | utils/ael_main.c | 13 |
1 files changed, 8 insertions, 5 deletions
diff --git a/utils/ael_main.c b/utils/ael_main.c index 68b5dc479..7f20365f3 100644 --- a/utils/ael_main.c +++ b/utils/ael_main.c @@ -82,8 +82,11 @@ struct namelist *globalvars_last; int conts=0, extens=0, priors=0; char last_exten[18000]; -const char ast_config_AST_CONFIG_DIR[PATH_MAX]; -const char ast_config_AST_VAR_DIR[PATH_MAX]; + +static char config_dir[PATH_MAX]; +static char var_dir[PATH_MAX]; +const char *ast_config_AST_CONFIG_DIR = config_dir; +const char *ast_config_AST_VAR_DIR = var_dir; void ast_cli_register_multiple(void); int ast_add_extension2(struct ast_context *con, @@ -514,14 +517,14 @@ int main(int argc, char **argv) } if( use_curr_dir ) { - strcpy((char *)ast_config_AST_CONFIG_DIR, "."); + strcpy(config_dir, "."); localized_use_local_dir(); } else { - strcpy((char *)ast_config_AST_CONFIG_DIR, "/etc/asterisk"); + strcpy(config_dir, "/etc/asterisk"); localized_use_conf_dir(); } - strcpy((char *)ast_config_AST_VAR_DIR, "/var/lib/asterisk"); + strcpy(var_dir, "/var/lib/asterisk"); if( dump_extensions ) { dumpfile = fopen("extensions.conf.aeldump","w"); |