diff options
author | crichter <crichter@f38db490-d61c-443f-a65b-d21fe96a405b> | 2007-03-13 11:58:16 +0000 |
---|---|---|
committer | crichter <crichter@f38db490-d61c-443f-a65b-d21fe96a405b> | 2007-03-13 11:58:16 +0000 |
commit | f5e97674852e06b02f82995555854492bc4fc733 (patch) | |
tree | 543bf302da33498928f7a842df4c205f47832872 /channels/misdn_config.c | |
parent | 4feece2ecc77beceaa5b6e48cee7d20814a7be2c (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.c | 8 |
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(); |