Skip to content
Snippets Groups Projects
  1. Oct 27, 2016
    • Corey Farrell's avatar
      Remove ASTERISK_REGISTER_FILE. · a6e5bae3
      Corey Farrell authored
      ASTERISK_REGISTER_FILE no longer has any purpose so this commit removes
      all traces of it.
      
      Previously exported symbols removed:
      * __ast_register_file
      * __ast_unregister_file
      * ast_complete_source_filename
      
      This also removes the mtx_prof static variable that was declared when
      MTX_PROFILE was enabled.  This variable was only used in lock.c so it
      is now initialized in that file only.
      
      ASTERISK-26480 #close
      
      Change-Id: I1074af07d71f9e159c48ef36631aa432c86f9966
      a6e5bae3
  2. 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
  3. Nov 22, 2013
  4. Nov 14, 2013
  5. Aug 02, 2013
  6. Jul 20, 2013
    • Kinsey Moore's avatar
      Add transfer support to CEL · 684c83b2
      Kinsey Moore authored
      This adds CEL support for blind and attended transfers and call pickup.
      During the course of adding this functionality I noticed that
      CONF_ENTER, CONF_EXIT, and BRIDGE_TO_CONF events are particularly
      useless without a bridge identifier, so I added that as well.
      
      This adds tests for blind transfers, several types of attended
      transfers, and call pickup.
      
      The extra field in CEL records now consists of a JSON blob whose fields
      are defined on a per-event basis.
      
      Review: https://reviewboard.asterisk.org/r/2658/
      (closes issue ASTERISK-21565)
      
      
      git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@394858 65c4cc65-6c06-0410-ace0-fbb531ad65f3
      684c83b2
  7. Sep 20, 2012
    • Richard Mudgett's avatar
      Named call pickup groups. Fixes, missing functionality, and improvements. · da5944fc
      Richard Mudgett authored
      * ASTERISK-20383
      Missing named call pickup group features:
      
      CHANNEL(callgroup) - Need CHANNEL(namedcallgroup)
      CHANNEL(pickupgroup) - Need CHANNEL(namedpickupgroup)
      Pickup() - Needs to also select from named pickup groups.
      
      * ASTERISK-20384
      Using the pickupexten, the pickup channel selection could fail even though
      there was a call it could have picked up.  In a call pickup race when
      there are multiple calls to pickup and two extensions try to pickup a
      call, it is conceivable that the loser will not pick up any call even
      though it could have picked up the next oldest matching call.
      
      Regression because of the named call pickup group feature.
      
      * See ASTERISK-20386 for the implementation improvements.  These are the
      changes in channel.c and channel.h.
      
      * Fixed some locking issues in CHANNEL().
      
      (closes issue ASTERISK-20383)
      Reported by: rmudgett
      (closes issue ASTERISK-20384)
      Reported by: rmudgett
      (closes issue ASTERISK-20386)
      Reported by: rmudgett
      Tested by: rmudgett
      
      Review: https://reviewboard.asterisk.org/r/2112/
      ........
      
      Merged revisions 373220 from http://svn.asterisk.org/svn/asterisk/branches/11
      
      
      git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@373221 65c4cc65-6c06-0410-ace0-fbb531ad65f3
      da5944fc
  8. Jul 31, 2012
  9. Apr 26, 2012
  10. Apr 25, 2012
  11. Mar 01, 2012
  12. Feb 13, 2012
  13. Jan 09, 2012
    • Terry Wilson's avatar
      Replace direct access to channel name with accessor functions · 04da92c3
      Terry Wilson authored
      There are many benefits to making the ast_channel an opaque handle, from
      increasing maintainability to presenting ways to kill masquerades. This patch
      kicks things off by taking things a field at a time, renaming the field to
      '__do_not_use_${fieldname}' and then writing setters/getters and converting the
      existing code to using them. When all fields are done, we can move ast_channel
      to a C file from channel.h and lop off the '__do_not_use_'.
      
      This patch sets up main/channel_interal_api.c to be the only file that actually
      accesses the ast_channel's fields directly. The intent would be for any API
      functions in channel.c to use the accessor functions. No more monkeying around
      with channel internals. We should use our own APIs.
      
      The interesting changes in this patch are the addition of
      channel_internal_api.c, the moving of the AST_DATA stuff from channel.c to
      channel_internal_api.c (note: the AST_DATA stuff will have to be reworked to
      use accessor functions when ast_channel is really opaque), and some re-working
      of the way channel iterators/callbacks are handled so as to avoid creating fake
      ast_channels on the stack to pass in matching data by directly accessing fields
      (since "name" is a stringfield and the fake channel doesn't init the
      stringfields, you can't use the ast_channel_name_set() function). I went with
      ast_channel_name(chan) for a getter, and ast_channel_name_set(chan, name) for a
      setter.
      
      The majority of the grunt-work for this change was done by writing a semantic
      patch using Coccinelle ( http://coccinelle.lip6.fr/ ).
      
      Review: https://reviewboard.asterisk.org/r/1655/
      
      
      git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@350223 65c4cc65-6c06-0410-ace0-fbb531ad65f3
      04da92c3
  14. Sep 13, 2011
  15. Jul 21, 2011
  16. Jul 14, 2011
  17. Jun 09, 2011
  18. May 20, 2011
  19. May 12, 2011
    • Alec L Davis's avatar
      Merged revisions 318671 via svnmerge from · 892b7a2e
      Alec L Davis authored
      https://origsvn.digium.com/svn/asterisk/branches/1.8
      
      ........
        r318671 | alecdavis | 2011-05-13 10:52:08 +1200 (Fri, 13 May 2011) | 30 lines
        
        Fix directed group pickup feature code *8 with pickupsounds enabled 
        
        Since 1.6.2, the new pickupsound and pickupfailsound in features.conf cause many issues.
        
        1). chan_sip:handle_request_invite() shouldn't be playing out the fail/success audio, as it has 'netlock' locked.
        2). dialplan applications for directed_pickups shouldn't beep.
        3). feature code for directed pickup should beep on success/failure if configured.
        
        Created a sip_pickup() thread to handle the pickup and playout the audio, spawned from handle_request_invite.
        
        Moved app_directed:pickup_do() to features:ast_do_pickup().
        
        Functions below, all now use the new ast_do_pickup()
        app_directed_pickup.c:
           pickup_by_channel()
           pickup_by_exten()
           pickup_by_mark()
           pickup_by_part()
        features.c:
           ast_pickup_call()
        
        (closes issue #18654)
        Reported by: Docent
        Patches: 
              ast_do_pickup_1.8_trunk.diff.txt uploaded by alecdavis (license 585)
        Tested by: lmadsen, francesco_r, amilcar, isis242, alecdavis, irroot, rymkus, loloski, rmudgett
        
        Review: https://reviewboard.asterisk.org/r/1185/
      ........
      
      
      git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@318672 65c4cc65-6c06-0410-ace0-fbb531ad65f3
      892b7a2e
  20. Oct 05, 2010
  21. Jul 14, 2010
    • Richard Mudgett's avatar
      ast_callerid restructuring · ec37ffbd
      Richard Mudgett authored
      The purpose of this patch is to eliminate struct ast_callerid since it has
      turned into a miscellaneous collection of various party information.
      
      Eliminate struct ast_callerid and replace it with the following struct
      organization:
      
      struct ast_party_name {
      	char *str;
      	int char_set;
      	int presentation;
      	unsigned char valid;
      };
      struct ast_party_number {
      	char *str;
      	int plan;
      	int presentation;
      	unsigned char valid;
      };
      struct ast_party_subaddress {
      	char *str;
      	int type;
      	unsigned char odd_even_indicator;
      	unsigned char valid;
      };
      struct ast_party_id {
      	struct ast_party_name name;
      	struct ast_party_number number;
      	struct ast_party_subaddress subaddress;
      	char *tag;
      };
      struct ast_party_dialed {
      	struct {
      		char *str;
      		int plan;
      	} number;
      	struct ast_party_subaddress subaddress;
      	int transit_network_select;
      };
      struct ast_party_caller {
      	struct ast_party_id id;
      	char *ani;
      	int ani2;
      };
      
      The new organization adds some new information as well.
      
      * The party name and number now have their own presentation value that can
      be manipulated independently.  ISDN supplies the presentation value for
      the name and number at different times with the possibility that they
      could be different.
      
      * The party name and number now have a valid flag.  Before this change the
      name or number string could be empty if the presentation were restricted.
      Most channel drivers assume that the name or number is then simply not
      available instead of indicating that the name or number was restricted.
      
      * The party name now has a character set value.  SIP and Q.SIG have the
      ability to indicate what character set a name string is using so it could
      be presented properly.
      
      * The dialed party now has a numbering plan value that could be useful to
      have available.
      
      The various channel drivers will need to be updated to support the new
      core features as needed.  They have simply been converted to supply
      current functionality at this time.
      
      
      The following items of note were either corrected or enhanced:
      
      * The CONNECTEDLINE() and REDIRECTING() dialplan functions were
      consolidated into func_callerid.c to share party id handling code.
      
      * CALLERPRES() is now deprecated because the name and number have their
      own presentation values.
      
      * Fixed app_alarmreceiver.c write_metadata().  The workstring[] could
      contain garbage.  It also can only contain the caller id number so using
      ast_callerid_parse() on it is silly.  There was also a typo in the
      CALLERNAME if test.
      
      * Fixed app_rpt.c using ast_callerid_parse() on the channel's caller id
      number string.  ast_callerid_parse() alters the given buffer which in this
      case is the channel's caller id number string.  Then using
      ast_shrink_phone_number() could alter it even more.
      
      * Fixed caller ID name and number memory leak in chan_usbradio.c.
      
      * Fixed uninitialized char arrays cid_num[] and cid_name[] in
      sig_analog.c.
      
      * Protected access to a caller channel with lock in chan_sip.c.
      
      * Clarified intent of code in app_meetme.c sla_ring_station() and
      dial_trunk().  Also made save all caller ID data instead of just the name
      and number strings.
      
      * Simplified cdr.c set_one_cid().  It hand coded the ast_callerid_merge()
      function.
      
      * Corrected some weirdness with app_privacy.c's use of caller
      presentation.
      
      Review:	https://reviewboard.asterisk.org/r/702/
      
      
      git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@276347 65c4cc65-6c06-0410-ace0-fbb531ad65f3
      ec37ffbd
  22. May 10, 2010
  23. Mar 02, 2010
    • David Vossel's avatar
      adds 'p' option to PickupChan · b5c98d64
      David Vossel authored
      The 'p' option allows the PickupChan app to pickup
      a ringing phone by looking for the first match to a
      partial channel name rather than requiring a full match.
      
      (closes issue #16613)
      Reported by: syspert
      Patches:
            pickipbycallid.patch uploaded by syspert (license 938)
            pickupbycallerid_v2.patch uploaded by dvossel (license 671)
      Tested by: dvossel, syspert
      
      
      
      
      git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@250141 65c4cc65-6c06-0410-ace0-fbb531ad65f3
      b5c98d64
  24. Jan 15, 2010
  25. Oct 21, 2009
    • Kevin P. Fleming's avatar
      Finish implementaton of astobj2 OBJ_MULTIPLE, and convert ast_channel_iterator to use it. · cdd1f9e2
      Kevin P. Fleming authored
      This patch finishes the implementation of OBJ_MULTIPLE in astobj2 (the
      case where multiple results need to be returned; OBJ_NODATA mode
      already was supported). In addition, it converts ast_channel_iterators
      (only the targeted versions, not the ones that iterate over all
      channels) to use this method.
      
      During this work, I removed the 'ao2_flags' arguments to the
      ast_channel_iterator constructor functions; there were no uses of that
      argument yet, there is only one possible flag to pass, and it made the
      iterators less 'opaque'. If at some point in the future someone really
      needs an ast_channel_iterator that does not lock the container, we can
      provide constructor(s) for that purpose.
      
      Review: https://reviewboard.asterisk.org/r/379/
      
      
      
      git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@225244 65c4cc65-6c06-0410-ace0-fbb531ad65f3
      cdd1f9e2
  26. Sep 14, 2009
  27. Jul 22, 2009
  28. Jul 20, 2009
  29. Jun 26, 2009
    • Russell Bryant's avatar
      Merge the new Channel Event Logging (CEL) subsystem. · 0264eef1
      Russell Bryant authored
      CEL is the new system for logging channel events.  This was inspired after
      facing many problems trying to represent what is possible to happen to a call
      in Asterisk using CDR records.  For more information on CEL, see the built in
      HTML or PDF documentation generated from the files in doc/tex/.
      
      Many thanks to Steve Murphy (murf) and Brian Degenhardt (bmd) for their hard
      work developing this code.  Also, thanks to Matt Nicholson (mnicholson) and
      Sean Bright (seanbright) for their assistance in the final push to get this
      code ready for Asterisk trunk.
      
      Review: https://reviewboard.asterisk.org/r/239/
      
      
      git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@203638 65c4cc65-6c06-0410-ace0-fbb531ad65f3
      0264eef1
  30. Jun 07, 2009
  31. Jun 01, 2009
  32. May 26, 2009
  33. May 21, 2009
    • Kevin P. Fleming's avatar
      Const-ify the world (or at least a good part of it) · e6b2e9a7
      Kevin P. Fleming authored
      This patch adds 'const' tags to a number of Asterisk APIs where they are appropriate (where the API already demanded that the function argument not be modified, but the compiler was not informed of that fact). The list includes:
      
      - CLI command handlers
      - CLI command handler arguments
      - AGI command handlers
      - AGI command handler arguments
      - Dialplan application handler arguments
      - Speech engine API function arguments
      
      In addition, various file-scope and function-scope constant arrays got 'const' and/or 'static' qualifiers where they were missing.
      
      Review: https://reviewboard.asterisk.org/r/251/
      
      
      
      git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@196072 65c4cc65-6c06-0410-ace0-fbb531ad65f3
      e6b2e9a7
  34. May 12, 2009
  35. May 05, 2009
Loading