13 years agofixes crash when creation of UDPTL fails
David Vossel [Fri, 28 May 2010 17:55:38 +0000 (17:55 +0000)]
fixes crash when creation of UDPTL fails

(closes issue #17264)
Reported by: falves11
      issue_17264_reviewboard_fix.diff uploaded by dvossel (license 671)
      issue_17264_1.6.2_reviewboard_fix.diff uploaded by dvossel (license 671)
Tested by: falves11

git-svn-id: 65c4cc65-6c06-0410-ace0-fbb531ad65f3

13 years agoMore build fixes for ical/neon and res_calendar_ews
Terry Wilson [Fri, 28 May 2010 17:34:00 +0000 (17:34 +0000)]
More build fixes for ical/neon and res_calendar_ews

git-svn-id: 65c4cc65-6c06-0410-ace0-fbb531ad65f3

13 years agofix compile error
Jeff Peeler [Thu, 27 May 2010 20:08:49 +0000 (20:08 +0000)]
fix compile error

git-svn-id: 65c4cc65-6c06-0410-ace0-fbb531ad65f3

13 years agoCache query results for one second.
Tilghman Lesher [Thu, 27 May 2010 19:25:16 +0000 (19:25 +0000)]
Cache query results for one second.

Queries from the PBX core come in 3's.  Caching avoids the additional
performance penalty from those two additional queries hitting the database.

(closes issue #16521)
 Reported by: tilghman
       20091229__issue16521.diff.txt uploaded by tilghman (license 14)
 Tested by: Hubguru, tilghman

git-svn-id: 65c4cc65-6c06-0410-ace0-fbb531ad65f3

13 years agoMerged revisions 266142 via svnmerge from
Tilghman Lesher [Wed, 26 May 2010 21:17:46 +0000 (21:17 +0000)]
Merged revisions 266142 via svnmerge from

  r266142 | tilghman | 2010-05-26 16:11:44 -0500 (Wed, 26 May 2010) | 14 lines

  Use sigaction for signals which should persist past the initial trigger, not signal.

  If you call signal() in a Solaris signal handler, instead of just resetting
  the signal handler, it causes the signal to refire, because the signal is not
  marked as handled prior to the signal handler being called.  This effectively
  causes Solaris to immediately exceed the threadstack in recursive signal
  handlers and crash.

  (closes issue #17000)
   Reported by: rmcgilvr
         20100526__issue17000.diff.txt uploaded by tilghman (license 14)
   Tested by: rmcgilvr

git-svn-id: 65c4cc65-6c06-0410-ace0-fbb531ad65f3

13 years agoRemove redundant ast_conntected_line_free call.
Mark Michelson [Wed, 26 May 2010 20:17:54 +0000 (20:17 +0000)]
Remove redundant ast_conntected_line_free call.

This wouldn't cause any problems, but it's certainly not needed either.

git-svn-id: 65c4cc65-6c06-0410-ace0-fbb531ad65f3

13 years agoRemove unrelated MOH change from previous commit.
Mark Michelson [Wed, 26 May 2010 20:15:47 +0000 (20:15 +0000)]
Remove unrelated MOH change from previous commit.

Thanks Kevin!

git-svn-id: 65c4cc65-6c06-0410-ace0-fbb531ad65f3

13 years agoFix misspelling of macro args.
Mark Michelson [Wed, 26 May 2010 20:04:51 +0000 (20:04 +0000)]
Fix misspelling of macro args.

git-svn-id: 65c4cc65-6c06-0410-ace0-fbb531ad65f3

13 years agodo all sip registry parsing before transmit_register
David Vossel [Wed, 26 May 2010 19:46:49 +0000 (19:46 +0000)]
do all sip registry parsing before transmit_register

This patch breaks up every part of the sip registry string during
config parsing and removes all parsing from transmit_register().
Thanks to Nick_Lewis for contributing this patch!

(closes issue #14331)
Reported by: Nick_Lewis
      chan_sip.c-domparse.patch uploaded by Nick Lewis (license 657)
      chan_sip.c.patch uploaded by Nick Lewis (license 657)
      chan_sip.c.domainparse3.patch uploaded by Nick Lewis (license 657)
      chan_sip.c-domparse4.patch uploaded by Nick Lewis (license 657)
      chan_sip.c-domparse5.patch uploaded by Nick Lewis (license 657)
      nicklewispatch.diff uploaded by dvossel (license 671)
Tested by: Nick_Lewis, dvossel


git-svn-id: 65c4cc65-6c06-0410-ace0-fbb531ad65f3

13 years agofixes failed SIP Directed pickup resulting in dead channel
David Vossel [Wed, 26 May 2010 18:32:51 +0000 (18:32 +0000)]
fixes failed SIP Directed pickup resulting in dead channel

(closes issue #17339)
Reported by: one47
      sip_magic_pickup2 uploaded by one47 (license 23)
Tested by: one47, dvossel

git-svn-id: 65c4cc65-6c06-0410-ace0-fbb531ad65f3

13 years agoBlocked revisions 266004 via svnmerge
Mark Michelson [Wed, 26 May 2010 18:21:53 +0000 (18:21 +0000)]
Blocked revisions 266004 via svnmerge

  r266004 | mmichelson | 2010-05-26 13:21:10 -0500 (Wed, 26 May 2010) | 12 lines

  Make AgentComplete message more consistent.

  At times, the "Member" field was not specified during the event.
  It's there now.

  (closes issue #15638)
  Reported by: elbriga
        patchAppQueueAgentComplete.diff uploaded by elbriga (license 482)

git-svn-id: 65c4cc65-6c06-0410-ace0-fbb531ad65f3

13 years agoMerged revisions 265910 via svnmerge from
Tilghman Lesher [Wed, 26 May 2010 16:23:28 +0000 (16:23 +0000)]
Merged revisions 265910 via svnmerge from

  r265910 | tilghman | 2010-05-26 11:21:00 -0500 (Wed, 26 May 2010) | 7 lines

  Not finding rows in the DB does not rise to the level of a warning.

  (closes issue #17062)
   Reported by: drookie
         20100525__issue17062.diff.txt uploaded by tilghman (license 14)

git-svn-id: 65c4cc65-6c06-0410-ace0-fbb531ad65f3

13 years agoConstruct socket name, according to the Postgres docs, and document as such.
Tilghman Lesher [Wed, 26 May 2010 16:14:48 +0000 (16:14 +0000)]
Construct socket name, according to the Postgres docs, and document as such.

(closes issue #17392)
 Reported by: dps
       20100525__issue17392.diff.txt uploaded by tilghman (license 14)
 Tested by: dps

git-svn-id: 65c4cc65-6c06-0410-ace0-fbb531ad65f3

13 years ago.......
Mark Michelson [Wed, 26 May 2010 14:45:47 +0000 (14:45 +0000)]

git-svn-id: 65c4cc65-6c06-0410-ace0-fbb531ad65f3

13 years agoRe-enable "always" option for videosupport option in sip.conf.
Mark Michelson [Wed, 26 May 2010 14:41:55 +0000 (14:41 +0000)]
Re-enable "always" option for videosupport option in sip.conf.

(closes issue #17016)
Reported by: twilson
      17016.patch uploaded by mmichelson (license 60)
  Tested by: devmod

git-svn-id: 65c4cc65-6c06-0410-ace0-fbb531ad65f3

13 years agoEnsure that libneon > 0.29.0 is installed for res_calendar_ews
Terry Wilson [Wed, 26 May 2010 05:33:11 +0000 (05:33 +0000)]
Ensure that libneon > 0.29.0 is installed for res_calendar_ews

This uses a modified version of pabelanger's patch that checks for NTLM support
instead, which was added in 0.29.0 which is what is required for

(closes issue #17391)
Reported by: loloski
      issue17391.patch.v2 uploaded by pabelanger (license 224)
Tested by: twilson

git-svn-id: 65c4cc65-6c06-0410-ace0-fbb531ad65f3

13 years agoUse configure to determine the prefixes and include directories properly.
Tilghman Lesher [Wed, 26 May 2010 00:29:40 +0000 (00:29 +0000)]
Use configure to determine the prefixes and include directories properly.

This ensures cross-platform compatibility, even among Linux distributions,
which don't always put headers in the same place.

(closes issue #17391)
 Reported by: loloski

git-svn-id: 65c4cc65-6c06-0410-ace0-fbb531ad65f3

13 years agoProperly use peer's outboundproxy for outbound REGISTERs.
Mark Michelson [Tue, 25 May 2010 20:59:04 +0000 (20:59 +0000)]
Properly use peer's outboundproxy for outbound REGISTERs.

The logic used in transmit_register to get the outboundproxy for a peer
was flawed since this value would be overridden shortly afterwards when
create_addr was called.

In addition, this also fixes some logic used when parsing users.conf so
that the peer name is placed in the internally-generated register string
so that an outboundproxy set in the Asterisk GUI will be used for outbound

git-svn-id: 65c4cc65-6c06-0410-ace0-fbb531ad65f3

13 years agoBlocked revisions 265613 via svnmerge
David Vossel [Tue, 25 May 2010 17:12:28 +0000 (17:12 +0000)]
Blocked revisions 265613 via svnmerge

  r265613 | dvossel | 2010-05-25 12:11:40 -0500 (Tue, 25 May 2010) | 8 lines

  fixes build issue with zaptel

  (closes issue #17394)
  Reported by: aragon
        half_buffer_fix.diff uploaded by dvossel (license 671)
  Tested by: aragon

git-svn-id: 65c4cc65-6c06-0410-ace0-fbb531ad65f3

13 years agoMerged revisions 265610 via svnmerge from
Matthew Nicholson [Tue, 25 May 2010 17:00:11 +0000 (17:00 +0000)]
Merged revisions 265610 via svnmerge from

  r265610 | mnicholson | 2010-05-25 11:48:19 -0500 (Tue, 25 May 2010) | 8 lines

  Don't mark the cdr records of unanswered queue calls with "NOANSWER".  This restores the behavior prior to r258670.

  (closes issue #17334)
  Reported by: jvandal
        queue-cdr-fixes1.diff uploaded by mnicholson (license 96)
  Tested by: aragon, jvandal

git-svn-id: 65c4cc65-6c06-0410-ace0-fbb531ad65f3

13 years agoMemory leak in connected line data when SIP blond transfer done.
Richard Mudgett [Tue, 25 May 2010 16:23:51 +0000 (16:23 +0000)]
Memory leak in connected line data when SIP blond transfer done.

The handling of the control subclass AST_CONTROL_READ_ACTION frame leaked
connected line string memory in __ast_read().

Also in __ast_read() the frame type switch should not have had a case for

git-svn-id: 65c4cc65-6c06-0410-ace0-fbb531ad65f3

13 years agoTypos: 'succesful' (lintian)
Tzafrir Cohen [Tue, 25 May 2010 08:31:51 +0000 (08:31 +0000)]
Typos: 'succesful' (lintian)

git-svn-id: 65c4cc65-6c06-0410-ace0-fbb531ad65f3

13 years agoMerge the rest of the FullyBooted patch
Terry Wilson [Mon, 24 May 2010 22:21:58 +0000 (22:21 +0000)]
Merge the rest of the FullyBooted patch

git-svn-id: 65c4cc65-6c06-0410-ace0-fbb531ad65f3

13 years agoAllow SendDTMF to play digits to a specified channel.
Mark Michelson [Mon, 24 May 2010 22:16:29 +0000 (22:16 +0000)]
Allow SendDTMF to play digits to a specified channel.

Patch supplied by reporter was modified to use autoservice and
prevent a potential channel ref leak but is otherwise as the
reporter uploaded it.

(closes issue #17182)
Reported by: rcasas
      app_senddtmf.c.patch_trunk uploaded by rcasas (license 641)

git-svn-id: 65c4cc65-6c06-0410-ace0-fbb531ad65f3

13 years agoPrint openh323 log to the Asterisk console.
Mark Michelson [Mon, 24 May 2010 22:05:15 +0000 (22:05 +0000)]
Print openh323 log to the Asterisk console.

(closes issue #17109)
Reported by: under
      logstream.diff uploaded by under (license 914)

git-svn-id: 65c4cc65-6c06-0410-ace0-fbb531ad65f3

13 years agoAllow type=user SIP endpoints to be loaded properly from realtime.
Mark Michelson [Mon, 24 May 2010 21:44:30 +0000 (21:44 +0000)]
Allow type=user SIP endpoints to be loaded properly from realtime.

(closes issue #16021)
Reported by: Guggemand
      realtime-type-fix.patch uploaded by Guggemand (license 897)
  (altered by me slightly to avoid ref leaks)
Tested by: Guggemand

git-svn-id: 65c4cc65-6c06-0410-ace0-fbb531ad65f3

13 years agoMake app_rpt.c able to compile again.
Richard Mudgett [Mon, 24 May 2010 20:08:35 +0000 (20:08 +0000)]
Make app_rpt.c able to compile again.

git-svn-id: 65c4cc65-6c06-0410-ace0-fbb531ad65f3

13 years agoreverses incorrect logic introduced by r243200
David Vossel [Mon, 24 May 2010 19:42:54 +0000 (19:42 +0000)]
reverses incorrect logic introduced by r243200

The decoding of the replace_id did not need to be broken
up in this instance.  This was brought to my attention
again because it caused a segfault when the from or to
tags were not present in the "Replaces" header.

git-svn-id: 65c4cc65-6c06-0410-ace0-fbb531ad65f3

13 years agoAdd the FullyBooted AMI event
Terry Wilson [Mon, 24 May 2010 19:06:40 +0000 (19:06 +0000)]
Add the FullyBooted AMI event

It is possible to connect to the manager interface before all Asterisk modules
are loaded. To ensure that an application does not send AMI actions that might
require a module that has not yet loaded, the application can listen for the
FullyBooted manager event. It will be sent upon connection if all modules have
been loaded, or as soon as loading is complete. The event:

   Event: FullyBooted
   Privilege: system,all
   Status: Fully Booted


git-svn-id: 65c4cc65-6c06-0410-ace0-fbb531ad65f3

13 years agoCalendaring support for Exchange Server 2007+ via EWS
Terry Wilson [Mon, 24 May 2010 18:21:20 +0000 (18:21 +0000)]
Calendaring support for Exchange Server 2007+ via EWS

This commit adds support for calendaring with Exchange Server 2007+ via
Exchange Web Services. Full write support and for querying attendees. Many
thanks to Jan Kaláb for the feature.

(closes issue #17022)
Reported by: pitel
      res_calendar_ews.c uploaded by pitel (license 1008)
Tested by: pitel, twilson


git-svn-id: 65c4cc65-6c06-0410-ace0-fbb531ad65f3

13 years agoOn systems with a LOT of RAM, a signed integer sometimes printed negative.
Tilghman Lesher [Mon, 24 May 2010 18:19:08 +0000 (18:19 +0000)]
On systems with a LOT of RAM, a signed integer sometimes printed negative.

(closes issue #16837)
 Reported by: jlpedrosa
       20100504__issue16837.diff.txt uploaded by tilghman (license 14)

git-svn-id: 65c4cc65-6c06-0410-ace0-fbb531ad65f3

13 years agofixes segfault when using generic plc
David Vossel [Mon, 24 May 2010 16:10:09 +0000 (16:10 +0000)]
fixes segfault when using generic plc

git-svn-id: 65c4cc65-6c06-0410-ace0-fbb531ad65f3

13 years agosmall changes to avoiding 'freeing unused memory...'
Alexandr Anikin [Sun, 23 May 2010 18:23:38 +0000 (18:23 +0000)]
small changes to avoiding 'freeing unused memory...'

git-svn-id: 65c4cc65-6c06-0410-ace0-fbb531ad65f3

13 years agoChannel initialization failure causes crashes.
Richard Mudgett [Fri, 21 May 2010 22:46:52 +0000 (22:46 +0000)]
Channel initialization failure causes crashes.

__ast_channel_alloc_ap() has several points in the initialization of a new
channel structure where it could fail.  Since the channel structure is now
an ao2 object, the destructor callback needs to be able to handle clean up
when the structure setup is incomplete.

Problems corrected:

1) Failing to setup the alertpipe would not unreference the structure but
free it directly.  Doing this to an ao2_object is very bad.

2) File descriptors need to be initialized to -1 before a construction
failure could occur so the destructor will not close unopened descriptors.

3) The destructor needs to check that the string field has been
initialized before using any string field values.  Crashes expected.

4) The destructor should not notify devstate if the device name is empty.
It is a waste of cycles and a couple ERROR log messages are generated.


git-svn-id: 65c4cc65-6c06-0410-ace0-fbb531ad65f3

13 years agoMerged revisions 265089 via svnmerge from
Mark Michelson [Fri, 21 May 2010 21:08:51 +0000 (21:08 +0000)]
Merged revisions 265089 via svnmerge from

  r265089 | mmichelson | 2010-05-21 15:59:14 -0500 (Fri, 21 May 2010) | 8 lines

  Don't hang up on a queue caller if the file we attempt to play does not exist.

  This also fixes a documentation mistake in file.h that made my original attempt
  to correct this problem not work correctly.

  (closes issue #17061)
  Reported by: RoadKill

git-svn-id: 65c4cc65-6c06-0410-ace0-fbb531ad65f3

13 years agoBe sure to set the sin_family on the proxy when allocating.
Mark Michelson [Fri, 21 May 2010 20:38:14 +0000 (20:38 +0000)]
Be sure to set the sin_family on the proxy when allocating.

(closes issue #17157)
Reported by: stuarth

git-svn-id: 65c4cc65-6c06-0410-ace0-fbb531ad65f3

13 years agoMerged revisions 264999 via svnmerge from
Mark Michelson [Fri, 21 May 2010 16:54:21 +0000 (16:54 +0000)]
Merged revisions 264999 via svnmerge from

  r264999 | mmichelson | 2010-05-21 11:53:53 -0500 (Fri, 21 May 2010) | 3 lines

  Fix grammatical error in comment.

git-svn-id: 65c4cc65-6c06-0410-ace0-fbb531ad65f3

13 years agoMerged revisions 264996 via svnmerge from
Mark Michelson [Fri, 21 May 2010 16:44:27 +0000 (16:44 +0000)]
Merged revisions 264996 via svnmerge from

  r264996 | mmichelson | 2010-05-21 11:28:34 -0500 (Fri, 21 May 2010) | 32 lines

  Allow ast_safe_sleep to defer specific frames until after the sleep has concluded.

  From reviewboard

  A Digium customer discovered a somewhat odd bug. The setup is that parties A
  and B are bridged, and party A places party B on hold. While party B is
  listening to hold music, he mashes a bunch of DTMF. Party A takes party
  B off hold while this is happening, but party B continues to hear hold
  music. I could reproduce this about 1 in 5 times.

  The issue:
  When DTMF features are enabled and a user presses keys, the channel that
  the DTMF is streamed to is placed in an ast_safe_sleep for 100 ms, the
  duration of the emulated tone. If an AST_CONTROL_UNHOLD frame is read
  from the channel during the sleep, the frame is dropped. Thus the
  unhold indication is never made to the channel that was originally placed
  on hold.

  The fix:
  Originally, I discussed with Kevin possible ways of fixing the specific
  problem reported. However, we determined that the same type of problem
  could happen in other situations where ast_safe_sleep() is used. Using
  autoservice as a model, I modified ast_safe_sleep_conditional() to
  defer specific frame types so they can be re-queued once the sleep has
  finished. I made a common function for determining if a frame should
  be deferred so that there are not two identical switch blocks to


git-svn-id: 65c4cc65-6c06-0410-ace0-fbb531ad65f3

13 years agoLog spandsp's fax debug output to the FAX logger level.
Mark Michelson [Fri, 21 May 2010 15:15:58 +0000 (15:15 +0000)]
Log spandsp's fax debug output to the FAX logger level.


git-svn-id: 65c4cc65-6c06-0410-ace0-fbb531ad65f3

13 years agoTake dup'd code for directmedia ACLs and make utility func
Terry Wilson [Fri, 21 May 2010 01:00:44 +0000 (01:00 +0000)]
Take dup'd code for directmedia ACLs and make utility func

The same code was repeated in lots of different places, so I made a utility
fuction for it. This should make the merge in the v6-new branch easier.

git-svn-id: 65c4cc65-6c06-0410-ace0-fbb531ad65f3

13 years agoMerged revisions 264820 via svnmerge from
Richard Mudgett [Thu, 20 May 2010 23:29:43 +0000 (23:29 +0000)]
Merged revisions 264820 via svnmerge from

  r264820 | rmudgett | 2010-05-20 18:23:21 -0500 (Thu, 20 May 2010) | 6 lines

  ast_callerid_parse() had a path that left name uninitialized.

  Several callers of ast_callerid_parse() do not initialize the name
  parameter before calling thus there is the potential to use an
  uninitialized pointer.

git-svn-id: 65c4cc65-6c06-0410-ace0-fbb531ad65f3

13 years agoLet ExtensionState resolve dynamic hints.
Tilghman Lesher [Thu, 20 May 2010 22:23:32 +0000 (22:23 +0000)]
Let ExtensionState resolve dynamic hints.

(closes issue #16623)
 Reported by: tilghman
       20100116__issue16623.diff.txt uploaded by tilghman (license 14)
 Tested by: lmadsen

git-svn-id: 65c4cc65-6c06-0410-ace0-fbb531ad65f3

13 years agoError message fix.
Tilghman Lesher [Thu, 20 May 2010 21:28:53 +0000 (21:28 +0000)]
Error message fix.

(closes issue #17356)
 Reported by: kenner
       app_stack.c.diff uploaded by kenner (license 1040)

git-svn-id: 65c4cc65-6c06-0410-ace0-fbb531ad65f3

13 years agoAvoid crash in generic CC agent init if caller name or number is NULL.
Richard Mudgett [Thu, 20 May 2010 20:49:40 +0000 (20:49 +0000)]
Avoid crash in generic CC agent init if caller name or number is NULL.

git-svn-id: 65c4cc65-6c06-0410-ace0-fbb531ad65f3

13 years agoDial and queue connected line update macro not always run when expected.
Richard Mudgett [Thu, 20 May 2010 19:40:03 +0000 (19:40 +0000)]
Dial and queue connected line update macro not always run when expected.

The connected line update macro would not get run if the connected line
number string was empty.  The number could be empty if the connected line
update did not update a number but the name.  It should be run if there
was an AST_CONTROL_CONNECTED_LINE frame received for pending dials and

Renamed and added some more comments for some confusing identifiers
directly connected to the related code.

Also fixed a memory leak in app_queue.


git-svn-id: 65c4cc65-6c06-0410-ace0-fbb531ad65f3

13 years agoAdd support for direct media ACLs
Terry Wilson [Thu, 20 May 2010 17:54:02 +0000 (17:54 +0000)]
Add support for direct media ACLs

directmediapermit/directmediadeny support to restrict which peers can do
directmedia based on ip address. In some networks not all phones are fully
routed, i.e. not all phones can ping each other. This patch adds a way to
restrict directmedia for certain peers between certain networks.

(closes issue #16645)
Reported by: raarts
      directmediapermit.patch uploaded by raarts (license 937)
Tested by: raarts


git-svn-id: 65c4cc65-6c06-0410-ace0-fbb531ad65f3

13 years agoIgnore pre-processed source files generated during DONT_OPTIMIZE dev-mode builds.
Kevin P. Fleming [Thu, 20 May 2010 15:30:19 +0000 (15:30 +0000)]
Ignore pre-processed source files generated during DONT_OPTIMIZE dev-mode builds.

git-svn-id: 65c4cc65-6c06-0410-ace0-fbb531ad65f3

13 years agoCorrect 'all logger levels' patch to work properly.
Kevin P. Fleming [Thu, 20 May 2010 12:06:11 +0000 (12:06 +0000)]
Correct 'all logger levels' patch to work properly.

Nick Lewis pointed out that the patch as committed wouldn't actually include
dynamic logger levels, which was missed by the other reviewers. Thanks!

git-svn-id: 65c4cc65-6c06-0410-ace0-fbb531ad65f3

13 years agoFix transcode_via_sln option with SIP calls and improve PLC usage.
Mark Michelson [Wed, 19 May 2010 21:29:08 +0000 (21:29 +0000)]
Fix transcode_via_sln option with SIP calls and improve PLC usage.

From reviewboard:
The problem here is a bit complex, so try to bear with me...

It was noticed by a Digium customer that generic PLC (as configured in
codecs.conf) did not appear to actually be having any sort of benefit when
packet loss was introduced on an RTP stream. I reproduced this issue myself
by streaming a file across an RTP stream and dropping approx. 5% of the
RTP packets. I saw no real difference between when PLC was enabled or disabled
when using wireshark to analyze the RTP streams.

After analyzing what was going on, it became clear that one of the problems
faced was that when running my tests, the translation paths were being set
up in such a way that PLC could not possibly work as expected. To illustrate,
if packets are lost on channel A's read stream, then we expect that PLC will
be applied to channel B's write stream. The problem is that generic PLC can
only be done when there is a translation path that moves from some codec to
SLINEAR. When I would run my tests, I found that every single time, read
and write translation paths would be set up on channel A instead of channel
B. There appeared to be no real way to predict which channel the translation
paths would be set up on.

This is where Kevin swooped in to let me know about the transcode_via_sln
option in asterisk.conf. It is supposed to work by placing a read translation
path on both channels from the channel's rawreadformat to SLINEAR. It also
will place a write translation path on both channels from SLINEAR to the
channel's rawwriteformat. Using this option allows one to predictably set up
translation paths on all channels. There are two problems with this, though.
First and foremost, the transcode_via_sln option did not appear to be working
properly when I was placing a SIP call between two endpoints which did not
share any common formats. Second, even if this option were to work, for PLC
to be applied, there had to be a write translation path that would go from
some format to SLINEAR. It would not work properly if the starting format
of translation was SLINEAR.

The one-line change presented in this review request in chan_sip.c fixed the
first issue for me. The problem was that in sip_request_call, the
jointcapability of the outbound channel was being set to the format passed to
sip_request_call. This is nativeformats of the inbound channel. Because of this,
when ast_channel_make_compatible was called by app_dial, both channels already
had compatibly read and write formats. Thus, no translation path was set up at
the time. My change is to set the jointcapability of the sip_pvt created during
sip_request_call to the intersection of the inbound channel's nativeformats and
the configured peer capability that we determined during the earlier call to
create_addr. Doing this got the translation paths set up as expected when using

The changes presented in channel.c fixed the second issue for me. First and
foremost, when Asterisk is started, we'll read codecs.conf to see the value of
the genericplc option. If this option is set, and ast_write is called for a
frame with no data, then we will attempt to fill in the missing samples for
the frame. The implementation uses a channel datastore for maintaining the
PLC state and for creating a buffer to store PLC samples in. Even when we
receive a frame with data, we'll call plc_rx so that the PLC state will have
knowledge of the previous voice frame, which it can use as a basis for when
it comes time to actually do a PLC fill-in.

So, reviewers, now I ask for your help. First off, there's the one line change
in chan_sip that I have put in. Is it right? By my logic it seems correct, but
I'm sure someone can tell me why it is not going to work. This is probably the
change I'm least concerned about, though. What concerns me much more is the
set of changes in channel.c. First off, am I even doing it right? When I run
tests, I can clearly see that when PLC is activated, I see a significant increase
in RTP traffic where I would expect it to be. However, in my humble opinion, the
audio sounds kind of crappy whenever the PLC fill-in is done. It sounds worse to
me than when no PLC is used at all. I need someone to review the logic I have used
to be sure that I'm not misusing anything. As far as I can see my pointer arithmetic
is correct, and my use of AST_FRIENDLY_OFFSET should be correct as well, but I'm
sure someone can point out somewhere where I've done something incorrectly.

As I was writing this review request up, I decided to give the code a test run under
valgrind, and I find that for some reason, calls to plc_rx are causing some invalid
reads. Apparently I'm reading past the end of a buffer somehow. I'll have to dig around
a bit to see why that is the case. If it's obvious to someone reviewing, speak up!

Finally, I have one other proposal that is not reflected in my code review. Since
without transcode_via_sln set, one cannot predict or control where a translation
path will be up, it seems to me that the current practice of using PLC only when
transcoding to SLINEAR is not useful. I recommend that once it has been determined
that the method used in this code review is correct and works as expected, then
the code in translate.c that invokes PLC should be removed.


git-svn-id: 65c4cc65-6c06-0410-ace0-fbb531ad65f3

13 years agofixes infinite loop during udptl.c's decode_open_type
David Vossel [Wed, 19 May 2010 20:30:33 +0000 (20:30 +0000)]
fixes infinite loop during udptl.c's decode_open_type

When decode_length returns the length there is a check to see if that
length is negative, if so the decode loop breaks as this means the
limit has been reached.  The problem here is that length is an
unsigned int, so length can never be negative.  This resulted in
an infinite loop.

(issue #17352)

git-svn-id: 65c4cc65-6c06-0410-ace0-fbb531ad65f3

13 years agoCast an unsigned int to a signed int when comparing it with 0.
Matthew Nicholson [Wed, 19 May 2010 20:26:27 +0000 (20:26 +0000)]
Cast an unsigned int to a signed int when comparing it with 0.


git-svn-id: 65c4cc65-6c06-0410-ace0-fbb531ad65f3

13 years agoMerged revisions 264334 via svnmerge from
Matthew Nicholson [Wed, 19 May 2010 20:02:57 +0000 (20:02 +0000)]
Merged revisions 264334 via svnmerge from

  r264334 | mnicholson | 2010-05-19 15:01:38 -0500 (Wed, 19 May 2010) | 5 lines

  Set quieted flag when receiving a dtmf tone during playback in speechbackground.

  (closes issue #16966)
  Reported by: asackheim

git-svn-id: 65c4cc65-6c06-0410-ace0-fbb531ad65f3

13 years agofixes crash in check_rtp_timeout
David Vossel [Wed, 19 May 2010 19:21:04 +0000 (19:21 +0000)]
fixes crash in check_rtp_timeout

During deadlock avoidance the sip dialog pvt is locked and
unlocked.  When this occurs we have no guarantee the pvt's owner
is still valid.  We were trying to access the pvt's owner after
this without checking to see if it still existed first.

(closes issue #17271)
Reported by: under
      check_rtp_timeout.diff uploaded by under (license 914)
Tested by: dvossel

git-svn-id: 65c4cc65-6c06-0410-ace0-fbb531ad65f3

13 years agoMerged revisions 264248 via svnmerge from
Tilghman Lesher [Wed, 19 May 2010 17:48:31 +0000 (17:48 +0000)]
Merged revisions 264248 via svnmerge from

  r264248 | tilghman | 2010-05-19 12:41:29 -0500 (Wed, 19 May 2010) | 17 lines

  Internal timing is now on by default, if you're using DAHDI 2.3 or above.

  The reason for ensuring DAHDI 2.3 or above is that this version ensures that
  a timer is always available, whereas in previous versions, it was possible
  for DAHDI to be loaded, but have no drivers to actually generate timing.  If
  internal_timing was turned on in this circumstance, a complete lack of audio
  would result.  This is the reason why internal_timing was not on by default.
  However, now that DAHDI ensures the availability of a timer, there is no
  reason for this setting to be off (and in fact, it solves a great many initial
  user problems).

  (closes issue #15932)
   Reported by: dimas
         20100519__issue15932.diff.txt uploaded by tilghman (license 14)
   Tested by: tilghman

git-svn-id: 65c4cc65-6c06-0410-ace0-fbb531ad65f3

13 years agoKeep track of digit duration, when we're decoding inband to pass DTMF frames.
Tilghman Lesher [Wed, 19 May 2010 16:42:20 +0000 (16:42 +0000)]
Keep track of digit duration, when we're decoding inband to pass DTMF frames.

(closes issue #17235)
 Reported by: frawd
       new_dtmf_dsp_len.patch uploaded by frawd (license 610)
       20100518__issue17235.diff.txt uploaded by tilghman (license 14)
 Tested by: frawd

git-svn-id: 65c4cc65-6c06-0410-ace0-fbb531ad65f3

13 years agoFix compilation problem with previous commit.
Leif Madsen [Wed, 19 May 2010 15:39:39 +0000 (15:39 +0000)]
Fix compilation problem with previous commit.

(issue #16009)

git-svn-id: 65c4cc65-6c06-0410-ace0-fbb531ad65f3

13 years agoAdd ability for logger channels to include *all* levels.
Kevin P. Fleming [Wed, 19 May 2010 15:29:28 +0000 (15:29 +0000)]
Add ability for logger channels to include *all* levels.

Now that Asterisk modules can dynamically create and destroy logger levels
on demand, it's useful to be able to configure a logger channel (console,
file, whatever) to be able to accept log messages from *all* levels, even
levels created dynamically. This patch adds support for this, by allowing
the '*' level name to be used in logger.conf.


git-svn-id: 65c4cc65-6c06-0410-ace0-fbb531ad65f3

13 years agoAdd ability to hangup all channels from the CLI.
Leif Madsen [Wed, 19 May 2010 15:12:18 +0000 (15:12 +0000)]
Add ability to hangup all channels from the CLI.

Added the keyword 'all' to the 'channel hangup request' CLI command
so that you can request all channels to be hungup without having to
restart Asterisk.

(closes issue #16009)
Reported by: moy
      hangup-all-rev-221688.patch uploaded by moy (license 222)
Tested by: moy, russell

git-svn-id: 65c4cc65-6c06-0410-ace0-fbb531ad65f3

13 years agofixes crash during dtmf
David Vossel [Wed, 19 May 2010 14:38:02 +0000 (14:38 +0000)]
fixes crash during dtmf

During the processing of Cisco dtmf the dtmf samples were
not being calculated correctly.  In an attempt to determine
what sample rate was being used, a NULL frame was processed
which caused a crash.  This patch resolves this.

(closes issue #17248)
Reported by: falves11
      issue_17248.diff uploaded by dvossel (license 671)

git-svn-id: 65c4cc65-6c06-0410-ace0-fbb531ad65f3

13 years agofix incorrectly typed indications for [nz] stutter and dialrecall
Alec L Davis [Wed, 19 May 2010 08:09:14 +0000 (08:09 +0000)]
fix incorrectly typed indications for [nz] stutter and dialrecall

(closes issue #17359)
Reported by: alecdavis
      bug17359.diff.txt uploaded by alecdavis (license 585)

git-svn-id: 65c4cc65-6c06-0410-ace0-fbb531ad65f3

13 years agoMerged revisions 263949 via svnmerge from
Tilghman Lesher [Wed, 19 May 2010 06:41:04 +0000 (06:41 +0000)]
Merged revisions 263949 via svnmerge from

  r263949 | tilghman | 2010-05-19 01:32:27 -0500 (Wed, 19 May 2010) | 8 lines

  Because progress is called multiple times, across several frames, we must persist states when detecting multitone sequences.

  (closes issue #16749)
   Reported by: dant
         dsp.c-bug16749-1.patch uploaded by dant (license 670)
   Tested by: dant

git-svn-id: 65c4cc65-6c06-0410-ace0-fbb531ad65f3

13 years agoAdd an sha1sum-workalike for platforms which don't have it (like Mac OS X)
Tilghman Lesher [Tue, 18 May 2010 22:49:13 +0000 (22:49 +0000)]
Add an sha1sum-workalike for platforms which don't have it (like Mac OS X)

git-svn-id: 65c4cc65-6c06-0410-ace0-fbb531ad65f3

13 years agofixes segfault on logging
David Vossel [Tue, 18 May 2010 22:48:51 +0000 (22:48 +0000)]
fixes segfault on logging

(closes issue #17331)
Reported by: under
      utils.diff uploaded by under (license 914)
      segfault_on_logging.diff uploaded by dvossel (license 671)
Tested by: under, dvossel

git-svn-id: 65c4cc65-6c06-0410-ace0-fbb531ad65f3

13 years agoBe sure to heap-allocate the redirecting to tag so as not to cause crashiness.
Mark Michelson [Tue, 18 May 2010 21:09:41 +0000 (21:09 +0000)]
Be sure to heap-allocate the redirecting to tag so as not to cause crashiness.

git-svn-id: 65c4cc65-6c06-0410-ace0-fbb531ad65f3

13 years agoMake happy green color come back
Tilghman Lesher [Tue, 18 May 2010 20:49:00 +0000 (20:49 +0000)]
Make happy green color come back

git-svn-id: 65c4cc65-6c06-0410-ace0-fbb531ad65f3

13 years agoFix memory leaks in redirecting structures in chan_sip.c
Mark Michelson [Tue, 18 May 2010 20:09:24 +0000 (20:09 +0000)]
Fix memory leaks in redirecting structures in chan_sip.c

Thanks to Richard for pointing this out.

git-svn-id: 65c4cc65-6c06-0410-ace0-fbb531ad65f3

13 years agoput changes with the correct version
Jeff Peeler [Tue, 18 May 2010 19:30:19 +0000 (19:30 +0000)]
put changes with the correct version

git-svn-id: 65c4cc65-6c06-0410-ace0-fbb531ad65f3

13 years agoMerged revisions 263769 via svnmerge from
Jeff Peeler [Tue, 18 May 2010 19:27:34 +0000 (19:27 +0000)]
Merged revisions 263769 via svnmerge from

  r263769 | jpeeler | 2010-05-18 13:54:58 -0500 (Tue, 18 May 2010) | 10 lines

  Modify directory name reading to be interrupted with operator or pound escape.

  In the case of accidentally entering the wrong first three letters for the
  reading, users could be very frustrated if the name listing is very long. This
  allows interrupting the reading by pressing 0 or #. 0 will attempt to execute
  a configured operator (o) extension and # will exit and proceed in the


git-svn-id: 65c4cc65-6c06-0410-ace0-fbb531ad65f3

13 years agoCache sound tarfiles in a common directory, such that a clean reinstall does not...
Tilghman Lesher [Mon, 17 May 2010 23:49:15 +0000 (23:49 +0000)]
Cache sound tarfiles in a common directory, such that a clean reinstall does not force a re-download of the tarballs.

(closes issue #15370)
 Reported by: pprindeville
       asterisk-trunk-bugid15370.patch uploaded by pprindeville (license 347)
 Tested by: pprindeville, tilghman, seanbright

git-svn-id: 65c4cc65-6c06-0410-ace0-fbb531ad65f3

13 years agoMerged revisions 263639 via svnmerge from
Mark Michelson [Mon, 17 May 2010 22:08:01 +0000 (22:08 +0000)]
Merged revisions 263639 via svnmerge from

  r263639 | mmichelson | 2010-05-17 17:00:28 -0500 (Mon, 17 May 2010) | 10 lines

  Fix logic error when checking for a devstate provider.

  When using strsep, if one of the list of specified separators is not found,
  it is the first parameter to strsep which is now NULL, not the pointer returned
  by strsep.

  This issue isn't especially severe in that the worst it is likely to do is waste
  some cycles when a device with no '/' and no ':' is passed to ast_device_state.

git-svn-id: 65c4cc65-6c06-0410-ace0-fbb531ad65f3

13 years agoBlocked revisions 263637 via svnmerge
Mark Michelson [Mon, 17 May 2010 21:56:42 +0000 (21:56 +0000)]
Blocked revisions 263637 via svnmerge

  r263637 | mmichelson | 2010-05-17 16:48:46 -0500 (Mon, 17 May 2010) | 8 lines

  Remove arbitrary size limitation for hints.

  (closes issue #17257)
  Reported by: tim_ringenbach
        hints_crash_fix.diff uploaded by tim ringenbach (license 540)

git-svn-id: 65c4cc65-6c06-0410-ace0-fbb531ad65f3

13 years agoWith IMAP backend, messages in INBOX were counted twice for MWI.
Tilghman Lesher [Mon, 17 May 2010 19:31:15 +0000 (19:31 +0000)]
With IMAP backend, messages in INBOX were counted twice for MWI.

(closes issue #17135)
 Reported by: edhorton
       20100513__issue17135.diff.txt uploaded by tilghman (license 14)
       17135_2.diff uploaded by ebroad (license 878)
 Tested by: edhorton, ebroad

git-svn-id: 65c4cc65-6c06-0410-ace0-fbb531ad65f3

13 years agoEnhancements to connected line and redirecting work.
Mark Michelson [Mon, 17 May 2010 15:36:31 +0000 (15:36 +0000)]
Enhancements to connected line and redirecting work.

From reviewboard:

Digium has a commercial customer who has made extensive use of the connected party and
redirecting information present in later versions of Asterisk Business Edition and which
is to be in the upcoming 1.8 release. Through their use of the feature, new problems and solutions
have come about. This patch adds several enhancements to maximize usage of the connected party
and redirecting information functionality.

First, Asterisk trunk already had connected line interception macros. These macros allow you to
manipulate connected line information before it was sent out to its target. This patch adds the
same feature except for redirecting information instead.

Second, the ast_callerid and ast_party_id structures have been enhanced to provide a "tag." This
tag can be set with func_callerid, func_connectedline, func_redirecting, and in the case of DAHDI,
mISDN, and SIP channels, can be set in a configuration file. The idea behind the callerid tag is
that it can be set to whatever value the administrator likes. Later, when running connected line
and redirecting macros, the admin can read the tag off the appropriate structure to determine what
action to take. You can think of this sort of like a channel variable, except that instead of having
the variable associated with a channel, the variable is associated with a specific identity within

Third, app_dial has two new options, s and u. The s option lets a dialplan writer force a specific
caller ID tag to be placed on the outgoing channel. The u option allows the dialplan writer to force
a specific calling presentation value on the outgoing channel.

Fourth, there is a new control frame subclass called AST_CONTROL_READ_ACTION added. This was added
to correct a very specific situation. In the case of SIP semi-attended (blond) transfers, the party
being transferred would not have the opportunity to run a connected line interception macro to
possibly alter the transfer target's connected line information. The issue here was that during a
blond transfer, the SIP transfer code has no bridged channel on which to queue the connected line
update. The way this was corrected was to add this new control frame subclass. Now, we queue an
AST_CONTROL_READ_ACTION frame on the channel on which the connected line interception macro should
be run. When ast_read is called to read the frame, ast_read responds by calling a callback function
associated with the specific read action the control frame describes. In this case, the action taken
is to run the connected line interception macro on the transferee's channel.


git-svn-id: 65c4cc65-6c06-0410-ace0-fbb531ad65f3

13 years agoMissing newlines added to Set-Cookie line in manager.c
Leif Madsen [Mon, 17 May 2010 15:14:22 +0000 (15:14 +0000)]
Missing newlines added to Set-Cookie line in manager.c

Sean Bright pointed out that we lost a set of newline characters in commit
190349 on a line I had recently changed. Yay for code review on commits.

(issue #17231, #10961)

git-svn-id: 65c4cc65-6c06-0410-ace0-fbb531ad65f3

13 years agoRecorded merge of revisions 263456 via svnmerge from
Leif Madsen [Mon, 17 May 2010 14:37:35 +0000 (14:37 +0000)]
Recorded merge of revisions 263456 via svnmerge from

  r263456 | lmadsen | 2010-05-17 09:35:18 -0500 (Mon, 17 May 2010) | 11 lines

  Manager cookies are not compatible with RFC2109.

  The Version field in the cookies we're setting contain quotes around the version
  number which is not compatible with RFC2109 and breaks some implementations.

  (closes issue #17231)
  Reported by: ecarruda
        manager_rfc2109-trunk-v1.patch uploaded by ecarruda (license 559)
        manager_rfc2109-1.6.2-v1.patch uploaded by ecarruda (license 559)
  Tested by: ecarruda, russell

git-svn-id: 65c4cc65-6c06-0410-ace0-fbb531ad65f3

13 years agoMerged revisions 263374 via svnmerge from
Leif Madsen [Mon, 17 May 2010 14:05:33 +0000 (14:05 +0000)]
Merged revisions 263374 via svnmerge from

  r263374 | lmadsen | 2010-05-17 09:04:57 -0500 (Mon, 17 May 2010) | 8 lines

  Update link to new version of core sounds.

  The latest version of the core sounds files 1.4.19 now includes the missing
  queue-minute sound file which is called by app_queue but which has been

  (closes issue #17123)
  Reported by: n8ideas

git-svn-id: 65c4cc65-6c06-0410-ace0-fbb531ad65f3

13 years agoUpdate CHANGES to reflect DAHDI buffer dialstring option backport to 1.6.2
David Vossel [Mon, 17 May 2010 13:05:32 +0000 (13:05 +0000)]
Update CHANGES to reflect DAHDI buffer dialstring option backport to 1.6.2

git-svn-id: 65c4cc65-6c06-0410-ace0-fbb531ad65f3

13 years agolive_ast: add commands 'rsync' and 'gen-live-asterisk'
Tzafrir Cohen [Sun, 16 May 2010 16:31:34 +0000 (16:31 +0000)]
live_ast: add commands 'rsync' and 'gen-live-asterisk'

This adds the following two commands to live_ast:
* rsync [user]@host directory
  Copy over all generated files to <directory> at remote host.
  Would allow running live_ast there. Hence allows separating a build
  machine from a test machine.
* gen-live-asteris: regenerate live/asterisk . Useful if copying over
  files to a different directory.

git-svn-id: 65c4cc65-6c06-0410-ace0-fbb531ad65f3

13 years agoImprove some very confusing structure names in astobj2.c
Kevin P. Fleming [Sun, 16 May 2010 11:14:37 +0000 (11:14 +0000)]
Improve some very confusing structure names in astobj2.c

As pointed out by 'akshayb' on #asterisk-dev, the code here called a list of
bucket entries a 'bucket', and the entries within the bucket were called
'bucket_list'. This made the code very hard to understand without reading
all of it... so I've renamed 'bucket_list' to 'bucket_entry' to clarify the
purpose of the structure.

git-svn-id: 65c4cc65-6c06-0410-ace0-fbb531ad65f3

13 years agofix iax_frame double free
David Vossel [Fri, 14 May 2010 18:53:55 +0000 (18:53 +0000)]
fix iax_frame double free

Very unfortunate things happen if we add an iax_frame
to the frame queue and let go of the lock before scheduling
the frame's transmit... There is a race condition that
exists where the frame can be removed from the frame_queue
and freed before the transmit is scheduled if we do not
hold on to that lock.  This results in a freed frame
being scheduled for transmit later.

git-svn-id: 65c4cc65-6c06-0410-ace0-fbb531ad65f3

13 years agoFix inverted logic in cli command: ss7 set debug on/off
Richard Mudgett [Thu, 13 May 2010 22:01:36 +0000 (22:01 +0000)]
Fix inverted logic in cli command: ss7 set debug on/off

git-svn-id: 65c4cc65-6c06-0410-ace0-fbb531ad65f3

13 years agoRemove "untested" feature PRI_VERSION
Tzafrir Cohen [Thu, 13 May 2010 20:25:02 +0000 (20:25 +0000)]
Remove "untested" feature PRI_VERSION

Nobody seems to actually test PRI_VERSION. It is only useful for failing PRI
support in chan_dahdi.

git-svn-id: 65c4cc65-6c06-0410-ace0-fbb531ad65f3

13 years agoFor FreeBSD
Tilghman Lesher [Thu, 13 May 2010 17:49:51 +0000 (17:49 +0000)]
For FreeBSD

git-svn-id: 65c4cc65-6c06-0410-ace0-fbb531ad65f3

13 years agoHmmm, probably should have read the manpage more thoroughly.
Tilghman Lesher [Thu, 13 May 2010 16:46:18 +0000 (16:46 +0000)]
Hmmm, probably should have read the manpage more thoroughly.

git-svn-id: 65c4cc65-6c06-0410-ace0-fbb531ad65f3

13 years agoFix an off by one error that causes a crash.
Russell Bryant [Thu, 13 May 2010 15:36:12 +0000 (15:36 +0000)]
Fix an off by one error that causes a crash.

Thanks to Raymond Burke for pointing it out.

git-svn-id: 65c4cc65-6c06-0410-ace0-fbb531ad65f3

13 years agoFix build on linux.
Russell Bryant [Thu, 13 May 2010 15:35:30 +0000 (15:35 +0000)]
Fix build on linux.

git-svn-id: 65c4cc65-6c06-0410-ace0-fbb531ad65f3

13 years agoFix build on linux.
Russell Bryant [Thu, 13 May 2010 15:33:49 +0000 (15:33 +0000)]
Fix build on linux.

git-svn-id: 65c4cc65-6c06-0410-ace0-fbb531ad65f3

13 years agoAdd kqueue(2) implementation to Asterisk in various places.
Tilghman Lesher [Thu, 13 May 2010 05:37:31 +0000 (05:37 +0000)]
Add kqueue(2) implementation to Asterisk in various places.

This will save a considerable amount of CPU on the BSDs, including Mac OS X,
as it eliminates several places in the code that we previously used a busy
loop.  Additionally, this adds a res_timing interface, using kqueue timers.


git-svn-id: 65c4cc65-6c06-0410-ace0-fbb531ad65f3

13 years agoNotify CLI when modules is loaded / unloaded
Paul Belanger [Wed, 12 May 2010 19:59:16 +0000 (19:59 +0000)]
Notify CLI when modules is loaded / unloaded

(closes issue #17308)
Reported by: pabelanger
      cli.modules.patch uploaded by pabelanger (license 224)
Tested by: pabelanger, russell

git-svn-id: 65c4cc65-6c06-0410-ace0-fbb531ad65f3

13 years agoRevert previous WARNING message removal.
Leif Madsen [Wed, 12 May 2010 19:53:10 +0000 (19:53 +0000)]
Revert previous WARNING message removal.

Marquis42 suggested a better method of doing what I wanted because I ended up
removing the WARNING message for all instances when really I just wanted to
remove it for the 'return' keyword, not everything.

(issue #17145)

git-svn-id: 65c4cc65-6c06-0410-ace0-fbb531ad65f3

13 years agoRemove unnecessary WARNING message in ael/pval.c
Leif Madsen [Wed, 12 May 2010 19:31:42 +0000 (19:31 +0000)]
Remove unnecessary WARNING message in ael/pval.c

(closes issue #17145)
Reported by: okrief

git-svn-id: 65c4cc65-6c06-0410-ace0-fbb531ad65f3

13 years agoMerged revisions 262662 via svnmerge from
David Vossel [Wed, 12 May 2010 18:01:20 +0000 (18:01 +0000)]
Merged revisions 262662 via svnmerge from

  r262662 | dvossel | 2010-05-12 12:00:04 -0500 (Wed, 12 May 2010) | 11 lines

  fixes app_meetme dsp error

  We attempted to detect silence after translating a frame
  from signed linear.  This caused a flooding of errors.  To
  resolve this the code to detect silence was moved before the

  (closes issue #17133)
  Reported by: jsdyer

git-svn-id: 65c4cc65-6c06-0410-ace0-fbb531ad65f3

13 years agoDon't crash when destroying chan_dahdi pseudo channels.
Richard Mudgett [Wed, 12 May 2010 17:57:31 +0000 (17:57 +0000)]
Don't crash when destroying chan_dahdi pseudo channels.

Must do a deep copy of the cc_params in duplicate_pseudo().  Otherwise,
when the duplicate pseudo channel is destroyed, it frees the original
pseudo channel cc_params.  The original pseudo channel is then left with a
dangling pointer for when the next duplicated pseudo channel is created.

git-svn-id: 65c4cc65-6c06-0410-ace0-fbb531ad65f3

13 years agoMerged revisions 262657,262660 from
Richard Mudgett [Wed, 12 May 2010 16:51:03 +0000 (16:51 +0000)]
Merged revisions 262657,262660 from

  r262660 | rmudgett | 2010-05-12 11:46:47 -0500 (Wed, 12 May 2010) | 4 lines

  Forgot some conditionals around the callrerouting facility help text.

  JIRA ABE-2223
  r262657 | rmudgett | 2010-05-12 11:26:49 -0500 (Wed, 12 May 2010) | 22 lines

  Add mISDN Call rerouting facility for point-to-point ISDN lines (exchange line)

  In the case of ISDN point-to-multipoint (multidevice) you can use the
  mISDN "facility calldeflect" application for call diversions from external
  (PSTN) to external (PSTN).  In that case this is the only way to get rid
  of the two call legs to the PBX and let the calling number at the C party
  become the number of the A party.  In the case of ISDN point-to-point
  (exchange line) the call deflection facility may not be used.  Instead a
  call rerouting facility has to be used.

  This patch for chan_misdn.c is an extension to realize this service
  (facility rerouting application).  It can accept either spelling:
  "callrerouting" or "callrerouteing".

  The patch is tested towards Deutsche Telekom and requires a modified
  version of mISDN from Digium, Inc.

        misdn_rerouteing_corrected.patch (Slightly modified.)

  JIRA ABE-2223

git-svn-id: 65c4cc65-6c06-0410-ace0-fbb531ad65f3

13 years agoEnsure the arguments are initialized. Also miscellaneous CG cleanup.
Tilghman Lesher [Wed, 12 May 2010 16:23:26 +0000 (16:23 +0000)]
Ensure the arguments are initialized.  Also miscellaneous CG cleanup.

(closes issue #16576)
 Reported by: uxbod
       20100505__issue16576.diff.txt uploaded by tilghman (license 14)
 Tested by: uxbod

git-svn-id: 65c4cc65-6c06-0410-ace0-fbb531ad65f3

13 years agoConvert to AST_CLI_YESNO and AST_CLI_ONOFF
Paul Belanger [Wed, 12 May 2010 01:00:55 +0000 (01:00 +0000)]

Clean up chan_sip.c to use new AST_CLI functions

(closes issue #17287)
Reported by: pabelanger
      issue17287.patch uploaded by pabelanger (license 224)
Tested by: russell

git-svn-id: 65c4cc65-6c06-0410-ace0-fbb531ad65f3

13 years agoDialing an invalid extension causes incomplete hangup sequence.
Richard Mudgett [Tue, 11 May 2010 23:18:53 +0000 (23:18 +0000)]
Dialing an invalid extension causes incomplete hangup sequence.

Revision -r1489 of the libpri 1.4 branch corrected a deviation from Q.931
Section 5.3.2.  However, this resulted in an unexpected behaviour change
to the upper layer (Asterisk).

This change uses pri_hangup_fix_enable() to follow Q.931 Section 5.3.2
call hangup better if the version of libpri supports it.

(issue #17104)
Reported by: shawkris
Tested by: rmudgett

git-svn-id: 65c4cc65-6c06-0410-ace0-fbb531ad65f3

13 years agoMove cause 200 to cause 26, as specified in Q.850.
Tilghman Lesher [Tue, 11 May 2010 21:25:05 +0000 (21:25 +0000)]
Move cause 200 to cause 26, as specified in Q.850.

Also cleanup the formatting and add a few more that seem like good candidates.

(closes issue #16157)
 Reported by: wimpy

git-svn-id: 65c4cc65-6c06-0410-ace0-fbb531ad65f3

13 years agoMerged revisions 262421 via svnmerge from
Jason Parker [Tue, 11 May 2010 19:57:24 +0000 (19:57 +0000)]
Merged revisions 262421 via svnmerge from

  r262421 | qwell | 2010-05-11 14:55:42 -0500 (Tue, 11 May 2010) | 11 lines

  Use a less silly method for modifying a flex-generated file.

  The sed syntax that was used wasn't actually valid, causing some versions to
  choke.  This is the method that is used in 1.6.x+ for similar changes.

  (closes issue #16696)
  Reported by: bklang
        16696-sedfix.diff uploaded by qwell (license 4)
  Tested by: qwell

git-svn-id: 65c4cc65-6c06-0410-ace0-fbb531ad65f3

13 years agoImprove logging by displaying line number
Paul Belanger [Tue, 11 May 2010 19:40:37 +0000 (19:40 +0000)]
Improve logging by displaying line number

(closes issue #16303)
Reported by: dant
      issue16303.patch.v2 uploaded by pabelanger (license 224)
Tested by: dant, lmadsen, pabelanger

git-svn-id: 65c4cc65-6c06-0410-ace0-fbb531ad65f3