Skip to content
Snippets Groups Projects
  1. Aug 08, 2019
    • George Joseph's avatar
      CI: Escape backslashes in printenv/sort/tr · c6558e09
      George Joseph authored
      Change-Id: I52be64c8f6af2bbe15148a856d1f10cb113e1e94
      c6558e09
    • George Joseph's avatar
      CI: Add "throttle" label and "skip_gate" capability · 17908cb7
      George Joseph authored
      To make throttling by label fully active, the "throttle" option
      has to be specified with a specific label.
      
      You can now specify "skip_gate" in the Gerrit comments when you
      do a +2 code review to tell Jenkins not to actually run the
      gate.  You'd do this if you plan to manually merge the change.
      
      Also updated the "printenv" debug output to better sort multi-line
      comments.
      
      Change-Id: I4c0b1085acec4805f2ca207eebac50aad81f27e2
      17908cb7
  2. Aug 07, 2019
  3. Aug 06, 2019
    • George Joseph's avatar
    • George Joseph's avatar
    • George Joseph's avatar
      CI: Make node labels job-specific · 1a051fcf
      George Joseph authored
      Originally, the eligible nodes for a job were labelled only by
      "swdev-docker".  So basically any node could run any job.  We had
      found that allowing a node to run more than 1 gate at a time was
      problematic so we limited the nodes to processing 1 job at a time.
      With the creation of the Asterisk 17 branches however, we now have
      so many active branches that getting checks and gates through in
      a timely manner is problematic when a node can run only 1 job
      at a time.
      
      Now the nodes are also labelled by the job type they can run.
      For instance: "asterisk-check", "asterisk-gate", etc.  With the
      "Throttle Concurrent Builds" plugin, we can now allow a node to
      run more than 1 job BUT throttle by job type.  For instance:
        Allow 2 jobs but only 1 asterisk-gate at a time.
      Now a node can run 2 checks or 1 check and 1 gate or 1 gate but
      not 2 gates at a time.
      
      Change-Id: I2032bf6afbcec5c341d9b852214c0c812d3d6db5
      1a051fcf
    • Torrey Searle's avatar
      main/udptl.c: correctly handle udptl sequence wrap around · 6f77e12f
      Torrey Searle authored
      incorrect handling of UDPTL squence number wrap arounds causes
      loss of packets every time the wrap around occurs
      
      ASTERISK-28483 #close
      
      Change-Id: I33caeb2bf13c574a1ebb81714b58907091d64234
      6f77e12f
  4. Aug 01, 2019
    • Kevin Harwell's avatar
      various modules: json integer overflow · f145b585
      Kevin Harwell authored
      There were still a few places in the code that could overflow when "packing"
      a json object with a value outside the base type integer's range. For instance:
      
      unsigned int value = INT_MAX + 1
      ast_json_pack("{s: i}", value);
      
      would result in a negative number being "packed". In those situations this patch
      alters those values to a ast_json_int_t, which widens the value up to a long or
      long long.
      
      ASTERISK-28480
      
      Change-Id: Ied530780d83e6f1772adba0e28d8938ef30c49a1
      f145b585
    • Sean Bright's avatar
      res_musiconhold: Use a vector instead of custom array allocation · bb74c691
      Sean Bright authored
      Change-Id: Ic476a56608b1820ca93dcf68d10cd76fc0b94141
      bb74c691
    • Joshua Colp's avatar
      res_pjsip: Fix multiple of the same contact in "pjsip show contacts". · c6a34ddb
      Joshua Colp authored
      The code for gathering contacts could result in the same contact
      being retrieved and added to the list multiple times. The container
      which stores the contacts to display will now only allow a contact
      to be added to it once instead of multiple times.
      
      ASTERISK-28228
      
      Change-Id: I805185cfcec03340f57d2b9e6cc43c49401812df
      c6a34ddb
  5. Jul 31, 2019
  6. Jul 30, 2019
    • Sean Bright's avatar
      manager: Send fewer packets · 5096a5dd
      Sean Bright authored
      The functions that build manager message headers do so in a way that
      results in a single messages being split across multiple packets. While
      this doesn't matter to the remote end, it makes network captures noisier
      and harder to follow, and also means additional system calls.
      
      With this patch, we build up more of the message content into the TLS
      buffer before flushing to the network. This change is completely
      internal to the manager code and does not affect any of the existing
      API's consumers.
      
      Change-Id: I50128b0769060ca5272dbbb5e60242d131eaddf9
      5096a5dd
  7. Jul 29, 2019
  8. Jul 26, 2019
  9. Jul 25, 2019
  10. Jul 24, 2019
  11. Jul 23, 2019
  12. Jul 19, 2019
  13. Jul 18, 2019
    • Asterisk Development Team's avatar
    • Walter Doekes's avatar
      sched: Don't allow ast_sched_del to deadlock ast_sched_runq from same thread · 34492401
      Walter Doekes authored
      When fixing ASTERISK~24212, a change was done so a scheduled callback could not
      be removed while it was running. The caller of ast_sched_del would have to wait.
      
      However, when the caller of ast_sched_del is the callback itself (however wrong
      this might be), this new check would cause a deadlock: it would wait forever
      for itself.
      
      This changeset introduces an additional check: if ast_sched_del is called
      by the callback itself, it is immediately rejected (along with an ERROR log and
      a backtrace). Additionally, the AST_SCHED_DEL_UNREF macro is adjusted so the
      after-ast_sched_del-refcall function is only run if ast_sched_del returned
      success.
      
      This should fix the following spurious race condition found in chan_sip:
      - thread 1: schedule sip_poke_peer_now (using AST_SCHED_REPLACE)
      - thread 2: run sip_poke_peer_now
      - thread 2: blank out sched-ID (too soon!)
      - thread 1: set sched-ID (too late!)
      - thread 2: try to delete the currently running sched-ID
      
      After this fix, an ERROR would be logged, but no deadlocks (in do_monitor) nor
      excess calls to sip_unref_peer(peer) (causing double frees of rtp_instances and
      other madness) should occur.
      
      (Thanks Richard Mudgett for reviewing/improving this "scary" change.)
      
      Note that this change does not fix the observed race condition: unlocked
      access to peer->pokeexpire (and potentially other scheduled items in chan_sip),
      causing AST_SCHED_DEL_UNREF to look at a changing id. But it will make the
      deadlock go away. And in the observed case, it will not have adverse affects
      (like memory leaks) because the scheduled item is removed through a different
      path.
      
      ASTERISK-28282
      
      Change-Id: Ic26777fa0732725e6ca7010df17af77a012aa856
      34492401
  14. Jul 16, 2019
    • George Joseph's avatar
      Build: Add separate header install/uninstall targets · aaafe8a1
      George Joseph authored
      Two new Makefile targets have been added... "install-headers" and
      "uninstall-headers" to separately control header installation.
      The existing behavior has not changed so "make install" and
      "make uninstall" will continue to also install/uninstall the headers.
      The new targets were added for forward compatibility with Asterisk 17
      in which the headers are no longer installed/uninstalled with the
      "install" and "uninstall" targets.
      
      Also corrects an issue where /usr/include/asterisk.h was never
      being removed at all.
      
      Change-Id: Ia7399f3a0203a4825fc4a9f43b9034dae9a2b643
      aaafe8a1
  15. Jul 15, 2019
    • Kevin Harwell's avatar
      manager: Log AMI actions · d2eaba48
      Kevin Harwell authored
      When manager debugging is turned on, this patch makes it so incoming AMI actions
      are now also logged.
      
      Change-Id: I8047524510e7ac97d99482b2448f8e368f29cd47
      d2eaba48
  16. Jul 14, 2019
  17. Jul 11, 2019
  18. Jul 08, 2019
    • Tzafrir Cohen's avatar
      openr2(1/6): bugfix in configuration saving · d8bf4b16
      Tzafrir Cohen authored
      
      Details:
        - The memcpy() call copied part of "dahdi_conf" and not "dahdi_conf.mfcr2"
        - As a result, the memcmp() in dahdi_r2_get_link() always fails
        - This cause dahdi_r2_get_link() to create new link for every channel
          (instead of a new link for every ~30 channels)
        - With the fix, far less links are generated -- so we use far less threads
      
      Change-Id: I7259dd6272f5e46e8a6c7f5bf3e8c2ec01b8c132
      Signed-off-by: default avatarOron Peled <oron.peled@xorcom.com>
      d8bf4b16
Loading