Skip to content
Snippets Groups Projects
  1. Sep 09, 2022
    • Joshua C. Colp's avatar
      pjsip: Add TLS transport reload support for certificate and key. · a0713a9f
      Joshua C. Colp authored
      This change adds support using the pjsip_tls_transport_restart
      function for reloading the TLS certificate and key, if the filenames
      remain unchanged. This is useful for Let's Encrypt and other
      situations. Note that no restart of the transport will occur if
      the certificate and key remain unchanged.
      
      ASTERISK-30186
      
      Change-Id: I9bc95a6bf791830a9491ad9fa43c17d4010028d0
      a0713a9f
  2. May 22, 2022
  3. Apr 28, 2022
    • Naveen Albert's avatar
      menuselect: Don't erroneously recompile modules. · fe6f7dcb
      Naveen Albert authored
      A bug in menuselect can cause modules that are disabled
      by default to be recompiled every time a recompilation
      occurs. This occurs for module categories that are NOT
      positive output, as for these categories, the modules
      contained in the makeopts file indicate modules which
      should NOT be selected. The existing procedure of iterating
      through these modules to mark modules as present is thus
      insufficient. This has led to modules with a default_enabled
      tag of "no" to get deleted and recompiled every time, even
      when they haven't changed.
      
      To fix this, we now modify the mark as present behavior
      for module categories that are not positive output. For
      these, we start by iterating through the module tree
      and marking all modules as present, then go back and
      mark anything contained in the makeopts file as not
      present. This ensures that makeopt selections are actually
      used properly, regardless of whether a module category
      uses positive output or not.
      
      ASTERISK-29728 #close
      
      Change-Id: Idf2974c4ed8d0ba3738a92f08a6082b234277b95
      fe6f7dcb
  4. Mar 30, 2022
  5. Mar 25, 2022
    • Hugh McMaster's avatar
      configure.ac: Use pkg-config to detect libxml2 · 64f11e0d
      Hugh McMaster authored
      Use pkg-config to detect libxml2, falling back to xml2-config if the
      former is not available.
      
      This patch ensures Asterisk continues to build on systems without
      xml2-config installed.
      
      The patch also updates the associated 'configure' files.
      
      ASTERISK-29970 #close
      
      Change-Id: I3c90dfe0b0590486cbb8e6d426a7c5c4199410c0
      64f11e0d
  6. Dec 02, 2021
  7. Nov 16, 2021
    • Josh Soref's avatar
      menuselect: Spelling fixes · 33a5c32b
      Josh Soref authored
      Correct typos of the following word families:
      
      dependency
      unless
      random
      dependencies
      delimited
      randomly
      modules
      
      ASTERISK-29714
      
      Change-Id: I3920603a8dc7c0a1852d2f885e06b1144692d40e
      33a5c32b
  8. Oct 21, 2021
    • Mike Bradeen's avatar
      various: Fix GCC 11 compilation issues. · 99a1a427
      Mike Bradeen authored
      test_voicemail_api: Use empty char* for empty_msg_ids.
      chan_skinny: Fix size of calledParty to be maximum extension.
      menuselect: Change Makefile to stop deprecated warnings. Added comments
      test_linkedlist: 'bogus' variable was manually allocated from a macro
      and the test fails if this happens but the compiler couldn't 'see' this
      and returns a warning. memset to all 0's after allocation.
      chan_ooh323: Fixed various indentation issues that triggered misleading
       indentation warnings.
      
      ASTERISK-29682
      Reported by: George Joseph
      
      Change-Id: If4fe42222c8444dc16828a42731ee53b4ce5cbbe
      99a1a427
  9. Aug 17, 2021
  10. Mar 19, 2021
  11. Mar 17, 2021
    • Joshua C. Colp's avatar
      menuselect: Add ability to set deprecated and removed versions. · efc61a96
      Joshua C. Colp authored
      The "deprecated_in" and "removed_in" information can now be
      set in MODULEINFO for a module and is then displayed in
      menuselect so users can be aware of when a module is slated
      to be deprecated and then removed.
      
      ASTERISK-29337
      
      Change-Id: I6952889cf08e0e9e99cf8b43f99b3cef4688087a
      efc61a96
  12. Jun 25, 2020
    • Joshua C. Colp's avatar
      menuselect: Resolve infinite loop in dependency scenario. · 9b504243
      Joshua C. Colp authored
      Given a scenario where a module has a dependency on both
      an external library and a module if the external library was
      available and the module was not an infinite loop would
      occur. This happened due to the code changing the dependecy
      status to no failure on each dependency checking loop
      iteration, resulting in the code thinking that it had
      gone from no failure to failure each time triggering another
      dependency check.
      
      This change makes it so that the old dependency status is
      preserved throughout the dependency checking allowing it to
      determine that after the first iteration the dependency
      status does not transition from no failure to failure.
      
      ASTERISK-28930
      
      Change-Id: Iea06d45d9fd6d8bfd068882a0bb7e23a53ec3e84
      9b504243
  13. Apr 17, 2020
  14. Apr 13, 2020
  15. Feb 26, 2020
    • Sebastian Kemper's avatar
      check_expr2: fix cross-compile/hardening issues · b7fbb9c4
      Sebastian Kemper authored
      
      When building check_expr2 with ASLR PIE hardening enabled the linker
      fails. This is resolved by adding the regular compiler flags when
      building the object files from ast_expr2f.c and ast_expr2.c.
      
      Note: The STANDALONE define is removed because it is already defined in
      _ASTCFLAGS. YY_NO_INPUT is defined so that the compile survives
      '--enable-dev-mode'.
      
      Also, a Makefile variable "CROSS_COMPILING" is added so that the
      build system doesn't try to run check_expr2 when cross-compiling,
      because that will fail the build as will.
      
      ASTERISK-28685 #close
      
      Signed-off-by: default avatarSebastian Kemper <sebastian_ml@gmx.net>
      Change-Id: If435b7db9f9ad8266245bda51c81c220f9658915
      b7fbb9c4
  16. Aug 09, 2019
  17. Jun 13, 2019
    • Joshua Colp's avatar
      res_rtp_asterisk: Add support for DTLS packet fragmentation. · a8e5cf55
      Joshua Colp authored
      This change adds support for larger TLS certificates by allowing
      OpenSSL to fragment the DTLS packets according to the configured
      MTU. By default this is set to 1200.
      
      This is accomplished by implementing our own BIO method that
      supports MTU querying. The configured MTU is returned to OpenSSL
      which fragments the packet accordingly. When a packet is to be
      sent it is done directly out the RTP instance.
      
      ASTERISK-28018
      
      Change-Id: If2d5032019a28ffd48f43e9e93ed71dbdbf39c06
      a8e5cf55
  18. Jun 11, 2019
    • Alexei Gradinari's avatar
      app_attended_transfer: new application AttendedTransfer · 3eaeb3e6
      Alexei Gradinari authored
      AttendedTransfer queues up attended transfer to the given extension.
      
      This application can be useful with Custom Dynamic Features.
      For example to make attended transfer to a predefined number.
      
      features.conf
      ;;;
      [applicationmap]
      my_atxfer => *7,self,GoSub,"my_atxfer,s,1",default
      ;;;
      
      extensions.conf
      ;;;
      [globals]
      DYNAMIC_FEATURES=my_atxfer
      TRANSFER_CONTEXT=my_transfer
      
      [my_atxfer]
      exten => s,1,AttendedTransfer(1234567890)
         same => n,Return()
      
      [my_transfer]
      include => default
      ;;;
      
      This application also can be used to completly redefine Attended transfer
      feature using dialplan. For example:
      
      features.conf
      ;;;
      [featuremap]
      atxfer => *7
      
      [applicationmap]
      custom_atxfer => *2,self,GoSub,"custom_atxfer,s,1",default
      ;;;
      
      extensions.conf
      ;;;
      [globals]
      DYNAMIC_FEATURES=custom_atxfer
      TRANSFER_CONTEXT=my_transfer
      
      [custom_atxfer]
      exten => s,1,
         same => n,Playback(pbx-transfer)
         same => n,Read(dest,dial,10,i,3,3)
         same => n,AttendedTransfer(${dest})
         same => n,Return()
      
      [my_transfer]
      include => default
      ;;;
      
      Change-Id: Ie5cfa455d0813cffd5c85a6fb117f07d8f0b903b
      3eaeb3e6
  19. Jun 07, 2019
    • Alexei Gradinari's avatar
      app_blind_transfer: new application BlindTransfer · 745cbab5
      Alexei Gradinari authored
      BlindTransfer redirects all channels currently bridged to the
      caller channel to the specified destination.
      
      This application can be useful with Custom Dynamic Features.
      For example to make blind transfer to a predefined number.
      
      features.conf
      ;;;
      [applicationmap]
      my_blindxfer => *6,self,GoSub,"my_blindxfer,s,1",default
      ;;;
      
      extensions.conf
      ;;;
      [globals]
      DYNAMIC_FEATURES=my_blindxfer
      
      [my_blindxfer]
      exten => s,1,BlindTransfer(1234567890,default)
         same => n,Return()
      ;;;
      
      This application also can be used to completly redefine Blind transfer
      feature using dialplan. For example:
      
      features.conf
      ;;;
      [featuremap]
      blindxfer =>
      
      [applicationmap]
      custom_blindxfer => ##,self,GoSub,"custom_blindxfer,s,1",default
      ;;;
      
      extensions.conf
      ;;;
      [globals]
      DYNAMIC_FEATURES=custom_blindxfer
      
      [custom_blindxfer]
      exten => s,1,
         same => n,Playback(pbx-transfer)
         same => n,Read(dest,dial,10,i,3,3)
         same => n,BlindTransfer(${dest},default)
         same => n,Return()
      ;;;
      
      Change-Id: I9d55e7f69ccfd4472dec00d62771d6de8803215a
      745cbab5
  20. Feb 28, 2019
  21. 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
  22. Sep 24, 2018
  23. Sep 21, 2018
    • Kevin Harwell's avatar
      rtp_engine: rtcp_report_to_json can overflow the ssrc integer value · 31fba4e8
      Kevin Harwell authored
      When writing an RTCP report to json the code attempts to pack the "ssrc" and
      "source_ssrc" unsigned integer values as a signed int value type. This of course
      means if the ssrc's unsigned value is greater than that which can fit into a
      signed integer value it gets converted to a negative number. Subsequently, the
      negative value goes out in the json report.
      
      This patch now packs the value as a json_int_t, which is the widest integer type
      available on a given system. This should make it so the value no longer
      overflows.
      
      Note, this was caught by two failing tests hep/rtcp-receiver/ and
      hep/rtcp-sender.
      
      Change-Id: I2af275286ee5e795b79f0c3d450d9e4b28e958b0
      Unverified
      31fba4e8
  24. Sep 17, 2018
  25. Jul 29, 2018
    • Alexander Traud's avatar
      BuildSystem: Enable ncurses for menuselect in Solaris 11. · 7418dfa2
      Alexander Traud authored
      The check for the library ncurses should use not use the header <curses.h> but
      <ncurses.h>, because on some platforms <curses.h> is not a drop-in replacement
      for <ncurses.h>: For example in Solaris, the symbol initscr is a typedef in
      <curses.h> to a symbol which does not exist in the library ncurses (initscr32).
      Simply use <ncurses.h> when you link to ncurses.
      
      Furthermore in Solaris, the header <ncurses.h> is in a subdirectory
      /usr/include/ncurses and not available via pkg-config.
      
      ASTERISK-15331
      ASTERISK-14935
      ASTERISK-12382
      ASTERISK-9107
      
      Change-Id: Ife367776b0ccf17d3fefed868245376bfb93745d
      7418dfa2
  26. Jul 18, 2018
  27. Jun 15, 2018
  28. Apr 20, 2018
    • Alexander Traud's avatar
      menuselect: Add DragonFly BSD. · d5463737
      Alexander Traud authored
      In DragonFly BSD, added libraries from ports are placed into /usr/local.
      Therefore, this directory must be added for the preprocessor, compiler, and
      linker.
      
      Beside that, the script ./configure was updated:
      * OSARCH list was outdated and not used, removed.
      * AC_CANONICAL_BUILD was not used.
      * _REENTRANT, this feature test macro is obsolete.
      
      ASTERISK-27820
      
      Change-Id: I186d88d99cfa4de6569888e12ac97bd2f441c422
      d5463737
  29. Apr 04, 2018
    • Corey Farrell's avatar
      Build System: Strip '-std=c99' from CFLAGS provided by libraries. · e40fd7a2
      Corey Farrell authored
      Asterisk requires GNU C extensions.  On some systems certain libraries
      may incorrectly push -std=c99 into CFLAGS, thus breaking the build.
      This change causes that flag to be stripped so the Asterisk build is not
      broken by those libraries.  This change is made for both pkgconfig and
      tool based libraries.
      
      ASTERISK-27629 #close
      
      Change-Id: I13389613b194abbac77becf90cd950dc168704db
      e40fd7a2
  30. Mar 01, 2018
    • Richard Mudgett's avatar
      core: Remove ABI effects of MALLOC_DEBUG. · c711e407
      Richard Mudgett authored
      This allows asterisk to be compiled with MALLOC_DEBUG to load modules
      built without MALLOC_DEBUG.  Now pre-compiled third-party modules will
      still work regardless of MALLOC_DEBUG being enabled or not.
      
      Change-Id: Ic07ad80b2c2df894db984cf27b16a69383ce0e10
      c711e407
  31. Feb 17, 2018
    • Corey Farrell's avatar
      BuildSystem: Use single bootstrap.sh for Asterisk and menuselect. · 525c0251
      Corey Farrell authored
      This causes the root bootstrap.sh script to generate configure scripts
      for both Asterisk and menuselect.  This ensures that both configure
      scripts are generated with the same version of autotools and avoids
      situations where shared autoconf macros get modified without
      regenerating the menuselect script.
      
      Change-Id: I2bfd8537bbb63b3d46b11efabbb15eaaf9ef731a
      525c0251
  32. Jan 12, 2018
  33. Dec 28, 2017
    • Corey Farrell's avatar
      menuselect: Fix check for running configure. · 6338a03c
      Corey Farrell authored
      menuselect/Makefile checks that autoconfig.h and makeopts were newer
      than the '.in' files.  Unfortunately running ./configure does not touch
      autoconfig.h unless the contents will change.
      
      Instead of looking at autoconfig.h we just need to ensure that makeopts
      is newer than configure.
      
      Also make change to configure.ac so bootstrap.sh doesn't re-add the
      extra trailing line-feed.
      
      Change-Id: Ief1f831d6717007f9cebb668c14e92782cd2b794
      6338a03c
  34. Dec 22, 2017
  35. Dec 20, 2017
    • Corey Farrell's avatar
      Fix Common Typo's. · 1b80ffa4
      Corey Farrell authored
      Fix instances of:
      * Retreive
      * Recieve
      * other then
      * different then
      * Repeated words ("the the", "an an", "and and", etc).
      * othterwise, teh
      
      ASTERISK-24198 #close
      
      Change-Id: I3809a9c113b92fd9d0d9f9bac98e9c66dc8b2d31
      1b80ffa4
  36. Dec 12, 2017
    • Corey Farrell's avatar
      menuselect: Tweak check for recently run configure. · 6a67828b
      Corey Farrell authored
      Recently menuselect has randomly produced an error stating that
      configure was just run and make had to be restarted.  I believe this is
      due to an incorrect menuselect/Makefile rule.  The original rule
      produced an error if makeopts or autoconfig.h were older than
      makeopts.in or autoconfig.h.in.  I believe this can create an issue if
      makeopts is older than autoconfig.h.in or if autoconfig.h is older than
      makeopts.in.  The new rules compare files independently.
      
      Change-Id: Ibca155035fa1392c95e33cbf25f257902abba17b
      6a67828b
  37. Nov 28, 2017
  38. Nov 17, 2017
    • Corey Farrell's avatar
      menuselect: Remove ineffective weak attribute detection. · b9f4bb59
      Corey Farrell authored
      menuselect detects compiler support for multiple styles of weak
      functions.  This is a remnant from 2013 when OPTIONAL_API required weak
      functions.  It is no longer correct for menuselect to switch
      dependencies from optional to required based on lack of weak function
      support.
      
      Note an issue remains - dependencies should switch from optional to
      required based on OPTIONAL_API being enabled or disabled.  I don't think
      this is possible.  menuselect needs to know at startup if OPTIONAL_API
      is enabled or disabled, so the only way to fix this is to remove
      OPTIONAL_API from menuselect and create a configure option.  I've left
      the code that switches in place but it's preprocessed out.
      
      Additionally removed:
      - WEAKREF variable from Asterisk makeopts.in.
      - Related disabled code from test_utils.
      - Pointless AC_REVISION call from menuselect/configure.ac.
      
      Change-Id: Ifa702e5f98eb45f338b2f131a93354632a8fb389
      b9f4bb59
  39. Nov 11, 2017
  40. Feb 23, 2017
    • frahaase's avatar
      Binaural synthesis (confbridge): Adds binaural synthesis to bridge_softmix. · 094c26aa
      frahaase authored
      Adds binaural synthesis to bridge_softmix (via convolution using libfftw3).
      Binaural synthesis is conducted at 48kHz.
      For a conference, only one spatial representation is rendered.
      The default rendering is applied for mono-capable channels.
      
      ASTERISK-26292
      
      Change-Id: Iecdb381b6adc17c961049658678f6219adae1ddf
      094c26aa
Loading