[asterisk-commits] crichter: branch 1.4 r132826 - /branches/1.4/channels/misdn/isdn_lib.c
SVN commits to the Asterisk project
asterisk-commits at lists.digium.com
Wed Jul 23 06:37:51 CDT 2008
Author: crichter
Date: Wed Jul 23 06:37:50 2008
New Revision: 132826
URL: http://svn.digium.com/view/asterisk?view=rev&rev=132826
Log:
another Fix because of r119585, this commit has broken high frequented BRI Ports, there was a possibility that a channel, that was marked as in_use would be reused later, the corresponding port could got stuck then. So it is recommended to upgrade for chan_misdn users.
Modified:
branches/1.4/channels/misdn/isdn_lib.c
Modified: branches/1.4/channels/misdn/isdn_lib.c
URL: http://svn.digium.com/view/asterisk/branches/1.4/channels/misdn/isdn_lib.c?view=diff&rev=132826&r1=132825&r2=132826
==============================================================================
--- branches/1.4/channels/misdn/isdn_lib.c (original)
+++ branches/1.4/channels/misdn/isdn_lib.c Wed Jul 23 06:37:50 2008
@@ -2625,6 +2625,19 @@
make_dummy(&dummybc, stack->port, MISDN_ID_GLOBAL, stack->nt, 0);
bc=&dummybc;
}
+
+ if (!bc && (frm->prim==(CC_SETUP|INDICATION)) ) {
+ make_dummy(&dummybc, stack->port, MISDN_ID_GLOBAL, stack->nt, 0);
+ dummybc.port=stack->port;
+ dummybc.l3_id=frm->dinfo;
+ bc=&dummybc;
+
+ misdn_lib_send_event(bc,EVENT_RELEASE_COMPLETE);
+
+ free_msg(msg);
+ return 1;
+ }
+
handle_frm_bc:
if (bc ) {
@@ -3110,7 +3123,7 @@
struct timeval now;
gettimeofday(&now, NULL);
if (!bc->in_use) {
- if ( bc->last_used.tv_sec == now.tv_sec ) {
+ if (misdn_lib_port_is_pri(bc->port) && bc->last_used.tv_sec == now.tv_sec ) {
cb_log(2,bc->port, "channel with stid:%x for one second still in use! (n:%d lu:%d)\n", bc->b_stid, now.tv_sec, bc->last_used.tv_sec);
return 1;
}
More information about the asterisk-commits
mailing list