Skip to content
Snippets Groups Projects
  1. Apr 13, 2015
    • Matt Jordan's avatar
      git migration: Refactor the ASTERISK_FILE_VERSION macro · 4a582616
      Matt Jordan authored
      Git does not support the ability to replace a token with a version
      string during check-in. While it does have support for replacing a
      token on clone, this is somewhat sub-optimal: the token is replaced
      with the object hash, which is not particularly easy for human
      consumption. What's more, in practice, the source file version was often
      not terribly useful. Generally, when triaging bugs, the overall version
      of Asterisk is far more useful than an individual SVN version of a file. As a
      result, this patch removes Asterisk's support for showing source file
      versions.
      
      Specifically, it does the following:
      
      * Rename ASTERISK_FILE_VERSION macro to ASTERISK_REGISTER_FILE, and
        remove passing the version in with the macro. Other facilities
        than 'core show file version' make use of the file names, such as
        setting a debug level only on a specific file. As such, the act of
        registering source files with the Asterisk core still has use. The
        macro rename now reflects the new macro purpose.
      
      * main/asterisk:
        - Refactor the file_version structure to reflect that it no longer
          tracks a version field.
        - Remove the "core show file version" CLI command. Without the file
          version, it is no longer useful.
        - Remove the ast_file_version_find function. The file version is no
          longer tracked.
        - Rename ast_register_file_version/ast_unregister_file_version to
          ast_register_file/ast_unregister_file, respectively.
      
      * main/manager: Remove value from the Version key of the ModuleCheck
        Action. The actual key itself has not been removed, as doing so would
        absolutely constitute a backwards incompatible change. However, since
        the file version is no longer tracked, there is no need to attempt to
        include it in the Version key.
      
      * UPGRADE: Add notes for:
        - Modification to the ModuleCheck AMI Action
        - Removal of the "core show file version" CLI command
      
      Change-Id: I6cf0ff280e1668bf4957dc21f32a5ff43444a40e
      4a582616
  2. Apr 09, 2015
    • Matthew Jordan's avatar
      clang compiler warnings: Fix autological comparisons · ea009872
      Matthew Jordan authored
      This fixes autological comparison warnings in the following:
       * chan_skinny: letohl may return a signed or unsigned value, depending on the
         macro chosen
       * func_curl: Provide a specific cast to CURLoption to prevent mismatch
       * cel: Fix enum comparisons where the enum can never be negative
       * enum: Fix comparison of return result of dn_expand, which returns a signed
         int value
       * event: Fix enum comparisons where the enum can never be negative
       * indications: tone_data.freq1 and freq2 are unsigned, and hence can never be
         negative
       * presencestate: Use the actual enum value for INVALID state
       * security_events: Fix enum comparisons where the enum can never be negative
       * udptl: Don't bother to check if the return value from encode_length is less
         than 0, as it returns an unsigned int
       * translate: Since the parameters are unsigned int, don't bother checking
         to see if they are negative. The cast to unsigned int would already blow
         past the matrix bounds.
       * res_pjsip_exten_state: Use a temporary value to cache the return of
         ast_hint_presence_state
       * res_stasis_playback: Fix enum comparisons where the enum can never be
         negative
       * res_stasis_recording: Add an enum value for the case where the recording
         operation is in error; fix enum comparisons
       * resource_bridges: Use enum value as opposed to -1
       * resource_channels: Use enum value as opposed to -1
      
      Review: https://reviewboard.asterisk.org/r/4533
      ASTERISK-24917
      Reported by: dkdegroot
      patches:
        rb4533.patch submitted by dkdegroot (License 6600)
      ........
      
      Merged revisions 434469 from http://svn.asterisk.org/svn/asterisk/branches/11
      ........
      
      Merged revisions 434470 from http://svn.asterisk.org/svn/asterisk/branches/13
      
      
      git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@434471 65c4cc65-6c06-0410-ace0-fbb531ad65f3
      ea009872
  3. May 09, 2014
  4. May 24, 2013
  5. May 08, 2013
    • David M. Lee's avatar
      Removed #if checks for crazy old versions of OS X. · ec53d7fa
      David M. Lee authored
      The <arpa/nameser_compat.h> was introduced way back in OS X Panther, which
      itself was end-of-lifed back in 2007. We can assume that any OS X machine
      we build on will need that header file :-)
      
      Why bother removing it? The flag we're checking (__APPLE_CC__) is actually
      Apple's build number. Self-compiled versions of GCC (such as installing the
      latest version of GCC from homebrew) sets the value to 0, making it useless
      for this sort of compile flaggery.
      
      
      git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@388045 65c4cc65-6c06-0410-ace0-fbb531ad65f3
      ec53d7fa
  6. Oct 18, 2012
  7. Jun 15, 2012
    • Kevin P. Fleming's avatar
      Multiple revisions 369001-369002 · 166b4e2b
      Kevin P. Fleming authored
      ........
        r369001 | kpfleming | 2012-06-15 10:56:08 -0500 (Fri, 15 Jun 2012) | 11 lines
        
        Add support-level indications to many more source files.
        
        Since we now have tools that scan through the source tree looking for files
        with specific support levels, we need to ensure that every file that is
        a component of a 'core' or 'extended' module (or the main Asterisk binary)
        is explicitly marked with its support level. This patch adds support-level
        indications to many more source files in tree, but avoids adding them to
        third-party libraries that are included in the tree and to source files
        that don't end up involved in Asterisk itself.
      ........
        r369002 | kpfleming | 2012-06-15 10:57:14 -0500 (Fri, 15 Jun 2012) | 3 lines
        
        Add a script to enable finding source files without support-levels defined.
      ........
      
      Merged revisions 369001-369002 from http://svn.asterisk.org/svn/asterisk/branches/1.8
      ........
      
      Merged revisions 369005 from http://svn.asterisk.org/svn/asterisk/branches/10
      
      
      git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@369013 65c4cc65-6c06-0410-ace0-fbb531ad65f3
      166b4e2b
  8. May 18, 2012
    • Matthew Jordan's avatar
      Fix a variety of memory leaks · 7b513206
      Matthew Jordan authored
      This patch addresses a number of memory leaks in a variety of modules that were
      found by a static analysis tool.  A brief summary of the changes:
      
      * app_minivm:       free ast_str objects on off nominal paths
      * app_page:         free the ast_dial object if the requested channel technology
                          cannot be appended to the dialing structure
      * app_queue:        if a penalty rule failed to match any existing rule list
                          names, the created rule would not be inserted and its memory
                          would be leaked
      * app_read:         dispose of the created silence detector in the presence of
                          off nominal circumstances
      * app_voicemail:    dispose of an allocated unique ID field for MWI event
                          un-subscribe requests in off nominal paths; dispose of
                          configuration objects when using the secret.conf option
      * chan_dahdi:       dispose of the allocated frame produced by ast_dsp_process
      * chan_iax2:        properly unref peer in CLI command "iax2 unregister"
      * chan_sip:         dispose of the allocated frame produced by sip_rtp_read's
                          call of ast_dsp_process; free memory in parse unit tests
      * func_dialgroup:   properly deref ao2 object grhead in nominal path of
                          dialgroup_read
      * func_odbc:        free resultset in off nominal paths of odbc_read
      * cli:              free match_list in off nominal paths of CLI match completion
      * config:           free comment_buffer/list_buffer when configuration file load
                          is unchanged; free the same buffers any time they were
                          created and config files were processed
      * data:             free XML nodes in various places
      * enum:             free context buffer in off nominal paths
      * features:         free ast_call_feature in off nominal paths of applicationmap
                          config processing
      * netsock2:         users of ast_sockaddr_resolve pass in an ast_sockaddr struct
                          that is allocated by the method.  Failures in
                          ast_sockaddr_resolve could result in the users of the method
                          not knowing whether or not the buffer was allocated.  The
                          method will now not allocate the ast_sockaddr struct if it
                          will return failure.
      * pbx:              cleanup hash table traversals in off nominal paths; free
                          ignore pattern buffer if it already exists for the specified
                          context
      * xmldoc:           cleanup various nodes when we no longer need them
      * main/editline:    various cleanup of pointers not being freed before being
                          assigned to other memory, cleanup along off nominal paths
      * menuselect/mxml:  cleanup of value buffer for an attribute when that attribute
                          did not specify a value
      * res_calendar*:    responses are allocated via the various *_request method
                          returns and should not be allocated in the various
                          write_event methods; ensure attendee buffer is freed if no
                          data exists in the parsed node; ensure that calendar objects
                          are de-ref'd appropriately
      * res_jabber:       free buffer in off nominal path
      * res_musiconhold:  close the DIR* object in off nominal paths
      * res_rtp_asterisk: if we run out of ports, close the rtp socket object and free
                          the rtp object
      * res_srtp:         if we fail to create the session in libsrtp, destroy the
                          temporary ast_srtp object
      
      (issue ASTERISK-19665)
      Reported by: Matt Jordan
      
      Review: https://reviewboard.asterisk.org/r/1922
      ........
      
      Merged revisions 366880 from http://svn.asterisk.org/svn/asterisk/branches/1.8
      ........
      
      Merged revisions 366881 from http://svn.asterisk.org/svn/asterisk/branches/10
      
      
      git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@366917 65c4cc65-6c06-0410-ace0-fbb531ad65f3
      7b513206
  9. Mar 22, 2012
  10. Aug 09, 2011
  11. Jul 25, 2011
  12. Jan 18, 2010
    • Jeff Peeler's avatar
      Extend max call limit duration from 24.8 days to 292+ million years. · 568c057c
      Jeff Peeler authored
      If the limit was set past MAX_INT upon answering, the call was immediately
      hung up due to overflow from the return of ast_tvdiff_ms (in ast_check_hangup).
      The time calculation functions ast_tvdiff_sec and ast_tvdiff_ms have been
      changed to return an int64_t to prevent overflow. Also the reporter suggested
      adding a message indicating the reason for the call hanging up. Given that the
      new limit is so much higher, the message (which would only really be useful in
      the overflow scenario) has been made a debug message only.
      
      (closes issue #16006)
      Reported by: viraptor
      
      
      git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@241143 65c4cc65-6c06-0410-ace0-fbb531ad65f3
      568c057c
  13. Aug 10, 2009
  14. May 28, 2009
  15. Mar 09, 2009
    • Jeff Peeler's avatar
      Add Doxygen documentation for API changes from 1.6.0 to 1.6.1 · bf0bb7b3
      Jeff Peeler authored
      Copied from my review board description:
      This is a continuation of the API changes documentation started for describing
      changes between releases. Most of the API changes were pretty simple needing
      only to be brought to attention via the new "Asterisk API Changes" list.
      However, if you see anything that needs further explanation feel free to
      supplement what is there. The current method of documenting is to add (in the
      header file): \version <ver number> <description of changes> and then to add
      the function to the change list in doxyref.h on the AstAPIChanges page. I also
      made sure all the functions that were newly added were tagged with \since
      1.6.1. I think this is a good habit to start both for the historical aspect as
      well as for the future ability to easily add a "New Asterisk API" page.
      
      Review: http://reviewboard.digium.com/r/190/
      
      
      git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@180719 65c4cc65-6c06-0410-ace0-fbb531ad65f3
      bf0bb7b3
  16. Mar 06, 2009
    • David Vossel's avatar
      Merged revisions 180532 via svnmerge from · 02de67c2
      David Vossel authored
      https://origsvn.digium.com/svn/asterisk/branches/1.4
      
      ........
        r180532 | dvossel | 2009-03-06 11:19:55 -0600 (Fri, 06 Mar 2009) | 9 lines
        
        Fix handling of backreferences for ENUM lookups
        
        enum.c did not handle regex backtraces correctly.  The '\1' in the regex is a backreference that requires a pattern match to be inserted.  The way the code used to work is that it would find the backreference and insert the entire input string minus the '+'.  This is incorrect.  The regexec() function takes in a variable called pmatch which is an array of structs containing the start and end indexes for each backreference substring.  The original code actually passed the pmatch array pointer into regexec but never did anything with it.  Now when a backtrace is found, the backtrace number is looked up in the pmatch array and the correct substring is inserted.
        
        (closes issue #14576)
        Reported by: chris-mac
        Review: http://reviewboard.digium.com/r/187/
      ........
      
      
      git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@180534 65c4cc65-6c06-0410-ace0-fbb531ad65f3
      02de67c2
  17. Sep 12, 2008
    • Tilghman Lesher's avatar
      Create a new config file status, CONFIG_STATUS_FILEINVALID for differentiating · 08af5bb3
      Tilghman Lesher authored
      when a file is invalid from when a file is missing.  This is most important when
      we have two configuration files.  Consider the following example:
      
      Old system:
      sip.conf     users.conf     Old result               New result
      ========     ==========     ==========               ==========
      Missing      Missing        SIP doesn't load         SIP doesn't load
      Missing      OK             SIP doesn't load         SIP doesn't load
      Missing      Invalid        SIP doesn't load         SIP doesn't load
      OK           Missing        SIP loads                SIP loads
      OK           OK             SIP loads                SIP loads
      OK           Invalid        SIP loads incompletely   SIP doesn't load
      Invalid      Missing        SIP doesn't load         SIP doesn't load
      Invalid      OK             SIP doesn't load         SIP doesn't load
      Invalid      Invalid        SIP doesn't load         SIP doesn't load
      
      So in the case when users.conf doesn't load because there's a typo that
      disrupts the syntax, we may only partially load users, instead of failing with
      an error, which may cause some calls not to get processed.  Worse yet, the old
      system would do this with no indication that anything was even wrong.
      
      (closes issue #10690)
       Reported by: dtyoo
       Patches: 
             20080716__bug10690.diff.txt uploaded by Corydon76 (license 14)
      
      
      git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@142992 65c4cc65-6c06-0410-ace0-fbb531ad65f3
      08af5bb3
  18. May 09, 2008
    • Brett Bryant's avatar
      The following patch adds new options and alters the default behavior of the... · 65b83815
      Brett Bryant authored
      The following patch adds new options and alters the default behavior of the ENUM* functions. The TXCIDNAME lookup function has also gotten a 
      new paramater. The new options for ENUM* functions include 'u', 's', 'i', and 'd' which return the full uri, trigger isn specific rewriting, look 
      for branches into an infrastructure enum tree, or do a direct dns lookup of a number respectively. The new paramater for TXCIDNAME adds a 
      zone-suffix argument for looking up caller id's in DNS that aren't e164.arpa.
      
      This patch is based on the original code from otmar, modified by snuffy, and tested by jtodd, me, and others.
      
      (closes issue #8089)
      Reported by: otmar
      Patches:
            20080508_bug8089-1.diff 
      	- original code by otmar (license 480), 
      	- revised by snuffy (license 35)
      Tested by: oej, otmar, jtodd, Corydon76, snuffy, alexnikolov, bbryant
      
      
      git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@115584 65c4cc65-6c06-0410-ace0-fbb531ad65f3
      65b83815
  19. Mar 26, 2008
  20. Mar 04, 2008
  21. Nov 27, 2007
  22. Nov 21, 2007
  23. Nov 19, 2007
  24. Nov 16, 2007
    • Luigi Rizzo's avatar
      Start untangling header inclusion in a way that does not affect · fdb7f7ba
      Luigi Rizzo authored
      build times - tested, there is no measureable difference before and
      after this commit.
      
      In this change:
      
      use asterisk/compat.h to include a small set of system headers:
      inttypes.h, unistd.h, stddef.h, stddint.h, sys/types.h, stdarg.h,
      stdlib.h, alloca.h, stdio.h
      
      Where available, the inclusion is conditional on HAVE_FOO_H as determined
      by autoconf.
      
      Normally, source files should not include any of the above system headers,
      and instead use either "asterisk.h" or "asterisk/compat.h" which does it
      better. 
      
      For the time being I have left alone second-level directories
      (main/db1-ast, etc.).
      
      
      
      git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@89333 65c4cc65-6c06-0410-ace0-fbb531ad65f3
      fdb7f7ba
  25. Nov 14, 2007
    • Luigi Rizzo's avatar
      make the 'name' and 'value' fields in ast_variable const char * · 7f8ecd2c
      Luigi Rizzo authored
       
      This prevents modifying the strings in the stored variables, 
      and catched a few instances where this was actually done.
      
      Given the differences between trunk and 1.4 (and the fact that this
      is effectively an API change) it is better to fix 1.4 independently.
      These are
      
      chan_sip.c::sip_register()
      chan_skinny.c:: near line 2847
      config.c:: near line 1774
      logger.c::make_components()
      res_adsi.c:: near line 1049
      
      I may have missed some instances for modules that do not build here.
      
      
      
      git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@89268 65c4cc65-6c06-0410-ace0-fbb531ad65f3
      7f8ecd2c
  26. Aug 16, 2007
  27. Jul 23, 2007
  28. Jun 14, 2007
  29. Jun 06, 2007
  30. May 15, 2007
  31. Feb 18, 2007
  32. Jan 23, 2007
  33. Dec 27, 2006
  34. Oct 31, 2006
  35. Oct 03, 2006
  36. Aug 21, 2006
  37. Jul 13, 2006
  38. Jul 12, 2006
  39. Jul 07, 2006
Loading