aboutsummaryrefslogtreecommitdiffstats
path: root/channels/misdn_config.c
diff options
context:
space:
mode:
authorcrichter <crichter@f38db490-d61c-443f-a65b-d21fe96a405b>2007-03-13 11:58:16 +0000
committercrichter <crichter@f38db490-d61c-443f-a65b-d21fe96a405b>2007-03-13 11:58:16 +0000
commitf5e97674852e06b02f82995555854492bc4fc733 (patch)
tree543bf302da33498928f7a842df4c205f47832872 /channels/misdn_config.c
parent4feece2ecc77beceaa5b6e48cee7d20814a7be2c (diff)
added method standard_dec for dialing out on groups, to avoid conflicts, which caused issues with some ISDN providers
git-svn-id: http://svn.digium.com/svn/asterisk/branches/1.2@58849 f38db490-d61c-443f-a65b-d21fe96a405b
Diffstat (limited to 'channels/misdn_config.c')
-rw-r--r--channels/misdn_config.c8
1 files changed, 7 insertions, 1 deletions
diff --git a/channels/misdn_config.c b/channels/misdn_config.c
index e976be8a1..966006e80 100644
--- a/channels/misdn_config.c
+++ b/channels/misdn_config.c
@@ -349,9 +349,12 @@ int misdn_cfg_is_port_valid (int port)
int misdn_cfg_is_group_method (char *group, enum misdn_cfg_method meth)
{
int i, re = 0;
- char *method = NULL;
+ char *method ;
misdn_cfg_lock();
+
+ method = port_cfg[0][map[MISDN_CFG_METHOD]].str;
+
for (i = 1; i <= max_ports; i++) {
if (port_cfg[i] && port_cfg[i][map[MISDN_CFG_GROUPNAME]].str) {
if (!strcasecmp(port_cfg[i][map[MISDN_CFG_GROUPNAME]].str, group))
@@ -359,12 +362,15 @@ int misdn_cfg_is_group_method (char *group, enum misdn_cfg_method meth)
port_cfg[i][map[MISDN_CFG_METHOD]].str : port_cfg[0][map[MISDN_CFG_METHOD]].str);
}
}
+
if (method) {
switch (meth) {
case METHOD_STANDARD: re = !strcasecmp(method, "standard");
break;
case METHOD_ROUND_ROBIN: re = !strcasecmp(method, "round_robin");
break;
+ case METHOD_STANDARD_DEC: re = !strcasecmp(method, "standard_dec");
+ break;
}
}
misdn_cfg_unlock();