Skip to content
Snippets Groups Projects
  1. May 04, 2015
    • Matt Jordan's avatar
      contrib/ast-db-manage: Add Postgres ENUM type support in auto DTMF mode update · 75c0aa69
      Matt Jordan authored
      The upgrade script for auto DTMF mode (31cd4f4891ec) added in 88b0fa77
      failed to add ENUM support for Postgres databases. This requires a
      specific import from the sqlalchemy.dialects.postgresql package. This
      patch corrects this error, which allows for Postgres update scripts to
      be generated.
      
      ASTERISK-24706
      
      Change-Id: I4742ac8efa533cd6f18e0bdd907b339a9aedf015
      75c0aa69
  2. May 03, 2015
  3. May 02, 2015
    • Matt Jordan's avatar
      2be86117
    • Matt Jordan's avatar
    • Corey Farrell's avatar
      res_pjsip_dlg_options: Fix MODULEINFO section. · 44bbdbe3
      Corey Farrell authored
      Removed the extra space before "MODULEINFO" in res_pjsip_dlg_options.
      This extra space prevented any of the dependencies from being seen by
      menuselect, so building with default options would fail if PJSIP was
      not installed.
      
      This also makes the tool that extracts information for menuselect
      tolerant of multiple spaces in the future.
      
      ASTERISK-25033 #close
      Reported by: Peter Whisker
      
      Change-Id: Iccd54846f70c4a7a50cb5bf70b7bb5cb4bab3698
      44bbdbe3
    • D Tucny's avatar
      term: send proper reset sequence when black background is forced · e4f0a55f
      D Tucny authored
      When using the force black background command-line option or configuration
      option an invalid reset sequence is sent following a coloured output item 
      in the CLI, the result is that the colour is not 'turned off' and continues
      until the next non-default coloured text output.
      
      A reset sequence is already defined in term.c, but the ast_term_reset
      function doesn't use it, instead building it's own invalid sequence and 
      returning that.
      
      This patch changes that behaviour, removing the building of a reset sequence
      and instead using the pre-built constant 'enddata' which is a suitable reset
      sequence for this purpose.
      
      ASTERISK-24896 #close
      Reported by: Dan Tucny
      
      Change-Id: I56323899123ae3264900389cae1f5b252aa3bf43
      e4f0a55f
  4. May 01, 2015
    • Corey Farrell's avatar
      Astobj2: Fix initialization order of refdebug and AO2_DEBUG. · 8f3cee12
      Corey Farrell authored
      This ensures that refdebug is initialized before AO2_DEBUG if
      both are enabled, since AO2_DEBUG allocates a container.
      
      This change also makes AO2_DEBUG initialization critical, a
      failure will abort Asterisk startup.  This is needed since
      the failure would be caused by reg_containers allocation
      failure, and that would result in a segmentation fault by
      ao2_container_register later in startup.
      
      ASTERISK-25048 #close
      Reported by: Corey Farrell
      
      Change-Id: I9a243ea3fc5653b48b931ba6d61971cb2e530244
      8f3cee12
    • Matt Jordan's avatar
      main/pbx: Improve performance of dialplan reloads with a large number of hints · 7ac28be0
      Matt Jordan authored
      The PBX core maintains two hash tables for hints: a container of the
      actual hints (hints), along with a container of devices that are watching that
      hint (hintdevices). When a dialplan reload occurs, each hint in the hints
      container is destroyed; this requires a lookup in the container of devices to
      find the device => hint mapping object. In the current code, this performs an
      ao2_callback, iterating over each of the device to hint objects in the
      hintdevices container. For a large number of hints, this is extremely
      expensive: dialplan reloads with 20000 hints could take several minutes
      in just this phase.
      
      This patch improves the performance of this step in the dialplan reloads
      by caching which devices are watching a hint on the hint object itself.
      Since we don't want to create a circular reference, we just cache the
      name of the device. This allows us to perform a smarter ao2_callback on
      the hintdevices container during hint removal, hashing on the name of the
      device and returning an iterator to the matching names. The overall
      performance improvement is rather large, taking this step down to a number of
      seconds as opposed to minutes.
      
      In addition, this patch also registers the hint containers in the PBX
      core with the astobj2 library. This allows for reasonable debugging to
      hash collisions in those containers.
      
      ASTERISK-25040 #close
      Reported by: Matt Jordan
      
      Change-Id: Iedfc97a69d21070c50fca42275d7b3e714e59360
      7ac28be0
    • Matt Jordan's avatar
      01f3d5b7
  5. Apr 30, 2015
    • Corey Farrell's avatar
      Sample Configs: Fix syntax error in pjsip.conf · 6b208d8c
      Corey Farrell authored
      The sample pjsip.conf has a few comment lines that are missing the
      semicolons at the start of the comment, causing the config to fail
      load.
      
      Change-Id: I776a38c916a7df7ee3e072fd0b21dbf4cc457352
      6b208d8c
    • Joshua Colp's avatar
    • Mark Michelson's avatar
      Prevent potential crash on blond transfer. · dc23204a
      Mark Michelson authored
      Scenario:
      Alice calls Bob. Bob performs a blond transfer to Carol. Carol rejects
      the incoming call (or some other immediate circumstance causes Carol not
      to answer the call)
      
      What occurs in this case is that when the bridge between Alice and Bob
      breaks, Alice is told to masquerade into Bob's channel that had placed
      the call to Carol. The actual masquerade goes down without a hitch.
      However, a channel fixup callback that attempts to publish dial events
      over Stasis has a crash. The reason for this crash is that the datastore
      on Bob's channel that placed the outbound call to Carol only had a bare
      pointer to Carol's channel. Since Carol rejected the incoming call,
      Carol's channel has been hung up and freed, meaning accessing her
      channel results in a crash.
      
      The fix here is simple. The dial fixup code has been altered to hold
      references to the involved channels and to drop those references when
      freeing data.
      
      ASTERISK-25025 #close
      Reported by Chet Stevens
      
      Change-Id: I54eedda207b8ec7a69263353b43abe5746aea197
      dc23204a
    • Corey Farrell's avatar
      Build System: Fix issue with addons moduleinfo. · 47fa2ad1
      Corey Farrell authored
      The build system now scans additional sources when generating
      moduleinfo for menuselect.  Unfortunately the extra sources
      for format_mp3 only exist if downloaded.
      
      Use the Makefile macro 'wildcard' to allow moduleinfo generator
      to ignore sources that do not exist.
      
      Change-Id: I596604713b7345ce994f32197f8f6bfd9bcf4170
      47fa2ad1
    • Joshua Colp's avatar
      res_ari_device_states: Fix dependency on res_stasis_device_state. · bb6ddb3d
      Joshua Colp authored
      The res_ari_device_states module depends on res_stasis_device_state,
      not res_stasis_device_states.
      
      Change-Id: I26e02ad37f9e36bcc859867e2fad1b90452ec3de
      bb6ddb3d
    • Mark Michelson's avatar
    • Richard Mudgett's avatar
      chan_dahdi: Add the chan_dahdi.conf force_restart_unavailable_chans option. · 03c51cf5
      Richard Mudgett authored
      Some telco switches occasionally ignore ISDN RESTART requests.  The fix
      for ASTERISK-19608 added an escape clause for B channels in the restarting
      state if the telco ignores a RESTART request.  If the telco fails to
      acknowledge the RESTART then Asterisk will assume the telco acknowledged
      the RESTART on the second call attempt requesting the B channel by the
      telco.  The escape clause is good for dealing with RESTART requests in
      general but it does cause the next call for the restarting B channel to be
      rejected if the telco insists the call must go on that B channel.
      
      chan_dahdi doesn't really need to issue a RESTART request in response to
      receiving a cause 44 (Requested channel not available) code.  Sending the
      RESTART in such a situation is not required (nor prohibited) by the
      standards.  I think chan_dahdi does this for historical reasons to deal
      with buggy peers to get channels unstuck in a similar fashion as the
      chan_dahdi.conf resetinterval option.
      
      * Add the chan_dahdi.conf force_restart_unavailable_chans compatability
      option that when disabled will prevent chan_dahdi from trying to RESTART
      the channel in response to a cause 44 code.
      
      ASTERISK-25034 #close
      Reported by: Richard Mudgett
      
      Change-Id: Ib8b17a438799920f4a2038826ff99a1884042f65
      03c51cf5
    • Joshua Colp's avatar
      res_pjsip_outbound_registration: Fix double unref on error return. · 80aa9aee
      Joshua Colp authored
      When the PJSIP pjsip_regc_send function is invoked and an error
      status returned the caller currently decrements the reference count
      of the client state that it just incremented, assuming the
      registration callback would not have been invoked. In practice
      this is not correct. If the failure happens after the transaction
      has been set up the callback will still be invoked. This will
      cause the reference count to be incorrectly decremented twice, once
      by the registration callback and second by the caller of
      pjsip_regc_send.
      
      This change makes it so that whether the callback is invoked or
      not is known by the caller of pjsip_regc_send. Depending on
      this it can know whether it is responsible for decrementing the
      reference count of the client state or not.
      
      ASTERISK-25037 #close
      Reported by: Joshua Colp
      
      Change-Id: I749dc12f3a22115c49c5d7d95ff42a5fa45319de
      80aa9aee
    • Rodrigo Ramírez Norambuena's avatar
      include/asterisk/channel.h: Fix typo · 7ff3b2d4
      Rodrigo Ramírez Norambuena authored
      Change-Id: Ie584b85e16a94c255e60d0b1732ef9686464fef3
      7ff3b2d4
  6. Apr 29, 2015
Loading