aboutsummaryrefslogtreecommitdiffstats
path: root/channels/misdn
diff options
context:
space:
mode:
authorrmudgett <rmudgett@f38db490-d61c-443f-a65b-d21fe96a405b>2009-03-30 20:38:11 +0000
committerrmudgett <rmudgett@f38db490-d61c-443f-a65b-d21fe96a405b>2009-03-30 20:38:11 +0000
commit4fcf91e569ffba565a22f134946ca35c3bb1b246 (patch)
tree915111bd3934072ecad1a3c46695946b46c3fe4d /channels/misdn
parent283c56edab882544743258306812a372f651993c (diff)
Make chan_misdn BRI TE side normally defer channel selection to the NT side.
Channel allocation collisions are not handled by chan_misdn very well. This patch simply avoids the problem for BRI only. For PRI, allocation collisions are still possible but less likely since there are simply more channels available and each end could use a different allocation strategy. misdn.conf options available: te_choose_channel - Use to force the TE side to allocate channels. method - Specify the channel allocation strategy. (closes issue #13488) Reported by: Christian_Pinedo Patches: isdn_lib.patch.txt uploaded by crich Tested by: crich, siepkes, festr git-svn-id: http://svn.digium.com/svn/asterisk/branches/1.4@185120 f38db490-d61c-443f-a65b-d21fe96a405b
Diffstat (limited to 'channels/misdn')
-rw-r--r--channels/misdn/isdn_lib.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/channels/misdn/isdn_lib.c b/channels/misdn/isdn_lib.c
index b21c794e7..0e0930bbf 100644
--- a/channels/misdn/isdn_lib.c
+++ b/channels/misdn/isdn_lib.c
@@ -915,7 +915,7 @@ static int create_process(int midev, struct misdn_bchannel *bc)
bc->l3_id = l3_id;
cb_log(3, stack->port, " --> new_l3id %x\n", l3_id);
} else {
- if (stack->ptp || bc->te_choose_channel) {
+ if ((stack->pri && stack->ptp) || bc->te_choose_channel) {
/* we know exactly which channels are in use */
if (find_free_chan_in_stack(stack, bc, bc->channel_preselected ? bc->channel : 0, bc->dec) < 0) {
return -1;