summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2013-07-11Fixed chan_skinny for systems were pthread_t isn't an int.David M. Lee
I'm looking at you, OS X. git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@394156 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2013-07-11Refactor and cleanup of skinny session handling.Damien Wedhorn
Major changes are to pull all packet reading functions into skinny_session and move timeout handling to scheduling arrangements. Thread cancelling is now undertaken directly rather than waiting for the read to timeout (cleanup is popped on thread cancel). Also added some keepalive timings in debugging messages. Keepalive timeout has been increased from 1.1 by keepalive to 3 times keepalive. This seems to align (after keepalives stabilise) with when devices reset after not receiving keepalives. Probably needs more work, especially around the first and/or second keepalives that vary significantly by device and firmware version. Review: https://reviewboard.asterisk.org/r/2611/ git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@394147 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2013-07-11Tweak the subscription failure warning message to include endpoint name and ↵Joshua Colp
context. git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@394103 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2013-07-11Correct test_cel cleanup.David M. Lee
When I corrected the CEL test crash in r394037, I didn't quite pay attention to how the globals and locals were being shuffled around in the cleanup callback. I removed the nulling of the global variables, which caused them to be double cleaned. This patch puts the global nulling code back (since the vars are cleaned up by RAII_VARs), and removes the explicit ao2_cleanup() (since they were no-ops, because the variables had just been nulled). git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@394089 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2013-07-11Change ARI user config to use a type fieldDavid M. Lee
When I initially wrote the configuration support for ARI users, I determined the section type by a category prefix (i.e., [user-admin]). This is neither idiomatic Asterisk configuration, nor is it really that user friendly. This patch replaces the category prefix with a type field in the section, which is much cleaner. Review: https://reviewboard.asterisk.org/r/2664/ git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@394076 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2013-07-11Apply defaults to ari.conf's general sectionDavid M. Lee
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@394065 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2013-07-11test_voicemail_api: fix warning found by gcc-4.8David M. Lee
The voicemail_api test had code like strncmp(a, b, sizeof(a)), but a was a char pointer, instead of a literal or char array. This meant that sizeof was the size of the pointer, not the length of the string. Since the string is in a stringfield and should be null terminated, I just changed it to a plain strcmp. git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@394050 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2013-07-11Fixed some CEL test crashesDavid M. Lee
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@394037 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2013-07-10PSJIP - sip.conf to res_sip.conf scriptKevin Harwell
** This script is in no way finished. Started the initial "cut" at converting a sip.conf file to a res_sip.conf file. Hopefully the bulk of the framework is in place and only a few minor adjustments need to be made when an option mapping is added that "doesn't fit". This script and supporting files should be executable against python version 2.5. An OrderedDict class (backported from a newer version of python) is included. A MultiOrderedDict class is implemented so options, when added, should be able to be added in order and allowed to have multiple values. Currently the scripts supports the majority of endpoint options found in res_sip.conf. Support has also been added for Aor(s) and the ACL/security sections. Inside the sip_to_res_sip.py file one can see a list of options that still need to be mapped. Also items that still need to be done: templates, includes, parsing '=>' delimiter. Note that some code is hopefully in place already to support templates (e.g. lookup/retrieving defaults from them). However, the parsing of and adding of the section needs to be done. git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@394024 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2013-07-10Handle outbound registration failures that do not occur as a result of a ↵Joshua Colp
real response. (closes issue ASTERISK-22064) Reported by: Rusty Newton git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@394004 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2013-07-10Document the 400 error response for originateDavid M. Lee
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@393987 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2013-07-10Corrected api-docs for channel variablesDavid M. Lee
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@393968 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2013-07-10astobj2-ify the SLA codeRussell Bryant
The SLA code within app_meetme was written before asotbj2 had been merged into Asterisk. Worse, support for reloads did not exist at first and was added later as a bolt-on feature. I knew at the time that reloading was not safe at all while SLA was in use, so the reload would be queued up to execute when the system was idle. Unfortunately, this approach was still prone to errors beyond the fact that this was the only place in Asterisk where configuration was not reloaded instantly when requested. This patch converts various SLA objects to be reference counted objects using astobj2. This allows reloads to be processed while the system is in use. The code ensures that the objects will not disappear while one of the other threads is using them. However, they will be immediately removed from the global trunk and station containers so no new calls will use them if removed from configuration. Review: https://reviewboard.asterisk.org/r/2581/ ........ Merged revisions 393928 from http://svn.asterisk.org/svn/asterisk/branches/1.8 ........ Merged revisions 393929 from http://svn.asterisk.org/svn/asterisk/branches/11 git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@393930 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2013-07-09Make SCOPED_LOCK use RAII_VAR.Jason Parker
This fixes an issue with requiring SCOPED_LOCK to be the last variable declaration and removes duplicate code in the process. Review: https://reviewboard.asterisk.org/r/2665/ git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@393919 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2013-07-09Fix printf NULL string (null) substituion for NULL config framework default.Richard Mudgett
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@393910 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2013-07-09Use correct function for getting bridged peer when doing direct media checks.Mark Michelson
(closes issue ASTERISK-21947) reported by Matt Jordan git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@393897 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2013-07-09Fix some stasis doxygen comments.Richard Mudgett
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@393896 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2013-07-09Ensure all pjsip_regc_* access occurs within a pjlib thread.Joshua Colp
(closes issue ASTERISK-22054) Reported by: Rusty Newton git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@393870 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2013-07-08Tweak log message slightly.Joshua Colp
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@393858 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2013-07-08Treat the authentication object as invalid if digest configuration is chosen ↵Joshua Colp
and the digest is not of the correct length. (closes issue ASTERISK-22003) Reported by: Rusty Newton git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@393857 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2013-07-08Oh menuconfig, why do you hate margins?David M. Lee
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@393843 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2013-07-08Better structure for the WebSocket validation failure messageDavid M. Lee
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@393834 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2013-07-08Ensure that a valid bind host is specified for transports.Joshua Colp
(closes issue ASTERISK-22017) Reported by: Rusty Newton git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@393833 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2013-07-08Refactor operations to access the stasis cache instead of objects directly ↵Joshua Colp
when retrieving information. (closes issue ASTERISK-21883) Review: https://reviewboard.asterisk.org/r/2645/ git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@393831 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2013-07-08res_stasis_http doesn't depend on res_stasis any moreDavid M. Lee
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@393816 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2013-07-08res_parking: Apply ringing role option on swap with a channel that ringsJonathan Rose
(closes issue ASTERISK-21877) Reported by: Matt Jordan Review: https://reviewboard.asterisk.org/r/2656/ git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@393815 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2013-07-08Fix building.Joshua Colp
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@393807 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2013-07-08ARI: Add support for getting/setting channel and global variables.Jason Parker
This allows for reading and writing of functions on channels. (closes issue ASTERISK-21868) Review: https://reviewboard.asterisk.org/r/2641/ git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@393806 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2013-07-08Move channel driver Registry manager events to core.Jason Parker
This also shuffles the stasis system topic and related handling. (closes issue ASTERISK-21488) Review: https://reviewboard.asterisk.org/r/2631/ git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@393804 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2013-07-08Create Local channel messages on the Stasis message bus and produce AMI eventsMatthew Jordan
This patch does the following: * It adds a virtual table of callbacks to core_unreal. These callbacks can be supplied by concrete implementations of "unreal" channel drivers, which lets the unreal channel driver call specific functionality when it performs some action. Currently, this is done to notify implementations when an optimization operation has begun, and when an optimization operation has succeeded. * It adds Stasis-Core messages for Local channel bridging and Local channel optimization. Local channel optimization is now two events: a Begin and an End. Some consumers of Stasis-Core may want to know when an operation is beginning so that they can 'prepare' their information; others will be more concerned about when the operation has completed, so that they can 'fix up' information. Stasis-Core allows for both, as does AMI. Review: https://reviewboard.asterisk.org/r/2552 git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@393801 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2013-07-08Fix some broken logic in sending outbound caller ID.Mark Michelson
* trust_id_outbound was required even when the caller ID was not marked private. This is against intentions and documentation. * We now check both name and number privacy instead of checking name privacy twice. git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@393793 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2013-07-07In a channel destructor dispose of items that raise Stasis message properlyMatthew Jordan
This patch reorders certain actions that may raise Stasis messages in the channel destructor such that they occur before the Stasis cache is cleared. Once the Stasis cache is cleared, its rather a bad idea to be trying to publish information about a channel. (closes issue ASTERISK-22001) Reported by: Jonathan Rose git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@393785 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2013-07-07Handle hangup logic in the Stasis message bus and consumers of Stasis messagesMatthew Jordan
This patch does the following: * It adds a new soft hangup flag AST_SOFTHANGUP_HANGUP_EXEC that is set when a channel is executing dialplan hangup logic, i.e., the 'h' extension or a hangup handler. Stasis messages now also convey the soft hangup flag so consumers of the messages can know when a channel is executing said hangup logic. * It adds a new channel flag, AST_FLAG_DEAD, which is set when a channel is well and truly dead. Not just a zombie, but dead, Jim. Manager, CEL, CDRs, and other consumers of Stasis have been updated to look for this flag to know when the channel should by lying six feet under. * The CDR engine has been updated to better handle a channel entering and leaving a bridge. Previously, a new CDR was automatically created when a channel left a bridge and put into the 'Pending' state; however, this way of handling CDRs made it difficult for the 'endbeforehexten' logic to work correctly - there was always a new CDR waiting in the hangup logic and, even if 'ended', wouldn't be the CDR people wanted to inspect in the hangup routine. This patch completely removes the Pending state and instead defers creation of the new CDR until it gets a new message that requires a new CDR. git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@393777 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2013-07-05ARI: return a 503 if Asterisk isn't fully bootedDavid M. Lee
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@393768 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2013-07-05Print error details when set nonblock failsDavid M. Lee
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@393757 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2013-07-05Document MissingParams error message for /ari/eventsDavid M. Lee
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@393749 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2013-07-05Refactor RTCP events over to Stasis; associate with channelsMatthew Jordan
This patch does the following: * It merges Jaco Kroon's patch from ASTERISK-20754, which provides channel information in the RTCP events. Because Stasis provides a cache, Jaco's patch was modified to pass the channel uniqueid to the RTP layer as opposed to a pointer to the channel. This has the following benefits: (1) It keeps the RTP engine 'clean' of references back to channels (2) It prevents circular dependencies and other potential ref counting issues * The RTP engine now allows any RTP implementation to raise RTCP messages. Potentially, other implementations (such as res_rtp_multicast) could also raise RTCP information. The engine provides structs to represent RTCP headers and RTCP SR/RR reports. * Some general refactoring in res_rtp_asterisk was done to try and tame the RTCP code. It isn't perfect - that's *way* beyond the scope of this work - but it does feel marginally better. * A few random bugs were fixed in the RTCP statistics. (Example: performing an assignment of a = a is probably not correct) * We now raise RTCP events for each SR/RR sent/received. Previously we wouldn't raise an event when we sent a RR report. Note that this work will be of use to others who want to monitor call quality or build modules that report call quality statistics. Since the events are now moving across the Stasis message bus, this is far easier to accomplish. It is also a first step (though by no means the last step) towards getting Olle's pinefrog work incorporated. Again: note that the patch by Jaco Kroon was modified slightly for this work; however, he did all of the hard work in finding the right places to set the channel in the RTP engine across the channel drivers. Much thanks goes to Jaco for his hard work here. Review: https://reviewboard.asterisk.org/r/2603/ (closes issue ASTERISK-20574) Reported by: Jaco Kroon patches: asterisk-rtcp-channel.patch uploaded by jkroon (License 5671) (closes issue ASTERISK-21471) Reported by: Matt Jordan git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@393740 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2013-07-05OneTouchRecord: Add function defined earlier: ast_bridge_features_do()Richard Mudgett
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@393729 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2013-07-05Remove parkinglot from the channel snapshotMatthew Jordan
Legacy channel drivers often include the ability to set a default parking lot on an endpoint basis; when channels are created for that endpoint, they inherit the parkinglot option. Parking used to use this option more frequently; while it is still supported, other options (such as using channel variables or creation of a custom parkinglot) are supported. More importantly, conveying the parkinglot information through a channel snapshot isn't terribly useful - it is rarely (if ever) changed on a channel and some consumers of channel snapshots, such as ARI, will never use the information. (closes issue ASTERISK-21968) Reported by: Matt Jordan git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@393716 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2013-07-04res_parking: Replace Parker snapshots with ParkerDialStringJonathan Rose
This process also involved a large amount of rework regarding how to redial the Parker when a channel leaves a parking lot due to timeout. An attended transfer channel variable has been added to attended transfers to extensions that will eventually park (but haven't at the time of transfer) as well. This resolves one of the two BUGBUG comments remaining in res_parking. (issues ASTERISK-21877) Reported by: Matt Jordan Review: https://reviewboard.asterisk.org/r/2638/ git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@393704 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2013-07-04Fix int width problem for 32-bit... againDavid M. Lee
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@393687 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2013-07-04Fix int width problem for 32-bitDavid M. Lee
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@393679 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2013-07-04Fix utils directory breakage.David M. Lee
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@393675 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2013-07-03Add BUGBUG note for ASTERISK-22009Richard Mudgett
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@393633 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2013-07-03Revert accidental overcommit.Richard Mudgett
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@393632 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2013-07-03Add BUGBUG note for ASTERISK-22009Richard Mudgett
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@393631 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2013-07-03chan_dahdi: Fix segfault reloading chan_dahdi when round robin is used.Richard Mudgett
* Clear round_robin[] in dahdi_restart(). (closes issue ASTERISK-21847) Reported by: Ivo Andonov Patches: jira_asterisk_21847_v1.8.patch (license #5621) patch uploaded by rmudgett ........ Merged revisions 393627 from http://svn.asterisk.org/svn/asterisk/branches/1.8 ........ Merged revisions 393628 from http://svn.asterisk.org/svn/asterisk/branches/11 git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@393629 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2013-07-03OneTouchRecord: Make so Monitor/MixMonitor can be toggled/started/stopped.Richard Mudgett
The OneTouchRecord feature has historically been a toggle. This patch adds the ability to make the OneTouchRecord hook optionally start/stop recording only. If OneTouchRecord is already doing what is requested then only the invoker hears the courtesy tone and/or start/stop recording message. The new feature is written so we could easily add explicit start/stop recording DTMF hooks for Monitor and MixMonitor. The majority of the changes in bridge_builtin_features.c is a refactoring of the OneTouchRecord code (Monitor and MixMonitor versions) so it is easy to direct the toggle/start/stop functionality. Review: https://reviewboard.asterisk.org/r/2655/ git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@393612 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2013-07-03Move when bridge channel enter is published so it does not interrupt the ↵Richard Mudgett
thought of some lines of code. git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@393601 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2013-07-03Fix some indentation in stasis_config.c.Richard Mudgett
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@393600 65c4cc65-6c06-0410-ace0-fbb531ad65f3