Skip to content
Snippets Groups Projects
  1. Oct 01, 2018
  2. Sep 28, 2018
  3. Sep 27, 2018
    • Corey Farrell's avatar
      astobj2: Reduce memory overhead. · 62a0db2d
      Corey Farrell authored
      Reduce options to 2-bit field, magic to 30 bit field.  Move ref_counter
      next to options and explicitly use int32_t so the fields will pack.
      
      This reduces memory overhead for every ao2 object by 8 bytes on x86_64.
      
      Change-Id: Idc1baabb35ec3b3d8de463c4fa3011eaf7fcafb5
      62a0db2d
    • Sean Bright's avatar
      config.c: Cleanup AST_INCLUDE_GLOB · ac23e5ad
      Sean Bright authored
      * In main/config.c, AST_INCLUDE_GLOB is fixed to '1' making the #ifdefs
        pointless.
      
      * In utils/extconf.c, AST_INCLUDE_GLOB is never defined so there is a
        lot of dead code.
      
      Change-Id: I1bad1a46d7466ddf90d52cc724e997195495226c
      ac23e5ad
    • George Joseph's avatar
    • Joshua Colp's avatar
    • Corey Farrell's avatar
      astobj2: Fix shutdown order. · 39bf9881
      Corey Farrell authored
      When REF_DEBUG and AO2_DEBUG are both enabled we closed the refs log
      before we shutdown astobj2_container.  This caused the AO2_DEBUG
      container registration container to be reported as a leak.
      
      Change-Id: If9111c4c21c68064b22c546d5d7a41fac430430e
      39bf9881
    • Cao Minh Hiep's avatar
      app_queue: Fix Attended transfer hangup with removing pending member. · f23a1224
      Cao Minh Hiep authored
      This issue related to setting of holdtime, announcements, member delays.
      It works well if we set the member delays to "0" and no announcements
      and no holdtime.This issue will happen if we set member delays to "1",
      "2"... or announcements or holdtime and hangs up the call during
      processing it.
      
      And here is the reason:
      (At the step of answering a phone.)
      It takes care any holdtime, announcements, member delays,
      or other options after a call has been answered if it exists.
      
      Normally, After the call has been aswered,
      and we wait for the processing one of the cases of the member delays
      or hold time or announcements finished, "if (ast_check_hangup(peer))"
      will be not executed, then queue will be updated at update_queue().
      Here, pending member will be removed.
      
      However, after the call has been aswered,
      if we hangs up the call during one of the cases of the member delays
      or hold time or announcements, "if (ast_check_hangup(peer))"
      will be executed.
      outgoing = NULL and at hangupcalls, pending members will not be removed.
      
      * This fixed patch will remove the pending member from container
      before hanging up the call with outgoing is NULL.
      
      ASTERISK-27920
      
      Reported by: Cao Minh Hiep
      Tested by: Cao Minh Hiep
      
      Change-Id: Ib780fbf48ace9d2d8eaa1270b9d530a4fc14c855
      f23a1224
  4. Sep 26, 2018
    • Moritz Fain's avatar
      res_stasis: Fix stale data in ARI bridges · f3422312
      Moritz Fain authored
      Fixed an issue that resulted in "Allocation failed" each time an ARI
      request was made to start playing MOH on a bridge.
      
      In bridge_moh_create() we were attaching the after bridge callbacks to
      chan which is the ;1 channel of the unreal channel pair.  We should have
      attached them to the ;2 channel which is pushed into the bridge by
      ast_unreal_channel_push_to_bridge().  The callbacks are called when the
      specific channel leaves the bridging system.  Since the ;1 channel is
      never put into a bridge the callbacks never get called.  The callbacks
      then never remove the moh_wrapper from the app_bridges_moh container.  As
      a result we cannot find the channel associated with the wrapper to start
      MOH because it has hungup.  This is the reason causing the reported issue.
      
      * Rather than using after bridge callbacks to cleanup, we now have
      moh_channel_thread() doing the cleanup when the channel hangs up.
      
      * Fixed moh_channel_thread() accumulating control frames on the stasis
      bridge MOH channel until MOH is stopped.  Control frames are no longer
      accumulated while MOH is playing.
      
      * Fixed channel ref counting issue.  stasis_app_bridge_moh_channel() may
      or may not return a channel ref.  As a result ast_ari_bridges_start_moh()
      wouldn't know it may have a channel ref to release.
      stasis_app_bridge_moh_channel() will now return a ref with the channel it
      returns.
      
      * Eliminated RAII_VAR in bridge_moh_create().
      
      ASTERISK-26094 #close
      
      Change-Id: Ibff479e167b3320c68aaabfada7e1d0ef7bd548c
      f3422312
    • Ben Ford's avatar
      res_rtp_asterisk.c: Add "seqno" strictrtp option · b11a6643
      Ben Ford authored
      When networks experience disruptions, there can be large gaps of time
      between receiving packets. When strictrtp is enabled, this created
      issues where a flood of packets could come in and be seen as an attack.
      Another option - seqno - has been added to the strictrtp option that
      ignores the time interval and goes strictly by sequence number for
      validity.
      
      Change-Id: I8a42b8d193673899c8fc22fe7f98ea87df89be71
      b11a6643
    • George Joseph's avatar
    • George Joseph's avatar
    • Alexei Gradinari's avatar
      res_odbc: fix missing SQL error diagnostic · e6a69ea2
      Alexei Gradinari authored
      On SQL error there is not diagnostic information about this error.
      There is only
      WARNING res_odbc.c: SQL Execute error -1!
      
      The function ast_odbc_print_errors calls a SQLGetDiagField to get the number
      of available diagnostic records, but the SQLGetDiagField returns 0.
      However SQLGetDiagRec could return one diagnostic records in this case.
      
      Looking at many example of getting diagnostics error information
      I found out that the best way it's to use only SQLGetDiagRec
      while it returns SQL_SUCCESS.
      
      Also this patch adds calls of ast_odbc_print_errors on SQL_ERROR
      to res_config_odbc.
      
      ASTERISK-28065 #close
      
      Change-Id: Iba5ae5470ac49ecd911dd084effbe9efac68ccc1
      e6a69ea2
    • George Joseph's avatar
      CI: Add --test-timeout option to runTestsuite.sh · 950d0b65
      George Joseph authored
      The default is 600 seconds.
      Also added timeouts to the *TestGroups.json files.
      
      Change-Id: I8ab6a69e704b6a10f06a0e52ede02312a2b72fe0
      950d0b65
    • George Joseph's avatar
    • pk16208's avatar
      chan_sip: SipNotify on Chan_Sip vi AMI behave different to CLI · 6627c56b
      pk16208 authored
      With tls and udp enabled asterisk generates a warning about sending
      message via udp instead of tls.
      sip notify command via cli works as expected and without warning.
      
      asterisk has to set the connection information accordingly to connection
      and not on presumption
      
      ASTERISK-28057 #close
      
      Change-Id: Ib43315aba1f2c14ba077b52d8c5b00be0006656e
      6627c56b
  5. Sep 25, 2018
    • George Joseph's avatar
      configure.ac: Check for unbound version >= 1.5 · 1ba51b00
      George Joseph authored
      In order to do this and provide good feedback, a new macro was
      created (AST_EXT_LIB_EXTRA_CHECK) which does the normal check and
      path setups for the library then compiles, links and runs a supplied
      code fragment to do the final determination.  In this case, the
      final code fragment compares UNBOUND_VERSION_MAJOR
      and UNBOUND_VERSION_MINOR to determine if they're greater than or
      equal to 1.5.
      
      Since we require version 1.5, some code in res_resolver_unbound
      was also simplified.
      
      ASTERISK-28045
      Reported by: Samuel Galarneau
      
      Change-Id: Iee94ad543cd6f8b118df8c4c7afd9c4e2ca1fa72
      1ba51b00
    • Joshua Colp's avatar
      res_rtp_asterisk: Raise event when RTP port is allocated · 8bb26484
      Joshua Colp authored
      This change raises a testsuite event to provide what port
      Asterisk has actually allocated for RTP. This ensures that
      testsuite tests can remove any assumption of ports and instead
      use the actual port in use.
      
      ASTERISK-28070
      
      Change-Id: I91bd45782e84284e01c89acf4b2da352e14ae044
      8bb26484
  6. Sep 24, 2018
Loading