aboutsummaryrefslogtreecommitdiffstats
path: root/loader.c
diff options
context:
space:
mode:
authormarkster <markster@f38db490-d61c-443f-a65b-d21fe96a405b>2004-09-02 20:45:24 +0000
committermarkster <markster@f38db490-d61c-443f-a65b-d21fe96a405b>2004-09-02 20:45:24 +0000
commita0c4cf53bd148f54d8d97719b4aee56b1dd3afe9 (patch)
treeb0a3695c1cd90f04425d73c74960c0b43edff3bc /loader.c
parent25166a4ab6e2609e01ac28282c3a538d1cdab1fa (diff)
Don't try to look offhook with channel banks & Loopstart (bug #2362), also make individual modules reloadable...
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@3714 f38db490-d61c-443f-a65b-d21fe96a405b
Diffstat (limited to 'loader.c')
-rwxr-xr-xloader.c16
1 files changed, 9 insertions, 7 deletions
diff --git a/loader.c b/loader.c
index c6a0ca24d..d09514c81 100755
--- a/loader.c
+++ b/loader.c
@@ -3,9 +3,9 @@
*
* Module Loader
*
- * Copyright (C) 1999, Mark Spencer
+ * Copyright (C) 1999-2004, Digium, Inc.
*
- * Mark Spencer <markster@linux-support.net>
+ * Mark Spencer <markster@digium.com>
*
* This program is free software, distributed under the terms of
* the GNU General Public License
@@ -147,7 +147,7 @@ int ast_unload_resource(char *resource_name, int force)
return res;
}
-void ast_module_reload(void)
+void ast_module_reload(const char *name)
{
struct module *m;
@@ -166,10 +166,12 @@ void ast_module_reload(void)
ast_mutex_lock(&modlock);
m = module_list;
while(m) {
- if (m->reload) {
- if (option_verbose > 2)
- ast_verbose(VERBOSE_PREFIX_3 "Reloading module '%s' (%s)\n", m->resource, m->description());
- m->reload();
+ if (!name || !strcasecmp(name, m->resource)) {
+ if (m->reload) {
+ if (option_verbose > 2)
+ ast_verbose(VERBOSE_PREFIX_3 "Reloading module '%s' (%s)\n", m->resource, m->description());
+ m->reload();
+ }
}
m = m->next;
}