summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2013-11-22translate: Move freeing of frame to after it is used.Joshua Colp
When translating from one format to another it is possible to inform the translation function that the source frame should be freed. This was previously done immediately but shortly afterwards the frame that was freed was accessed and used again. This change moves code around a bit so that the frame is now freed after it has been completely used. (closes issue ASTERISK-22788) Reported by: Corey Farrell Patches: translate-access-after-free-11up.patch uploaded by coreyfarrell (license 5909) translate-access-after-free-1.8.patch uploaded by coreyfarrell (license 5909) ........ Merged revisions 403014 from http://svn.asterisk.org/svn/asterisk/branches/1.8 ........ Merged revisions 403015 from http://svn.asterisk.org/svn/asterisk/branches/11 ........ Merged revisions 403016 from http://svn.asterisk.org/svn/asterisk/branches/12 git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@403017 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2013-11-22PickupChan: Add ability to specify channel uniqueids as well as channel names.Richard Mudgett
* Made PickupChan() search by channel uniqueids if the search could not find a channel by name. * Ensured PickupChan() never considers the picking channel for pickup. * Made PickupChan() option p use a common search by name routine. The original search was erroneously case sensitive. (issue AFS-42) Review: https://reviewboard.asterisk.org/r/3017/ git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@403013 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2013-11-21app_directory: Set variable indicating reason directory exitedJonathan Rose
By the time the directory application exits, a channel variable DIRECTORY_RESULT will be set for the channel that invoked it which can be used to determine the reason for exit. The changes log and the app_directory documentation contain specific details about each of the possible values for DIRECTORY_RESULT. Review: https://reviewboard.asterisk.org/r/3016/ git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@402995 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2013-11-21ari: Fix #include to match generated headers for snakeCase resource filesDavid M. Lee
........ Merged revisions 402993 from http://svn.asterisk.org/svn/asterisk/branches/12 git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@402994 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2013-11-21ari: Fix generators for resources with camelCase names.David M. Lee
For the new deviceState resource, we need to properly generate device_state.[ch] files. ........ Merged revisions 402981 from http://svn.asterisk.org/svn/asterisk/branches/12 git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@402982 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2013-11-21res_pjsip_session: Fix memory leak of direct media format capabilitiesMatthew Jordan
The direct media format capabilities are always allocated in ast_sip_session_alloc and were not freed in the session destructor. Whoops. (This being the third whoops caught by Scott and Nitesh's valgrind work for the Asterisk Test Suite. Nifty!) ........ Merged revisions 402968 from http://svn.asterisk.org/svn/asterisk/branches/12 git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@402969 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2013-11-21voicemail: Fixup some doxygen comments.Richard Mudgett
........ Merged revisions 402956 from http://svn.asterisk.org/svn/asterisk/branches/12 git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@402957 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2013-11-21bucket: Fix scheme ref leak in __ast_bucket_scheme_register().Richard Mudgett
........ Merged revisions 402944 from http://svn.asterisk.org/svn/asterisk/branches/12 git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@402945 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2013-11-21res_pjsip_sdp_rtp: Fix use of uninitialized value in PJSIPMatthew Jordan
In PJMEDIA, pjmedia_sdp_rtpmap_to_attr will attempt to use the string rtpmap.param regardless of its length value. Simply setting the length to 0 does not prevent the garbage on the stack in rtpmap.param.ptr from being formatted in a sprintf call. This patch initializes the string to NULL so that at the very least, something is provided to the function that is predictable. ........ Merged revisions 402941 from http://svn.asterisk.org/svn/asterisk/branches/12 git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@402943 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2013-11-21res_pjsip_mwi: Fix memory leak of MWI subscriptions containerMatthew Jordan
This patch fixes a reference counting memory leak on the ao2_container created as part of create_mwi_subscriptions. When we create the container in this routine, the intent is to hand lifetime ownership over to the global container unsolicited_mwi. When ao2_global_obj_replace_unref is called, the reference count on mwi_subscriptions (the container) will be bumped by 1; however, the function does not decrement the reference count on mwi_subscriptions when this occurs. This will prevent the container from being fully disposed of when Asterisk exits (or on any subsequent call to this operation, such as during a reload). ........ Merged revisions 402940 from http://svn.asterisk.org/svn/asterisk/branches/12 git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@402942 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2013-11-21stasis: Fixed scoping problem with bridge tracking.David M. Lee
........ Merged revisions 402817 from http://svn.asterisk.org/svn/asterisk/branches/12 git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@402929 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2013-11-21ari: Add silence generator controlsDavid M. Lee
This patch adds the ability to start a silence generator on a channel via ARI. This generator will play silence on the channel (avoiding audio timeouts on the peer) until it is stopped, or some other media operation is started (like playing media, starting music on hold, etc.). (closes issue ASTERISK-22514) Review: https://reviewboard.asterisk.org/r/3019/ ........ Merged revisions 402926 from http://svn.asterisk.org/svn/asterisk/branches/12 git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@402928 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2013-11-19res_pjsip_caller_id: Don't overwrite user portion of the From header when ↵Joshua Colp
fromuser is set. The fromuser option is used to explicitly set the user within the From header. The res_pjsip_caller_id module did not take this setting into account when determining if the From header could be modified or not. (closes issue ASTERISK-22866) Reported by: Anthony Messina ........ Merged revisions 402891 from http://svn.asterisk.org/svn/asterisk/branches/12 git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@402892 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2013-11-16res_pjsip: Add support for building against pjproject with SIP transaction ↵Joshua Colp
group lock support. SIP transaction group lock support has been backported into our pjproject. Since the code now internally uses a group lock the code is now changed to unlock it if present. Note that the act of finding the transaction is what actually returns it locked. For further information about group locks check out the wiki page at: http://trac.pjsip.org/repos/wiki/Group_Lock (issue ASTERISK-22818) Reported by: Matt Jordan ........ Merged revisions 402864 from http://svn.asterisk.org/svn/asterisk/branches/12 git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@402865 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2013-11-15Confbridge: Add option to review the recording similar to announce_join_leaveJonathan Rose
Review: https://reviewboard.asterisk.org/r/3008/ git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@402854 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2013-11-15CEL: Fix crash when using CELGenUserEventKinsey Moore
This fixes a crash when CELGenUserEvent is called from the dialplan while CEL is disabled. Currently, CEL does not create its topics and forwards if it is not enabled and external entities may depend on these topics blindly since they should always be available. This patch breaks up route creation and topic/forward creation such that the CEL topics and forwards will always exist while the router and its associated routes will be torn down and recreated as necessary. (closes issue ASTERISK-22799) Review: https://reviewboard.asterisk.org/r/3010/ Reported by: Matt Jordan ........ Merged revisions 402838 from http://svn.asterisk.org/svn/asterisk/branches/12 git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@402839 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2013-11-14Pickup: Pickup() and PickupChan() parameter parsing improvements.Richard Mudgett
* Made Pickup() and PickupChan() tollerate empty pickup values. i.e., You can now have Pickup(&&exten@context). * Made PickupChan() use the standard option flag parsing code. git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@402829 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2013-11-14Pickup: Ensure using PICKUPMARK never considers the picking channel.Richard Mudgett
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@402820 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2013-11-14Say: If SAY_DTMF_INTERRUPT is set to an ast_true value, jump on DTMFJonathan Rose
Similar to how background works, if a say application is called with this variable set to 'true', 'yes', 'on', etc. then using DTMF while the say action is in progress will result in the channel jumping to that extension in the dialplan. Review: https://reviewboard.asterisk.org/r/3011/ git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@402819 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2013-11-13res_ari_channels: Add the ability to stop locally generated ringing on a ↵Joshua Colp
channel. Using the 'ring' operation it is possible to start locally generated ringback if the channel is answered. This change adds the ability to stop it by using DELETE. ........ Merged revisions 402804 from http://svn.asterisk.org/svn/asterisk/branches/12 git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@402805 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2013-11-12ari endpoints: GET /ari/endpoints/{invalid-tech} should return a 404Kevin Harwell
Was returning a 404 on a valid technology with an empty list of endpoints. Now checking against the channel tech to make sure the tech itself is valid and not just an empty list of endpoints. (issue ASTERISK-22803) Reported by: David M. Lee ........ Merged revisions 402793 from http://svn.asterisk.org/svn/asterisk/branches/12 git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@402795 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2013-11-12ari endpoints: GET /ari/endpoints/{invalid-tech} should return a 404Kevin Harwell
Implementation listing endpoints by technology returned an empty array if no matching endpoints were found. Fixed so a "404 Not Found" will be returned instead. (closes issue ASTERISK-22803) Reported by: David M. Lee ........ Merged revisions 402787 from http://svn.asterisk.org/svn/asterisk/branches/12 git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@402788 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2013-11-12Switch to a scoped lock to avoid missing unlocks in failure returns.Mark Michelson
........ Merged revisions 402769 from http://svn.asterisk.org/svn/asterisk/branches/12 git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@402778 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2013-11-12Move a NULL check to a place that makes more sense.Mark Michelson
Two variables were being checked for NULLity immediately after being declared NULL. I moved the NULL check until after the variables are allocated. This allows for the "channelvars" option in manager.conf to work as intended again. ........ Merged revisions 402767 from http://svn.asterisk.org/svn/asterisk/branches/12 git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@402768 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2013-11-12pjsip_messaging, pjsip_header_funcs: Crashes due to NULL pointer dereferencesKevin Harwell
Both res_pjsip_messaging and res_pjsip_header_funcs were causing asterisk to crash because they were trying to dereference a NULL pointer. In the case of res_pjsip_messaging it was attempting to "print" a contact header that did not exist. In fact contact headers should not be part of a SIP MESSAGE, so the offending code was simply removed. In the case of res_pjsip_header_funcs a null private channel tech was being passed to the function and then later dereferenced. Added null checks (and error logging) to the read/write function handlers to guard against crashing. (closes issue ASTERISK-22821) Reported by: Anthony Messina ........ Merged revisions 402757 from http://svn.asterisk.org/svn/asterisk/branches/12 git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@402758 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2013-11-12CELGenUserEvent: Fix error message from ast_json_packKinsey Moore
This prevents NULL from being passed into an ast_json_pack call when no extra information is passed to the application which prevents an error message about NULL arguments from being generated. ........ Merged revisions 402755 from http://svn.asterisk.org/svn/asterisk/branches/12 git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@402756 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2013-11-12Fixed a typ.David M. Lee
........ Merged revisions 402738 from http://svn.asterisk.org/svn/asterisk/branches/12 git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@402741 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2013-11-12chan_dahdi: Fix crash during caller ID readKinsey Moore
Asterisk will sometimes core dump during caller id read on analog channels due to a negative return value from the read() in my_get_callerid that slips through as a negative length argument to callerid_feed() if the errno returned by DAHDI is ELAST. This change ensures that the negative return is treated properly even when it is ELAST. (closes issue ASTERISK-22746) Reported by: Michael Walton Patches: chan_dahdi_cid_crash_fix.r401410.patch uploaded by Michael Walton (License 6502) ........ Merged revisions 402708 from http://svn.asterisk.org/svn/asterisk/branches/1.8 ........ Merged revisions 402709 from http://svn.asterisk.org/svn/asterisk/branches/11 ........ Merged revisions 402710 from http://svn.asterisk.org/svn/asterisk/branches/12 git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@402711 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2013-11-11Confbridge: add test events for dynamic menus testJonathan Rose
Adds a couple of test events for conference menu actions so that it's easy to discern when those menu actions have been triggered. (issue ASTERISK-22760) Reported by: Matt Jordan Review: https://reviewboard.asterisk.org/r/2999/ git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@402698 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2013-11-11Get rid of some inaccurate comments.Mark Michelson
I'm doing some unrelated work in app_confbridge and finding these "invalid pin" comments to be annoying. Get out! ........ Merged revisions 402686 from http://svn.asterisk.org/svn/asterisk/branches/11 ........ Merged revisions 402687 from http://svn.asterisk.org/svn/asterisk/branches/12 git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@402688 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2013-11-11app_queue: Honor penalty limits of 0Kinsey Moore
In the current app_queue code from 1.8 up to trunk the upper and lower penalties can be set to 0 but the value is interpreted to be disabled instead of actually setting limits. This is especially evident if min and max limits are set to 0 and members with penalties of 0 and 1 are in the queue since the member with penalty 1 will still receive calls. This patch adjusts the special disabled value to be INT_MAX instead of 0. (closes issue ASTERISK-20862) Review: https://reviewboard.asterisk.org/r/2995/ Reported by: Schmooze Com ........ Merged revisions 402645 from http://svn.asterisk.org/svn/asterisk/branches/1.8 ........ Merged revisions 402646 from http://svn.asterisk.org/svn/asterisk/branches/11 ........ Merged revisions 402647 from http://svn.asterisk.org/svn/asterisk/branches/12 git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@402648 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2013-11-08chan_sip: keep same local (from) tag for outgoing register requestsScott Griepentrog
For outbound register requests the tag on the From line was updated every 20 seconds prior to a successful registration and also once for each registration renewal. That behavior can possibly cause the registration to be denied because of the different tag, and is not aligned with the intention of RFC 3261 8.1.3.5 "... request constitutes a new transaction and SHOULD have the same value of the Call-ID, To, and From of the previous request...". This updates chan_sip to have a field to keep the local tag in the registration structure and use that tag for registration requests where the callid is also unchanged. (closes issue ASTERISK-12117) Reported by: Pawel Pierscionek Review: https://reviewboard.asterisk.org/r/2988/ ........ Merged revisions 402604 from http://svn.asterisk.org/svn/asterisk/branches/1.8 ........ Merged revisions 402605 from http://svn.asterisk.org/svn/asterisk/branches/11 ........ Merged revisions 402606 from http://svn.asterisk.org/svn/asterisk/branches/12 git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@402607 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2013-11-08res_stasis.c: Fix locking issues with the app_bridge_moh container.Richard Mudgett
* Fix unlinking from the app_bridges_moh container in remove_bridge_moh() without a lock under normal circumstances. * Made check ast_bridge_set_after_callback() return value in bridge_moh_create() to handle failure. * Fixed SCOPED_AO2LOCK() locking over too much scope in stasis_app_bridge_moh_channel() and stasis_app_bridge_moh_stop(). * Fixed unusual usage of ao2_unlink_flag() in control_unlink(). * Fixed orphaned bridge from off nominal path in stasis_app_bridge_create(). * Fixed strange construct in stasis_app_unsubscribe(). From a bad merge? * Made load_module() cleanup on failure. Review: https://reviewboard.asterisk.org/r/2962/ ........ Merged revisions 402593 from http://svn.asterisk.org/svn/asterisk/branches/12 git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@402595 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2013-11-08security_events: Push out security events over AMI eventsJonathan Rose
Security Events will now be written to any listener of the new 'security' class Review: https://reviewboard.asterisk.org/r/2998/ ........ Merged revisions 402584 from http://svn.asterisk.org/svn/asterisk/branches/12 git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@402585 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2013-11-08Clarify an ambiguous error message.Mark Michelson
........ Merged revisions 402582 from http://svn.asterisk.org/svn/asterisk/branches/12 git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@402583 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2013-11-08res_pjsip: Print a helpful error message if sorcery registration failsDavid M. Lee
........ Merged revisions 402570 from http://svn.asterisk.org/svn/asterisk/branches/12 git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@402572 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2013-11-08Changes from make ari-stubs after r402560David M. Lee
........ Merged revisions 402561 from http://svn.asterisk.org/svn/asterisk/branches/12 git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@402571 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2013-11-08ARI playback: Rename ARI Playback to PlaybacksKevin Harwell
Before playback was the only non plural resource. It has been renamed to playbacks for consistency. (closes issue ASTERISK-22737) Reported by: Paul Belanger ........ Merged revisions 402560 from http://svn.asterisk.org/svn/asterisk/branches/12 git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@402562 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2013-11-08ari: Add application/x-www-form-urlencoded parameter supportDavid M. Lee
ARI POST calls only accept parameters via the URL's query string. While this works, it's atypical for HTTP API's in general, and specifically frowned upon with RESTful API's. This patch adds parsing for application/x-www-form-urlencoded request bodies if they are sent in with the request. Any variables parsed this way are prepended to the variable list supplied by the query string. (closes issue ASTERISK-22743) Review: https://reviewboard.asterisk.org/r/2986/ ........ Merged revisions 402555 from http://svn.asterisk.org/svn/asterisk/branches/12 git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@402557 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2013-11-08app_dahdiras: Use waitpid instead of wait4.Kevin Harwell
Several places in the code were using wait4 while other places were using waitpid. This change makes all places use waitpid in order to make things more consistent and since the 'rusage' object passed in/out of wait4 was never used. (closes issue ASTERISK-22557) Reported by: YvesGael Patches: asterisk-11.5.1-wait4.patch uploaded by hurdman (license 6537) git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@402546 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2013-11-07PJSIP: Improve error handling in digest authenticatorJonathan Rose
Previously, regardless of whether failure to authenticate was due to lacking any authentication or actually failing authentication, the Digest Authenticator would simply return that a challenge was still needed. It will continue to do that when no authentication information is in the received SIP digest, but when authentication information is present and does not pass authentication, that will be treated as an authentication error. This is to ensure that PJSIP will issue security events indicated failed auths. ........ Merged revisions 402537 from http://svn.asterisk.org/svn/asterisk/branches/12 git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@402538 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2013-11-07ari: User better nicknames for ARI operationsDavid M. Lee
While working on building client libraries from the Swagger API, I noticed a problem with the nicknames. channel.deleteChannel() channel.answerChannel() channel.muteChannel() Etc. We put the object name in the nickname (since we were generating C code), but it makes OO generators redundant. This patch makes the nicknames more OO friendly. This resulted in a lot of name changing within the res_ari_*.so modules, but not much else. There were a couple of other fixed I made in the process. * When reversible operations (POST /hold, POST /unhold) were made more RESTful (POST /hold, DELETE /unhold), the path for the second operation was left in the API declaration. This worked, but really the two operations should have been on the same API. * The POST /unmute operation had still not been REST-ified. Review: https://reviewboard.asterisk.org/r/2940/ ........ Merged revisions 402528 from http://svn.asterisk.org/svn/asterisk/branches/12 git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@402529 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2013-11-06app_queue: crash if first agent is "busy"Kevin Harwell
If the first agent/member (via CLI "queue show") in a queue is "busy" (dnd, circuit busy, etc...) and no agents answered then app_queue would crash. This occurred because while the calling of agent(s) remained valid the channel on "busy" agent would be set to NULL and then later dereferenced upon a second "rna" function call. The original intention of the code is to have only valid "call attempt" objects (channels != NULL) checked while attempting to call agent(s). It does this by building a "call_next" list of valid "call attempt" objects. In the case of the "busy" agent subsequent builds of the valid "call attempt" list would sometimes include (the case mentioned above) an invalid "call attempt" object. The fix was to make sure the "call attempt" list was appropriately built on every iteration. A NULL sanity check was also added at the original offending spot of the crash just in case another one slipped by somehow. (closes issue ASTERISK-22644) Reported by: Marco Signorini Review: https://reviewboard.asterisk.org/r/2983/ ........ Merged revisions 402517 from http://svn.asterisk.org/svn/asterisk/branches/12 git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@402518 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2013-11-05chan_sip: Use AST_AF* defined constant when calling ast_get_ipMatthew Jordan
While the structure passed to ast_get_ip should be set memset to 0, thus initializing the ss_family member to 0, explicitly setting it to AST_AF_UNSPEC is more portable. ........ Merged revisions 402507 from http://svn.asterisk.org/svn/asterisk/branches/12 git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@402508 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2013-11-05chan_iax2: Fix incorrect usage of ast_get_ip involving uninitialized structMatthew Jordan
This started off as a fix for the failing IAX2 acl_call test in the Asterisk Test Suite. When inspecting why that test was failing, it became clear that all attempts to bind to any local loopback address was failing: [Nov 2 15:56:28] VERBOSE[15787] chan_iax2.c: == Binding IAX2 to address 127.0.0.1:4569 [Nov 2 15:56:28] DEBUG[15787] netsock2.c: Splitting '127.0.0.1' into... [Nov 2 15:56:28] DEBUG[15787] netsock2.c: ...host '127.0.0.1' and port ''. [Nov 2 15:56:28] ERROR[15787] netsock2.c: getaddrinfo("127.0.0.1", "(null)", ...): ai_family not supported [Nov 2 15:56:28] WARNING[15787] acl.c: Unable to lookup '127.0.0.1' While there's conceivably other ways for getaddrino to return EAI_FAMILY, the most common way is if AF_INET, AF_INET6, or AF_UNSPEC is not provided as the desired family. The culprit was the call to ast_get_ip, defined in acl.h. This function uses the family from the passed in addr object (which it will also populate when it returns!) when it eventually calls getaddrinfo. This patch fixes the use of ast_get_ip that were not specifying the family in chan_iax2. This prevents uninitialized use of the structure, so that the addresses resolve correctly. Review: https://reviewboard.asterisk.org/r/2991 ........ Merged revisions 402505 from http://svn.asterisk.org/svn/asterisk/branches/12 git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@402506 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2013-11-05netsock2: Define AST_AF_* enum constants to their AF_* equivalentsMatthew Jordan
This patch explicitly defines AST_AF_* enum constants to their sys/socket.h defined equivalents. It is certainly unclear why these constants actually have to exist, given that netsock2.h includes sys/socket.h; however, since the code base is already liberally sprinkled with the usage of AST_AF_* (as well as with direct calls to AF_*), this will at least keep the semantics consistent between their usage across systems. ........ Merged revisions 402503 from http://svn.asterisk.org/svn/asterisk/branches/12 git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@402504 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2013-11-05stasis_channels: Don't give preference to ANI info in channel snapshotsMatthew Jordan
When publishing channel snapshots, we currently compute the caller ID name and number by giving preference first to ani.{name|number}, then to id.{name|number}. However, when a channel driver (such as chan_sip) updates the caller ID, it typically only updates the caller ID stored in id.{name|number}. This means that we are currently giving preference to stale information. When looking at the rest of the code base, the only other place where we appear to use this same logic is in app_amd. Everywhere else, we treat the party information in ani as being separate to the party information in id. This patch publishes only the caller ID name and number in the snapshot field for caller_name and caller_num. Note that the information in ANI is still available in caller_ani. Review: https://reviewboard.asterisk.org/r/2992/ ........ Merged revisions 402501 from http://svn.asterisk.org/svn/asterisk/branches/12 git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@402502 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2013-11-04chan_sip: notify dialog info ignores presentation indicator in calleridKevin Harwell
The presentation indicator in a callerid (e.g. set by dialplan function Set(CALLERID(name-pres)= ...)) is not checked when SIP Dialog Info Notifies are generated during extension monitoring. Added a check to make sure the name and/or number presentations on the callee (remote identity) are set to allow. If they are restricted then "anonymous" is used instead. (closes issue AST-1175) Reported by: Thomas Arimont Review: https://reviewboard.asterisk.org/r/2976/ ........ Merged revisions 402450 from http://svn.asterisk.org/svn/asterisk/branches/11 ........ Merged revisions 402452 from http://svn.asterisk.org/svn/asterisk/branches/12 git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@402453 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2013-11-02vector: Uppercase API to follow C convention.Richard Mudgett
C does not support templates like C++. ........ Merged revisions 402438 from http://svn.asterisk.org/svn/asterisk/branches/12 git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@402439 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2013-11-02vector: Update API to be more flexible.Richard Mudgett
Made the vector macro API be more like linked lists. 1) Added a name parameter to ast_vector() to name the vector struct. 2) Made the API take a pointer to the vector struct instead of the struct itself. 3) Added an element cleanup macro/function parameter when removing an element from the vector for ast_vector_remove_cmp_unordered() and ast_vector_remove_elem_unordered(). 4) Added ast_vector_get_addr() in case the vector element is not a simple pointer. * Converted an inline vector usage in stasis_message_router to use the vector API. It needed the API improvements so it could be converted. * Fixed topic reference leak in router_dtor() when the stasis_message_router is destroyed. * Fixed deadlock potential in stasis_forward_all() and stasis_forward_cancel(). Locking two topics at the same time requires deadlock avoidance. * Made internal_stasis_subscribe() tolerant of a NULL topic. * Made stasis_message_router_add(), stasis_message_router_add_cache_update(), stasis_message_router_remove(), and stasis_message_router_remove_cache_update() tolerant of a NULL message_type. * Promoted a LOG_DEBUG message to LOG_ERROR as intended in dispatch_message(). Review: https://reviewboard.asterisk.org/r/2903/ ........ Merged revisions 402429 from http://svn.asterisk.org/svn/asterisk/branches/12 git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@402430 65c4cc65-6c06-0410-ace0-fbb531ad65f3