summaryrefslogtreecommitdiff
path: root/channels/misdn/isdn_lib.h
AgeCommit message (Collapse)Author
2012-11-02Multiple revisions 375519-375524Richard Mudgett
........ r375519 | rmudgett | 2012-10-30 16:06:15 -0500 (Tue, 30 Oct 2012) | 11 lines chan_misdn: Timer primitives must be handled first. The frm->addr is a different "address space" than the stack/instance address of other Lx primitives. The test for B channel instance address could fail. Patches: patch01_timers.diff (license #6372) patch uploaded by Guenther Kelleter JIRA ABE-2888 ........ r375520 | rmudgett | 2012-10-30 16:14:58 -0500 (Tue, 30 Oct 2012) | 10 lines chan_misdn: Free memory in error paths and other memory leaks. The one line commented with BUG is not easily fixable because there is no de-init function one can call. Patches: patch02_memory.diff (license #6372) patch uploaded by Guenther Kelleter JIRA ABE-2888 ........ r375521 | rmudgett | 2012-10-30 16:38:41 -0500 (Tue, 30 Oct 2012) | 14 lines chan_misdn: ISDN NT L2 de-establish/establish * An NT-PTMP cannot de/establish L2 since it doesn't know the TEIs. * On NT-PTP L2 is started when L1 is finally active in handle_l1. * L2 deactivation logging cleanup. * L2 aggregate link status is unknown for NT-PTMP, show as "UNKN". * Removed unused functions and code for L2 handling. Patches: patch03_L2estab.diff (license #6372) patch uploaded by Guenther Kelleter Modified JIRA ABE-2888 ........ r375522 | rmudgett | 2012-10-30 16:56:14 -0500 (Tue, 30 Oct 2012) | 22 lines chan_misdn: Fix broken upper_id/lower_id usage. Sending PH prim via lower_id layer (3 or 1) simply does not work. For TE (3) it returns an error (len=-6) which is not evaluated by handle_l1(), so the L1 layer status ends up wrong. Instead PH must be sent via L4, only then does it reach L1 without an error message. And NT PH prims only reach L1 when they are sent to layer 2 id. --> use upper_id to send PH primitives. * Check for errors in PH_(DE)ACTIVATE | CONFIRM. * Debug messages are improved. * The lower_id is now not used for anything, except: Why is lower_id layer deleted when it wasn't created? I removed this code since it looks very wrong. Patches: patch04_l1activation.diff (license #6372) patch uploaded by Guenther Kelleter JIRA ABE-2888 ........ r375523 | rmudgett | 2012-10-30 17:29:15 -0500 (Tue, 30 Oct 2012) | 31 lines chan_misdn: Fix loss of B channels if L1 is down. If you make 2 calls out an NT PTMP port which is not connected to any phone, the B channel associated with that call becomes unusable until Asterisk is restarted. The problem is the EVENT_SETUP is queued when L1 is not up in misdn_lib_send_event(). If L1 cannot be activated the event won't be dequeued. It gets even worse when the call is hung up. The queued EVENT_SETUP will be overwritten by an EVENT_DISCONNECT. The reserved B channel then will never be freed. If later someone connects a phone to the port, L1 will eventually activate and the queued EVENT_DISCONNECT is sent down the stack. However, it is ignored because it is the wrong call state. The real fix would be that activation and queueing for a new SETUP is done by the NT stack. But since it doesn't, the workaround must be removed because it doesn't always work. Fix: The event is no longer queued but immediately sent to the stack. If L1 cannot be activated, the L3 state machine that was started by the EVENT_SETUP will do its work, i.e. a timeout will release the B channel properly. The SETUP possibly cannot be sent the first time but is resent by T303 in case L1 could be activated. Patches: patch05_bchan-loss.diff (license #6372) patch uploaded by Guenther Kelleter Modified JIRA ABE-2888 ........ r375524 | rmudgett | 2012-10-30 18:26:05 -0500 (Tue, 30 Oct 2012) | 13 lines chan_misdn: Remove some calls to exit(). Try proper cleanup when something goes wrong in misdn_lib_init(). Especially do not call exit()! * Fix memory leak because stack_destroy() does not free the stack struct. Patches: patch06_cleanup-init.diff (license #6372) patch uploaded by Guenther Kelleter Modified JIRA ABE-2888 ........ Merged revisions 375519-375524 from https://origsvn.digium.com/svn/asterisk/be/branches/C.3-bier ........ Merged revisions 375625 from http://svn.asterisk.org/svn/asterisk/branches/1.8 ........ Merged revisions 375626 from http://svn.asterisk.org/svn/asterisk/branches/10 ........ Merged revisions 375627 from http://svn.asterisk.org/svn/asterisk/branches/11 git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@375628 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2012-10-05Merged revisions 374515-374535 fromRichard Mudgett
https://origsvn.digium.com/svn/asterisk/be/branches/C.3-bier ................ r374515 | rmudgett | 2012-10-04 17:52:36 -0500 (Thu, 04 Oct 2012) | 10 lines chan_misdn: Remove some deadcode * Made setup_bc() static. Patches: patch1_unused-code.diff (license #6372) patch uploaded by Guenther Kelleter Modified JIRA ABE-2882 ................ r374516 | rmudgett | 2012-10-04 18:01:01 -0500 (Thu, 04 Oct 2012) | 7 lines chan_misdn: Remove unused bchan states Patches: patch2_unused-states.diff (license #6372) patch uploaded by Guenther Kelleter JIRA ABE-2882 ................ r374517 | rmudgett | 2012-10-04 18:17:51 -0500 (Thu, 04 Oct 2012) | 16 lines chan_misdn: Remove unnecessary null pointer checks and checks for stack->nt * cleanup_bc() is always called with valid bc (or it would've crashed before). * Value of stack->nt is known in advance at some places. * Rename handle_event() to handle_event_te(), handle_frm() to handle_frm_te(). Patches: patch3_checks.diff (license #6372) patch uploaded by Guenther Kelleter Modified JIRA ABE-2882 ................ r374518 | rmudgett | 2012-10-04 18:21:59 -0500 (Thu, 04 Oct 2012) | 7 lines chan_misdn: Fix spelling in log messages Patches: patch4_spelling.diff (license #6372) patch uploaded by Guenther Kelleter JIRA ABE-2882 ................ r374519 | rmudgett | 2012-10-04 18:31:59 -0500 (Thu, 04 Oct 2012) | 15 lines chan_misdn: Don't cleanup a bc twice. In handle_frm_te() after calling misdn_lib_send_event(bc, EVENT_RELEASE_COMPLETE) bc is emptied, cleaned and set not in use, although misdn_lib_send_event() already did the same. This is bad. When it's not in use we are not allowed to touch it. * Moved log message in front of the resulting actions and fixed it to match the case. Patches: patch5_bccleanup.diff (license #6372) patch uploaded by Guenther Kelleter JIRA ABE-2882 ................ r374520 | rmudgett | 2012-10-04 18:43:56 -0500 (Thu, 04 Oct 2012) | 12 lines chan_misdn: Fix memory leaks, bc, chan not cleaned up etc., really bad stuff. * Fix return codes of cb_events() for EVENT_SETUP to use caller's cleanup mechanisms. * Move cl_queue_chan() call after bearer check. Patches: patch6_leaks.diff (license #6372) patch uploaded by Guenther Kelleter JIRA ABE-2882 ................ r374521 | rmudgett | 2012-10-04 18:48:38 -0500 (Thu, 04 Oct 2012) | 11 lines chan_misdn: We must initialize cause on sending a DISCONNECT. We must initialize cause on sending a DISCONNECT, so it is later correctly indicated to ast_channel in case the answer (RELEASE/RELEASE_COMPLETE) does not include one. Patches: patch7_hangupcause.diff (license #6372) patch uploaded by Guenther Kelleter JIRA ABE-2882 ................ r374522 | rmudgett | 2012-10-04 19:03:56 -0500 (Thu, 04 Oct 2012) | 7 lines chan_misdn: Remove unused code for upqueue Patches: patch8_unused-upqueue.diff (license #6372) patch uploaded by Guenther Kelleter JIRA ABE-2882 ................ r374523 | rmudgett | 2012-10-04 19:11:50 -0500 (Thu, 04 Oct 2012) | 7 lines chan_misdn: Improve debugging (port number, messages fixed, dups removed) Patches: patch9_debug.diff (license #6372) patch uploaded by Guenther Kelleter JIRA ABE-2882 ................ r374533 | rmudgett | 2012-10-05 12:17:18 -0500 (Fri, 05 Oct 2012) | 8 lines chan_misdn: Better debug: we can print_bc_info even if there's no ast leg. Patches: patch10_debug-bc-2.diff (license #6372) patch uploaded by Guenther Kelleter Modified. JIRA ABE-2882 ................ r374534 | rmudgett | 2012-10-05 12:34:10 -0500 (Fri, 05 Oct 2012) | 16 lines chan_misdn: setup_bc() is called too early for an incoming SETUP on TE. This prevents the B channel from being setup for HDLC mode when requested by the bearer capability and config option hdlc=yes. It violates ETS300102 Ch.5.2.3.2: "The user, in any case, must not connect to the channel until a CONNECT ACKNOWLEDGE message has been received." * Call setup_bc() on receipt of CONNECT_ACKNOWLEGDE for PTMP, and on first response to SETUP for PTP. Patches: abe-2881-2.diff (license #6372) patch uploaded by Guenther Kelleter Modified. JIRA ABE-2881 ................ r374535 | rmudgett | 2012-10-05 12:41:05 -0500 (Fri, 05 Oct 2012) | 2 lines chan_misdn: Remove some more deadcode. ................ ........ Merged revisions 374536 from http://svn.asterisk.org/svn/asterisk/branches/1.8 ........ Merged revisions 374537 from http://svn.asterisk.org/svn/asterisk/branches/10 ........ Merged revisions 374538 from http://svn.asterisk.org/svn/asterisk/branches/11 git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@374539 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-05-17Enhancements to connected line and redirecting work.Mark Michelson
From reviewboard: Digium has a commercial customer who has made extensive use of the connected party and redirecting information present in later versions of Asterisk Business Edition and which is to be in the upcoming 1.8 release. Through their use of the feature, new problems and solutions have come about. This patch adds several enhancements to maximize usage of the connected party and redirecting information functionality. First, Asterisk trunk already had connected line interception macros. These macros allow you to manipulate connected line information before it was sent out to its target. This patch adds the same feature except for redirecting information instead. Second, the ast_callerid and ast_party_id structures have been enhanced to provide a "tag." This tag can be set with func_callerid, func_connectedline, func_redirecting, and in the case of DAHDI, mISDN, and SIP channels, can be set in a configuration file. The idea behind the callerid tag is that it can be set to whatever value the administrator likes. Later, when running connected line and redirecting macros, the admin can read the tag off the appropriate structure to determine what action to take. You can think of this sort of like a channel variable, except that instead of having the variable associated with a channel, the variable is associated with a specific identity within Asterisk. Third, app_dial has two new options, s and u. The s option lets a dialplan writer force a specific caller ID tag to be placed on the outgoing channel. The u option allows the dialplan writer to force a specific calling presentation value on the outgoing channel. Fourth, there is a new control frame subclass called AST_CONTROL_READ_ACTION added. This was added to correct a very specific situation. In the case of SIP semi-attended (blond) transfers, the party being transferred would not have the opportunity to run a connected line interception macro to possibly alter the transfer target's connected line information. The issue here was that during a blond transfer, the SIP transfer code has no bridged channel on which to queue the connected line update. The way this was corrected was to add this new control frame subclass. Now, we queue an AST_CONTROL_READ_ACTION frame on the channel on which the connected line interception macro should be run. When ast_read is called to read the frame, ast_read responds by calling a callback function associated with the specific read action the control frame describes. In this case, the action taken is to run the connected line interception macro on the transferee's channel. Review: https://reviewboard.asterisk.org/r/652/ git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@263541 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-07-14Merged revisions 206487 via svnmerge from Richard Mudgett
https://origsvn.digium.com/svn/asterisk/branches/1.4 ........ r206487 | rmudgett | 2009-07-14 11:44:47 -0500 (Tue, 14 Jul 2009) | 28 lines Fixes several call transfer issues with chan_misdn. * issue #14355 - Crash if attempt to transfer a call to an application. Masquerade the other pair of the four asterisk channels involved in the two calls. The held call already must be a bridged call (not an applicaton) or it would have been rejected. * issue #14692 - Held calls are not automatically cleared after transfer. Allow the core to initate disconnect of held calls to the ISDN port. This also fixes a similar case where the party on hold hangs up before being transferred or taken off hold. * JIRA ABE-1903 - Orphaned held calls left in music-on-hold. Do not simply block passing the hangup event on held calls to asterisk core. * Fixed to allow held calls to be transferred to ringing calls. Previously, held calls could only be transferred to connected calls. * Eliminated unused call states to simplify hangup code. * Eliminated most uses of "holded" because it is not a word. (closes issue #14355) (closes issue #14692) Reported by: sodom Patches: misdn_xfer_v14_r205839.patch uploaded by rmudgett (license 664) Tested by: rmudgett ........ git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@206489 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-05-14Add outgoing_colp misdn.conf port parameter.Richard Mudgett
Select what to do with outgoing COLP information on this port. 0 - Send out COLP information unaltered. (default) 1 - Force COLP to restricted on all outgoing COLP information. 2 - Do not send COLP information. outgoing_colp=0 Also fixed sending the EctInform message so it always has the required redirectionNumber parameter when the status is active. JIRA ABE-1853 git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@194479 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-04-27Make PTP DivertingLegInformation3 message behavior closer to the specifications.Richard Mudgett
* Wait for a DivertingLegInformation3 message after receiving a DivertingLegInformation1 message to complete the redirecting-to information before queuing a redirecting update to the other channel. * A DivertingLegInformation2 message should be responded to with a DivertingLegInformation3 when the COLR is determined. If the call could or does experience another redirection, you should manually determine the COLR to send to the switch by setting REDIRECTING(to-pres) to the COLR and setting REDIRECTING(to-num) = ${EXTEN}. * A DivertingLegInformation2 message must have an original called number if the redirection count is greater than one. Since Asterisk does not keep track of this information, we can only indicate that the number is not available due to interworking. git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@190735 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-04-21Added CCBS/CCNR Party A support and enhanced COLP support.Richard Mudgett
This change adds the following features to chan_misdn: * CCBS/CCNR Party A support for PTMP and PTP modes. * Enhances COLP support for call diversion and explicit call transfer. These enhanced features require a modified version of mISDN. The latest modified mISDN v1.1.x based version is available at: http://svn.digium.com/svn/thirdparty/mISDN/trunk http://svn.digium.com/svn/thirdparty/mISDNuser/trunk Taged versions of the modified mISDN code are available under: http://svn.digium.com/svn/thirdparty/mISDN/tags http://svn.digium.com/svn/thirdparty/mISDNuser/tags Review: http://reviewboard.digium.com/r/218/ Merged from team/rmudgett/misdn_facility branch. git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@189735 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-04-10Miscellaneous minor changes to chan_misdn.Richard Mudgett
* Miscellaneous spacing and comment changes. * Minor code rearangements. * Miscellaneous doxygen comments. git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@187635 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-04-03This commit introduces COLP/CONP and Redirecting party information into ↵Mark Michelson
Asterisk. The channel drivers which have been most heavily tested with these enhancements are chan_sip and chan_misdn. Further work is being done to add Q.SIG support and will be introduced in a later commit. chan_skinny has code added to it here, but according to user pj, the support on chan_skinny is not working as of now. This will be fixed in a later commit. A special thanks goes out to bugtracker user gareth for getting the ball rolling and providing the initial support for this work. Without his initial work on this, this would not have been nearly as painless as it was. This functionality has been tested by Digium's product quality department, as well as a customer site running thousands of calls every day. In addition, many many many many bugtracker users have tested this, too. (closes issue #8824) Reported by: gareth Review: http://reviewboard.digium.com/r/201 git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@186525 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-10-30fix a few small things found by using sparseKevin P. Fleming
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@152809 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-09-30* Miscellaneous formatting changes to make v1.4 and trunkRichard Mudgett
more merge compatible in the mISDN area. channels/chan_misdn.c * Eliminated redundant code in cb_events() EVENT_SETUP git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@145200 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-08-18channels/chan_misdn.cRichard Mudgett
* Made bearer2str() use allowed_bearers_array[] * Made use the causes.h defines instead of hardcoded numbers. * Made use Asterisk presentation indicator values if either of the mISDN presentation or screen options are negative. * Updated the misdn_set_opt application option descriptions. * Renamed the awkward Caller ID presentation misdn_set_opt application option value not_screened to restricted. Deprecated the not_screened option value. channels/misdn/isdn_lib.c * Made use the causes.h defines instead of hardcoded numbers. * Fixed some spelling errors and typos. * Added all defined facility code strings to fac2str(). channels/misdn/isdn_lib.h * Added doxygen comments to struct misdn_bchannel. channels/misdn/isdn_lib_intern.h * Added doxygen comments to struct misdn_stack. channels/misdn_config.c configs/misdn.conf.sample * Updated the mISDN presentation and screen parameter descriptions. doc/tex/misdn.tex * Updated the misdn_set_opt application option descriptions. * Fixed some spelling errors and typos. git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@138738 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-06-02Merged revisions 119585 via svnmerge from Christian Richter
https://origsvn.digium.com/svn/asterisk/branches/1.4 ........ r119585 | crichter | 2008-06-02 10:35:28 +0200 (Mo, 02 Jun 2008) | 1 line Added counter for unhandled_bmsg Print, this prevents the logs to be flooded to fast and save CPU in this error scenario. Added 'last_used' element to bc structure, when a bchannel changes from used to free this exact time will be marked in last_used. When a new channel is requested the find_free_chan function will check if the new empty channel was used within the last second, if yes it will search for the next channel, if no it will return this channel. This simple mechanism has prooven to prevent race conditions where the NT and TE tried to allocate the exact same channel at the same time (RELEASE cause: 44). ........ git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@119586 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-03-18fix up various warnings found via the addition of format string checking... ↵Kevin P. Fleming
some of these were really, really bad code git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@109475 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-02-15Fix up some doxygen issues.Jason Parker
(closes issue #11996) Patches: bug_11996_doxygen.diff uploaded by snuffy (license 35) git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@103723 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-12-11Doxygen updates, formatting. Olle Johansson
misdn stuff needs a lot of doxygenification (Hello, Qwell :-) ) git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@92423 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-11-12Merged revisions 89169 via svnmerge from Christian Richter
https://origsvn.digium.com/svn/asterisk/branches/1.4 ........ r89169 | crichter | 2007-11-12 10:45:36 +0100 (Mo, 12 Nov 2007) | 1 line aded ntkeepcalls option, to avoid droÃpping calls when the L2 goes down on a PTP link. There are some pbx which do turn off the L1 for a very short while and restart it immediately. normally T310 should be started and after 10 seconds or so the calls should be dropped, this is a simple fix wihtout this timer. ........ git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@89174 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-10-22started to add some basic support for supplementary services like ↵Christian Richter
CallForwarding and so forth git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@86616 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-07-02Merged revisions 72851 via svnmerge from Christian Richter
https://origsvn.digium.com/svn/asterisk/branches/1.4 ................ r72851 | crichter | 2007-07-02 10:27:19 +0200 (Mo, 02 Jul 2007) | 9 lines Merged revisions 72099 via svnmerge from https://origsvn.digium.com/svn/asterisk/branches/1.2 ........ r72099 | crichter | 2007-06-27 15:22:37 +0200 (Mi, 27 Jun 2007) | 1 line simplified generation for dummy bchannels, also we mark them as dummies, so they are not used later as real-bchannels, optimized the RESTART mechanisms, we block a channel now on cause:44, and send out a RESTART automatically, then on reception of RESTART_ACKNOWLEDGE we unblock the channel again. ........ ................ git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@72868 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-07-02Merged revisions 72850 via svnmerge from Christian Richter
https://origsvn.digium.com/svn/asterisk/branches/1.4 ................ r72850 | crichter | 2007-07-02 10:14:43 +0200 (Mo, 02 Jul 2007) | 9 lines Merged revisions 72087 via svnmerge from https://origsvn.digium.com/svn/asterisk/branches/1.2 ........ r72087 | crichter | 2007-06-27 11:26:53 +0200 (Mi, 27 Jun 2007) | 1 line simplified channel finding and locking a lot. removed unnecessary #ifdefed areas. ........ ................ git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@72867 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-06-25Merged revisions 71214 via svnmerge from Christian Richter
https://origsvn.digium.com/svn/asterisk/branches/1.4 ................ r71214 | crichter | 2007-06-23 00:44:42 +0200 (Sa, 23 Jun 2007) | 9 lines Merged revisions 70341 via svnmerge from https://origsvn.digium.com/svn/asterisk/branches/1.2 ........ r70341 | crichter | 2007-06-20 17:29:09 +0200 (Mi, 20 Jun 2007) | 1 line fixed a bug that was introduced by copy and paste in the last commit ..bchannels weren't cleaned properly. ........ ................ git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@71500 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-06-25Merged revisions 71121 via svnmerge from Christian Richter
https://origsvn.digium.com/svn/asterisk/branches/1.4 ................ r71121 | crichter | 2007-06-22 17:32:54 +0200 (Fr, 22 Jun 2007) | 9 lines Merged revisions 70311 via svnmerge from https://origsvn.digium.com/svn/asterisk/branches/1.2 ........ r70311 | crichter | 2007-06-20 16:47:59 +0200 (Mi, 20 Jun 2007) | 1 line on receiption of cause:44 we mark the channel as in use and inform the user about the situation, we need to test the RESTART stuff then. Also shuffled the empty_chan_in_stack function after the bchannel cleaning functions, to avoid race conditions. ........ ................ git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@71497 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-06-11Merged revisions 68644 via svnmerge from Christian Richter
https://origsvn.digium.com/svn/asterisk/branches/1.4 ................ r68644 | crichter | 2007-06-11 12:29:18 +0200 (Mo, 11 Jun 2007) | 9 lines Merged revisions 68631 via svnmerge from https://origsvn.digium.com/svn/asterisk/branches/1.2 ........ r68631 | crichter | 2007-06-11 11:18:01 +0200 (Mo, 11 Jun 2007) | 1 line fixed problem that the dummybc chanels had no lock, checking for the lock now. Also fixed the channel restart stuff, we can now specify and restart particular channels too. ........ ................ git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@68661 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-05-18Merged revisions 62912 via svnmerge from Christian Richter
https://origsvn.digium.com/svn/asterisk/branches/1.4 ................ r62912 | crichter | 2007-05-03 16:36:32 +0200 (Do, 03 Mai 2007) | 17 lines Merged revisions 61357,61770,62885 via svnmerge from https://origsvn.digium.com/svn/asterisk/branches/1.2 ........ r61357 | crichter | 2007-04-11 14:05:57 +0200 (Mi, 11 Apr 2007) | 1 line some fixes for PMP Hold/Retrieve, it should work now, when briding=no ........ r61770 | crichter | 2007-04-24 15:50:05 +0200 (Di, 24 Apr 2007) | 1 line added lock for sending messages to avoid double sending. shuffled some empty_chans after the cb_event calls, this avoids that a release_complete from a quite different call releases a fresh created setup by accident. ........ r62885 | crichter | 2007-05-03 15:59:00 +0200 (Do, 03 Mai 2007) | 1 line fixed the problem that misdn_write did not return -1 when called with 0 samples in a frame this resultet in a deadlock in some circumstances, when the call ended because of a busy extension. added encoding of keypad. ........ ................ git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@64955 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-05-18Merged revisions 59064 via svnmerge from Christian Richter
https://origsvn.digium.com/svn/asterisk/branches/1.4 ................ r59064 | crichter | 2007-03-20 14:16:06 +0100 (Di, 20 Mär 2007) | 21 lines Merged revisions 58849-58850,59062-59063 via svnmerge from https://origsvn.digium.com/svn/asterisk/branches/1.2 ........ r58849 | crichter | 2007-03-13 12:58:16 +0100 (Di, 13 Mär 2007) | 1 line added method standard_dec for dialing out on groups, to avoid conflicts, which caused issues with some ISDN providers ........ r58850 | crichter | 2007-03-13 13:58:32 +0100 (Di, 13 Mär 2007) | 1 line fixed the crypt_keys stuff ........ r59062 | crichter | 2007-03-20 10:18:06 +0100 (Di, 20 Mär 2007) | 1 line avoid sending a disconnect when we already received one. ........ r59063 | crichter | 2007-03-20 10:23:22 +0100 (Di, 20 Mär 2007) | 1 line modified a loglevel ........ ................ git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@64952 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-05-18Merged revisions 58825-58826 via svnmerge from Christian Richter
https://origsvn.digium.com/svn/asterisk/branches/1.4 ................ r58825 | crichter | 2007-03-12 13:43:24 +0100 (Mo, 12 Mär 2007) | 1 line added UU transceiving and corect handling for rdnis ................ r58826 | crichter | 2007-03-12 14:08:06 +0100 (Mo, 12 Mär 2007) | 21 lines Merged revisions 57034,57523,57753,58558 via svnmerge from https://origsvn.digium.com/svn/asterisk/branches/1.2 ........ r57034 | crichter | 2007-02-28 17:09:27 +0100 (Mi, 28 Feb 2007) | 1 line fixed bugs.digium.com bugs: #9157 and bugs.beronet.com bugs: #302, #303, #304 ........ r57523 | crichter | 2007-03-02 19:32:51 +0100 (Fr, 02 Mar 2007) | 1 line fixed typo ........ r57753 | crichter | 2007-03-04 11:39:50 +0100 (So, 04 Mar 2007) | 1 line fixed another place where the out_cause was hardcoded to 16 ........ r58558 | crichter | 2007-03-09 15:43:58 +0100 (Fr, 09 Mar 2007) | 1 line we can free channel 31 as well, since we can occupy it ........ ................ git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@64951 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-04-11Merged revisions 61342,61372-61373,61443 via svnmerge from Nadi Sarrar
https://origsvn.digium.com/svn/asterisk/branches/1.4 ........ r61342 | nadi | 2007-04-11 12:52:28 +0200 (Mi, 11 Apr 2007) | 2 lines AOCD's are now exported to asterisk channel variables. ........ r61372 | nadi | 2007-04-11 15:33:30 +0200 (Mi, 11 Apr 2007) | 2 lines Ignore facility messages in case we don't have a corresponding channel object. ........ r61373 | nadi | 2007-04-11 15:40:26 +0200 (Mi, 11 Apr 2007) | 2 lines Export AOCD variables on misdn_hangup. ........ r61443 | nadi | 2007-04-11 17:39:14 +0200 (Mi, 11 Apr 2007) | 2 lines Don't export AOCD variables on misdn_hangup anymore, this was mainly a fix for trunk.. ........ git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@61460 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-03-26Merged revisions 59202 via svnmerge from Nadi Sarrar
https://origsvn.digium.com/svn/asterisk/branches/1.4 ........ r59202 | nadi | 2007-03-26 17:25:53 +0200 (Mo, 26 Mär 2007) | 4 lines * mISDN >= 1.2 provides a dsp pipeline for i.e. echo cancellation modules, make chan_misdn use it. * add a check for linux/mISDNdsp.h to configure.ac and update the autogenerated files: 'configure', 'autoconfig.h.in' (the 'configure' script was not in sync with the latest configure.ac, so the diff is a bit bigger than expected). ........ git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@59203 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-01-03Merged revisions 49313 via svnmerge from Christian Richter
https://origsvn.digium.com/svn/asterisk/branches/1.4 ................ r49313 | crichter | 2007-01-03 10:06:50 +0100 (Mi, 03 Jan 2007) | 41 lines Merged revisions 48319,48321,48467,48552,48576,49135,49303 via svnmerge from https://origsvn.digium.com/svn/asterisk/branches/1.2 ........ r48319 | crichter | 2006-12-06 15:35:25 +0100 (Mi, 06 Dez 2006) | 1 line changed a few debugs to higher debug levels ........ r48321 | crichter | 2006-12-06 16:48:45 +0100 (Mi, 06 Dez 2006) | 1 line added the export and import of the MISDN_ADDRESS_COMPLETE Variable to inidcate wether the extension is already completely dialed or if there might come additional digits by information elements. also added some docs for that. ........ r48467 | crichter | 2006-12-14 14:03:49 +0100 (Do, 14 Dez 2006) | 1 line removed FIXUP state. added check for channel allocation conflict when we create a setup while the other site creates a setup on the same channel, besides the check we resolve this conflict. ........ r48552 | crichter | 2006-12-18 11:19:39 +0100 (Mo, 18 Dez 2006) | 1 line when our PTP Partner sends us a SETUP with a preselected channel we just accept it, even when we're NT. added some checks for segfaults. ........ r48576 | crichter | 2006-12-19 14:08:51 +0100 (Di, 19 Dez 2006) | 1 line when we reject a channel, because it's in use already, we shouldn't process the setup anymore. made the channel allocation a bit easier and more understandable, removed a few unused lines ........ r49135 | crichter | 2007-01-02 11:07:22 +0100 (Di, 02 Jan 2007) | 1 line added check for channel ranges in the set/empty channel functions. set pmp_l1_check default to no. added misdn restart pid cli command. added cleaning of channel when we send a RELEASE_COMPLETE. ........ r49303 | crichter | 2007-01-03 09:24:00 +0100 (Mi, 03 Jan 2007) | 9 lines * Added check for bridging in misdn_call to avoid setting echocancellation when 2 mISDN channels are involved and when bridging is set. That lead to a kernel panic before under different situations, because we switched about 2 times between hardware bridging and echocancelation * readded MISDN_URATE variable which got lost before, this should make app_v110 work again * fixed typo ........ ................ git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@49321 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-10-27Merged revisions 46351-46353 via svnmerge from Christian Richter
https://origsvn.digium.com/svn/asterisk/branches/1.4 ................ r46351 | crichter | 2006-10-27 11:49:20 +0200 (Fr, 27 Okt 2006) | 9 lines Merged revisions 46176 via svnmerge from https://origsvn.digium.com/svn/asterisk/branches/1.2 ........ r46176 | crichter | 2006-10-25 10:41:59 +0200 (Mi, 25 Okt 2006) | 1 line added nttimeout option to configure wether we disconnect calls on NT timeouts or not during an overlapdial session ........ ................ r46352 | crichter | 2006-10-27 11:58:44 +0200 (Fr, 27 Okt 2006) | 1 line fixed not compile issue, which was just introduced ................ r46353 | crichter | 2006-10-27 12:03:23 +0200 (Fr, 27 Okt 2006) | 9 lines Merged revisions 46350 via svnmerge from https://origsvn.digium.com/svn/asterisk/branches/1.2 ........ r46350 | crichter | 2006-10-27 11:24:01 +0200 (Fr, 27 Okt 2006) | 1 line fixed a bug which caused chan_misdn to try to allocate 2 times the same channel on high load, which then caused instability of mISDN. removed a useless function from isdn_lib.c ........ ................ git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@46354 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-10-11Merged revisions 44561 via svnmerge from Christian Richter
https://origsvn.digium.com/svn/asterisk/branches/1.4 ................ r44561 | crichter | 2006-10-06 14:50:25 +0200 (Fr, 06 Okt 2006) | 9 lines Merged revisions 44334 via svnmerge from https://origsvn.digium.com/svn/asterisk/branches/1.2 ........ r44334 | crichter | 2006-10-04 17:13:58 +0200 (Mi, 04 Okt 2006) | 1 line added the option 'reject_cause' to make it possible to set the RELEASE_COMPLETE - cause on the 3. incoming PMP channel, which is automatically rejected because chan_misdn does not support that kind of callwaiting. Therefore chan_misdn supports now 3 incoming channels on a PMP BRI Port. misdn_lib_get_free_bc now gets the info if the requested channel is incoming or outgoing to make the 3. channel possible ........ ................ git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@44841 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-10-11Merged revisions 44559 via svnmerge from Christian Richter
https://origsvn.digium.com/svn/asterisk/branches/1.4 ................ r44559 | crichter | 2006-10-06 12:44:34 +0200 (Fr, 06 Okt 2006) | 9 lines Merged revisions 44149 via svnmerge from https://origsvn.digium.com/svn/asterisk/branches/1.2 ........ r44149 | crichter | 2006-10-02 15:28:14 +0200 (Mo, 02 Okt 2006) | 1 line fixed the hold/retrieve/transfer issues, removed a useless bc field, added setting of frame.delivery fields, some minor code cleanups ........ ................ git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@44840 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-09-28Merged revisions 43852 via svnmerge from Christian Richter
https://origsvn.digium.com/svn/asterisk/branches/1.4 ................ r43852 | crichter | 2006-09-28 13:03:05 +0200 (Do, 28 Sep 2006) | 9 lines Merged revisions 43764 via svnmerge from https://origsvn.digium.com/svn/asterisk/branches/1.2 ........ r43764 | crichter | 2006-09-27 14:51:03 +0200 (Mi, 27 Sep 2006) | 1 line fixed a bug which led to chan_list zombies, when the call could not be properly established in misdn_call. also removed the ACK_HDLC stuff which is not really needed. ........ ................ git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@43855 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-08-21merge new_loader_completion branch, including (at least):Kevin P. Fleming
- restructured build tree and makefiles to eliminate recursion problems - support for embedded modules - support for static builds - simpler cross-compilation support - simpler module/loader interface (no exported symbols) git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@40722 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-08-16adding support for AOCD facility messages.Nadi Sarrar
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@39987 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-08-15moved the asn1 and facility portions of code to mISDNuser, so removing the ↵Nadi Sarrar
files here. git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@39807 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-08-09fixing compile warnings, renaming config option "overlap_dial" to "overlapdial"Nadi Sarrar
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@39479 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-08-08* first bits of decoding facility information elementsNadi Sarrar
* fail on misdn_cfg_init() if elements in the config enum don't match with the config structs in misdn_config.c * implemented first bits for encoding ISDN facility information elements via ASN.1 descriptions * using unnamed semaphore for syncing in misdn_thread * advanced fax detection: configurable detect timeout and context to jump into git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@39378 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-08-08* added possibility to change echocancel settings during callsChristian Richter
* removed the holded element from the chan_list struct, we know this from the state already * added a few tweaks to make HOLD/RETRIEVE work again (TRANSFER does not work yet) * added possibility to debug mISDN frames via syslog * added misdn_lib_port_is_blocked function to check if a port is blocked * removed ec_training=1 from empty_bc, we don't use ec_training anymore * removed unused misdn_lib_get_l2_status function * added the nt bit to dummy misdn_bchannel objects * setting bc->out_fac_type to FACILITY_NONE defaultly * removed HANDLER_DEBUG stuff for better readability git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@39295 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-08-07changed naming of mISDN channels, so that hinting works properChristian Richter
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@39131 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-08-03* removed pp_l2_check (fixed L2 bug in mISDNuser)Christian Richter
* added blocking flag to stack object. A port can be blocked/unblocked from the cli * added EVENT_PORT_ALARM to send alarm infos to the chan_misdn.c layer (later we can add a manager event for that) * added block_on_alarm option, to block the port whenever a ALARM occurs * added need_busy flag to indicate if we've sended a CONTROL_BUSY already * changed a bunch of cb_log(-1,..) to cb_log(0,..) due to funny behaviour in recent asterisk ast_log messages.. * fixed a few ETSI state violations, especially when finishing calls in different seldom states * changed debug levels a lot to make the log more readable in low debuglevels * some first fixes for the HOLD/RETRIEVE stuff (doesn't work totally still) * removed the PRECONNECTED state stuff * added cause 27 when we get a CLEANUP directly after a outgoing SETUP, this creates a CHANISUNAVAIL instead of a NOANSWER * removed the addr pointer from "misdn show stacks" that's not needed anymore and makes the output more unreadable * added cause saving on RELEASE/RELEASE_COMPLETE * set cause to 16 on prepare_bc * removed stack getting from ph_control functions, we don't really need it there * added beroec api git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@38801 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-07-11* Introducing a new way for the l1watcher thread using the ast_sched way. ↵Christian Richter
Now l1watcher timeouts can be configured separately for every portgroup. * added a signal handler to allow waking up the misdn task thread (that may sleep in a poll call) via misdn_tasks_wakeup(). * overlap_dial functionality implemented. * fixes a bug which leads to a segfault after reordering config elements in the enum or struct git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@37382 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-07-06* removed tone_indicate, we genrate only the dialtone by ourself (and the ↵Christian Richter
hanguptone of course) * removed the state handling from release_chan, and simplified the ast_hangup/ast_queue_hangup stuff * added pp_l2_check option, for pp lines where the pbx does not initially gets the L2 up * simplified and fixed a bug in the pid generation code * fixed a bug in empty_chan, which might cause segfaults and memorry corruptions * added prepare_bc function, which is sort of the opposite of empty_bc git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@37172 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-06-30added fix, that if the L2 goes down on ptp-NT that we reinitialize the NT ↵Christian Richter
Library. Also if we have no ntflags, we don't pass the filename to the debug routines of mISDNuser. git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@36376 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-06-29added better L2 handling for ptp, if it's down we don't try to call on that ↵Christian Richter
port in groupdial anymore, also we try to get it up then. Additionally added the configoptions ntdebugflags and ntdebugfile to debug the mISDNuser NT Stack (should have done that ages before..). isdn_lib.c compiles again. git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@36298 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-06-26* fixed the busy stateChristian Richter
* fixed tone handling after ast_hangup was called * optimized the tone_indication function * removed warnings in favour of log debugs * improved the round_robin method * added logs for channel setting/emptying * fixed channel forgot to set bug git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@36082 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-06-18added TONE_HANGUP, also added Tone generation by mISDN_dsp for post hangup ↵Christian Richter
tones, therefore the TONE_X defines are in the isdn_lib.h now. changed a REALEASE to a DISCONNECT in NT Stack, to make tones available in that state. git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@34604 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-06-17* fixed bchannel cleaning race condition with new bchannel state (CLEAN_REQUEST)Christian Richter
* added early bridge-hook, so we know if we need to generate ringing or can take it from the far end chan_misdn channel (if available) * fixed the issue, that we may not activate the bchannel on PTMP, when we receive ALERTING/PROCEEDING/PROGRESS, only on CONNECT. There might be other PTMP devices and we might disturb their bchannel. git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@34552 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-06-01the interface needs to be changed as well..Christian Richter
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@31411 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-06-01added bearer capability reject support. we send release instead of ↵Christian Richter
disconnect in case we have no real channel yet. added support for Restarting channels added support for sending complete decoding. changed some log levels. git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@31324 65c4cc65-6c06-0410-ace0-fbb531ad65f3