asterisk/asterisk.git
9 years agoMerge Call completion support into trunk.
Mark Michelson [Fri, 9 Apr 2010 15:31:32 +0000 (15:31 +0000)]
Merge Call completion support into trunk.

From Reviewboard:
CCSS stands for Call Completion Supplementary Services. An admittedly out-of-date
overview of the architecture can be found in the file doc/CCSS_architecture.pdf
in the CCSS branch. Off the top of my head, the big differences between what is
implemented and what is in the document are as follows:

1. We did not end up modifying the Hangup application at all.
2. The document states that a single call completion monitor may be used across
   multiple calls to the same device. This proved to not be such a good idea
   when implementing protocol-specific monitors, and so we ended up using one
   monitor per-device per-call.
3. There are some configuration options which were conceived after the document
   was written. These are documented in the ccss.conf.sample that is on this
   review request.

For some basic understanding of terminology used throughout this code, see the
ccss.tex document that is on this review.

This implements CCBS and CCNR in several flavors.

First up is a "generic" implementation, which can work over any channel technology
provided that the channel technology can accurately report device state. Call
completion is requested using the dialplan application CallCompletionRequest and can
be canceled using CallCompletionCancel. Device state subscriptions are used in order
to monitor the state of called parties.

Next, there is a SIP-specific implementation of call completion. This method uses the
methods outlined in draft-ietf-bliss-call-completion-06 to implement call completion
using SIP signaling. There are a few things to note here:

* The agent/monitor terminology used throughout Asterisk sometimes is the reverse of
  what is defined in the referenced draft.

* Implementation of the draft required support for SIP PUBLISH. I attempted to write
  this in a generic-enough fashion such that if someone were to want to write PUBLISH
  support for other event packages, such as dialog-state or presence, most of the effort
  would be in writing callbacks specific to the event package.

* A subportion of supporting PUBLISH reception was that we had to implement a PIDF
  parser. The PIDF support added is a bit minimal. I first wrote a validation
  routine to ensure that the PIDF document is formatted properly. The rest of the
  PIDF reading is done in-line in the call-completion-specific PUBLISH-handling
  code. In other words, while there is PIDF support here, it is not in any state
  where it could easily be applied to other event packages as is.

Finally, there are a variety of ISDN-related call completion protocols supported. These
were written by Richard Mudgett, and as such I can't really say much about their
implementation. There are notes in the CHANGES file that indicate the ISDN protocols
over which call completion is supported.

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

git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@256528 65c4cc65-6c06-0410-ace0-fbb531ad65f3

9 years agofunc_srv and explicit specification of a remote IP for SIP.
Mark Michelson [Fri, 9 Apr 2010 14:37:50 +0000 (14:37 +0000)]
func_srv and explicit specification of a remote IP for SIP.

From Review Board:
There are two interrelated changes here.

First, there is the introduction of func_srv. This adds two new read-only
dialplan functions, SRVQUERY and SRVRESULT. They work very similarly to the
ENUMQUERY and ENUMRESULT functions, except that this allows one to query SRV
records instead. In order to facilitate this work, I added a couple of new API
calls to srv.h. ast_srv_get_record_count tells the number of records returned
by an SRV lookup. This number is calculated at the time of the SRV lookup.
ast_srv_get_nth_record allows one to get a numbered SRV record.

Second, there is the modification to chan_sip that allows one to specify a
hostname or IP address (along with a port) to send an outgoing INVITE to when
dialing a SIP peer. This goes hand-in-hand with func_srv. You can query SRV
records and then use the host and port from the results to dial via a specific
host instead of what is configured in sip.conf.

Review: https://reviewboard.asterisk.org/r/608
SWP-1200

git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@256485 65c4cc65-6c06-0410-ace0-fbb531ad65f3

9 years agoEnsure that linker version scripts (used for symbol export control) always exist.
Kevin P. Fleming [Thu, 8 Apr 2010 16:35:10 +0000 (16:35 +0000)]
Ensure that linker version scripts (used for symbol export control) always exist.

Using wildcard matching in the Makefile is not adequate to determine whether
an export file should exist for a module or not, so instead we'll just
create one if the module needs one, or copy the default one if it does not.

git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@256428 65c4cc65-6c06-0410-ace0-fbb531ad65f3

9 years agoMac OS X does not support comparing a mutex to its initializer. Create a test for...
Tilghman Lesher [Tue, 6 Apr 2010 19:28:42 +0000 (19:28 +0000)]
Mac OS X does not support comparing a mutex to its initializer.  Create a test for this.

git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@256370 65c4cc65-6c06-0410-ace0-fbb531ad65f3

9 years agofixes deadlock in chan_sip caused by usage of MASTER_CHANNEL dialplan function
David Vossel [Tue, 6 Apr 2010 14:42:10 +0000 (14:42 +0000)]
fixes deadlock in chan_sip caused by usage of MASTER_CHANNEL dialplan function

(closes issue #16767)
Reported by: lmsteffan
Patches:
      deadlock_16767v3.diff uploaded by dvossel (license 671)

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

git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@256319 65c4cc65-6c06-0410-ace0-fbb531ad65f3

9 years agoMerged revisions 256225 via svnmerge from
Richard Mudgett [Tue, 6 Apr 2010 00:39:44 +0000 (00:39 +0000)]
Merged revisions 256225 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
  r256225 | rmudgett | 2010-04-05 19:10:16 -0500 (Mon, 05 Apr 2010) | 5 lines

  DAHDI/PRI call to pri_channel_bridge() not protected by PRI lock.

  SWP-1231
  ABE-2163
........

git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@256265 65c4cc65-6c06-0410-ace0-fbb531ad65f3

9 years agoFix for localchannel.tex to allow PDFs to be generated again.
Leif Madsen [Mon, 5 Apr 2010 15:14:53 +0000 (15:14 +0000)]
Fix for localchannel.tex to allow PDFs to be generated again.

git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@256161 65c4cc65-6c06-0410-ace0-fbb531ad65f3

9 years agoConsolidate ast_channel.cid.cid_rdnis into ast_channel.redirecting.from.number.
Richard Mudgett [Sat, 3 Apr 2010 02:12:33 +0000 (02:12 +0000)]
Consolidate ast_channel.cid.cid_rdnis into ast_channel.redirecting.from.number.

SWP-1229
ABE-2161

* Ensure chan_local.c:local_call() will not leak cid.cid_dnid when
copying.

git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@256104 65c4cc65-6c06-0410-ace0-fbb531ad65f3

9 years agoUsing the Dial application f option when the call is forwarded will likely crash.
Richard Mudgett [Sat, 3 Apr 2010 01:42:32 +0000 (01:42 +0000)]
Using the Dial application f option when the call is forwarded will likely crash.

Fix app_dial.c:do_forward() OPT_FORCECLID setting cid.cid_num with a stack
allocated string instead of a heap allocated string.

git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@256103 65c4cc65-6c06-0410-ace0-fbb531ad65f3

9 years agoExport MEETMEBOOKID and fix pin-less conferences with realtime conferences
Russell Bryant [Fri, 2 Apr 2010 23:55:57 +0000 (23:55 +0000)]
Export MEETMEBOOKID and fix pin-less conferences with realtime conferences

(closes issue #16866)
Reported by: DEA
Patches:
      rt-meetme-options.txt uploaded by DEA (license 3)
Tested by: DEA

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

git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@256019 65c4cc65-6c06-0410-ace0-fbb531ad65f3

9 years agoMerged revisions 256014 via svnmerge from
Russell Bryant [Fri, 2 Apr 2010 23:46:45 +0000 (23:46 +0000)]
Merged revisions 256014 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
  r256014 | russell | 2010-04-02 18:45:56 -0500 (Fri, 02 Apr 2010) | 9 lines

  Resolve a deadlock that occurs due to a pointless call to ast_bridged_channel()

  (closes issue #16840)
  Reported by: bzing2
  Patches:
        patch.txt uploaded by bzing2 (license 902)
        issue_16840.rev1.diff uploaded by russell (license 2)
  Tested by: bzing2, russell
........

git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@256015 65c4cc65-6c06-0410-ace0-fbb531ad65f3

9 years agoMerged revisions 256009 via svnmerge from
Russell Bryant [Fri, 2 Apr 2010 23:30:58 +0000 (23:30 +0000)]
Merged revisions 256009 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
  r256009 | russell | 2010-04-02 18:30:15 -0500 (Fri, 02 Apr 2010) | 2 lines

  Remove extremely verbose debug message.
........

git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@256010 65c4cc65-6c06-0410-ace0-fbb531ad65f3

9 years agoPass the PID of the Asterisk process, not the PID of the canary.
Tilghman Lesher [Fri, 2 Apr 2010 20:19:01 +0000 (20:19 +0000)]
Pass the PID of the Asterisk process, not the PID of the canary.

(closes issue #17065)
 Reported by: globalnetinc
 Patches:
       astcanary.patch uploaded by makoto (license 38)
 Tested by: frawd, globalnetinc

git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@255952 65c4cc65-6c06-0410-ace0-fbb531ad65f3

9 years agoAllow symbol export filtering to work properly on platforms that have symbol prefixes.
Kevin P. Fleming [Fri, 2 Apr 2010 18:57:58 +0000 (18:57 +0000)]
Allow symbol export filtering to work properly on platforms that have symbol prefixes.

Some platforms prefix externally-visible symbols in object files generated
from C sources (most commonly, '_' is the prefix). On these platforms,
the existing symbol export filtering process ends up suppressing all the symbols
that are supposed to be left visible. This patch allows the prefix string
to be supplied to the top-level Makefile in the LINKER_SYMBOL_PREFIX variable,
and then generates the linker scripts as required to include the prefix
supplied.

git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@255906 65c4cc65-6c06-0410-ace0-fbb531ad65f3

9 years agoIgnore Redial softkey when no previous dialed number is known
Michiel van Baak [Fri, 2 Apr 2010 06:45:54 +0000 (06:45 +0000)]
Ignore Redial softkey when no previous dialed number is known

(closes issue #17126)
Reported by: wedhorn
Patches:
      skinny79xx_redial1.diff uploaded by wedhorn (license 30)

git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@255851 65c4cc65-6c06-0410-ace0-fbb531ad65f3

9 years agoCleanup transmit_* functions
Michiel van Baak [Fri, 2 Apr 2010 06:43:31 +0000 (06:43 +0000)]
Cleanup transmit_* functions

Bulk lot of generally trivial changes for cleaning up the transmit stuff. Line state request has been modified for line only responses.

(closes issue #16994)
Reported by: wedhorn
Patches:
      skinny-clean07.diff uploaded by wedhorn (license 30)
Tested by: wedhorn

git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@255850 65c4cc65-6c06-0410-ace0-fbb531ad65f3

9 years agoFix DEBUG_THREADS build on Darwin.
Tilghman Lesher [Thu, 1 Apr 2010 18:16:37 +0000 (18:16 +0000)]
Fix DEBUG_THREADS build on Darwin.

(closes issue #16828)
 Reported by: oej
 Patches:
       20100331__issue16828.diff.txt uploaded by tilghman (license 14)

git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@255796 65c4cc65-6c06-0410-ace0-fbb531ad65f3

9 years agoRemoved documentation of the non existent 'both' option to 'faxdetect' in sip.conf
Matthew Nicholson [Thu, 1 Apr 2010 16:09:26 +0000 (16:09 +0000)]
Removed documentation of the non existent 'both' option to 'faxdetect' in sip.conf

git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@255751 65c4cc65-6c06-0410-ace0-fbb531ad65f3

9 years agoFix improper comaparison of anonymous URI when getting P-Asserted-Identity.
Mark Michelson [Wed, 31 Mar 2010 22:35:20 +0000 (22:35 +0000)]
Fix improper comaparison of anonymous URI when getting P-Asserted-Identity.

There was a bug where we split the URI on the @ sign and then attempted
to compare to "anonymous@anonymous.invalid" afterwards. This comparison
could never evaluate true. So now we keep a copy of the URI prior to the
split so that the comparison is valid.

git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@255701 65c4cc65-6c06-0410-ace0-fbb531ad65f3

9 years agoRecorded merge of revisions 255591 via svnmerge from
Tilghman Lesher [Wed, 31 Mar 2010 19:13:02 +0000 (19:13 +0000)]
Recorded merge of revisions 255591 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
  r255591 | tilghman | 2010-03-31 14:09:46 -0500 (Wed, 31 Mar 2010) | 15 lines

  Ensure line terminators in email are consistent.

  Fixes an issue with certain Mail Transport Agents, where attachments are not
  interpreted correctly.

  (closes issue #16557)
   Reported by: jcovert
   Patches:
         20100308__issue16557__1.4.diff.txt uploaded by tilghman (license 14)
         20100308__issue16557__1.6.0.diff.txt uploaded by tilghman (license 14)
         20100308__issue16557__trunk.diff.txt uploaded by tilghman (license 14)
   Tested by: ebroad, zktech

  Reviewboard: https://reviewboard.asterisk.org/r/544/
........

git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@255592 65c4cc65-6c06-0410-ace0-fbb531ad65f3

9 years agoAdd documentation clarifying when 't' and 'T' can be used.
Leif Madsen [Wed, 31 Mar 2010 17:48:09 +0000 (17:48 +0000)]
Add documentation clarifying when 't' and 'T' can be used.

(closes issue #17021)
Reported by: kovzol
Tested by: lmadsen, kovzol, davidw, ebroad

git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@255504 65c4cc65-6c06-0410-ace0-fbb531ad65f3

9 years agoMerged revisions 255409 via svnmerge from
Russell Bryant [Tue, 30 Mar 2010 20:56:26 +0000 (20:56 +0000)]
Merged revisions 255409 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
  r255409 | russell | 2010-03-30 15:56:00 -0500 (Tue, 30 Mar 2010) | 2 lines

  Don't kill Asterisk if the H323 listener does not start.
........

git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@255410 65c4cc65-6c06-0410-ace0-fbb531ad65f3

9 years agoMerged revisions 255322 via svnmerge from
Russell Bryant [Tue, 30 Mar 2010 16:07:49 +0000 (16:07 +0000)]
Merged revisions 255322 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
  r255322 | russell | 2010-03-30 11:06:06 -0500 (Tue, 30 Mar 2010) | 2 lines

  Don't make Asterisk not start if pbx_dundi fails to initialize.
........

git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@255323 65c4cc65-6c06-0410-ace0-fbb531ad65f3

9 years agoThis patch adds custom device state handling for ConfBridge conferences,
Jared Smith [Mon, 29 Mar 2010 14:07:44 +0000 (14:07 +0000)]
This patch adds custom device state handling for ConfBridge conferences,
matching the devstate handling of the MeetMe conferences.

Review: https://reviewboard.asterisk.org/r/572/
Closes issue #16972

git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@255281 65c4cc65-6c06-0410-ace0-fbb531ad65f3

9 years agoRemove a debugging log entry.
Russell Bryant [Mon, 29 Mar 2010 05:10:41 +0000 (05:10 +0000)]
Remove a debugging log entry.

git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@255240 65c4cc65-6c06-0410-ace0-fbb531ad65f3

9 years agocorrections in gk interface, small fixes in call clearing.
Alexandr Anikin [Sat, 27 Mar 2010 23:51:13 +0000 (23:51 +0000)]
corrections in gk interface, small fixes in call clearing.

git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@255199 65c4cc65-6c06-0410-ace0-fbb531ad65f3

9 years agoWe need to inclde sys/wait.h on OpenBSD to get WEXITSTATUS.
Sean Bright [Sat, 27 Mar 2010 14:44:58 +0000 (14:44 +0000)]
We need to inclde sys/wait.h on OpenBSD to get WEXITSTATUS.

git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@255158 65c4cc65-6c06-0410-ace0-fbb531ad65f3

9 years agoinotify support for pbx_spool
Tilghman Lesher [Sat, 27 Mar 2010 06:09:26 +0000 (06:09 +0000)]
inotify support for pbx_spool

This should give a good speed boost, in that one particular thread isn't waking
up once a second to read directory contents.

Reviewboard: https://reviewboard.asterisk.org/r/137/

git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@255117 65c4cc65-6c06-0410-ace0-fbb531ad65f3

9 years agoReplace some documentation from 1.6.x back into trunk.
Leif Madsen [Fri, 26 Mar 2010 19:27:56 +0000 (19:27 +0000)]
Replace some documentation from 1.6.x back into trunk.

This documentation associated wth tlsbindaddr is still useful so lets
synchronize it between trunk and 1.6.x branches.

(issue #17054)

git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@255066 65c4cc65-6c06-0410-ace0-fbb531ad65f3

9 years agoUpdate confusing documentation for tlsbindaddr.
Leif Madsen [Fri, 26 Mar 2010 19:07:38 +0000 (19:07 +0000)]
Update confusing documentation for tlsbindaddr.

Update some confusing documentation for the tlsbindaddr
option in sip.conf.sample. Point at a link instead which
has better documentation.

(closes issue #17054)
Reported by: klaus3000

git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@255021 65c4cc65-6c06-0410-ace0-fbb531ad65f3

9 years agoWork around a bug in dash on Ubuntu by checking the number of arguments before shift...
Sean Bright [Fri, 26 Mar 2010 16:27:56 +0000 (16:27 +0000)]
Work around a bug in dash on Ubuntu by checking the number of arguments before shift'ing.

Reported and tested by pabelanger.

git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@254976 65c4cc65-6c06-0410-ace0-fbb531ad65f3

9 years agoUse "local" instead of "system" header file inclusion.
Kevin P. Fleming [Thu, 25 Mar 2010 23:38:58 +0000 (23:38 +0000)]
Use "local" instead of "system" header file inclusion.

Now that these files are in the tree, they should prefer the tree's local
copy of all Asterisk headers over any that may be installed.

git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@254931 65c4cc65-6c06-0410-ace0-fbb531ad65f3

9 years agoFix a number of other build problems on Mac OS X.
Russell Bryant [Thu, 25 Mar 2010 21:39:04 +0000 (21:39 +0000)]
Fix a number of other build problems on Mac OS X.

git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@254884 65c4cc65-6c06-0410-ace0-fbb531ad65f3

9 years agoMerged revisions 254800 via svnmerge from
Jason Parker [Thu, 25 Mar 2010 20:41:49 +0000 (20:41 +0000)]
Merged revisions 254800 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
  r254800 | qwell | 2010-03-25 15:41:15 -0500 (Thu, 25 Mar 2010) | 1 line

  Don't remove local copies of utils in uninstall.
........

git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@254802 65c4cc65-6c06-0410-ace0-fbb531ad65f3

9 years agoResolve compiler warning on FreeBSD.
Russell Bryant [Thu, 25 Mar 2010 20:41:34 +0000 (20:41 +0000)]
Resolve compiler warning on FreeBSD.

git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@254801 65c4cc65-6c06-0410-ace0-fbb531ad65f3

9 years agoFix chan_ooh323 so it works on Mac OS X, as well.
Russell Bryant [Thu, 25 Mar 2010 20:40:48 +0000 (20:40 +0000)]
Fix chan_ooh323 so it works on Mac OS X, as well.

git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@254799 65c4cc65-6c06-0410-ace0-fbb531ad65f3

9 years agochan_usbradio depends on alsa.
Russell Bryant [Thu, 25 Mar 2010 20:08:40 +0000 (20:08 +0000)]
chan_usbradio depends on alsa.

git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@254718 65c4cc65-6c06-0410-ace0-fbb531ad65f3

9 years agoBlocked revisions 254714 via svnmerge
Jason Parker [Thu, 25 Mar 2010 19:40:25 +0000 (19:40 +0000)]
Blocked revisions 254714 via svnmerge

........
  r254714 | qwell | 2010-03-25 14:39:23 -0500 (Thu, 25 Mar 2010) | 4 lines

  Fix DEBUG_THREADS issue with out-of-tree modules.

  Take 2, without ABI breakage this time.
........

git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@254715 65c4cc65-6c06-0410-ace0-fbb531ad65f3

9 years agoBump cleancount due to ast_channel change.
Kevin P. Fleming [Thu, 25 Mar 2010 18:38:53 +0000 (18:38 +0000)]
Bump cleancount due to ast_channel change.

git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@254638 65c4cc65-6c06-0410-ace0-fbb531ad65f3

9 years agoRemove no-longer-used (and unsafe) field in ast_channel for linked lists.
Kevin P. Fleming [Thu, 25 Mar 2010 18:38:27 +0000 (18:38 +0000)]
Remove no-longer-used (and unsafe) field in ast_channel for linked lists.

The ast_channel structure had a field used for linking a channel into a
linked list, but now that ast_channel structures are ao2 objects, this is
no longer needed, and could be harmful as ao2 objects really shouldn't
ever be placed into linked lists (since those lists don't assist with
reference count management on the objects).

git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@254637 65c4cc65-6c06-0410-ace0-fbb531ad65f3

9 years agoGet chan_ooh323 building again after recent build system changes.
Kevin P. Fleming [Thu, 25 Mar 2010 18:34:32 +0000 (18:34 +0000)]
Get chan_ooh323 building again after recent build system changes.

git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@254636 65c4cc65-6c06-0410-ace0-fbb531ad65f3

9 years agoAdd unit test for testing ACL functionality.
Mark Michelson [Thu, 25 Mar 2010 17:52:20 +0000 (17:52 +0000)]
Add unit test for testing ACL functionality.

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

9 years agoMerged revisions 254552 via svnmerge from
Mark Michelson [Thu, 25 Mar 2010 17:42:36 +0000 (17:42 +0000)]
Merged revisions 254552 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
  r254552 | mmichelson | 2010-03-25 12:33:35 -0500 (Thu, 25 Mar 2010) | 5 lines

  Add doxygen for acl.h

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

git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@254553 65c4cc65-6c06-0410-ace0-fbb531ad65f3

9 years agoAdd new rtpsource options to the CHANNEL function.
Mark Michelson [Thu, 25 Mar 2010 17:29:47 +0000 (17:29 +0000)]
Add new rtpsource options to the CHANNEL function.

This adds rtpsource options analogous to the rtpdest
functions that already exist. In addition, this fixes
potential crashes which could result due to trying to
read values from nonexistent RTP streams.

git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@254551 65c4cc65-6c06-0410-ace0-fbb531ad65f3

9 years agoRecorded merge of revisions 254452 via svnmerge from
Mark Michelson [Thu, 25 Mar 2010 16:04:48 +0000 (16:04 +0000)]
Recorded merge of revisions 254452 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
  r254452 | mmichelson | 2010-03-25 10:59:56 -0500 (Thu, 25 Mar 2010) | 44 lines

  Several fixes regarding RFC2833 DTMF detection.

  Here is a copy and paste of the details from my request on
  reviewboard that dealt with these changes:

  Fix 1. The first change in place is to fix Mantis issue 15811, which deals with a situation where Asterisk will incorrectly interpret out of order RFC2833 frames as duplicate DTMF digits. For instance, we would receive a sequence like:

  seqno 1: DTMF 1
  seqno 2: DTMF 1
  seqno 3: DTMF 1
  seqno 4: DTMF 1
  seqno 6: DTMF 1 (end)
  seqno 5: DTMF 1
  seqno 7: DTMF 1 (end)
  seqno 8: DTMF 1 (end)

  Prior to this patch when we received the frame with seqno 5, we would interpret this as a new DTMF 1. With this patch, we will check the seqno of the incoming digit and not process the frame if the seqno is lower than the last recorded seqno. Note that we do not record the seqno of the dropped DTMF frame for future processing. While the above situation is what was designed to be fixed, the patch is written in such a way that the following would also be fixed too:

  seqno  9: DTMF 1
  seqno 10: DTMF 1 (end)
  seqno 11: DTMF 1 (end)
  seqno 13: DTMF 2
  seqno 12: DTMF 1 (end)
  seqno 14: DTMF 2
  seqno 15: DTMF 2 (end)
  seqno 16: DTMF 2 (end)
  seqno 17: DTMF 2 (end)

  In this second situation, the beginning of the DTMF 2 arrives before the final end frame of the DTMF 1. With the patch, seqno 12 is no processed and thus we properly interpret the DTMF.

  Fix 2. The second change in place is to fix an issue like the following:

  seqno 1: DTMF 1
  seqno 2: DTMF 1
  seqno 3: DTMF 1 (end) *packet lost*
  seqno 4: DTMF 1 (end) *packet lost*
  seqno 5: DTMF 1 (end) *packet lost*
  seqno 6: DTMF 2

  When we receive seqno 6, we had code in place that was supposed to properly end the previously unended DTMF 1. The problem was that the code was essentially a no-op. The code would set up an end frame for the DTMF 1 but would immediately overwrite the frame with the begin for DTMF 2. I changed process_dtmf_rfc2833() so that instead of returning a single frame, it is given as an output parameter a list of frames. Each frame that needs to be returned is appended to this list.

  Fix 3. The final change is a minor one where an AST_CONTROL_SRCCHANGE frame could get lost. If we process a cisco DTMF or an RFC 3389 frame and no frame was returned, then we would return &ast_null_frame. The problem is that earlier in the function, we may have generated an AST_CONTROL_SRCCHANGE frame and put it in the list of frames we wish to return. This frame would be lost in such a case. The patch fixes this problem
........

git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@254454 65c4cc65-6c06-0410-ace0-fbb531ad65f3

9 years agoMerged revisions 254451 via svnmerge from
Terry Wilson [Thu, 25 Mar 2010 16:03:51 +0000 (16:03 +0000)]
Merged revisions 254451 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
  r254451 | twilson | 2010-03-25 10:57:29 -0500 (Thu, 25 Mar 2010) | 2 lines

  Handle new SRCCHANGE control message here too
........

git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@254453 65c4cc65-6c06-0410-ace0-fbb531ad65f3

9 years agoImprove handling of T.38 re-INVITEs that arrive before a T.38-capable
Kevin P. Fleming [Thu, 25 Mar 2010 15:27:31 +0000 (15:27 +0000)]
Improve handling of T.38 re-INVITEs that arrive before a T.38-capable
application is executing on a channel.

This patch addresses an issue found during working with end-users
using res_fax. If an incoming call is answered in the dialplan, or
jumps to the 'fax' extension due to reception of a CNG tone (with
faxdetect enabled), and then the remote endpoint sends a T.38
re-INVITE, it is possible for the channel's T.38 state to be
'T38_STATE_NEGOTIATING' when the application starts up. Unfortunately,
even if the application wants to use T.38, it can't respond to the
peer's negotiation request, because the AST_CONTROL_T38_PARAMETERS
control frame that chan_sip sent originally has been lost, and the
application needs the content of that frame to be able to formulate a
reply.

This patch adds a new 'request' type to AST_CONTROL_T38_PARAMETERS,
AST_T38_REQUEST_PARMS. If the application sends this request, chan_sip
will re-send the original control frame (with
AST_T38_REQUEST_NEGOTIATE as the request type), and the application
can respond as normal. If this occurs within the five second timeout
in chan_sip, the automatic cancellation of the peer reinvite will be
stopped, and the application will 'own' the negotiation process from
that point onwards.

This also improves the code path in chan_sip to allow sip_indicate(),
when called for AST_CONTROL_T38_PARAMETERS, to be able to return a
non-zero response, which should have been in place before since the
control frame *can* fail to be processed properly. It also modifies
ast_indicate() to return whatever result the channel driver returned
for this control frame, rather than converting all non-zero results
into '-1'. Finally, the new request type intentionally returns a
positive value, so that an application that sends
AST_T38_REQUEST_PARMS can know for certain whether the channel driver
accepted it and will be replying with a control frame of its own, or
whether it was ignored (if the sip_indicate()/ast_indicate() path had
properly supported failure responses before, this would not be
necessary).

This patch also modifies res_fax to take advantage of the new request.

In addition, this patch makes sip_t38_abort() actually lock the
private structure before doing its work... bad programmer, no donut.

This patch also enhances chan_sip's 'faxdetect' support to allow
triggering on T.38 re-INVITEs received as well as CNG tone detection.

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

git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@254450 65c4cc65-6c06-0410-ace0-fbb531ad65f3

9 years agohandle_speechset has 4 arguments.
Leif Madsen [Thu, 25 Mar 2010 15:21:26 +0000 (15:21 +0000)]
handle_speechset has 4 arguments.

Update code to reflect that handle_speechset has 4 arguments.

(closes issue #17093)
Reported by: gpatri
Patches:
      res_agi.patch uploaded by gpatri (license 1014)
Tested by: pabelanger, mmichelson

git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@254446 65c4cc65-6c06-0410-ace0-fbb531ad65f3

9 years agoremove unneeded explicit channel in dahdi ioctls
Tzafrir Cohen [Thu, 25 Mar 2010 10:09:24 +0000 (10:09 +0000)]
remove unneeded explicit channel in dahdi ioctls

This patch removes some cases where the channel number for an ioctl was
passed as a member in a struct rather then through the file descriptor.

The gain setting functions passed around a channel which is always 0,
and thus this parameter is simply dropped.

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

git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@254406 65c4cc65-6c06-0410-ace0-fbb531ad65f3

9 years agoFix potential invalid reads that could occur in pbx.c
Mark Michelson [Wed, 24 Mar 2010 21:10:38 +0000 (21:10 +0000)]
Fix potential invalid reads that could occur in pbx.c

Here is a cut and paste of my review request for this change:
This past weekend, Russell ran our current suite of unit tests for Asterisk
under valgrind. The PBX pattern match test caused valgrind to spew forth two
invalid read errors. This patch contains two changes that shut valgrind up and
do not cause any new memory leaks.

Change 1: In ast_context_remove_extension_callerid2, valgrind reported an
invalid read in the for loop close to the function's end. Specifically, one of
the the strcmp calls in the loop control was reading invalid memory. This was
because the caller of ast_context_remove_extension_callerid2 (__ast_context
destroy in this case) passed as a parameter a shallow copy of an ast_exten's
exten field. This same ast_exten was what was destroyed inside the for loop,
thus any iterations of the for loop beyond the destruction of the ast_exten
would result in invalid reads. My fix for this is to make a copy of the
ast_exten's exten field and pass the copy to
ast_context_remove_extension_callerid2. In addition, I have also acted
similarly with the ast_exten's matchcid field. Since in this case a NULL is
handled quite differently than an empty string, I needed to be a bit more
careful with its handling.

Change 2: In __ast_context_destroy, we iterated over a hashtab and called
ast_context_remove_extension_callerid2 on each item. Specifically, the hashtab
over which we were iterating was an ast_exten's peer_table. Inside of
ast_context_remove_extension_callerid2, we could possibly destroy this
ast_exten, which also caused the hashtab to be freed. Attempting to call
ast_hashtab_end_traversal on the hashtab iterator caused an invalid read to
occur when trying to read the iterator->tab->do_locking field since
iterator->tab had already been freed. My handling of this problem is a bit less
straightforward. With each iteration over the hashtab's contents, we set a
variable called "end_traversal" based on the return of
ast_context_remove_extension_callerid2. If 0 is ever returned, then we know
that the extension was found and destroyed. Because of this, we cannot call
ast_hashtab_end_traversal because we will be guaranteeing a read of invalid
memory. In such a case, we forego calling ast_hashtab_end_traversal and instead
call ast_free on the hashtab iterator.

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

git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@254362 65c4cc65-6c06-0410-ace0-fbb531ad65f3

9 years agoAllow configuration of minsecs and nextaftercmd per mailbox.
Jeff Peeler [Wed, 24 Mar 2010 18:13:29 +0000 (18:13 +0000)]
Allow configuration of minsecs and nextaftercmd per mailbox.

Previously only configurable globally. A unit test has also been written to
provide protection against parse failures for supported mailbox options.

(closes issue #16864)
Reported by: kobaz
Patches:
      voicemail2.patch uploaded by kobaz (license 834)

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

git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@254321 65c4cc65-6c06-0410-ace0-fbb531ad65f3

9 years agoMerged revisions 254235 via svnmerge from
Jeff Peeler [Wed, 24 Mar 2010 17:15:05 +0000 (17:15 +0000)]
Merged revisions 254235 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
  r254235 | jpeeler | 2010-03-23 19:37:23 -0500 (Tue, 23 Mar 2010) | 72 lines

  Ensure that monitor recordings are written to the correct location (again)

  This is an extension to 248860. As such the dialplan test has been extended:

  ; non absolute path, not combined
  exten => 5040, 1, monitor(wav,tmp/jeff/monitor_test)
  exten => 5040, n, dial(sip/5001)
  ; absolute path, not combined
  exten => 5041, 1, monitor(wav,/tmp/jeff/monitor_test2)
  exten => 5041, n, dial(sip/5001)
  ; no path, not combined
  exten => 5042, 1, monitor(wav,monitor_test3)
  exten => 5042, n, dial(sip/5001)
  ; combined: changemonitor from non absolute to no path (leaves tmp/jeff)
  exten => 5043, 1, monitor(wav,tmp/jeff/monitor_test4,m)
  exten => 5043, n, changemonitor(monitor_test5)
  exten => 5043, n, dial(sip/5001)
  ; combined: changemonitor from no path to non absolute path
  exten => 5044, 1, monitor(wav,monitor_test6,m)
  exten => 5044, n, changemonitor(tmp/jeff/monitor_test7) ; this wasn't possible before
  exten => 5044, n, dial(sip/5001)
  ; non absolute path, combined
  exten => 5045, 1, monitor(wav,tmp/jeff/monitor_test8,m)
  exten => 5045, n, dial(sip/5001)
  ; absolute path, combined
  exten => 5046, 1, monitor(wav,/tmp/jeff/monitor_test9,m)
  exten => 5046, n, dial(sip/5001)
  ; no path, combined
  exten => 5047, 1, monitor(wav,monitor_test10,m)
  exten => 5047, n, dial(sip/5001)
  ; combined: changemonitor from non absolute to absolute (leaves tmp/jeff)
  exten => 5048, 1, monitor(wav,tmp/jeff/monitor_test11,m)
  exten => 5048, n, changemonitor(/tmp/jeff/monitor_test12)
  exten => 5048, n, dial(sip/5001)
  ; combined: changemonitor from absolute to non absolute (leaves /tmp/jeff)
  exten => 5049, 1, monitor(wav,/tmp/jeff/monitor_test13,m)
  exten => 5049, n, changemonitor(tmp/jeff/monitor_test14)
  exten => 5049, n, dial(sip/5001)
  ; combined: changemonitor from no path to absolute
  exten => 5050, 1, monitor(wav,monitor_test15,m)
  exten => 5050, n, changemonitor(/tmp/jeff/monitor_test16)
  exten => 5050, n, dial(sip/5001)
  ; combined: changemonitor from absolute to no path (leaves /tmp/jeff)
  exten => 5051, 1, monitor(wav,/tmp/jeff/monitor_test17,m)
  exten => 5051, n, changemonitor(monitor_test18)
  exten => 5051, n, dial(sip/5001)
  ; not combined: changemonitor from non absolute to no path (leaves tmp/jeff)
  exten => 5052, 1, monitor(wav,tmp/jeff/monitor_test19)
  exten => 5052, n, changemonitor(monitor_test20)
  exten => 5052, n, dial(sip/5001)
  ; not combined: changemonitor from no path to non absolute
  exten => 5053, 1, monitor(wav,monitor_test21)
  exten => 5053, n, changemonitor(tmp/jeff/monitor_test22)
  exten => 5053, n, dial(sip/5001)
  ; not combined: changemonitor from non absolute to absolute (leaves tmp/jeff)
  exten => 5054, 1, monitor(wav,tmp/jeff/monitor_test23)
  exten => 5054, n, changemonitor(/tmp/jeff/monitor_test24)
  exten => 5054, n, dial(sip/5001)
  ; not combined: changemonitor from absolute to non absolute (leaves /tmp/jeff)
  exten => 5055, 1, monitor(wav,/tmp/jeff/monitor_test24)
  exten => 5055, n, changemonitor(tmp/jeff/monitor_test25)
  exten => 5055, n, dial(sip/5001)
  ; not combined: changemonitor from no path to absolute
  exten => 5056, 1, monitor(wav,monitor_test26)
  exten => 5056, n, changemonitor(/tmp/jeff/monitor_test27)
  exten => 5056, n, dial(sip/5001)
  ; not combined: changemonitor from absolute to no path (leaves /tmp/jeff)
  exten => 5057, 1, monitor(wav,/tmp/jeff/monitor_test28)
  exten => 5057, n, changemonitor(monitor_test29)
  exten => 5057, n, dial(sip/5001)
........

git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@254277 65c4cc65-6c06-0410-ace0-fbb531ad65f3

9 years agomake 'core show settings' should show all settable directories
Tzafrir Cohen [Tue, 23 Mar 2010 22:48:03 +0000 (22:48 +0000)]
make 'core show settings' should show all settable directories

(closes issue #17086)
Reported by: tzafrir
Patches:
      asterisk_extra_settings_dirs.diff uploaded by tzafrir (license 46)

git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@254162 65c4cc65-6c06-0410-ace0-fbb531ad65f3

9 years agoPut test output for a failure in a CDATA section in the XML results.
Russell Bryant [Tue, 23 Mar 2010 22:35:56 +0000 (22:35 +0000)]
Put test output for a failure in a CDATA section in the XML results.

git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@254159 65c4cc65-6c06-0410-ace0-fbb531ad65f3

9 years agoExit native bridging early for greater timing accuracy with warnings
Jeff Peeler [Tue, 23 Mar 2010 21:17:23 +0000 (21:17 +0000)]
Exit native bridging early for greater timing accuracy with warnings

This changes native bridging to break one millisecond early so that the more
accurate timeval calculations done in the generic bridge can be performed using
the bridge config. Currently the time between exiting native bridging slightly
late can sometimes cause a large enough discrepancy for warnings to be missed.
For the record, 1.4 does not attempt to native bridge at all when warnings are
enabled.

(closes issue #15815)
Reported by: adomjan

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

git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@254050 65c4cc65-6c06-0410-ace0-fbb531ad65f3

9 years agoBlocked revisions 254046 via svnmerge
Jason Parker [Tue, 23 Mar 2010 21:09:32 +0000 (21:09 +0000)]
Blocked revisions 254046 via svnmerge

........
  r254046 | qwell | 2010-03-23 16:07:54 -0500 (Tue, 23 Mar 2010) | 9 lines

  Allow out-of-tree modules to load, regardless of DEBUG_THREADS/DEBUG_CHANNEL_LOCKS differences.

  This can be guaranteed by forcing the ABI to no longer change when these compiler flags are set.
  An unfortunate side-effect to this is that there is an ABI change here.  However, there is some
  mitigation.  Existing modules *will* fail to load since they would require functions that no
  longer exist.

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

git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@254047 65c4cc65-6c06-0410-ace0-fbb531ad65f3

9 years agoRemove unused structure member in app_queue.
Sean Bright [Tue, 23 Mar 2010 20:52:35 +0000 (20:52 +0000)]
Remove unused structure member in app_queue.

(closes issue #15494)
Reported by: makoto

git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@254045 65c4cc65-6c06-0410-ace0-fbb531ad65f3

9 years agoChange the name of the category 'TEST' to match the name of the subdir
Tzafrir Cohen [Tue, 23 Mar 2010 19:19:52 +0000 (19:19 +0000)]
Change the name of the category 'TEST' to match the name of the subdir

git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@254001 65c4cc65-6c06-0410-ace0-fbb531ad65f3

9 years agoDon't act like an http write failed when it didn't
Terry Wilson [Tue, 23 Mar 2010 16:52:53 +0000 (16:52 +0000)]
Don't act like an http write failed when it didn't

fwrite returns the number of items written, not the number of bytes

git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@253958 65c4cc65-6c06-0410-ace0-fbb531ad65f3

9 years agoChange per-file debug and verbose levels to be per-module, the way
Kevin P. Fleming [Tue, 23 Mar 2010 14:22:27 +0000 (14:22 +0000)]
Change per-file debug and verbose levels to be per-module, the way
users expect them to work.

'core set debug' and 'core set verbose' can optionally change the
level for a specific filename; however, this is actually for a
specific source file name, not the module that source file is included
in. With examples like chan_sip, chan_iax2, chan_misdn and others
consisting of multiple source files, this will not lead to the
behavior that users expect. If they want to set the debug level for
chan_sip, they want it set for all of chan_sip, and not to have to
also set it for reqresp_parser and other files that comprise the
chan_sip module.

This patch changes this functionality to be module-name based instead
of file-name based.

To make this work, some Makefile modifications were required to ensure
that the AST_MODULE definition is present in each object file produced
for each module as well.

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

git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@253917 65c4cc65-6c06-0410-ace0-fbb531ad65f3

9 years agoInitialize channels prior to loading "preload" modules.
Mark Michelson [Mon, 22 Mar 2010 20:32:15 +0000 (20:32 +0000)]
Initialize channels prior to loading "preload" modules.

We can have bad results when a module, upon being loaded, attempts
to reference the channels container if the container hasn't yet
been initialized. I saw this happen by trying to preload pbx_config.so
and having a hint defined which referenced a non-existent SIP peer.

git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@253872 65c4cc65-6c06-0410-ace0-fbb531ad65f3

9 years agoMerged revisions 253799 via svnmerge from
Matthew Nicholson [Mon, 22 Mar 2010 19:52:52 +0000 (19:52 +0000)]
Merged revisions 253799 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
  r253799 | mnicholson | 2010-03-22 14:50:00 -0500 (Mon, 22 Mar 2010) | 4 lines

  Unconditionally copy the caller's account code to the called party.

  (related to issue #16331)
........

git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@253800 65c4cc65-6c06-0410-ace0-fbb531ad65f3

9 years agoUpdate query should be an UPDATE, not a SELECT.
Tilghman Lesher [Mon, 22 Mar 2010 19:05:27 +0000 (19:05 +0000)]
Update query should be an UPDATE, not a SELECT.

git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@253758 65c4cc65-6c06-0410-ace0-fbb531ad65f3

9 years agoReturn the list for later manipulation. This fixes an issue with the update procedure.
Tilghman Lesher [Mon, 22 Mar 2010 18:58:48 +0000 (18:58 +0000)]
Return the list for later manipulation.  This fixes an issue with the update procedure.

Debugging with mmichelson.

git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@253755 65c4cc65-6c06-0410-ace0-fbb531ad65f3

9 years agoAccomodate equal signs in DSNs and add documentation, based upon mmichelson's feedback.
Tilghman Lesher [Mon, 22 Mar 2010 16:59:35 +0000 (16:59 +0000)]
Accomodate equal signs in DSNs and add documentation, based upon mmichelson's feedback.

git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@253712 65c4cc65-6c06-0410-ace0-fbb531ad65f3

9 years agoFix memory corruption found by unit tests.
Russell Bryant [Sat, 20 Mar 2010 16:50:38 +0000 (16:50 +0000)]
Fix memory corruption found by unit tests.

ast_str_reset() was being called on a potentially uninitialized pointer.
Valgrind is my hero, once again.

git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@253579 65c4cc65-6c06-0410-ace0-fbb531ad65f3

9 years agoResolve more compiler warnings on FreeBSD.
Russell Bryant [Sat, 20 Mar 2010 12:03:07 +0000 (12:03 +0000)]
Resolve more compiler warnings on FreeBSD.

git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@253540 65c4cc65-6c06-0410-ace0-fbb531ad65f3

9 years agoInclude sys/wait.h on FreeBSD to get the WEXITSTATUS() macro.
Russell Bryant [Sat, 20 Mar 2010 11:47:40 +0000 (11:47 +0000)]
Include sys/wait.h on FreeBSD to get the WEXITSTATUS() macro.

git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@253539 65c4cc65-6c06-0410-ace0-fbb531ad65f3

9 years agoResolve compiler warnings on FreeBSD.
Russell Bryant [Sat, 20 Mar 2010 11:43:08 +0000 (11:43 +0000)]
Resolve compiler warnings on FreeBSD.

git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@253538 65c4cc65-6c06-0410-ace0-fbb531ad65f3

9 years agoResolve a compiler warning on FreeBSD.
Russell Bryant [Sat, 20 Mar 2010 11:39:39 +0000 (11:39 +0000)]
Resolve a compiler warning on FreeBSD.

git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@253537 65c4cc65-6c06-0410-ace0-fbb531ad65f3

9 years agoUse SHRT_MAX instead of MAXSHORT.
Russell Bryant [Sat, 20 Mar 2010 11:33:30 +0000 (11:33 +0000)]
Use SHRT_MAX instead of MAXSHORT.

These changes fix build issues I had with this module on FreeBSD.

git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@253536 65c4cc65-6c06-0410-ace0-fbb531ad65f3

9 years agoprevent segfault if bad magic number is encountered.
Alec L Davis [Fri, 19 Mar 2010 07:37:00 +0000 (07:37 +0000)]
prevent segfault if bad magic number is encountered.

internal_ao2_ref uses INTERNAL_OBJ which mzy report 'bad magic number', but
internal_ao2_ref continues on, causing segfault.

Although AO2_MAGIC number is checked by INTERNAL_OBJ before internal_ao2_ref is
called, A02_MAGIC is being destroyed (or a wrong pointer) by the time
internal_ao2_ref uses INTERNAL_OBJ.

internal_ao2_ref now returns -1 if INTERNAL_OBJ encouters a bad magic number.

(issue #17037)
Reported by: alecdavis
Patches:
      bug17037.diff.txt uploaded by alecdavis (license 585)
Tested by: alecdavis

git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@253490 65c4cc65-6c06-0410-ace0-fbb531ad65f3

9 years agoUpdate comment to reflect new timeout value.
Russell Bryant [Thu, 18 Mar 2010 18:23:07 +0000 (18:23 +0000)]
Update comment to reflect new timeout value.

git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@253378 65c4cc65-6c06-0410-ace0-fbb531ad65f3

9 years agoIncrease CLI command output timeout for asterisk -rx to 60 seconds.
Russell Bryant [Thu, 18 Mar 2010 18:18:43 +0000 (18:18 +0000)]
Increase CLI command output timeout for asterisk -rx to 60 seconds.

(closes issue #17049)
Reported by: russell
Tested by: russell

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

git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@253357 65c4cc65-6c06-0410-ace0-fbb531ad65f3

9 years agoChange usage of pipe to comma in UserEvent docs.
Leif Madsen [Thu, 18 Mar 2010 17:52:35 +0000 (17:52 +0000)]
Change usage of pipe to comma in UserEvent docs.

Change the example usage of pipe as a separator to comma in the UserEvent
documentation.

(closes issue #16961)
Reported by: jlpedrosa

git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@253345 65c4cc65-6c06-0410-ace0-fbb531ad65f3

9 years agoPrevent a crash when a buddy gets offline.
Philippe Sultan [Thu, 18 Mar 2010 15:59:19 +0000 (15:59 +0000)]
Prevent a crash when a buddy gets offline.

(closes issue #16760)
Reported by: fiddur
Patches:
      248394.diff uploaded by fiddur (license 678)i with modifications by me
Tested by: fiddur, phsultan

git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@253261 65c4cc65-6c06-0410-ace0-fbb531ad65f3

9 years agoUpdate to new Local channel documentation.
Leif Madsen [Thu, 18 Mar 2010 15:46:52 +0000 (15:46 +0000)]
Update to new Local channel documentation.

Add same changes as commit to 1.4, but convert to TeX.

(issue #16963)
Reported by: kobaz
Patches:
      localchannel-2.txt uploaded by kobaz (license 834)

git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@253256 65c4cc65-6c06-0410-ace0-fbb531ad65f3

9 years agoJust in case of a race, send the signal on interrupt.
Tilghman Lesher [Thu, 18 Mar 2010 15:45:26 +0000 (15:45 +0000)]
Just in case of a race, send the signal on interrupt.

git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@253255 65c4cc65-6c06-0410-ace0-fbb531ad65f3

9 years agomain/test.c reports erroneous CLI message.
Leif Madsen [Wed, 17 Mar 2010 19:06:04 +0000 (19:06 +0000)]
main/test.c reports erroneous CLI message.

(closes issue #17051)
Reported by: Nick_Lewis

git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@253205 65c4cc65-6c06-0410-ace0-fbb531ad65f3

9 years agoSwitch to using intptr_t, as suggested by Kevin Fleming on the -dev list
Tilghman Lesher [Wed, 17 Mar 2010 14:16:54 +0000 (14:16 +0000)]
Switch to using intptr_t, as suggested by Kevin Fleming on the -dev list

git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@253113 65c4cc65-6c06-0410-ace0-fbb531ad65f3

9 years agoFix a typo.
Leif Madsen [Wed, 17 Mar 2010 00:40:51 +0000 (00:40 +0000)]
Fix a typo.

git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@253032 65c4cc65-6c06-0410-ace0-fbb531ad65f3

9 years agoMerged revisions 253018 via svnmerge from
Leif Madsen [Wed, 17 Mar 2010 00:29:06 +0000 (00:29 +0000)]
Merged revisions 253018 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
  r253018 | lmadsen | 2010-03-16 19:26:19 -0500 (Tue, 16 Mar 2010) | 6 lines

  Add french snipset to say.conf.

  Add the french snipset to say.conf.

  (Closes issue #15799)
........

git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@253028 65c4cc65-6c06-0410-ace0-fbb531ad65f3

9 years agoArgh.
Tilghman Lesher [Wed, 17 Mar 2010 00:23:12 +0000 (00:23 +0000)]
Argh.

git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@253004 65c4cc65-6c06-0410-ace0-fbb531ad65f3

9 years agoFix bamboo compile error by calculating an integer with the same size as a pointer.
Tilghman Lesher [Wed, 17 Mar 2010 00:14:29 +0000 (00:14 +0000)]
Fix bamboo compile error by calculating an integer with the same size as a pointer.

git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@252980 65c4cc65-6c06-0410-ace0-fbb531ad65f3

9 years agoMask out previous arguments on each nested invocation of Gosub.
Tilghman Lesher [Tue, 16 Mar 2010 23:49:35 +0000 (23:49 +0000)]
Mask out previous arguments on each nested invocation of Gosub.
(closes issue #16758)
 Reported by: wdoekes
 Patches:
       20100316__issue16758.diff.txt uploaded by tilghman (license 14)

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

git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@252976 65c4cc65-6c06-0410-ace0-fbb531ad65f3

9 years agoRe-enable test_time on non-Linux.
Russell Bryant [Tue, 16 Mar 2010 19:36:55 +0000 (19:36 +0000)]
Re-enable test_time on non-Linux.

git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@252849 65c4cc65-6c06-0410-ace0-fbb531ad65f3

9 years agoInclude an extra newline after "Aliased CLI command" to get back the prompt.
Sean Bright [Tue, 16 Mar 2010 19:36:24 +0000 (19:36 +0000)]
Include an extra newline after "Aliased CLI command" to get back the prompt.

The other issue mentioned in this bug will be more difficult to resolve since we
have no idea (right now) of knowing if the command that is aliased has been
installed yet.

(issue #16978)
Reported by: jw-asterisk
Tested by: seanbright

git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@252848 65c4cc65-6c06-0410-ace0-fbb531ad65f3

9 years agoFix test_time on Mac OS X (and other platforms without inotify)
Tilghman Lesher [Tue, 16 Mar 2010 19:34:01 +0000 (19:34 +0000)]
Fix test_time on Mac OS X (and other platforms without inotify)

Reviewboard: https://reviewboard.asterisk.org/r/554/

git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@252846 65c4cc65-6c06-0410-ace0-fbb531ad65f3

9 years agoMerged revisions 252766 via svnmerge from
Russell Bryant [Tue, 16 Mar 2010 19:01:04 +0000 (19:01 +0000)]
Merged revisions 252766 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
  r252766 | russell | 2010-03-16 14:00:43 -0500 (Tue, 16 Mar 2010) | 6 lines

  Don't treat warnings as errors for muted.

  muted supports OS X, but uses functions marked as deprecated in 10.6.  However,
  the functions are still supported, so just ignore the warnings for now and
  allow the build to proceed.
........

git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@252767 65c4cc65-6c06-0410-ace0-fbb531ad65f3

9 years agoMerged revisions 252761 via svnmerge from
Leif Madsen [Tue, 16 Mar 2010 18:48:22 +0000 (18:48 +0000)]
Merged revisions 252761 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
  r252761 | lmadsen | 2010-03-16 13:46:20 -0500 (Tue, 16 Mar 2010) | 7 lines

  Additional extensions.ael global variable fixes.

  Fixing up a couple more overlapping global variable namespaces shared with
  extensions.conf.sample. Also noticed a few of the lines that were commented
  out didn't have the closing semi-colon so I added that as well.

  (issue #17035)
........

git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@252762 65c4cc65-6c06-0410-ace0-fbb531ad65f3

9 years agoOSARCH is not inherited to this directory
Tilghman Lesher [Tue, 16 Mar 2010 18:40:14 +0000 (18:40 +0000)]
OSARCH is not inherited to this directory

git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@252760 65c4cc65-6c06-0410-ace0-fbb531ad65f3

9 years agoDisable this test on non-Linux for now.
Russell Bryant [Tue, 16 Mar 2010 18:36:34 +0000 (18:36 +0000)]
Disable this test on non-Linux for now.

git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@252759 65c4cc65-6c06-0410-ace0-fbb531ad65f3

9 years agoImprove handling of values supplied to FAXOPT(ecm).
Kevin P. Fleming [Mon, 15 Mar 2010 22:48:38 +0000 (22:48 +0000)]
Improve handling of values supplied to FAXOPT(ecm).

Previously, values that began with whitespace were silently treated as 'no',
and all non-'yes' values were also treated as 'no'. Now the supplied value
is specifically checked for a 'yes' or 'no' (or equivalent) value, after skipping
leading whitespace. If the value is not valid, then a warning message is generated.

git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@252709 65c4cc65-6c06-0410-ace0-fbb531ad65f3

9 years agoTell the RTP engine API about the initial read and write format.
Russell Bryant [Mon, 15 Mar 2010 22:14:18 +0000 (22:14 +0000)]
Tell the RTP engine API about the initial read and write format.

Peer reviewed out-of-band by file.

git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@252627 65c4cc65-6c06-0410-ace0-fbb531ad65f3

9 years agoResolve a crash in SLATrunk when the specified trunk doesn't exist.
Sean Bright [Mon, 15 Mar 2010 21:55:44 +0000 (21:55 +0000)]
Resolve a crash in SLATrunk when the specified trunk doesn't exist.

Reported by philipp64 in #asterisk-dev.

git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@252623 65c4cc65-6c06-0410-ace0-fbb531ad65f3

9 years agoMerged revisions 252617 via svnmerge from
Tilghman Lesher [Mon, 15 Mar 2010 21:51:55 +0000 (21:51 +0000)]
Merged revisions 252617 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
  r252617 | tilghman | 2010-03-15 16:43:14 -0500 (Mon, 15 Mar 2010) | 2 lines

  Uh, yeah.  Umask.  I'm stupid.
........

git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@252619 65c4cc65-6c06-0410-ace0-fbb531ad65f3

9 years agoMerged revisions 252533 via svnmerge from
Leif Madsen [Mon, 15 Mar 2010 20:52:32 +0000 (20:52 +0000)]
Merged revisions 252533 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
  r252533 | lmadsen | 2010-03-15 15:48:56 -0500 (Mon, 15 Mar 2010) | 7 lines

  Update extensions.ael file to not overlap extensions.conf.
  Updated the extensions.ael file so the global variables don't overlap
  those that we have in extensions.conf (sample files). This way unexpected
  things won't happed hopefully if both pbx_ael and res_config are loaded.

  (closes issue #17035)
  Reported by: pprindeville
........

git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@252534 65c4cc65-6c06-0410-ace0-fbb531ad65f3

9 years agoMake the Makefile logic more explicit and move the Snow Leopard logic down to where...
Tilghman Lesher [Mon, 15 Mar 2010 16:27:08 +0000 (16:27 +0000)]
Make the Makefile logic more explicit and move the Snow Leopard logic down to where it's not executed on non-Darwin systems.

(closes issue #17028)
 Reported by: pabelanger
 Patches:
       issue17028_20100315.patch uploaded by seanbright (license 71)
       20100315__issue17028.diff.txt uploaded by tilghman (license 14)
 Tested by: tilghman, pabelanger

git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@252488 65c4cc65-6c06-0410-ace0-fbb531ad65f3

9 years agoTHIS IS NOT PYTHON. Indentation doesn't matter, only braces do.
Tilghman Lesher [Mon, 15 Mar 2010 04:25:35 +0000 (04:25 +0000)]
THIS IS NOT PYTHON.  Indentation doesn't matter, only braces do.

(closes issue #17025)
 Reported by: smurfix
 Patches:
       sip.patch uploaded by smurfix (license 547)

git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@252442 65c4cc65-6c06-0410-ace0-fbb531ad65f3

9 years agoRecorded merge of revisions 252366 via svnmerge from
Tilghman Lesher [Mon, 15 Mar 2010 01:39:39 +0000 (01:39 +0000)]
Recorded merge of revisions 252366 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
  r252366 | tilghman | 2010-03-14 20:39:00 -0500 (Sun, 14 Mar 2010) | 2 lines

  Typo
........

git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@252367 65c4cc65-6c06-0410-ace0-fbb531ad65f3