[asterisk-commits] branch crichter/0.3.0 r9040 - in
/team/crichter/0.3.0/channels: ./ misdn/
asterisk-commits at lists.digium.com
asterisk-commits at lists.digium.com
Wed Feb 1 08:43:52 MST 2006
Author: crichter
Date: Wed Feb 1 09:43:49 2006
New Revision: 9040
URL: http://svn.digium.com/view/asterisk?rev=9040&view=rev
Log:
still NT Mode issues, mISDNuser is not reentrant, so we need to take care
Modified:
team/crichter/0.3.0/channels/chan_misdn.c
team/crichter/0.3.0/channels/misdn/isdn_lib.c
Modified: team/crichter/0.3.0/channels/chan_misdn.c
URL: http://svn.digium.com/view/asterisk/team/crichter/0.3.0/channels/chan_misdn.c?rev=9040&r1=9039&r2=9040&view=diff
==============================================================================
--- team/crichter/0.3.0/channels/chan_misdn.c (original)
+++ team/crichter/0.3.0/channels/chan_misdn.c Wed Feb 1 09:43:49 2006
@@ -2705,6 +2705,10 @@
{
struct chan_list *ch=find_chan_by_bc(cl_te, bc);
if (!ch) ch=find_chan_by_l3id (cl_te, bc->l3_id);
+ if (!ch) {
+ chan_misdn_log(0, bc->port, "release_chan: Ch not found!\n");
+ return;
+ }
release_lock;
if (ch->ast) {
Modified: team/crichter/0.3.0/channels/misdn/isdn_lib.c
URL: http://svn.digium.com/view/asterisk/team/crichter/0.3.0/channels/misdn/isdn_lib.c?rev=9040&r1=9039&r2=9040&view=diff
==============================================================================
--- team/crichter/0.3.0/channels/misdn/isdn_lib.c (original)
+++ team/crichter/0.3.0/channels/misdn/isdn_lib.c Wed Feb 1 09:43:49 2006
@@ -1693,10 +1693,12 @@
case CC_RELEASE|CONFIRM:
{
struct misdn_bchannel *bc=find_bc_by_l3id(stack, hh->dinfo);
- cb_log(4, stack->port, " --> RELEASE CONFIRM, sending RELEASE_COMPLETE\n");
if (bc) misdn_lib_send_event(bc,EVENT_RELEASE_COMPLETE);
- }
- hh->prim=CC_RELEASE|INDICATION;
+ cb_log(3, stack->port, " --> RELEASE CONFIRM, doing nothin\n");
+
+ free_msg(msg);
+ return 0;
+ }
break;
case CC_RELEASE|INDICATION:
break;
@@ -2817,9 +2819,7 @@
break;
case EVENT_RELEASE_COMPLETE:
- empty_chan_in_stack(stack,bc->channel);
- empty_bc(bc);
- clean_up_bc(bc);
+ /*we do the cleanup in EVENT_CLEANUP*/
break;
case EVENT_CONNECT_ACKNOWLEDGE:
@@ -2843,11 +2843,8 @@
}
/* Later we should think about sending bchannel data directly to misdn. */
-
msg = isdn_msg_build_event(msgs_g, bc, event, stack->nt);
-
msg_queue_tail(&stack->downqueue, msg);
-
sem_post(&glob_mgr->new_msg);
return 0;
@@ -3049,18 +3046,14 @@
stack;
stack=stack->next ) {
while ( (msg=msg_dequeue(&stack->downqueue)) ) {
-
- if (stack->nt ){
+ if (stack->nt ) {
if (stack->nst.manager_l3(&stack->nst, msg))
cb_log(-1, stack->port, "Error@ Sending Message in NT-Stack.\n");
} else {
- if (msg) {
- iframe_t *frm = (iframe_t *)msg->data;
- struct misdn_bchannel *bc = find_bc_by_l3id(stack, frm->dinfo);
-
- if (bc) send_msg(glob_mgr->midev, bc, msg);
- }
+ iframe_t *frm = (iframe_t *)msg->data;
+ struct misdn_bchannel *bc = find_bc_by_l3id(stack, frm->dinfo);
+ if (bc) send_msg(glob_mgr->midev, bc, msg);
}
}
}
More information about the asterisk-commits
mailing list