diff options
author | crichter <crichter@f38db490-d61c-443f-a65b-d21fe96a405b> | 2007-01-11 13:27:52 +0000 |
---|---|---|
committer | crichter <crichter@f38db490-d61c-443f-a65b-d21fe96a405b> | 2007-01-11 13:27:52 +0000 |
commit | 491cf508dd486a2b1121ae8e0a2800ef092035db (patch) | |
tree | 002ea638049ea68b231160899a1ba75e6b204db5 /channels/misdn/isdn_lib.c | |
parent | 42d84412db13373edb94eeef8f757d804233fbda (diff) |
* more additions to make the RESTART message work
* added fix for misdn_call to allow SETUPs with empty
extensions, replaced the strtok_r functions with strsep for that
(inspired by Sandro Cappellazzo, thanks)
git-svn-id: http://svn.digium.com/svn/asterisk/branches/1.2@50495 f38db490-d61c-443f-a65b-d21fe96a405b
Diffstat (limited to 'channels/misdn/isdn_lib.c')
-rw-r--r-- | channels/misdn/isdn_lib.c | 14 |
1 files changed, 12 insertions, 2 deletions
diff --git a/channels/misdn/isdn_lib.c b/channels/misdn/isdn_lib.c index 33a0f8dbf..4888cada2 100644 --- a/channels/misdn/isdn_lib.c +++ b/channels/misdn/isdn_lib.c @@ -3587,12 +3587,12 @@ int misdn_lib_send_restart(int port) struct misdn_bchannel dummybc; memset (&dummybc,0,sizeof(dummybc)); dummybc.port=stack->port; - dummybc.l3_id=MISDN_ID_DUMMY; + dummybc.l3_id=MISDN_ID_GLOBAL; dummybc.nt=stack->nt; int max=stack->pri?30:2; int i; - for (i=1;i<max;i++) { + for (i=1;i<=max;i++) { dummybc.channel=i; cb_log(0, port, "Restarting channel %d\n",i); misdn_lib_send_event(&dummybc, EVENT_RESTART); @@ -3722,6 +3722,16 @@ void manager_event_handler(void *arg) 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); + else { + if (frm->dinfo == MISDN_ID_GLOBAL) { + struct misdn_bchannel dummybc; + memset (&dummybc,0,sizeof(dummybc)); + dummybc.port=stack->port; + dummybc.l3_id=MISDN_ID_GLOBAL; + dummybc.nt=stack->nt; + send_msg(glob_mgr->midev, &dummybc, msg); + } + } } } } |