Skip to content
Snippets Groups Projects
  1. Feb 04, 2011
  2. Feb 03, 2011
  3. Jan 24, 2011
    • Matthew Nicholson's avatar
      According to section 19.1.2 of RFC 3261: · e706b570
      Matthew Nicholson authored
        For each component, the set of valid BNF expansions defines exactly
        which characters may appear unescaped.  All other characters MUST be
        escaped.
      
      This patch modifies ast_uri_encode() to encode strings in line with this recommendation.  This patch also adds an ast_escape_quoted() function which escapes '"' and '\' characters in quoted strings in accordance with section 25.1 of RFC 3261.  The ast_uri_encode() function has also been modified to take an ast_flags struct describing the set of rules it should use when escaping characters to allow for it to escape SIP URIs in addition to HTTP URIs and other types of URIs or variations of those two URI types in the future.
      
      The ast_uri_decode() function has also been modified to accept an ast_flags struct describing the set of rules to use when decoding to enable decoding '+' as ' ' in legacy http URLs.
      
      The unit tests for these functions have also been updated.
      
      ABE-2705
      
      Review: https://reviewboard.asterisk.org/r/1081/
      
      
      git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@303509 65c4cc65-6c06-0410-ace0-fbb531ad65f3
      e706b570
  4. Dec 20, 2010
    • Russell Bryant's avatar
      Some scheduler API cleanup and improvements. · cc0b7e7d
      Russell Bryant authored
      Previously, I had added the ast_sched_thread stuff that was a generic scheduler
      thread implementation.  However, if you used it, it required using different
      functions for modifying scheduler contents.  This patch reworks how this is
      done and just allows you to optionally start a thread on the original scheduler
      context structure that has always been there.  This makes it trivial to switch
      to the generic scheduler thread implementation without having to touch any of
      the other code that adds or removes scheduler entries.
      
      In passing, I made some naming tweaks to add ast_ prefixes where they were not
      there before.
      
      Review: https://reviewboard.asterisk.org/r/1007/
      
      
      git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@299091 65c4cc65-6c06-0410-ace0-fbb531ad65f3
      cc0b7e7d
  5. Nov 15, 2010
  6. Oct 22, 2010
    • Mark Michelson's avatar
      Merged revisions 292741 via svnmerge from · 3964b078
      Mark Michelson authored
      https://origsvn.digium.com/svn/asterisk/branches/1.8
      
      ........
        r292741 | mmichelson | 2010-10-22 12:09:52 -0500 (Fri, 22 Oct 2010) | 12 lines
        
        Prevent multiple runs of event_sub_test from producing false failure results.
        
        The array of test subscriptions was declared "static," meaning that the
        data.count field would retain its value between runs of the test. After the
        first test run, this would result in false reports of test failures.
        
        I chose to just remove the "static" keyword from the structure since it's not
        a huge deal to construct this structure during each run of the test. Another
        alternative would have been to zero out the data.count fields of each test
        subscription instead.
      ........
      
      
      git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@292742 65c4cc65-6c06-0410-ace0-fbb531ad65f3
      3964b078
  7. Sep 30, 2010
  8. Sep 28, 2010
  9. Sep 10, 2010
  10. Sep 02, 2010
  11. Jul 29, 2010
  12. Jul 25, 2010
  13. Jul 21, 2010
  14. Jul 19, 2010
  15. Jul 16, 2010
  16. Jul 14, 2010
    • Tilghman Lesher's avatar
      Remove the old stub files, preferring the optional_api method. · 832d1296
      Tilghman Lesher authored
      (closes issue #17475)
       Reported by: tilghman
       
      Review: https://reviewboard.asterisk.org/r/695/
      
      
      git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@276490 65c4cc65-6c06-0410-ace0-fbb531ad65f3
      832d1296
    • 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
  17. Jul 13, 2010
  18. Jul 09, 2010
  19. Jun 10, 2010
  20. Jun 02, 2010
    • Richard Mudgett's avatar
      Generic Advice of Charge. · afd4454c
      Richard Mudgett authored
      Asterisk Generic AOC Representation
      - Generic AOC encode/decode routines.
        (Generic AOC must be encoded to be passed on the wire in the AST_CONTROL_AOC frame)
      - AST_CONTROL_AOC frame type to represent generic encoded AOC data
      - Manager events for AOC-S, AOC-D, and AOC-E messages
      
      Asterisk App Support
      - app_dial AOC-S pass-through support on call setup
      - app_queue AOC-S pass-through support on call setup
      
      AOC Unit Tests
      - AOC Unit Tests for encode/decode routines
      - AOC Unit Test for manager event representation.
      
      SIP AOC Support
      - Pass-through of generic AOC-D and AOC-E messages to snom phones via the
        snom AOC specification.
      - Creation of chan_sip page3 flags for the addition of the new
        'snom_aoc_enabled' sip.conf option.
      
      IAX AOC Support
      - Natively supports AOC pass-through through the use of the new
        AST_CONTROL_AOC frame type
      
      DAHDI AOC Support
      - ETSI PRI full AOC Pass-through support
      - 'aoc_enable' chan_dahdi.conf option for independently enabling
        pass-through of AOC-S, AOC-D, AOC-E.
      - 'aoce_delayhangup' option for retrieving AOC-E on disconnect.
      - DAHDI A() dial string option for requesting AOC services.
        example usage:
        ;requests AOC-S, AOC-D, and AOC-E on call setup
        exten=>1111,1,Dial(DAHDI/g1/1112/A(s,d,e))
      
      Review:	https://reviewboard.asterisk.org/r/552/
      
      
      git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@267096 65c4cc65-6c06-0410-ace0-fbb531ad65f3
      afd4454c
  21. Jun 01, 2010
  22. May 13, 2010
  23. May 06, 2010
  24. Apr 22, 2010
    • Russell Bryant's avatar
      Add ast_event subscription unit test and fix some ast_event API bugs. · 52a8ddba
      Russell Bryant authored
      This patch introduces another test in test_event.c that exercises most of the
      subscription related ast_event API calls.  I made some minor additions to the
      existing event allocation test to increase API coverage by the test code.
      Finally, I made a list in a comment of API calls not yet touched by the test
      module as a to-do list for future test development.
      
      During the development of this test code, I discovered a number of bugs in
      the event API.
      
      1) subscriptions to AST_EVENT_ALL were not handled appropriately in a couple
         of different places.  The API allows a subscription to all event types,
         but with IE parameters, just as if it was a subscription to a specific
         event type.  However, the parameters were being ignored.  This affected
         ast_event_check_subscriber() and event distribution to subscribers.
      
      2) Some of the logic in ast_event_check_subscriber() for checking subscriptions
         against query parameters was wrong.
      
      Review: https://reviewboard.asterisk.org/r/617/
      
      
      git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@258632 65c4cc65-6c06-0410-ace0-fbb531ad65f3
      52a8ddba
  25. Apr 15, 2010
  26. Apr 12, 2010
  27. Apr 11, 2010
  28. Apr 09, 2010
  29. Mar 25, 2010
    • Mark Michelson's avatar
      Add unit test for testing ACL functionality. · 49e2cd42
      Mark Michelson authored
      There are two unit tests contained here.
      
      1. "Invalid ACL" This attempts to read a bunch of badly formatted ACL entries
      and add them to a host access rule. The goal of this test is to be sure that
      all invalid entries are rejected as they should be.
      
      2. "ACL" This sets up four ACLs. One is a permit all, one is a deny all, and
      the other two have specific rules about which subnets are allowed and which
      are not. Then a set of test addresses is used to determine whether we would
      allow those addresses to access us when each ACL is applied. This test, by the
      way, was what resulted in AST-2010-003's creation.
      
      Review: https://reviewboard.asterisk.org/r/532
      
      
      
      git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@254557 65c4cc65-6c06-0410-ace0-fbb531ad65f3
      49e2cd42
  30. Mar 23, 2010
  31. Mar 17, 2010
  32. Mar 16, 2010
Loading