Skip to content
Snippets Groups Projects
  1. Feb 03, 2017
  2. Feb 02, 2017
    • zuul's avatar
    • Richard Mudgett's avatar
      Frame deferral: Revert API refactoring. · 72e3fc58
      Richard Mudgett authored
      There are several issues with deferring frames that are caused by the
      refactoring.
      
      1) The code deferring frames mishandles adding a deferred frame to the
      deferred queue.  As a result the deferred queue can only be one frame
      long.
      
      2) Deferrable frames can come directly from the channel driver as well as
      the read queue.  These frames need to be added to the deferred queue.
      
      3) Whoever is deferring frames is really only doing the __ast_read() to
      collect deferred frames and doesn't care about the returned frames except
      to detect a hangup event.  When frame deferral is completed we must make
      the normal frame processing see the hangup as a frame anyway.  As such,
      there is no need to have varying hangup frame deferral methods.  We also
      need to be aware of the AST_SOFTHANGUP_ASYNCGOTO hangup that isn't real.
      That fake hangup is to cause the PBX thread to break out of loops to go
      execute a new dialplan location.
      
      4) To properly deal with deferrable frames from the channel driver as
      pointed out by (2) above, means that it is possible to process a dialplan
      interception routine while frames are deferred because of the
      AST_CONTROL_READ_ACTION control frame.  Deferring frames is not
      implemented as a re-entrant operation so you could have the unsupported
      case of two sections of code thinking they have control of the media
      stream.
      
      A worse problem is because of the bad implementation of the AMI PlayDTMF
      action.  It can cause two threads to be deferring frames on the same
      channel at the same time.  (ASTERISK_25940)
      
      * Rather than fix all these problems simply revert the API refactoring as
      there is going to be only autoservice and safe_sleep deferring frames
      anyway.
      
      ASTERISK-26343
      
      ASTERISK-26716 #close
      
      Change-Id: I45069c779aa3a35b6c863f65245a6df2c7865496
      72e3fc58
    • zuul's avatar
      3c558b4b
    • Sean Bright's avatar
      res_odbc: Remove deprecated settings from sample configuration file · 4c51ad15
      Sean Bright authored
      ASTERISK-26704 #close
      Reported by: Anthony Messina
      
      Change-Id: I976a1f94cf79c5f31e76174c61f5c6a65fd6354f
      4c51ad15
    • zuul's avatar
  3. Feb 01, 2017
  4. Jan 31, 2017
  5. Jan 30, 2017
  6. Jan 29, 2017
  7. Jan 28, 2017
  8. Jan 27, 2017
    • George Joseph's avatar
      debug_utilities: Add ast_logescalator · ef4deb8e
      George Joseph authored
      The escalator works by creating a set of startup commands in cli.conf
      that set up logger channels and issue the debug commands for the
      subsystems specified.  If asterisk is running when it is executed,
      the same commands will be issued to the running instance.  The original
      cli.conf is saved before any changes are made and can be restored by
      executing '$prog --reset'.
      
      The log output will be stored in...
      $astlogdir/message.$uniqueid
      $astlogdir/debug.$uniqueid
      $astlogdir/dtmf.$uniqueid
      $astlogdir/fax.$uniqueid
      $astlogdir/security.$uniqueid
      $astlogdir/pjsip_history.$uniqueid
      $astlogdir/sip_history.$uniqueid
      
      Some minor tweaks were made to chan_sip, and res_pjsip_history
      so their history output could be send to a log channel as packets
      are captured.
      
      A minor tweak was also made to manager so events are output to verbose
      when "manager set debug on" is issued.
      
      Change-Id: I799f8e5013b86dc5282961b27383d134bf09e543
      ef4deb8e
    • zuul's avatar
      Merge "tests: use datadir for sound files" · 3eabae43
      zuul authored
      3eabae43
    • Torrey Searle's avatar
      libastssl/pj: libastssl/pj should have an so_version · 178b90af
      Torrey Searle authored
      Issue introduced in b59956a8.  In the non-darwin case libastssl/pj
      should be versioned.  This causes the symbol file for this lib
      to not be generated.
      
      Change-Id: Ib07ae8c40252813c488e2c1ac6204fd42816dd4c
      (cherry picked from commit 54b02791)
      178b90af
    • George Joseph's avatar
    • zuul's avatar
    • kkm's avatar
      make_build_h: handle backslashes in external strings · 138cd8d0
      kkm authored
      LikewiseOpen creates user names with a backslash in them. A gentle
      massage with sed(1) allows such strings to be inserted into build.h
      properly quoted. I am also adding the same for host name and other
      strings used in the script that are more or less user-controlled.
      
      ASTERISK-26754
      
      Change-Id: Iac5ef2b67a68ee58f35ddbf86bb818ba6eabecae
      138cd8d0
    • kkm's avatar
      app_queue: Fix queues randomly disappearing on reload · 8270d243
      kkm authored
      With 500+ queues and a reload every minute, a random queue disappears
      upon reload. The cause is mususe of the 'dead' flag. Namely, all queues
      were marked dead up front, and then "resurrected" by dropping this flag
      for those found in the configuration. But a queue marked dead can be
      removed also when control leaves the app entry point on a PBX thread.
      
      With this change, the queue is marked only not found, and at the end of
      reload only the queues that are still not found are actually marked as
      dead, so the dead flag is never reset, and set only on positively dead
      queues.
      
      ASTERISK-26755
      
      Change-Id: I3a4537aec9eb8d8aeeaa0193407e3523feb004bf
      8270d243
    • zuul's avatar
  9. Jan 26, 2017
  10. Jan 25, 2017
    • Mark Michelson's avatar
      Add reload options to CLI/AMI stale object commands. · d32bd638
      Mark Michelson authored
      Marking an object as stale in a memory cache is supposed to prime the
      cache so that the next time the item is retrieved, the stale item is
      deleted from the cache and a background task is run to re-populate the
      cache with a fresh version of the object.
      
      The problem is, there are some object types out there for which there is
      no natural reason that they would be retrieved from the backend with any
      regularity. Outbound PJSIP registrations are a good example of this. At
      startup, they are read, and an object-specific state is created that
      refers to the initially-retrieved object for all time.
      
      Adding the "reload" option to the CLI/AMI commands gives the cache the
      opportunity to manually re-retrieve the object from the backend, both
      storing the new object in the cache and applying the new object's
      configuration to the module that uses that object.
      
      Change-Id: Ieb1fe7270ceed491f057ec5cbf0e097bde96c5c8
      d32bd638
    • George Joseph's avatar
      9a0b73e3
    • Richard Mudgett's avatar
      T.140: Fix format ref and memory leaks. · 20aed30d
      Richard Mudgett authored
      * channel.c:ast_sendtext(): Fix T.140 SendText memory leak.
      
      * format_compatibility.c: T.140 RED and T.140 were swapped.
      
      * res_rtp_asterisk.c:rtp_red_init(): Fix ast_format_t140_red ref leak.
      
      * res_rtp_asterisk.c:rtp_red_init(): Fix data race after starting periodic
      scheduled red_write().
      
      * res_rtp_asterisk.c: Some other minor misc tweaks.
      
      Change-Id: Ifa27a2e0f8a966b1cf628607c86fc4374b0b88cb
      20aed30d
    • zuul's avatar
Loading