[asterisk-commits] jpeeler: branch jpeeler/chan_dahdi r121957 - /team/jpeeler/chan_dahdi/main/
SVN commits to the Asterisk project
asterisk-commits at lists.digium.com
Wed Jun 11 16:58:38 CDT 2008
Author: jpeeler
Date: Wed Jun 11 16:58:37 2008
New Revision: 121957
URL: http://svn.digium.com/view/asterisk?view=rev&rev=121957
Log:
add backwards compatability for old app names in modules.conf
Modified:
team/jpeeler/chan_dahdi/main/loader.c
Modified: team/jpeeler/chan_dahdi/main/loader.c
URL: http://svn.digium.com/view/asterisk/team/jpeeler/chan_dahdi/main/loader.c?view=diff&rev=121957&r1=121956&r2=121957
==============================================================================
--- team/jpeeler/chan_dahdi/main/loader.c (original)
+++ team/jpeeler/chan_dahdi/main/loader.c Wed Jun 11 16:58:37 2008
@@ -758,6 +758,23 @@
return order;
}
+
+static int translate_module_name(const char *oldname, char *newname)
+{
+ if (!strcasecmp(oldname, "app_zapbarge.so"))
+ ast_copy_string(newname, "app_dahdibarge.so", 18);
+ else if(!strcasecmp(oldname, "app_zapras.so"))
+ ast_copy_string(newname, "app_dahdiras.so", 16);
+ else if(!strcasecmp(oldname, "app_zapscan.so"))
+ ast_copy_string(newname, "app_dahdiscan.so", 17);
+ else if(!strcasecmp(oldname, "codec_zap.so"))
+ ast_copy_string(newname, "codec_dahdi.so", 16);
+ else
+ return -1; /* no use for newname, oldname is fine */
+
+ return 0;
+}
+
int load_modules(unsigned int preload_only)
{
struct ast_config *cfg;
@@ -769,6 +786,9 @@
int res = 0;
struct ast_flags config_flags = { 0 };
int modulecount = 0;
+
+ int translate_status;
+ char newname[18]; /* although this would normally be 80, max length in translate_module_name is 18 */
#ifdef LOADABLE_MODULES
struct dirent *dirent;
DIR *dir;
@@ -796,8 +816,12 @@
/* first, find all the modules we have been explicitly requested to load */
for (v = ast_variable_browse(cfg, "modules"); v; v = v->next) {
- if (!strcasecmp(v->name, preload_only ? "preload" : "load"))
- add_to_load_order(v->value, &load_order);
+ if (!strcasecmp(v->name, preload_only ? "preload" : "load")) {
+ translate_status = translate_module_name(v->value, newname);
+ if (!translate_status)
+ ast_log(LOG_WARNING, "Use of old module name %s is deprecated, please use %s instead.\n", v->value, newname);
+ add_to_load_order(translate_status ? v->value : newname, &load_order);
+ }
}
/* check if 'autoload' is on */
@@ -853,7 +877,10 @@
continue;
AST_LIST_TRAVERSE_SAFE_BEGIN(&load_order, order, entry) {
- if (!resource_name_match(order->resource, v->value)) {
+ translate_status = translate_module_name(v->value, newname);
+ if (!resource_name_match(order->resource, translate_status ? v->value : newname)) {
+ if (!translate_status)
+ ast_log(LOG_WARNING, "Use of old module name %s is deprecated, please use %s instead.\n", v->value, newname);
AST_LIST_REMOVE_CURRENT(entry);
ast_free(order->resource);
ast_free(order);
More information about the asterisk-commits
mailing list