Fix res_ari_asterisk load issue
authorDavid M. Lee <dlee@digium.com>
Mon, 5 Aug 2013 14:35:00 +0000 (14:35 +0000)
committerDavid M. Lee <dlee@digium.com>
Mon, 5 Aug 2013 14:35:00 +0000 (14:35 +0000)
The new res_ari_asterisk.so module presents several config options
from asterisk main. Unfortunately, they aren't exported, so the module
won't load on Linux.

This patch renames the variables, adding the ast_ prefix so they will
be exported.

Review: https://reviewboard.asterisk.org/r/2737

git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@396166 65c4cc65-6c06-0410-ace0-fbb531ad65f3

include/asterisk/options.h
main/asterisk.c
main/channel.c
main/cli.c
main/manager.c
main/pbx.c
res/ari/resource_asterisk.c
utils/extconf.c

index 73fa42b..2761415 100644 (file)
@@ -154,15 +154,15 @@ enum ast_compat_flags {
 extern struct ast_flags ast_compat;
 
 extern int option_verbose;
-extern int option_maxfiles;            /*!< Max number of open file handles (files, sockets) */
+extern int ast_option_maxfiles;                /*!< Max number of open file handles (files, sockets) */
 extern int option_debug;               /*!< Debugging */
-extern int option_maxcalls;            /*!< Maximum number of simultaneous channels */
+extern int ast_option_maxcalls;                /*!< Maximum number of simultaneous channels */
 extern unsigned int option_dtmfminduration;    /*!< Minimum duration of DTMF (channel.c) in ms */
-extern double option_maxload;
+extern double ast_option_maxload;
 #if defined(HAVE_SYSINFO)
 extern long option_minmemfree;         /*!< Minimum amount of free system memory - stop accepting calls if free memory falls below this watermark */
 #endif
-extern char defaultlanguage[];
+extern char ast_defaultlanguage[];
 
 extern struct timeval ast_startuptime;
 extern struct timeval ast_lastreloadtime;
index 9bd0d85..beed010 100644 (file)
@@ -319,9 +319,9 @@ struct ast_flags ast_compat = { 0 };
 
 int option_verbose;                            /*!< Verbosity level */
 int option_debug;                              /*!< Debug level */
-double option_maxload;                         /*!< Max load avg on system */
-int option_maxcalls;                           /*!< Max number of active calls */
-int option_maxfiles;                           /*!< Max number of open file handles (files, sockets) */
+double ast_option_maxload;                     /*!< Max load avg on system */
+int ast_option_maxcalls;                       /*!< Max number of active calls */
+int ast_option_maxfiles;                       /*!< Max number of open file handles (files, sockets) */
 unsigned int option_dtmfminduration;           /*!< Minimum duration of DTMF. */
 #if defined(HAVE_SYSINFO)
 long option_minmemfree;                                /*!< Minimum amount of free system memory - stop accepting calls if free memory falls below this watermark */
@@ -364,7 +364,7 @@ static char *remotehostname;
 
 struct console consoles[AST_MAX_CONNECTS];
 
-char defaultlanguage[MAX_LANGUAGE] = DEFAULT_LANGUAGE;
+char ast_defaultlanguage[MAX_LANGUAGE] = DEFAULT_LANGUAGE;
 
 static int ast_el_add_history(char *);
 static int ast_el_read_history(char *);
@@ -599,17 +599,17 @@ static char *handle_show_settings(struct ast_cli_entry *e, int cmd, struct ast_c
        ast_cli(a->fd, "-----------------\n");
        ast_cli(a->fd, "  Version:                     %s\n", ast_get_version());
        ast_cli(a->fd, "  Build Options:               %s\n", S_OR(AST_BUILDOPTS, "(none)"));
-       if (option_maxcalls)
-               ast_cli(a->fd, "  Maximum calls:               %d (Current %d)\n", option_maxcalls, ast_active_channels());
+       if (ast_option_maxcalls)
+               ast_cli(a->fd, "  Maximum calls:               %d (Current %d)\n", ast_option_maxcalls, ast_active_channels());
        else
                ast_cli(a->fd, "  Maximum calls:               Not set\n");
-       if (option_maxfiles)
-               ast_cli(a->fd, "  Maximum open file handles:   %d\n", option_maxfiles);
+       if (ast_option_maxfiles)
+               ast_cli(a->fd, "  Maximum open file handles:   %d\n", ast_option_maxfiles);
        else
                ast_cli(a->fd, "  Maximum open file handles:   Not set\n");
        ast_cli(a->fd, "  Verbosity:                   %d\n", option_verbose);
        ast_cli(a->fd, "  Debug level:                 %d\n", option_debug);
-       ast_cli(a->fd, "  Maximum load average:        %lf\n", option_maxload);
+       ast_cli(a->fd, "  Maximum load average:        %lf\n", ast_option_maxload);
 #if defined(HAVE_SYSINFO)
        ast_cli(a->fd, "  Minimum free memory:         %ld MB\n", option_minmemfree);
 #endif
@@ -624,7 +624,7 @@ static char *handle_show_settings(struct ast_cli_entry *e, int cmd, struct ast_c
        ast_cli(a->fd, "  System:                      %s/%s built by %s on %s %s\n", ast_build_os, ast_build_kernel, ast_build_user, ast_build_machine, ast_build_date);
        ast_cli(a->fd, "  System name:                 %s\n", ast_config_AST_SYSTEM_NAME);
        ast_cli(a->fd, "  Entity ID:                   %s\n", eid_str);
-       ast_cli(a->fd, "  Default language:            %s\n", defaultlanguage);
+       ast_cli(a->fd, "  Default language:            %s\n", ast_defaultlanguage);
        ast_cli(a->fd, "  Language prefix:             %s\n", ast_language_is_prefix ? "Enabled" : "Disabled");
        ast_cli(a->fd, "  User name and group:         %s/%s\n", ast_config_AST_RUN_USER, ast_config_AST_RUN_GROUP);
        ast_cli(a->fd, "  Executable includes:         %s\n", ast_test_flag(&ast_options, AST_OPT_FLAG_EXEC_INCLUDES) ? "Enabled" : "Disabled");
@@ -3402,22 +3402,22 @@ static void ast_readconfig(void)
                                option_dtmfminduration = AST_MIN_DTMF_DURATION;
                        }
                } else if (!strcasecmp(v->name, "maxcalls")) {
-                       if ((sscanf(v->value, "%30d", &option_maxcalls) != 1) || (option_maxcalls < 0)) {
-                               option_maxcalls = 0;
+                       if ((sscanf(v->value, "%30d", &ast_option_maxcalls) != 1) || (ast_option_maxcalls < 0)) {
+                               ast_option_maxcalls = 0;
                        }
                } else if (!strcasecmp(v->name, "maxload")) {
                        double test[1];
 
                        if (getloadavg(test, 1) == -1) {
                                ast_log(LOG_ERROR, "Cannot obtain load average on this system. 'maxload' option disabled.\n");
-                               option_maxload = 0.0;
-                       } else if ((sscanf(v->value, "%30lf", &option_maxload) != 1) || (option_maxload < 0.0)) {
-                               option_maxload = 0.0;
+                               ast_option_maxload = 0.0;
+                       } else if ((sscanf(v->value, "%30lf", &ast_option_maxload) != 1) || (ast_option_maxload < 0.0)) {
+                               ast_option_maxload = 0.0;
                        }
                /* Set the maximum amount of open files */
                } else if (!strcasecmp(v->name, "maxfiles")) {
-                       option_maxfiles = atoi(v->value);
-                       set_ulimit(option_maxfiles);
+                       ast_option_maxfiles = atoi(v->value);
+                       set_ulimit(ast_option_maxfiles);
                /* What user to run as */
                } else if (!strcasecmp(v->name, "runuser")) {
                        ast_copy_string(cfg_paths.run_user, v->value, sizeof(cfg_paths.run_user));
@@ -3440,7 +3440,7 @@ static void ast_readconfig(void)
                } else if (!strcasecmp(v->name, "languageprefix")) {
                        ast_language_is_prefix = ast_true(v->value);
                } else if (!strcasecmp(v->name, "defaultlanguage")) {
-                       ast_copy_string(defaultlanguage, v->value, MAX_LANGUAGE);
+                       ast_copy_string(ast_defaultlanguage, v->value, MAX_LANGUAGE);
                } else if (!strcasecmp(v->name, "lockmode")) {
                        if (!strcasecmp(v->value, "lockfile")) {
                                ast_set_lock_type(AST_LOCK_TYPE_LOCKFILE);
@@ -3725,13 +3725,13 @@ int main(int argc, char *argv[])
                        ast_set_flag(&ast_options, AST_OPT_FLAG_INIT_KEYS);
                        break;
                case 'L':
-                       if ((sscanf(optarg, "%30lf", &option_maxload) != 1) || (option_maxload < 0.0)) {
-                               option_maxload = 0.0;
+                       if ((sscanf(optarg, "%30lf", &ast_option_maxload) != 1) || (ast_option_maxload < 0.0)) {
+                               ast_option_maxload = 0.0;
                        }
                        break;
                case 'M':
-                       if ((sscanf(optarg, "%30d", &option_maxcalls) != 1) || (option_maxcalls < 0)) {
-                               option_maxcalls = 0;
+                       if ((sscanf(optarg, "%30d", &ast_option_maxcalls) != 1) || (ast_option_maxcalls < 0)) {
+                               ast_option_maxcalls = 0;
                        }
                        break;
                case 'm':
index 95d0a5d..f1d98de 100644 (file)
@@ -992,7 +992,7 @@ __ast_channel_alloc_ap(int needqueue, int state, const char *cid_num, const char
 
        AST_LIST_HEAD_INIT_NOLOCK(ast_channel_autochans(tmp));
 
-       ast_channel_language_set(tmp, defaultlanguage);
+       ast_channel_language_set(tmp, ast_defaultlanguage);
 
        ast_channel_tech_set(tmp, &null_tech);
 
index 6ca0737..dd9f3bc 100644 (file)
@@ -854,10 +854,10 @@ static char *handle_showcalls(struct ast_cli_entry *e, int cmd, struct ast_cli_a
        } else
                return CLI_SHOWUSAGE;
 
-       if (option_maxcalls) {
+       if (ast_option_maxcalls) {
                ast_cli(a->fd, "%d of %d max active call%s (%5.2f%% of capacity)\n",
-                  ast_active_calls(), option_maxcalls, ESS(ast_active_calls()),
-                  ((double)ast_active_calls() / (double)option_maxcalls) * 100.0);
+                  ast_active_calls(), ast_option_maxcalls, ESS(ast_active_calls()),
+                  ((double)ast_active_calls() / (double)ast_option_maxcalls) * 100.0);
        } else {
                ast_cli(a->fd, "%d active call%s\n", ast_active_calls(), ESS(ast_active_calls()));
        }
@@ -982,10 +982,10 @@ static char *handle_chanlist(struct ast_cli_entry *e, int cmd, struct ast_cli_ar
        if (!concise) {
                numchans = ast_active_channels();
                ast_cli(a->fd, "%d active channel%s\n", numchans, ESS(numchans));
-               if (option_maxcalls)
+               if (ast_option_maxcalls)
                        ast_cli(a->fd, "%d of %d max active call%s (%5.2f%% of capacity)\n",
-                               ast_active_calls(), option_maxcalls, ESS(ast_active_calls()),
-                               ((double)ast_active_calls() / (double)option_maxcalls) * 100.0);
+                               ast_active_calls(), ast_option_maxcalls, ESS(ast_active_calls()),
+                               ((double)ast_active_calls() / (double)ast_option_maxcalls) * 100.0);
                else
                        ast_cli(a->fd, "%d active call%s\n", ast_active_calls(), ESS(ast_active_calls()));
 
index 19f1e94..a17646f 100644 (file)
@@ -5212,11 +5212,11 @@ static int action_coresettings(struct mansession *s, const struct message *m)
                        AMI_VERSION,
                        ast_get_version(),
                        ast_config_AST_SYSTEM_NAME,
-                       option_maxcalls,
-                       option_maxload,
+                       ast_option_maxcalls,
+                       ast_option_maxload,
                        ast_config_AST_RUN_USER,
                        ast_config_AST_RUN_GROUP,
-                       option_maxfiles,
+                       ast_option_maxfiles,
                        AST_CLI_YESNO(ast_realtime_enabled()),
                        AST_CLI_YESNO(ast_cdr_is_enabled()),
                        AST_CLI_YESNO(check_webmanager_enabled())
index 0f0f511..9ef2f1e 100644 (file)
@@ -6317,16 +6317,16 @@ static int increase_call_count(const struct ast_channel *c)
 #endif
 
        ast_mutex_lock(&maxcalllock);
-       if (option_maxcalls) {
-               if (countcalls >= option_maxcalls) {
-                       ast_log(LOG_WARNING, "Maximum call limit of %d calls exceeded by '%s'!\n", option_maxcalls, ast_channel_name(c));
+       if (ast_option_maxcalls) {
+               if (countcalls >= ast_option_maxcalls) {
+                       ast_log(LOG_WARNING, "Maximum call limit of %d calls exceeded by '%s'!\n", ast_option_maxcalls, ast_channel_name(c));
                        failed = -1;
                }
        }
-       if (option_maxload) {
+       if (ast_option_maxload) {
                getloadavg(&curloadavg, 1);
-               if (curloadavg >= option_maxload) {
-                       ast_log(LOG_WARNING, "Maximum loadavg limit of %f load exceeded by '%s' (currently %f)!\n", option_maxload, ast_channel_name(c), curloadavg);
+               if (curloadavg >= ast_option_maxload) {
+                       ast_log(LOG_WARNING, "Maximum loadavg limit of %f load exceeded by '%s' (currently %f)!\n", ast_option_maxload, ast_channel_name(c), curloadavg);
                        failed = -1;
                }
        }
index 88f8d35..6f2eb80 100644 (file)
@@ -99,7 +99,7 @@ void ast_ari_get_asterisk_info(struct ast_variable *headers,
                        " s: { s: s, s: s } }",
 
                        "name", ast_config_AST_SYSTEM_NAME,
-                       "default_language", defaultlanguage,
+                       "default_language", ast_defaultlanguage,
 
                        "setid",
                        "user", ast_config_AST_RUN_USER,
@@ -107,19 +107,19 @@ void ast_ari_get_asterisk_info(struct ast_variable *headers,
 
                res |= ast_json_object_set(json, "config", config);
 
-               if (option_maxcalls) {
+               if (ast_option_maxcalls) {
                        res |= ast_json_object_set(config, "max_channels",
-                               ast_json_integer_create(option_maxcalls));
+                               ast_json_integer_create(ast_option_maxcalls));
                }
 
-               if (option_maxfiles) {
+               if (ast_option_maxfiles) {
                        res |= ast_json_object_set(config, "max_open_files",
-                               ast_json_integer_create(option_maxfiles));
+                               ast_json_integer_create(ast_option_maxfiles));
                }
 
-               if (option_maxload) {
+               if (ast_option_maxload) {
                        res |= ast_json_object_set(config, "max_load",
-                               ast_json_real_create(option_maxload));
+                               ast_json_real_create(ast_option_maxload));
                }
        }
 
index c679c4c..be32163 100644 (file)
@@ -1894,9 +1894,9 @@ struct ast_flags ast_options = { AST_DEFAULT_OPTIONS };
 
 extern int option_verbose;
 extern int option_debug;               /*!< Debugging */
-extern int option_maxcalls;            /*!< Maximum number of simultaneous channels */
-extern double option_maxload;
-extern char defaultlanguage[];
+extern int ast_option_maxcalls;                /*!< Maximum number of simultaneous channels */
+extern double ast_option_maxload;
+extern char ast_defaultlanguage[];
 
 extern pid_t ast_mainpid;