Commit Graph

1007 Commits

Author SHA1 Message Date
Sean Bright
e880b4a205 Make 'iax2 show callnumber usage' output make sense when an IP is passed in.
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.8@356107 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2012-02-21 11:16:23 +00:00
Sean Bright
cb8d4a1d50 Remove spurious warning when 'qualifyfreqnotok' is set successfully.
(closes issue ASTERISK-17176)
Reported by: John Covert
Tested by: Sean Bright
Patches:
   chan_iax2.c.qualifyfreqnotok.patch uploaded by John Covert (license 5512)


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.8@355997 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2012-02-20 18:38:28 +00:00
Sean Bright
4b59946c41 Add some boilerplate documentation for IAXVAR and IAXPEER.
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.8@355904 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2012-02-19 18:04:52 +00:00
Sean Bright
3925b8fdc9 Set the length of the ast_sockaddr, so that we can set it's port later.
Without this, the call to ast_sockaddr_set_port a few lines later is a noop.


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.8@355901 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2012-02-19 17:49:45 +00:00
Sean Bright
0106636e42 Don't allow trunkfreq to be greater than 1000ms.
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.8@355793 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2012-02-17 22:01:49 +00:00
Sean Bright
338fd29f44 Pass the correct value to ast_timer_set_rate() for IAX2 trunking.
IAX2 uses the trunkfreq variable to determine how often to send trunk packets, but
this value is in milliseconds while ast_timer_set_rate() expects the rate argument
to be ticks per second.  So we divide 1000 by trunkfreq and pass that in instead.

With a default of 20ms, this change makes IAX2 send trunk packets every 20ms
instead of every 50ms.

Tracked down by myself and Bob Wienholt.


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.8@355746 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2012-02-17 19:32:52 +00:00
Sean Bright
dfe4ff5337 When IAX2 debugging is enabled, make sure to log 'apathetic' messages too.
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.8@355529 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2012-02-15 19:26:38 +00:00
Sean Bright
314dcc01bc Only use maxtrunkcall and maxnontrunkcall in chan_iax2 if IAX_OLD_FIND is specified.
These variables are only accessed from the IAX_OLD_FIND path, so there is no reason
to keep them updated otherwise.


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.8@355458 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2012-02-15 18:19:46 +00:00
Sean Bright
62b7e35b71 Use TRUNK_CALL_START as originally intended.
Back in r646, TRUNK_CALL_START was added and defined as 0x4000.  That same value
was also hard-coded in one part of the IAX2 code instead of using the #define.

TRUNK_CALL_START has changed over the years (for dealing with LOW_MEMORY), but
the hard-coded usage was never updated to match.  This patch fixes that.


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.8@355448 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2012-02-15 17:24:22 +00:00
Sean Bright
94ade43b56 Clear the high order bit from the destination call number before sending.
send_apathetic_reply takes the incoming frame's source call number as the
destination call number for the outgoing frame.  If the incoming frame was a
full frame, then the high order bit of the source call number is set and will be
interpreted as a retransmit when sent back out as the destination call number.


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.8@355182 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2012-02-14 13:33:09 +00:00
Richard Mudgett
a55030f4fa Audit of ao2_iterator_init() usage for v1.8.
Fixes numerous reference leaks and missing ao2_iterator_destroy() calls as
a result.

Review: https://reviewboard.asterisk.org/r/1697/


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.8@352955 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2012-01-27 18:22:39 +00:00
Richard Mudgett
fb6b399324 Fix joinable thread terminating without joiner memory leak in chan_iax.c.
The iax2_process_thread() can exit without anyone waiting to join the
thread.  If noone is waiting to join the thread then a large memory leak
occurs.

* Made iax2_process_thread() deatach itself if nobody is waiting to join
the thread.

(closes issue ASTERISK-17339)
Reported by: Tzafrir Cohen
Patches:
      asterisk-1.8.4.4-chan_iax2-detach-thread-on-non-stop-exit.patch (license #5617) patch uploaded by Alex Villacis Lasso (modified)

(closes issue ASTERISK-17825)
Reported by: wangjin


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.8@350220 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2012-01-09 21:54:01 +00:00
Richard Mudgett
fc96f6eb9d Fix chan_iax2 to not report an RDNIS number if it is blank.
Some ISDN switches complain or block the call if the RDNIS number is
empty.

* Made chan_iax2 not save a RDNIS number into the ast_channel if the
string is blank.  This is what other channel drivers do.

(closes issue ASTERISK-17152)
Reported by: rmudgett


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.8@348735 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2011-12-20 23:08:21 +00:00
Richard Mudgett
20e75b7ad2 Fix calls to ast_get_ip() not initializing the address family.
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.8@346239 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2011-11-23 22:52:59 +00:00
Matthew Jordan
8765a80355 Fixed invalid memory access when adding extension to pattern match tree
When an extension is removed from a context, its entry in the pattern match
tree is not deleted.  Instead, the extension is marked as deleted.  When an
extension is removed and re-added, if that extension is also a prefix of
another extension, several log messages would report an error and did not
check whether or not the extension was deleted before accessing the memory.
Additionally, if the extension was already in the tree but previously
deleted, and the pattern was at the end of a match, the findonly flag was
not honored and the extension would be erroneously undeleted.  

Additionaly, it was discovered that an IAX2 peer could be unregistered
via the CLI, while at the same time it could be scheduled for unregistration
by Asterisk.  The unregistration method now checks to see if the peer
was already unregistered before continuing with an unregistration.

(closes issue ASTERISK-18135)
Reported by: Jaco Kroon, Henry Fernandes, Kristijan Vrban
Tested by: Matt Jordan

Review: https://reviewboard.asterisk.org/r/1526




git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.8@342769 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2011-10-31 15:58:06 +00:00
Richard Mudgett
f2b371fedf More parking issues.
* Fix potential deadlocks in SIP and IAX blind transfer to parking.

* Fix SIP, IAX, DAHDI analog, and MGCP channel drivers to respect the
parkext_exclusive option with transfers (Park(,,,,,exclusive_lot)
parameter).  Created ast_park_call_exten() and ast_masq_park_call_exten()
to maintian API compatibility.

* Made masq_park_call() handle a failed ast_channel_masquerade() setup.

* Reduced excessive struct parkeduser.peername[] size.


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.8@341254 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2011-10-18 21:03:04 +00:00
Kinsey Moore
b1b865d7b2 Prevent IAX2 from getting IPv6 addresses via DNS
IAX2 does not support IPv6 and getting such addresses from DNS can cause error
messages on the remote end involving bad IPv4 address casts in the presence of
IPv6/IPv4 tunnels.  This patch ensures that IAX2 will not encounter IPv6
addresses via DNS queries.

(closes issue ASTERISK-18090)


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.8@335320 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2011-09-12 13:25:42 +00:00
Paul Belanger
f105f3e579 Cleanup chan_iax2.c log messages
Review: https://code.asterisk.org/code/cru/CR-AST-11


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.8@334843 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2011-09-07 19:35:52 +00:00
Richard Mudgett
42b5040b71 Misc minor items found in code.
* Add some reentrancy protection in pbx.c when creating the contexts_table
hash table.

* Fix inverted test in chan_sip.c conditional code.

* Fix uninitialized variable and use of the wrong variable in chan_iax2.c.

* Fix test of return value in app_parkandannounce.c.  Explicitly testing
for -1 is bad if the function does not actually return that value when it
fails.

* Fixup some comments and add some curly braces in features.c.


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.8@331248 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2011-08-09 22:12:59 +00:00
David Vossel
3a0faafc26 Fixes crash in chan_iax2.
Fixes crash in chan_iax2 resulting from an edge case in the
way control frames are queued during calltoken negotiation is complete.

(closes issue ASTERISK-17610)
Reported by: mgrobecker


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.8@330581 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2011-08-02 16:15:08 +00:00
Leif Madsen
d4938a111e Introduce <support_level> tags in MODULEINFO.
This change introduces MODULEINFO into many modules in Asterisk in order to show
the community support level for those modules. This is used by changes committed
to menuselect by Russell Bryant recently (r917 in menuselect). More information about
the support level types and what they mean is available on the wiki at
https://wiki.asterisk.org/wiki/display/AST/Asterisk+Module+Support+States

git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.8@328209 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2011-07-14 20:13:06 +00:00
Tilghman Lesher
9a3fd9a994 Removing type attributes, as a change to menuselect makes them no longer necessary.
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.8@326469 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2011-07-06 14:35:01 +00:00
Tilghman Lesher
d104b4e701 Add the attribute "type" to each "<use>" for menuselect.
This matters only when autoconf fails to detect that weak linking is supported.
External optional dependencies will become optional in both cases, as they are
removed at compile time when not detected.  However, runtime-optional modules
are made mandatory when weak linking is not found.  This change affects only
the external optional dependencies; previously, they were incorrectly required
when weak linking support was not detected.

Patches:
	20110702__issue18062__asterisk_trunk.diff.txt by tilghman (License #5003)

Tested by: iasgoscouk


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.8@326411 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2011-07-05 22:08:29 +00:00
David Vossel
e1adc7cefa Merged revisions 324634 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.6.2

................
  r324634 | dvossel | 2011-06-23 13:18:46 -0500 (Thu, 23 Jun 2011) | 13 lines
  
  Merged revisions 324627 via svnmerge from 
  https://origsvn.digium.com/svn/asterisk/branches/1.4
  
  ........
    r324627 | dvossel | 2011-06-23 13:16:52 -0500 (Thu, 23 Jun 2011) | 7 lines
    
    Addresses AST-2011-010, remote crash in IAX2 driver
    
    Thanks to twilson for identifying the issue and providing the patches.
    
    AST-2011-010
  ........
................


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.8@324652 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2011-06-23 18:23:21 +00:00
Richard Mudgett
ca817c31e8 Correct IAX2 and SIP event subscription description string.
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.8@321812 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2011-06-03 19:55:21 +00:00
Russell Bryant
5578557df1 chan_iax2: change LOG_NOTICE to LOG_DEBUG in iax2_read().
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.8@318436 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2011-05-10 15:13:16 +00:00
Russell Bryant
1c168cd613 chan_iax2: Don't overwrite port found with an SRV lookup.
(closes issue #17291)
Reported by: jcovert
Patches:
      chan_iax2.c.1.8.3-srvlookup-corrected.patch uploaded by jcovert (license 551)


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.8@318055 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2011-05-07 23:24:18 +00:00
Russell Bryant
1ccfa50ba8 Fix more "set but unused" warnings.
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.8@317474 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2011-05-05 22:36:33 +00:00
Jason Parker
974aa9e2ad Reverse sense of an error test when reading from astdb.
(closes issue #18545)
Reported by: jcovert
Patches: 
      chan_iax2.c.patch uploaded by jcovert (license 551)


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.8@305692 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2011-02-01 22:48:16 +00:00
Leif Madsen
d5036e449b Merged revisions 300520 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.6.2

........
  r300520 | lmadsen | 2011-01-04 15:52:41 -0600 (Tue, 04 Jan 2011) | 9 lines
  
  Fix backwards and broken XML documentation.
  
  (closes issue #18547)
  Reported by: jcovert
  Patches: 
        xmldoc.c.patch uploaded by jcovert (license 551)
        chan_iax2.c.doc.patch uploaded by jcovert (license 551)
        chan_sip.c.patch uploaded by jcovert (license 551)
        chan_agent.c.patch uploaded by jcovert (license 551)
........


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.8@300521 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2011-01-04 21:53:27 +00:00
Tilghman Lesher
a41c5537d9 Merged revisions 296950 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.6.2

........
  r296950 | tilghman | 2010-11-30 19:38:19 -0600 (Tue, 30 Nov 2010) | 2 lines
  
  Missed initializations caused startup errors on Mac OS X (and possibly others, too).
........


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.8@296951 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-12-01 01:46:32 +00:00
Paul Belanger
9194596f7d Merged revisions 296671 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.6.2

................
  r296671 | pabelanger | 2010-11-29 17:54:14 -0500 (Mon, 29 Nov 2010) | 12 lines
  
  Merged revisions 296670 via svnmerge from 
  https://origsvn.digium.com/svn/asterisk/branches/1.4
  
  ........
    r296670 | pabelanger | 2010-11-29 17:49:39 -0500 (Mon, 29 Nov 2010) | 5 lines
    
    Make sure nothing else is needed before destroying the scheduler.
    
    (closes issue #18398)
    Reported by: pabelanger
  ........
................


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.8@296673 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-11-29 23:05:45 +00:00
Paul Belanger
8b53a54dc3 Use ast_sockaddr_from_sin function not memcpy
This resolves some IAX2 registration issue report on the 
asterisk-users mailing list. 

(closes issue #18202)
Reported by: pabelanger
Patches: 
      update_registry.patch.v2 uploaded by pabelanger (license 224)
Tested by: pabelanger, Nic Colledge (mailing list)

Review: https://reviewboard.asterisk.org/r/993


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.8@293496 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-11-01 16:09:05 +00:00
David Vossel
cb0e2d3bd7 Fixes uninitialized memory problem in 'iax2 set debug peer' option.
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.8@290506 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-10-05 22:23:00 +00:00
David Vossel
0d04fcad79 Resolves dnsmgr memory corruption in chan_iax2.
(closes issue #17902)
Reported by: afried
Patches:
      issue_17902.rev1.txt uploaded by russell (license 2)
Tested by: afried, russell, dvossel

Review: https://reviewboard.asterisk.org/r/965/



git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.8@290378 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-10-05 20:09:06 +00:00
Richard Mudgett
e2ceeb5789 Merged revisions 288193 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.6.2

................
  r288193 | rmudgett | 2010-09-21 19:03:37 -0500 (Tue, 21 Sep 2010) | 33 lines
  
  Merged revisions 288192 via svnmerge from 
  https://origsvn.digium.com/svn/asterisk/branches/1.4
  
  ........
    r288192 | rmudgett | 2010-09-21 18:55:58 -0500 (Tue, 21 Sep 2010) | 26 lines
    
    In chan_iax2.c:schedule_delivery() calls ast_bridged_channel() on an unlocked channel.
    
    Near the beginning of schedule_delivery(), ast_bridged_channel() is called
    on iaxs[fr->callno]->owner.  However, the channel is not locked, which can
    result in ast_bridged_channel() crashing should owner->tech change to a
    technology that doesn't implement bridged_channel.
    
    I also fixed the other calls to ast_bridged_channel() in chan_iax2.c since
    the owner lock was not held there either.
    
    Converted the existing channel deadlock avoidance to use
    iax2_lock_owner().  Using the new function simplified some awkward code.
    
    In the process of fixing the locking on ast_bridged_channel(), I also
    found a memory leak in socket_process() for v1.6.2 and v1.8.  The local
    struct variable ies.vars is not freed on early/abnormal function exits.
    
    (closes issue #17919)
    Reported by: rain
    Patches:
          issue17919_v1.4.patch uploaded by rmudgett (license 664)
          issue17919_w_leak_v1.6.2.patch uploaded by rmudgett (license 664)
          issue17919_w_leak_v1.8.patch uploaded by rmudgett (license 664)
    
    Review: https://reviewboard.asterisk.org/r/926/
  ........
................


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.8@288194 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-09-22 00:06:21 +00:00
Paul Belanger
5542bb8e90 Merged revisions 288147 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.6.2

........
  r288147 | pabelanger | 2010-09-21 18:22:43 -0400 (Tue, 21 Sep 2010) | 9 lines
  
  Setup timer before set_config().
  
  (closes issue #18019)
  Reported by: Netview
  Patches: 
        issue_0018019.patch uploaded by pabelanger (license 224)
  Tested by: Netview
........


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.8@288157 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-09-21 22:26:15 +00:00
Jeff Peeler
c9bfde6afd Add parking extension for non-default parking lots.
This is a new feature that allows for parking to custom parking lots to be
accessed directly, rather than with channel variables or by changing the
default parking lot. The extension is set with the parkext option just as the
default parking lot is done. Also, the manager action has been updated to
optionally allow a specified parking lot.

(closes issue #14882)
Reported by: vmikhnevych
Patches: 
      patch_14882.txt uploaded by mnick (license 874)
      modified by me

Review: https://reviewboard.asterisk.org/r/884/


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.8@286931 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-09-15 19:22:15 +00:00
Paul Belanger
f08842e846 Merged revisions 286117 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.6.2

................
  r286117 | pabelanger | 2010-09-10 16:55:06 -0400 (Fri, 10 Sep 2010) | 11 lines
  
  Merged revisions 286114 via svnmerge from 
  https://origsvn.digium.com/svn/asterisk/branches/1.4
  
  ........
    r286114 | pabelanger | 2010-09-10 16:35:08 -0400 (Fri, 10 Sep 2010) | 4 lines
    
    Load iax.conf before registering any functions/applications/actions.
    
    Review: https://reviewboard.asterisk.org/r/914/
  ........
................


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.8@286120 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-09-10 21:11:08 +00:00
Brett Bryant
a9d85157ed Merged revisions 284958 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.6.2

........
  r284958 | bbryant | 2010-09-03 14:15:49 -0400 (Fri, 03 Sep 2010) | 8 lines
  
  This is a patch provided for issue #17935 to add the ActionID to the IAXregistry AMI response.
  
  (closes issue #17935)
  Reported by: alexkuklin
  Patches: 
        iaxshowreg uploaded by alexkuklin (license 1115)
  Tested by: alexkuklin
........


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.8@284967 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-09-03 18:19:53 +00:00
Tilghman Lesher
7e3f95e00a When optional_api is non-optional, force dependent modules to be loaded.
(closes issue #17707)
 Reported by: ira
 Patches: 
       20100819__issue17707__asterisk1.8.diff.txt uploaded by tilghman (license 14)
 Tested by: tilghman
 
Review: https://reviewboard.asterisk.org/r/876/


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.8@284610 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-09-02 05:20:59 +00:00
David Vossel
c1a577848b ACCEPT message should respond with the new FORMAT2 ie
(closes issue #17804)
Reported by: tpanton



git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.8@282545 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-08-17 20:08:56 +00:00
Tilghman Lesher
3c0616589e Fix our FRACKing issue with chan_iax2 a different way.
Review: https://reviewboard.asterisk.org/r/861/


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.8@282366 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-08-14 04:53:58 +00:00
David Vossel
48fb2c3276 res_stun_monitor for monitoring network changes behind a NAT device
Review: https://reviewboard.asterisk.org/r/854


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.8@282269 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-08-13 20:03:56 +00:00
Terry Wilson
d6e1c724e5 Remove built-in AES code and use optional_api instead
Review: https://reviewboard.asterisk.org/r/793/


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@278538 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-07-21 19:11:32 +00:00
Tilghman Lesher
a8c843199c Change order so that it more closely matches the related SIP command.
(closes issue #17648)
 Reported by: GMLudo

Review: https://reviewboard.asterisk.org/r/789/


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@278393 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-07-21 06:45:06 +00:00
Tilghman Lesher
b4e18d5660 Add load priority order, such that preload becomes unnecessary in most cases
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@278132 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-07-20 19:35:02 +00:00
Mark Michelson
6fa79e8f77 Make ACLs IPv6-capable.
ACLs can now be configured to match IPv6 networks. This is only
relevant for ACLs in chan_sip for now since other channel drivers
do not support IPv6 addressing. However, once those channel drivers
are outfitted to support IPv6 addressing, the ACLs will already be
ready for IPv6 support.

https://reviewboard.asterisk.org/r/791



git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@277814 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-07-19 14:17:16 +00:00
Richard Mudgett
cf7bbcc4c6 Expand the caller ANI field to an ast_party_id
Expand the ani field in ast_party_caller and ast_party_connected_line to
an ast_party_id.

This is an extension to the ast_callerid restructuring patch in review:
https://reviewboard.asterisk.org/r/702/

Review: https://reviewboard.asterisk.org/r/744/


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@276393 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-07-14 16:58:03 +00:00
Richard Mudgett
ec37ffbdaf ast_callerid restructuring
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
2010-07-14 15:48:36 +00:00