Skip to content
Snippets Groups Projects
  1. Aug 01, 2013
  2. Jul 21, 2013
    • Matthew Jordan's avatar
      Always install safe_asterisk; add configuration file support · 54803338
      Matthew Jordan authored
      This patch modifies the behavior of safe_asterisk in two ways:
      (1) It modifies the Asterisk Makefile such that safe_asterisk is always
          installed on a 'make install'. This was done as bugfixes in the
          safe_asterisk script were not applied in previous version of Asterisk
          without first removing the old version of the script.
      (2) In order to keep a newly installed version of safe_asterisk from impacting
          local modifications, a new config file - safe_asterisk.conf.sample - has
          been provided. Settings that were previously modified in safe_asterisk can
          be set there instead.
      
      (closes issue ASTERISK-21965)
      Reported by: Jeremy Kister
      patches:
        safe_asterisk.patch uploaded by jkister (License 6232)
      
      
      git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@394939 65c4cc65-6c06-0410-ace0-fbb531ad65f3
      54803338
  3. Jul 03, 2013
    • David M. Lee's avatar
      ARI - channel recording support · a75fd322
      David M. Lee authored
      This patch is the first step in adding recording support to the
      Asterisk REST Interface.
      
      Recordings are stored in /var/spool/recording. Since recordings may be
      destructive (overwriting existing files), the API rejects attempts to
      escape the recording directory (avoiding issues if someone attempts to
      record to ../../lib/sounds/greeting, for example).
      
      (closes issue ASTERISK-21594)
      (closes issue ASTERISK-21581)
      Review: https://reviewboard.asterisk.org/r/2612/
      
      
      git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@393550 65c4cc65-6c06-0410-ace0-fbb531ad65f3
      a75fd322
    • David M. Lee's avatar
      Update events to use Swagger 1.3 subtyping, and related aftermath · c9a3d456
      David M. Lee authored
      This patch started with the simple idea of changing the /events data
      model to be more sane. The original model would send out events like:
      
          { "stasis_start": { "args": [], "channel": { ... } } }
      
      The event discriminator was the field name instead of being a value in
      the object, due to limitations in how Swagger 1.1 could model objects.
      While technically sufficient in communicating event information, it was
      really difficult to deal with in terms of client side JSON handling.
      
      This patch takes advantage of a proposed extension[1] to Swagger which
      allows type variance through the use of a discriminator field. This had
      a domino effect that made this a surprisingly large patch.
      
       [1]: https://groups.google.com/d/msg/wordnik-api/EC3rGajE0os/ey_5dBI_jWcJ
      
      In changing the models, I also had to change the swagger_model.py
      processor so it can handle the type discriminator and subtyping. I took
      that a big step forward, and using that information to generate an
      ari_model module, which can validate a JSON object against the Swagger
      model.
      
      The REST and WebSocket generators were changed to take advantage of the
      validators. If compiled with AST_DEVMODE enabled, JSON objects that
      don't match their corresponding models will not be sent out. For REST
      API calls, a 500 Internal Server response is sent. For WebSockets, the
      invalid JSON message is replaced with an error message.
      
      Since this took over about half of the job of the existing JSON
      generators, and the .to_json virtual function on messages took over the
      other half, I reluctantly removed the generators.
      
      The validators turned up all sorts of errors and inconsistencies in our
      data models, and the code. These were cleaned up, with checks in the
      code generator avoid some of the consistency problems in the future.
      
       * The model for a channel snapshot was trimmed down to match the
         information sent via AMI. Many of the field being sent were not
         useful in the general case.
       * The model for a bridge snapshot was updated to be more consistent
         with the other ARI models.
      
      Another impact of introducing subtyping was that the swagger-codegen
      documentation generator was insufficient (at least until it catches up
      with Swagger 1.2). I wanted it to be easier to generate docs for the API
      anyways, so I ported the wiki pages to use the Asterisk Swagger
      generator. In the process, I was able to clean up many of the model
      links, which would occasionally give inconsistent results on the wiki. I
      also added error responses to the wiki docs, making the wiki
      documentation more complete.
      
      Finally, since Stasis-HTTP will now be named Asterisk REST Interface
      (ARI), any new functions and files I created carry the ari_ prefix. I
      changed a few stasis_http references to ari where it was non-intrusive
      and made sense.
      
      (closes issue ASTERISK-21885)
      Review: https://reviewboard.asterisk.org/r/2639/
      
      
      
      git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@393529 65c4cc65-6c06-0410-ace0-fbb531ad65f3
      c9a3d456
  4. Jun 25, 2013
  5. Jun 19, 2013
    • David M. Lee's avatar
      Fix build problem on OS X Mountain Lion (10.8) · 6e665251
      David M. Lee authored
      For about forever, our build flags for OS X have been slightly off, but
      good enough to build and run. Apparently they aren't good enough any more.
      
      Previously, we would compile with macosx-version-min unset and link with
      it set. This combination, using GCC 4.8, on Mountain Lion, would create a
      bad executable ("Illegal Instruction: 4", or something like that)
      
      This patch consistently sets macosx-version-min for both compiling and
      linking, which makes everything happy enough to build and run.
      
      
      git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@392279 65c4cc65-6c06-0410-ace0-fbb531ad65f3
      6e665251
  6. May 31, 2013
  7. Apr 22, 2013
    • David M. Lee's avatar
      This patch adds a RESTful HTTP interface to Asterisk. · 1c21b857
      David M. Lee authored
      The API itself is documented using Swagger, a lightweight mechanism for
      documenting RESTful API's using JSON. This allows us to use swagger-ui
      to provide executable documentation for the API, generate client
      bindings in different languages, and generate a lot of the boilerplate
      code for implementing the RESTful bindings. The API docs live in the
      rest-api/ directory.
      
      The RESTful bindings are generated from the Swagger API docs using a set
      of Mustache templates.  The code generator is written in Python, and
      uses Pystache. Pystache has no dependencies, and be installed easily
      using pip. Code generation code lives in rest-api-templates/.
      
      The generated code reduces a lot of boilerplate when it comes to
      handling HTTP requests. It also helps us have greater consistency in the
      REST API.
      
      (closes issue ASTERISK-20891)
      Review: https://reviewboard.asterisk.org/r/2376/
      
      git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@386232 65c4cc65-6c06-0410-ace0-fbb531ad65f3
      1c21b857
  8. Apr 15, 2013
  9. Apr 08, 2013
  10. Apr 02, 2013
  11. Apr 01, 2013
  12. Feb 15, 2013
    • Matthew Jordan's avatar
      Add CLI configuration documentation · d04ab3c6
      Matthew Jordan authored
      This patch allows a module to define its configuration in XML in source, such
      that it can be parsed by the XML documentation engine. Documentation is
      generated in a two-pass approach:
      
      1. The documentation is first generated from the XML pulled from the source
      2. The documentation is then enhanced by the registration of configuration
         options that use the configuration framework
      
      This patch include configuration documentation for the following modules:
       * chan_motif
       * res_xmpp
       * app_confbridge
       * app_skel
       * udptl
      
      Two new CLI commands have been added:
       * config show help - show configuration help by module, category, and item
       * xmldoc dump - dump the in-memory representation of the XML documentation to
         a new XML file.
      
      Review: https://reviewboard.asterisk.org/r/2278
      Review: https://reviewboard.asterisk.org/r/2058
      
      patches:
        on review 2058 uploaded by twilson
      
      
      
      git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@381527 65c4cc65-6c06-0410-ace0-fbb531ad65f3
      d04ab3c6
  13. Feb 04, 2013
  14. Jan 18, 2013
  15. Oct 18, 2012
    • Richard Mudgett's avatar
      build_tools: Allow Asterisk to report git SHAs in version string. · b0c3d288
      Richard Mudgett authored
      Make git more attractive for managing work-in-progress.  Especially
      convenient when a potential patch set needs to be tested on multiple
      platforms since one can use git to keep all the test environments in sync
      independent of a subversion server.
      
      Now the Asterisk version will show the exact git SHA5 that was used when
      building (still appended by "M" if there are local modifications) from a
      git clone of the Asterisk repository so the developer can more easily know
      what is actually under test.
      
      You will now get this:
      
        $ asterisk -V
        Asterisk GIT-1698298
      
      Instead of this:
      
        $ asterisk -V
        Asterisk UNKNOWN__and_probably_unsupported
      
      This has zero impact for those not using git with the exception of an
      extra test in the configure script to gather git's path.  This is
      necessary to prevent "sudo make install" from failing since git may not be
      in the path in make's shell environment.
      
      (closes issue ASTERISK-20483)
      Reported by: Shaun Ruffell
      Patches:
            0001-build_tools-Allow-Asterisk-to-report-git-SHAs-in-ver.patch (license #5417) patch uploaded by Shaun Ruffell
            Modified
      ........
      
      Merged revisions 375189 from http://svn.asterisk.org/svn/asterisk/branches/1.8
      ........
      
      Merged revisions 375190 from http://svn.asterisk.org/svn/asterisk/branches/10
      ........
      
      Merged revisions 375191 from http://svn.asterisk.org/svn/asterisk/branches/11
      
      
      git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@375192 65c4cc65-6c06-0410-ace0-fbb531ad65f3
      b0c3d288
    • Andrew Latham's avatar
      Doxygen Updates - Title update · 6c20cf2d
      Andrew Latham authored
      Update and extend the configuration_file group and enable linking. Commit other cleanups from multi-version Doxygen testing.  Update title that was left behind many years ago.
      
      (issue ASTERISK-20259)
      
      
      git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@375182 65c4cc65-6c06-0410-ace0-fbb531ad65f3
      6c20cf2d
  16. Oct 13, 2012
  17. Sep 22, 2012
    • Andrew Latham's avatar
      Doxygen Updates Janitor Work · fd98835f
      Andrew Latham authored
      * Whitespace, doc-blocks, spelling, case, missing and incorrect tags.
      * Add cleanup to Makefile for the Doxygen configuration update
      * Start updating Doxygen configuration for cleaner output
      * Enable inclusion of configuration files into documentation
      * remove mantisworkflow...
      * update documentation README
      * Add markup to Tilghman's email and talk with him about updating his email, he knows...
      * no code changes on this commit other than the mentioned Makefile change
      
      (issue ASTERISK-20259)
      
      
      git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@373384 65c4cc65-6c06-0410-ace0-fbb531ad65f3
      fd98835f
  18. Sep 18, 2012
  19. Sep 11, 2012
  20. Aug 30, 2012
    • Matthew Jordan's avatar
      Clean up doxygen warnings · 8018b879
      Matthew Jordan authored
      This patch fixes numerous doxygen warnings across Asterisk.  It also updates
      the makefile to regenerate the doxygen configuration on the local system
      before running doxygen to help prevent warnings/errors on the local system.
      
      Much thanks to Andrew for tackling one of the Asterisk janitor projects!
      
      (issue ASTERISK-20259)
      Reported by: Andrew Latham
      Patches:
        doxygen_partial.diff uploaded by Andrew Latham (license 5985)
        make_progdocs.diff uploaded by Andrew Latham (license 5985)
      
      
      
      git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@371989 65c4cc65-6c06-0410-ace0-fbb531ad65f3
      8018b879
  21. Jun 25, 2012
    • Matthew Jordan's avatar
      Add AMI event documentation · 82a7409c
      Matthew Jordan authored
      This patch adds the core changes necessary to support AMI event documentation
      in the source files of Asterisk, and adds documentation to those AMI events
      defined in the core application modules.  Event documentation is built from
      the source by two new python scripts, located in build_tools:
      get_documentation.py and post_process_documentation.py.
      
      The get_documentation.py script mirrors the actions of the existing AWK
      get_documentation scripts, except that it will scan the entirety of a source
      file for Asterisk documentation.  Upon encountering it, if the documentation
      happens to be an AMI event, it will attempt to extract information about the
      event directly from the manager event macro calls that raise the event.  The
      post_process_documentation.py script combines manager event instances that
      are the same event but documented in multiple source files.  It generates
      the final core-[lang].xml file.
      
      As this process can take longer to complete than a typical 'make all', it
      is only performed if a new make target, 'full', is chosen.
      
      Review: https://reviewboard.asterisk.org/r/1967/
      
      git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@369346 65c4cc65-6c06-0410-ace0-fbb531ad65f3
      82a7409c
  22. Jun 13, 2012
  23. Jun 12, 2012
  24. Jun 01, 2012
  25. May 09, 2012
  26. Apr 12, 2012
  27. Mar 08, 2012
  28. Jan 30, 2012
    • Kevin P. Fleming's avatar
      Correct serious flaw in the top-level Makefile. · c6489d7b
      Kevin P. Fleming authored
      git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@353319 65c4cc65-6c06-0410-ace0-fbb531ad65f3
      c6489d7b
    • Kevin P. Fleming's avatar
      Address OpenSSL initialization issues when using third-party libraries. · 92ef8a6f
      Kevin P. Fleming authored
      When Asterisk is used with various third-party libraries (CURL, PostgresSQL,
      many others) that have the ability themselves to use OpenSSL, it is possible
      for conflicts to arise in how the OpenSSL libraries are initialized and
      shutdown. This patch addresses these conflicts by 'wrapping' the important
      functions from the OpenSSL libraries in a new shared library that is part
      of Asterisk itself, and is loaded in such a way as to ensure that *all*
      calls to these functions will be dispatched through the Asterisk wrapper
      functions, not the native functions.
      
      This new library is optional, but enabled by default. See the CHANGES file
      for documentation on how to disable it.
      
      Along the way, this patch also makes a few other minor changes:
      
      * Changes MODULES_DIR to ASTMODDIR throughout the build system, in order to
        more closely match what is used during run-time configuration.
      
      * Corrects some errors in the configure script where AC_CHECK_TOOLS was used
        instead of AC_PATH_PROG.
      
      * Adds a new variable for linker flags in the build system (DYLINK), used for
        producing true shared libraries (as opposed to the dynamically loadable
        modules that the build system produces for 'regular' Asterisk modules).
      
      * Moves the Makefile bits that handle installation and uninstallation of the
        main Asterisk binary into main/Makefile from the top-level Makefile.
      
      * Moves a couple of useful preprocessor macros from optional_api.h to
        asterisk.h.
      
      Review: https://reviewboard.asterisk.org/r/1006/
      
      
      git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@353317 65c4cc65-6c06-0410-ace0-fbb531ad65f3
      92ef8a6f
  29. Jan 25, 2012
    • Kevin P. Fleming's avatar
      Remove "asterisk/version.h" in favor of "asterisk/ast_version.h". · 9ee8a744
      Kevin P. Fleming authored
      A long time ago, in a land far far away, we added "asterisk/ast_version.h",
      which provides the ast_get_version() and ast_get_version_num() functions. These
      were added so that modules that needed the version information for the Asterisk
      instance they were loaded in could actually get it (as opposed the version that
      they were compiled against). We changed everything in the tree to use the
      new mechanism (although later main/test.c was added using the old method).
      However, the old mechanism was never removed, and as a result, new code is
      still trying to use it.
      
      This commit removes asterisk/version.h and replaces it with a header that
      will generate a compile-time error if you try to use it (the error message
      tells you which header you should use instead). It also removes the Makefile
      and build_tools bits that generated the file, and it updates main/test.c to
      use the 'proper' method of getting the Asterisk version information.
      
      This is an API change and thus is being committed for trunk only, but it's
      a fairly minor one and definitely improves the situation for out-of-tree
      modules.
      
      
      git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@352626 65c4cc65-6c06-0410-ace0-fbb531ad65f3
      9ee8a744
  30. Jan 17, 2012
  31. Dec 07, 2011
  32. Oct 04, 2011
Loading