Skip to content
Snippets Groups Projects
  1. Dec 01, 2017
  2. Nov 26, 2017
    • Richard Mudgett's avatar
      res_ari: Fix inverted test giving wrong error message. · 55c4d8e0
      Richard Mudgett authored
      The patch for ASTERISK_24560 inverted a test checking if the bridge name
      is being updated to a different name.
      
      * Fix the test to return "Changing bridge name is not implemented" when
      someone attempts to change the bridge name.
      
      ASTERISK-27445
      
      Change-Id: I4b70bf08b0e02e016108b077ff75b345dec12fc9
      55c4d8e0
  3. Nov 22, 2017
  4. Nov 21, 2017
    • Corey Farrell's avatar
      res_parking: Set load_pri more appropriately. · 8e150615
      Corey Farrell authored
      res_parking had an inplicit load_pri of 0 meaning it was one of the very
      first modules loaded after modules with global symbols.  Set it to
      AST_MODPRI_DEVSTATE_PROVIDER as it provides device state for parking
      lots.
      
      Change-Id: I297b6fb3ff6993ec004e667b22a74f5925906259
      8e150615
  5. Nov 20, 2017
  6. Nov 19, 2017
  7. Nov 18, 2017
    • Pirmin Walthert's avatar
      res_rtp_asterisk.c: Fix rtp source address learning for broken clients · 0ca406c2
      Pirmin Walthert authored
      Some clients do not send rtp packets every ptime ms. This can lead to
      situations in which the rtp source learning algorithm will never learn
      the address of the client. This has been discovered on a Mac mini with
      a pjsip based softphone after updating to Sierra: as soon as USB
      headsets are involved, the softphone will send the second packet 30ms
      after the first, the third 30ms after the second and the fourth 1ms
      after the third. So in the old implmentation the rtp source learning
      algorithm was repeatedly reset on the fourth packet.
      
      The patch changes the algorithm in a way that doesn't take the arrival
      time between two consecutive packets into account but the time between
      the first and the last packet of a learning sequence.
      
      The patch also fixes a second problem: when a user was using a wrong
      value for the probation setting there was a LOG_WARNING output stating
      that the value had been set to the default value instead. However
      the code for setting the value back to defaults was missing.
      
      ASTERISK-27421 #close
      
      Change-Id: If778fe07678a6fd2041eaca7cd78267d0ef4fc6c
      0ca406c2
  8. Nov 17, 2017
  9. Nov 16, 2017
  10. Nov 14, 2017
    • Joshua Colp's avatar
      pjsip / hep: Provide correct local address for Websockets. · 29e0add1
      Joshua Colp authored
      Previously for PJSIP the local address of WebSocket connections
      was set to the remote address. For logging purposes this is
      not particularly useful.
      
      The WebSocket API has been extended to allow the local
      address to be queried and this is used in PJSIP to set the
      local address to the correct value.
      
      The PJSIP HEP support has also been tweaked so that reliable
      transports always use the local address on the transport
      and do not try to (wrongly) guess. As they are connection
      based it is impossible for the source to be anything else.
      
      ASTERISK-26758
      ASTERISK-27363
      
      Change-Id: Icd305fd038ad755e2682ab2786e381f6bf29e8ca
      29e0add1
  11. Nov 13, 2017
    • Sean Bright's avatar
      sorcery: Add ast_sorcery_retrieve_by_prefix() · ffccce76
      Sean Bright authored
      Some consumers of the sorcery API use ast_sorcery_retrieve_by_regex
      only so that they can anchor the potential match as a prefix and not
      because they truly need regular expressions.
      
      Rather than using regular expressions for simple prefix lookups, add
      a new operation - ast_sorcery_retrieve_by_prefix - that does them.
      
      Change-Id: I56f4e20ba1154bd52281f995c27a429a854f6a79
      ffccce76
  12. Nov 08, 2017
    • Kevin Harwell's avatar
      AST-2017-011 - res_pjsip_session: session leak when a call is rejected · dd1a9144
      Kevin Harwell authored
      A previous commit made it so when an invite session transitioned into a
      disconnected state destruction of the Asterisk pjsip session object was
      postponed until either a transport error occurred or the event timer
      expired. However, if a call was rejected (for instance a 488) before the
      session was fully established the event timer may not have been initiated,
      or it was canceled without triggering either of the session finalizing states
      mentioned above.
      
      Really the only time destruction of the session should be delayed is when a
      BYE is being transacted. This is because it's possible in some cases for the
      session to be disconnected, but the BYE is still transacting.
      
      This patch makes it so the session object always gets released (no more
      memory leak) when the pjsip session is in a disconnected state. Except when
      the method is a BYE. Then it waits until a transport error occurs or an event
      timeout.
      
      ASTERISK-27345 #close
      
      Reported by: Corey Farrell
      
      Change-Id: I1e724737b758c20ac76d19d3611e3d2876ae10ed
      dd1a9144
    • Corey Farrell's avatar
      res_pjsip_pubsub: Fix multiple leaks on failure to append vectors. · 2c4db2a3
      Corey Farrell authored
      Change-Id: I68ece0073ea79667ca41eb10405f516f1d30d482
      2c4db2a3
    • Corey Farrell's avatar
      res_pjsip_history: Fix multiple leaks on vector append failure. · 48e96aba
      Corey Farrell authored
      Change-Id: I41e8d5183ace284095cc721f3b1fb32ade3f940f
      48e96aba
    • Corey Farrell's avatar
      res_pjsip_session: Fix multiple leaks. · ecb81ae4
      Corey Farrell authored
      * Pre-initialize cloned media state vectors to final size to ensure
        vector errors cannot happen later in the clone initialization.
      * Release session_media on vector replace failure in
        ast_sip_session_media_state_add.
      * Release clone and media_state in ast_sip_session_refresh if we fail to
        append to the stream topology, return an error.
      
      Change-Id: Ib5ffc9b198683fa7e9bf166d74d30c1334c23acb
      ecb81ae4
  13. Nov 07, 2017
  14. Nov 06, 2017
    • Corey Farrell's avatar
      res_pjsip_outbound_registration: Fix leak on vector add failure. · 7ef38d39
      Corey Farrell authored
      Change-Id: I774b88b3c9da41edd4dc8d78f095481f52f2bd46
      7ef38d39
    • Corey Farrell's avatar
      res_pjsip_exten_state: Check for vector append failure. · 8684219f
      Corey Farrell authored
      Release reference to publisher if we fail to add it to the vector.
      
      Change-Id: I64dff3f481b67b9884f37cadba7a5ccf23d084f3
      8684219f
    • Corey Farrell's avatar
      res_pjsip_config_wizard: Fix leaks and add check for malloc failure. · f899368c
      Corey Farrell authored
      wizard_apply_handler():
      - Free host if we fail to add it to the vector.
      
      wizard_mapped_observer():
      - Check for otw allocation failure.
      - Free otw if we fail to add it to the vector.
      
      Change-Id: Ib5d3bcabbd9c24dd8a3c9cc692a794a5f60243ad
      f899368c
    • Corey Farrell's avatar
      res_stasis_playback: Check for failure to append vector. · 4016884e
      Corey Farrell authored
      Free resources and return error if we fail to append the vector in
      stasis_app_control_play_uri.
      
      Change-Id: I22c4a90dd859b253f2850c6511de48b25609422b
      4016884e
    • Corey Farrell's avatar
      res_pjsip: Fix leak on error in ast_sip_auth_vector_init. · 29205e7a
      Corey Farrell authored
      Change-Id: Ib0fc7a18f3135ca8990c3984c9e15f6d26e556e8
      29205e7a
    • Corey Farrell's avatar
      res_pjproject: Handle error from adding to the buildopts vector. · 70fcc043
      Corey Farrell authored
      Change-Id: I076c7bd207c7989a23005395ce1735392657be65
      70fcc043
    • Corey Farrell's avatar
      res_ari_events: Fix use after free / double-free of JSON message. · 5247ba4b
      Corey Farrell authored
      When stasis_app_message_handler needs to queue a message for a later
      connection it needs to bump the message reference so it doesn't get
      freed when the caller releases it's reference.
      
      Change-Id: I82696df8fe723b3365c15c3f7089501da8daa892
      5247ba4b
    • Joshua Colp's avatar
      res_pjsip_pubsub: Ensure remote URI contains URI only. · 36fedea8
      Joshua Colp authored
      This change makes it so that any user of the pubsub
      API that requests the remote URI receives only the URI.
      Previously the entire string was returned, which could
      contain a display name.
      
      ASTERISK-27290
      
      Change-Id: If1d0cd6630f0a264856d31d2a67933109187a017
      36fedea8
    • Richard Mudgett's avatar
      stasis/app.c: Optimize stasis_app_get_debug_by_name() · 9771f089
      Richard Mudgett authored
      * Eliminate RAII_VAR()
      * Short circuit application name lookup if global debug enabled.
      
      Change-Id: I5f78b7bd6ca7fd2c3b07cbbe036c6a93b4681123
      9771f089
    • Richard Mudgett's avatar
      Fix ast_(v)asprintf() malloc failure usage conditions. · ee08f10d
      Richard Mudgett authored
      When (v)asprintf() fails, the state of the allocated buffer is undefined.
      The library had better not leave an allocated buffer as a result or no one
      will know to free it.  The most likely way it can return failure is for an
      allocation failure.  If the printf conversion fails then you actually have
      a threading problem which is much worse because another thread modified
      the parameter values.
      
      * Made __ast_asprintf()/__ast_vasprintf() set the returned buffer to NULL
      on failure.  That is much more useful than either an uninitialized pointer
      or a pointer that has already been freed.  Many uses won't have to check
      for failure to ensure that the buffer won't be double freed or prevent an
      attempt to free an uninitialized pointer.
      
      * stasis.c: Fixed memory leak in multi_object_blob_to_ami() allocated by
      ast_asprintf().
      
      * ari/resource_bridges.c:ari_bridges_play_helper(): Remove assignment to
      the wrong thing which is now not needed even if assigning to the right
      thing.
      
      Change-Id: Ib5252fb8850ecf0f78ed0ee2ca0796bda7e91c23
      ee08f10d
    • Sean Bright's avatar
      res_pjsip: Ignore empty TLS configuration · ca4e6b56
      Sean Bright authored
      When using realtime, fields that are not explicitly set by an
      administrator are still presented to sorcery as empty strings. Handle
      this case explicitly.
      
      In this particular case, if any of these fields are required for TLS
      support, their existence should be validated in the 'apply' handler once
      we have a complete transport definition.
      
      ASTERISK-27032 #close
      Reported by: seanchann.zhou
      
      Change-Id: Ie3b5fb421977ccdb33e415d4ec52c3fd192601b7
      ca4e6b56
    • Sean Bright's avatar
      dtls: Add support for ephemeral DTLS certificates. · 04d3785a
      Sean Bright authored
      This mimics the behavior of Chrome and Firefox and creates an ephemeral
      X.509 certificate for each DTLS session.
      
      Currently, the only supported key type is ECDSA because of its faster
      generation time, but other key types can be added in the future as
      necessary.
      
      ASTERISK-27395
      
      Change-Id: I5122e5f4b83c6320cc17407a187fcf491daf30b4
      04d3785a
  15. Nov 03, 2017
Loading