12 years agoMerged revisions 180380 via svnmerge from
Mark Michelson [Thu, 5 Mar 2009 19:14:14 +0000 (19:14 +0000)]
Merged revisions 180380 via svnmerge from

  r180380 | mmichelson | 2009-03-05 12:58:48 -0600 (Thu, 05 Mar 2009) | 25 lines

  Fix broken mailbox parsing when searchcontexts option is enabled.

  When using the searchcontexts option in voicemail.conf, the code
  made the assumption that all mailbox names defined were unique across
  all contexts. However, the code did nothing to actually enforce this
  assumption, nor did it do anything to alert a user that he may have
  created an ambiguity in his voicemail.conf file by defining the same
  mailbox name in multiple contexts.

  With this change, we now will issue a nice long warning if searchcontexts
  is on and we encounter the same mailbox name in multiple contexts and ignore
  any duplicates after the first box. Whether searchcontexts is enabled or not,
  if we come across a duplicate mailbox in the same context, then we will issue
  a warning and ignore the duplicated mailbox. I have also added a small note
  to voicemail.conf.sample in the explanation for searchcontexts explaining
  that you cannot define the same mailbox in multiple contexts if you have
  enabled the option.

  (closes issue #14599)
  Reported by: lmadsen
        14599.patch uploaded by mmichelson (license 60) (with slight modification)
  Tested by: lmadsen

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

12 years agoMake sure we terminate the first s| command so we can actually produce correct files.
Michiel van Baak [Thu, 5 Mar 2009 19:05:20 +0000 (19:05 +0000)]
Make sure we terminate the first s| command so we can actually produce correct files.

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

12 years agoMerged revisions 180372 via svnmerge from
Kevin P. Fleming [Thu, 5 Mar 2009 18:29:38 +0000 (18:29 +0000)]
Merged revisions 180372 via svnmerge from

  r180372 | kpfleming | 2009-03-05 12:22:16 -0600 (Thu, 05 Mar 2009) | 9 lines

  Fix problems when RTP packet frame size is changed

  During some code analysis, I found that calling ast_rtp_codec_setpref() on an ast_rtp session does not work as expected; it does not adjust the smoother that may on the RTP session, in fact it summarily drops it, even if it has data in it, even if the current format's framing size has not changed. This is not good.

  This patch changes this behavior, so that if the packetization size for the current format changes, any existing smoother is safely updated to use the new size, and if no smoother was present, one is created. A new API call for smoothers, ast_smoother_reconfigure(), was required to implement these changes.


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

12 years agoMerge phase 1 support for the new bridging architecture.
Joshua Colp [Thu, 5 Mar 2009 18:18:27 +0000 (18:18 +0000)]
Merge phase 1 support for the new bridging architecture.

This commit brings in the bridging core, bridging technologies,
and the ConfBridge application.

For usage information on the ConfBridge application please see
the output of "core show application ConfBridge" from the CLI.

For API documentation please see the doxygen page describing the
architecture and the documentation for each API call.


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

12 years agoAlso highlight the preamble and postamble
Tilghman Lesher [Thu, 5 Mar 2009 06:21:10 +0000 (06:21 +0000)]
Also highlight the preamble and postamble

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

12 years agoAdd syntax coloring files for Vim, including a new one for AEL
Tilghman Lesher [Thu, 5 Mar 2009 01:41:37 +0000 (01:41 +0000)]
Add syntax coloring files for Vim, including a new one for AEL

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

12 years agoResolve object matching issues related to the removal of the sip_user object.
Russell Bryant [Wed, 4 Mar 2009 21:01:05 +0000 (21:01 +0000)]
Resolve object matching issues related to the removal of the sip_user object.

Previously, chan_sip had both sip_peer and sip_user objects in memory.  A
patch went in to remove sip_user to simplify the code, since everything
could be done with just sip_peer.  This patch resolves some regressions
found that were introduced by those changes.

This code comes from svn/asterisk/team/group/sip-object-matching/.

Here is a list of the changes that have been made:

1) When doing a match by name with the find_peer() function, make it much
   easier to specify which objects should be matched by having a parameter
   that specifies exactly which object types should be considered.  Also,
   update find_by_name() to handle this parameter.  Finally, update all
   code to use the new option values.

2) When looking up an object for an outbound request by name, consider
   peers only.  (create_addr())

3) Only match peers on an incoming registration request.

4) When doing authentication (except for SUBSCRIBE), look up users
   by name, instead of all objects by name.

5) When doing authentication (except for SUBSCRIBE), after looking for
   a user by name, look for a peer by IP address, instead of all objects
   by IP address.

6) When handling the SIP qualify CLI command or manager action, look for
   a peer by name, instead of any object by name.

7) When handling the SIP unregister CLI command, look for a peer by name,
   instead of any object by name.

9) In sip_do_debug_peer(), search for a peer by name, instead of any object
   by name.

9) When handling the SIPPEER() dialplan function, search for a peer by name,
   instead of any object by name.

10) In the following session timer related functions, st_get_se(),
    st_get_refresher(), and st_get_mode(), when looking for an object for a
    given sip_pvt using pvt->peername, look for a peer by name, instead of any
    object by name.

11) Fix build_peer() to properly handle the case where separate type=peer and
    type=user entries were specified in sip.conf.

(closes issue #14505)
Reported by: lmadsen


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

12 years agoSpacing changes only
Tilghman Lesher [Wed, 4 Mar 2009 20:48:42 +0000 (20:48 +0000)]
Spacing changes only

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

12 years agoMerged revisions 180194 via svnmerge from
Joshua Colp [Wed, 4 Mar 2009 19:24:59 +0000 (19:24 +0000)]
Merged revisions 180194 via svnmerge from

  r180194 | file | 2009-03-04 15:22:50 -0400 (Wed, 04 Mar 2009) | 4 lines

  Look for the number in a callerid string starting from the end. This way a value using <> can exist in the name portion.

  (issue #AST-194)

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

12 years agoAllow for "magic" pickups to work when we wish to ignore the context
Mark Michelson [Wed, 4 Mar 2009 17:03:32 +0000 (17:03 +0000)]
Allow for "magic" pickups to work when we wish to ignore the context

When the subscription context for a call pickup subscription differs
from the context of the call pickup target, there's not an easy way
to divine what context should be used for the pickup. The way to work
around this is to use PICKUPMARK as the context for the pickup.

This has been documented in the sip.conf.sample file


closes issue #14567
submitted by: alecdavis

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

12 years agoRemove duplicate 'k' and 'K' Dial options.
Joshua Colp [Wed, 4 Mar 2009 14:39:28 +0000 (14:39 +0000)]
Remove duplicate 'k' and 'K' Dial options.

(closes issue #14601)
Reported by: alecdavis
      app_dial.optionk.diff.txt uploaded by alecdavis (license 585)

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

12 years agoMy bad! left check_expr2 in the ALL_UTILS list by mistake. Already done to 1.6.x
Steve Murphy [Tue, 3 Mar 2009 23:35:26 +0000 (23:35 +0000)]
My bad! left check_expr2 in the ALL_UTILS list by mistake. Already done to 1.6.x

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

12 years agoapp_read does not break from prompt loop with user terminated empty string
David Vossel [Tue, 3 Mar 2009 23:21:18 +0000 (23:21 +0000)]
app_read does not break from prompt loop with user terminated empty string

In app.c, ast_app_getdata is called to stream the prompts and receive DTMF input.  If ast_app_getdata() receives an empty string caused by the user inputing the end of string character, in this case '#', it should break from the prompt loop and return to app_read, but instead it cycles through all the prompts.  I've added a return value for this special case in ast_readstring() which uses an enum I've delcared in apps.h.  This enum is now used as a return value for ast_app_getdata().

(closes issue #14279)
Reported by: Marquis
fix_app_read.patch uploaded by Marquis (license 32)
read-ampersanmd.patch2 uploaded by dvossel (license 671)
Tested by: Marquis, dvossel

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

12 years agoBlocked revisions 180010 via svnmerge
Jason Parker [Tue, 3 Mar 2009 23:02:04 +0000 (23:02 +0000)]
Blocked revisions 180010 via svnmerge

  r180010 | qwell | 2009-03-03 17:01:06 -0600 (Tue, 03 Mar 2009) | 1 line

  Make sure we still support zapchan in users.conf, in addition to dahdichan.

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

12 years agoMerged revisions 180006 via svnmerge from
Mark Michelson [Tue, 3 Mar 2009 22:49:07 +0000 (22:49 +0000)]
Merged revisions 180006 via svnmerge from

  r180006 | mmichelson | 2009-03-03 16:48:18 -0600 (Tue, 03 Mar 2009) | 17 lines

  Clarify some documentation of queues.conf.sample

  It had always been possible to explicitly specify a "blank"
  value for a sound file in queues.conf and have no sound played
  back. The problem with this is that it would result in some ugly
  CLI warnings from file.c.

  This commit introduces a check when playing a file in app_queue
  to see if the name of the file is zero-length and return early if
  that is the case. Also, the ability to specify the blank sound
  files in queues.conf is now mentioned more clearly in queues.conf.sample

  (closes issue #14227)
  Reported by: caspy

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

12 years agoMerged revisions 179807 via svnmerge from
Steve Murphy [Tue, 3 Mar 2009 22:12:02 +0000 (22:12 +0000)]
Merged revisions 179807 via svnmerge from

I had some work to do to port these changes to trunk; the
check_expr stuff hasn't been updated here for quite some
time, it appears. I added some more tests to the check_expr2
suite. I had to play around with the makefile a bit, etc.

I added STANDALONE2 #ifdefs to ast_expr2.y so as not to
conflict structure with aelparse.

  r179807 | murf | 2009-03-03 11:11:34 -0700 (Tue, 03 Mar 2009) | 19 lines

  These changes allow AEL to better check ${} constructs within $[...], that are concatenated with text.

  I modified and added rules in ast_expr2.fl to better handle
  the concatenations.

  I added some default routines to ast_expr2.y so the standalone would
  compile. It also looks like I haven't run this thru bison since 2.1, so
  it's good to get this updated.

  The Makefile has comments added now for check_expr2 and check_expr to
  explain what they are for, and how to run them.

  The testexpr2s stuff has been removed, in favor of check_expr2.

  expr2.testinput has been updated to include the two expressions
  that inspired these changes (from mcnobody on #asterisk this morning)
  The regression has been run and all looks well.

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

12 years agoapp_meetme not setting filename and fileformat correctly for realtime
David Vossel [Tue, 3 Mar 2009 22:01:24 +0000 (22:01 +0000)]
app_meetme not setting filename and fileformat correctly for realtime

When app_meetme finds a realtime conference, it doesn't get the filename and fileformat correctly when 'r' is set.  Now app_meetme first checks to see if fileformat and filename are declared in the db, if they're not it checks the .conf file, if its not declared there either it then uses defaults.

(closes issue #14545)
Reported by: dalbaech
app_meetme-realtime5.patch uploaded by dvossel (license 671)
Realtime_Conference_Record_workaround.txt uploaded by dalbaech (license 705)
Tested by: dvossel, dalbaech

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

12 years agoAdd documentation for timing modules used in Asterisk
Mark Michelson [Tue, 3 Mar 2009 20:59:16 +0000 (20:59 +0000)]
Add documentation for timing modules used in Asterisk

This document specifies the timing modules available in Asterisk beginning
with Asterisk 1.6.1. The document goes into detail about the differences
between each and gives a general overview of what timing is used for in
Asterisk. There is also a section which can be used to help customize
your setup or to troubleshoot timing issues you may have.

I also added messages to the DAHDI timing test used in res_timing_dahdi.c
that points to this new documentation if people experience problems.

Big thanks to all who contributed comments on this.

(closes issue #14490)
Reported by: mmichelson
      timing.txt uploaded by mmichelson (license 60)


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

12 years agofix a leaked channel lock (and future deadlock) when we try to pick up our own channel
Brian Degenhardt [Tue, 3 Mar 2009 20:02:20 +0000 (20:02 +0000)]
fix a leaked channel lock (and future deadlock) when we try to pick up our own channel

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

12 years agoMerged revisions 179840 via svnmerge from
Joshua Colp [Tue, 3 Mar 2009 18:28:46 +0000 (18:28 +0000)]
Merged revisions 179840 via svnmerge from

  r179840 | file | 2009-03-03 14:27:09 -0400 (Tue, 03 Mar 2009) | 9 lines

  Do not assume that the bridge_cdr is still attached to the channel when the 'h' exten is finished executing.

  It is possible for a masquerade operation to occur when the 'h' exten is operating. This operation moves
  the CDR records around causing the bridge_cdr to no longer exist on the channel where it is expected to.
  We can not safely modify it afterwards because of this, so don't even try.

  (closes issue #14564)
  Reported by: meric

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

12 years agoConvert pbx_spool to use string fields instead of statically-sized buffers.
Mark Michelson [Tue, 3 Mar 2009 17:03:47 +0000 (17:03 +0000)]
Convert pbx_spool to use string fields instead of statically-sized buffers.

In tests run after making this conversion, I noticed an approximate 85%
reduction in memory usage for call file processing.


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

12 years agoMerged revisions 179741 via svnmerge from
Russell Bryant [Tue, 3 Mar 2009 16:47:28 +0000 (16:47 +0000)]
Merged revisions 179741 via svnmerge from

r179741 | russell | 2009-03-03 10:45:46 -0600 (Tue, 03 Mar 2009) | 6 lines

Ensure chan->fdno always gets reset to -1 after handling a channel fd event.

Since setting fdno to -1 had to be moved, a couple of other code paths that
do process an fd event return early and do not pass through the code path
where it was moved to.  So, set it to -1 in a few other places, too.


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

12 years agoPlease prefix default values with DEFAULT
Olle Johansson [Tue, 3 Mar 2009 15:13:42 +0000 (15:13 +0000)]
Please prefix default values with DEFAULT

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

12 years agoMerged revisions 179671 via svnmerge from
Joshua Colp [Tue, 3 Mar 2009 14:40:04 +0000 (14:40 +0000)]
Merged revisions 179671 via svnmerge from

  r179671 | file | 2009-03-03 10:38:09 -0400 (Tue, 03 Mar 2009) | 3 lines

  Move where fdno is set to the default value to *after* the read callback of the channel driver is called.
  We have to do this as the underlying channel driver may need the fdno value to determine what to read.

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

12 years agoMerged revisions 179608 via svnmerge from
Russell Bryant [Tue, 3 Mar 2009 13:54:41 +0000 (13:54 +0000)]
Merged revisions 179608 via svnmerge from

r179608 | russell | 2009-03-03 07:53:52 -0600 (Tue, 03 Mar 2009) | 9 lines

Make it easier to detect an improper call to ast_read().

When you call ast_waitfor() on a channel, the index into the channel fds array
that holds the file descriptor that poll() determines has input available is
stored in fdno.  This patch clears out this value after a call to ast_read()
and also reports errors if ast_read() is called without an fdno set.

From a discussion on the asterisk-dev list.


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

12 years agoMerged revisions 179536 via svnmerge from
Jeff Peeler [Tue, 3 Mar 2009 00:01:51 +0000 (00:01 +0000)]
Merged revisions 179536 via svnmerge from

  r179536 | jpeeler | 2009-03-02 17:54:39 -0600 (Mon, 02 Mar 2009) | 15 lines

  Fix bridging regression from commit 176701

  This fixes a bad regression where the bridge would exit after an attended
  transfer was made. The problem was due to nexteventts getting set after the
  masquerade which caused the bridge to return AST_BRIDGE_COMPLETE.

  (closes issue #14315)
  Reported by: tim_ringenbach

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

12 years agoMerged revisions 179532 via svnmerge from
Russell Bryant [Mon, 2 Mar 2009 23:36:38 +0000 (23:36 +0000)]
Merged revisions 179532 via svnmerge from

r179532 | russell | 2009-03-02 17:34:13 -0600 (Mon, 02 Mar 2009) | 40 lines

Move ast_waitfor() down to avoid the results of the API call becoming stale.

This call to ast_waitfor() was being done way too soon in this section of code.
Specifically, there was code in between the call to waitfor and the code that
uses the result that puts the channel in autoservice.  By putting the channel
in autoservice, the previous results of ast_waitfor() become meaningless,
as the autoservice thread will do it's own ast_waitfor() and ast_read()
on the channel.

So, when we came back out of autoservice and eventually hit the block of code
that calls ast_read() on the channel, there may not actually be any input on
the channel available.  Even though the previous call to ast_waitfor() in
app_meetme said there was input, the autoservice thread has since serviced
the channel for some period of time.

This bug manifested itself while dvossel was doing some testing of MeetMe in
Asterisk trunk.  He was using the timerfd timing module.  When the code hit
ast_read() erroneously, it determined that it must have been called because of
input on the timer fd, as chan->fdno was set to AST_TIMING_FD, since that was
the cause of the last legitimate call to ast_read() done by autoservice.

In this test, an IAX2 channel was calling into the MeetMe conference.  It was
_much_ more likely to be seen with an IAX2 channel because of the way audio
is handled.  Every audio frame that comes in results in a call to
ast_queue_frame(), which then uses ast_timer_enable_continuous() to notify
the channel thread that a frame is waiting to be handled.  So, the chances
of ast_waitfor() indicating that a channel needs servicing due to a timer
event on an IAX2 event is very high.

Finally, it is interesting to note that if a different timing interface was
being used, this bug would probably not be noticed.  When ast_read() is called
and erroneously thinks that there is a timer event to handle, it calls the
ast_timer_ack() function.  The pthread and dahdi timing modules handle the
ack() function being called when there is no event by simply ignoring it.
In the case of the timerfd module, it results in a read() on the timer fd
that will block forever, as there is no data to read.  This caused Asterisk
to lock up very quickly.

Thanks to dvossel and mmichelson for the fun debugging session.  :-)


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

12 years agoMerged revisions 179468 via svnmerge from
Tilghman Lesher [Mon, 2 Mar 2009 23:10:18 +0000 (23:10 +0000)]
Merged revisions 179468 via svnmerge from

  r179468 | tilghman | 2009-03-02 17:09:01 -0600 (Mon, 02 Mar 2009) | 10 lines

  When ending a recording with silence detection, remember to reduce the duration.
  The end of the recording is correspondingly trimmed, but the duration was not
  trimmed by the number of seconds trimmed, so the saved duration was necessarily
  longer than the actual soundfile duration.
  (closes issue #14406)
   Reported by: sasargen
         20090226__bug14406.diff.txt uploaded by tilghman (license 14)
   Tested by: sasargen

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

12 years agoFix a reference leak in timerfd_set_rate().
Russell Bryant [Mon, 2 Mar 2009 23:06:16 +0000 (23:06 +0000)]
Fix a reference leak in timerfd_set_rate().

(found during a debugging session with dvossel and mmichelson.)

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

12 years agoMerged revisions 179461 via svnmerge from
Russell Bryant [Mon, 2 Mar 2009 23:00:30 +0000 (23:00 +0000)]
Merged revisions 179461 via svnmerge from

r179461 | russell | 2009-03-02 16:58:18 -0600 (Mon, 02 Mar 2009) | 8 lines

Ensure that only one thread is calling ast_settimeout() on a channel at a time.

For example, with an IAX2 channel, you can have both the channel thread and the
chan_iax2 processing threads calling this function, and doing so twice at the
same time is a bad thing.

(Found in a debugging session with dvossel and mmichelson)


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

12 years agoMerged revisions 179395 via svnmerge from
Jason Parker [Mon, 2 Mar 2009 20:16:51 +0000 (20:16 +0000)]
Merged revisions 179395 via svnmerge from

  r179395 | qwell | 2009-03-02 14:14:57 -0600 (Mon, 02 Mar 2009) | 1 line

  Remove several silly warnings in editline.  One about a broken preprocessor directive, and another about strlcpy/strlcat.

  (closes issue #14264)
  Reported by: dimas

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

12 years agoBackport 1.6.0 fix to trunk (failsafe if db is not loaded)
Tilghman Lesher [Mon, 2 Mar 2009 17:18:48 +0000 (17:18 +0000)]
Backport 1.6.0 fix to trunk (failsafe if db is not loaded)

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

12 years agoDo not try to remove a registration scheduled item if the scheduler context has alrea...
Joshua Colp [Mon, 2 Mar 2009 14:28:09 +0000 (14:28 +0000)]
Do not try to remove a registration scheduled item if the scheduler context has already been destroyed.

(closes issue #14580)
Reported by: alecdavis

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

12 years agoFix issue where changing the volume of both directions of audio did not work.
Joshua Colp [Mon, 2 Mar 2009 14:13:45 +0000 (14:13 +0000)]
Fix issue where changing the volume of both directions of audio did not work.

(closes issue #14574)
Reported by: KNK
      audiohook_volume_fix.diff uploaded by KNK (license 545)

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

12 years agoSwap reversed timevals.
Mark Michelson [Sun, 1 Mar 2009 23:25:23 +0000 (23:25 +0000)]
Swap reversed timevals.

This was pointed out by ScribbleJ in #asterisk-dev. Thanks very much, ScribbleJ!

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

12 years agoProperly free memory and remove scheduler entries when a transmission failure occurs.
Mark Michelson [Sun, 1 Mar 2009 21:45:08 +0000 (21:45 +0000)]
Properly free memory and remove scheduler entries when a transmission failure occurs.

Previously, only the "data" field of the sip_pkt created during __sip_reliable_xmit
was freed when XMIT_ERROR was returned by __sip_xmit. When retrans_pkt was called,
this inevitably resulted in the reading and writing of freed memory.

XMIT_ERROR is a condition meaning that we don't want to attempt resending the packet
at all. The proper action to take is to remove the scheduler entry we just created,
free the packet's data as well as the packet itself, and unlink it from the list of
packets on the sip_pvt structure.

(closes issue #14455)
Reported by: Nick_Lewis
      14455.patch uploaded by mmichelson (license 60)
Tested by: Nick_Lewis

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

12 years agoMark res_ais as experimental, as the binary event format is subject to change.
Russell Bryant [Fri, 27 Feb 2009 21:47:18 +0000 (21:47 +0000)]
Mark res_ais as experimental, as the binary event format is subject to change.

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

12 years agoIf config file is blank, don't load module.
Tilghman Lesher [Fri, 27 Feb 2009 21:32:13 +0000 (21:32 +0000)]
If config file is blank, don't load module.
(Closes issue #14563)

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

12 years agoAdd a note about the ordering of entries in sip.conf in 1.6.1.
Russell Bryant [Fri, 27 Feb 2009 21:23:12 +0000 (21:23 +0000)]
Add a note about the ordering of entries in sip.conf in 1.6.1.

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

12 years agoAdd reload support to chan_skinny.
Michiel van Baak [Fri, 27 Feb 2009 20:34:00 +0000 (20:34 +0000)]
Add reload support to chan_skinny.

Special thanks goes to DEA who had to redo this patch twice
because we first put unload/load support in and later redid the way
we configure devices and lines.

(closes issue #10297)
Reported by: DEA
      skinny-reload-trunkv2.diff uploaded by wedhorn (license 30)
      skinny-reload-trunk-v4.txt uploaded by DEA (license 3)
  With mods by me based on feedback from wedhorn and Russell and seanbright
Tested by: DEA, mvanbaak, pj


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

12 years agoUpdate documentation for DIALEDTIME and ANSWEREDTIME variables.
Jason Parker [Fri, 27 Feb 2009 19:04:57 +0000 (19:04 +0000)]
Update documentation for DIALEDTIME and ANSWEREDTIME variables.

(closes issue #14566)
Reported by: klaus3000
      ANSWEREDTIME-1.4-patch.txt uploaded by klaus3000 (license 65)
      ANSWEREDTIME-trunk-patch.txt uploaded by klaus3000 (license 65)

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

12 years agoFix downloading SIREN7 and SIREN14 sound packages.
Russell Bryant [Fri, 27 Feb 2009 15:51:56 +0000 (15:51 +0000)]
Fix downloading SIREN7 and SIREN14 sound packages.

In passing, also fix downloading SLIN16 extra sound packages.

(closes issue #14565)
Reported by: jtodd

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

12 years agoMerged revisions 178956 via svnmerge from
Steve Murphy [Fri, 27 Feb 2009 03:45:58 +0000 (03:45 +0000)]
Merged revisions 178956 via svnmerge from

In this case, it's just a matter of reducing the default timeouts from 2000
to 1000 msec, as the max def feature digit timeout is no longer halved.

  r178956 | murf | 2009-02-26 14:27:32 -0700 (Thu, 26 Feb 2009) | 18 lines

  This change moves the default feature digit timeout to 1000 ms from the previous default of 500.

  As per bug 14515, a dev discussion arrived at a "mediated concensus"
  of a default feature digit timeout of 1.0 sec. Some voted for 1300;
  ctooley thought 1500 for distracted phone users in phone booths;
  kpfleming put his foot down at 1.0 sec.

  Users who found the previous default max delay of 250 msec perfect,
  are welcome to override the new default. Notice that I said that
  250 msec was the default; wait a minute, you might say, the config
  file said it was 500 msec!; well, because of the bug fix for 14515,
  we found that 500 msec was actually enforcing a max of 250. The bug
  fix would restore 500 msec, but we felt even that was a bit tight
  for most users... 2000 msec was pushed earlier by mmichelson, so
  that reduces to 1000 msec after the bug fix. Enjoy!

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

12 years agoSound confirmation of call pickup success.
Tilghman Lesher [Thu, 26 Feb 2009 18:41:28 +0000 (18:41 +0000)]
Sound confirmation of call pickup success.
(closes issue #13826)
 Reported by: azielke
       pickupsound2-trunk.patch uploaded by azielke (license 548)
       __20081124_bug_13826_updated.patch uploaded by lmadsen (license 10)
 Tested by: lmadsen

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

12 years agoIAX2 prune realtime, minor tweak to last fix
David Vossel [Thu, 26 Feb 2009 17:46:12 +0000 (17:46 +0000)]
IAX2 prune realtime, minor tweak to last fix

A return statement was missing which caused unexpected cli output.

issue #14479

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

12 years agoThese small fixes prevent compiler warnings with ubuntu 8.10's gcc-4.3.2, which tend...
Steve Murphy [Thu, 26 Feb 2009 17:45:22 +0000 (17:45 +0000)]
These small fixes prevent compiler warnings with ubuntu 8.10's gcc-4.3.2, which tend to break my dev-mode build. Not a problem in 1.6.x.

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

12 years agoBlocked revisions 178838 via svnmerge
David Vossel [Thu, 26 Feb 2009 17:26:04 +0000 (17:26 +0000)]
Blocked revisions 178838 via svnmerge

  r178838 | dvossel | 2009-02-26 11:24:02 -0600 (Thu, 26 Feb 2009) | 9 lines

  IAX2 prune realtime fix

  Now prune_users() and prune_peers() are called instead of reload_config() to prune all users/peers that are realtime.  These functions remove all users/peers with the rtfriend and delme flags set. iax2_prune_realtime() also lacked the code to properly delete a single friend.  For example. if iax2 prune realtime <friend> was called, only the peer instance would be removed. The user would still remain.

  (closes issue #14479)
  Reported by: mousepad99

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

12 years agoMerged revisions 178804 via svnmerge from
Steve Murphy [Thu, 26 Feb 2009 17:22:11 +0000 (17:22 +0000)]
Merged revisions 178804 via svnmerge from

  r178804 | murf | 2009-02-26 10:09:03 -0700 (Thu, 26 Feb 2009) | 28 lines

  This patch prevents the feature detection timeout from being cut in half.

  Because the ast_channel_bridge() call will return 0 and pass
  a frame pointer for both DTMF_BEGIN and DTMF_END, the feature_timer
  field in hte config struct is getting decremented twice, which
  effectively cuts the digittimeout in half. I added conditions
  to the if statement to only let DTMF_END frames to flow thru,
  which solved the problem. Also, when the frame pointer is null,
  let control flow thru-- this usually happens on timeouts. I added
  a comment to the code to explain what's going on and why.

  Many thanks to sodom for reporting this problem. Personnally, it always seemed
  like something was wrong with the featuredigittimeout, but I never
  could quite decide what... and was too busy to investigate.
  This bug forced the issue, and now we know.

  Sodom had other issues in 14515, but I couldn't reproduce them. If
  he still has problems, and wants to get them solved, he is welcome
  to reopen 14515.

  (closes issue #14515)
  Reported by: sodom
        14515.patch uploaded by murf (license 17)
  Tested by: murf, sodom

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

12 years agoFix an issue where the timer for file playback would not be stopped if DAHDI was...
Joshua Colp [Thu, 26 Feb 2009 16:42:36 +0000 (16:42 +0000)]
Fix an issue where the timer for file playback would not be stopped if DAHDI was not installed.

(closes issue #14541)
Reported by: grant

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

12 years agoIAX2 prune realtime fix
David Vossel [Thu, 26 Feb 2009 15:50:22 +0000 (15:50 +0000)]
IAX2 prune realtime fix

Iax2 prune realtime had issues.  If "iax2 prune realtime all" was called, it would appear like the command was successful, but in reality nothing happened.  This is because the reload that was supposed to take place checks the config files, sees no changes, and does nothing.  If there had been a change in the the config file, the realtime users would have been marked for deletion and everything would have been fine.  Now prune_users() and prune_peers() are called instead of reload_config() to prune all users/peers that are realtime.  These functions remove all users/peers with the rtfriend and delme flags set. iax2_prune_realtime() also lacked the code to properly delete a single friend.  For example. if iax2 prune realtime <friend> was called, only the peer instance would be removed. The user would still remain.

(closes issue #14479)
Reported by: mousepad99

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

12 years agoEnsure there is a valid tone part before trying to play tones.
Joshua Colp [Thu, 26 Feb 2009 15:40:10 +0000 (15:40 +0000)]
Ensure there is a valid tone part before trying to play tones.

(closes issue #14558)
Reported by: alecdavis

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

12 years agoClarifications on the different models and reference to further docs.
Olle Johansson [Thu, 26 Feb 2009 15:02:53 +0000 (15:02 +0000)]
Clarifications on the different models and reference to further docs.

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

12 years agoanother minor commit to test post-commit script changes (now testing post-revprop...
Kevin P. Fleming [Thu, 26 Feb 2009 13:39:00 +0000 (13:39 +0000)]
another minor commit to test post-commit script changes (now testing post-revprop-change as well, third try)

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

12 years agominor commit to test post-commit script changes
Kevin P. Fleming [Thu, 26 Feb 2009 13:28:31 +0000 (13:28 +0000)]
minor commit to test post-commit script changes

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

12 years agoBlocked revisions 178640 via svnmerge
Steve Murphy [Wed, 25 Feb 2009 21:09:27 +0000 (21:09 +0000)]
Blocked revisions 178640 via svnmerge

  r178640 | murf | 2009-02-25 14:00:50 -0700 (Wed, 25 Feb 2009) | 17 lines

  This patch completes the fixes nec. to make 1.4 asterisk dialplan expressions ($[...]) 8-bit transparent

  While I was updating ast_expr2.fl, I missed one rule that would allow 8-bit chars to be caught
  in tokens; and in so doing, it absorbs the ${ sequence and messes up the
  checking of raw exprs by AEL.

  Trunk already has these changes.

  (closes issue #14543)
  Reported by: klaus3000
        patch.14543 uploaded by murf (license 17)
  Tested by: murf

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

12 years agoPicky, picky buildbots
Tilghman Lesher [Wed, 25 Feb 2009 19:49:46 +0000 (19:49 +0000)]
Picky, picky buildbots

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

12 years agoUse notification when timezone files change and re-scan then.
Tilghman Lesher [Wed, 25 Feb 2009 19:24:44 +0000 (19:24 +0000)]
Use notification when timezone files change and re-scan then.
(closes issue #14300)
 Reported by: jamessan
       20090127__bug14300.diff.txt uploaded by tilghman (license 14)
       20090224__bug14300.diff uploaded by jamessan (license 246)
 Tested by: jamessan

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

12 years agoOops, wrong direction of command
Tilghman Lesher [Wed, 25 Feb 2009 19:03:35 +0000 (19:03 +0000)]
Oops, wrong direction of command

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

12 years agoMerged revisions 178508 via svnmerge from
Russell Bryant [Wed, 25 Feb 2009 12:45:30 +0000 (12:45 +0000)]
Merged revisions 178508 via svnmerge from

r178508 | russell | 2009-02-25 06:43:36 -0600 (Wed, 25 Feb 2009) | 2 lines

Update the copyright year for the main page of the doxygen documentation.


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

12 years agoMerged revisions 178445 via svnmerge from
Tilghman Lesher [Tue, 24 Feb 2009 23:27:23 +0000 (23:27 +0000)]
Merged revisions 178445 via svnmerge from

  r178445 | tilghman | 2009-02-24 17:25:24 -0600 (Tue, 24 Feb 2009) | 5 lines

  Add section about the #exec command in configuration files.
  (closes issue #14540)
   Reported by: jtodd
   Patch by: jtodd, with additional notes by tilghman (license 14)

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

12 years agoApparently, a void cast doesn't override warn_unused_result.
Tilghman Lesher [Tue, 24 Feb 2009 20:52:44 +0000 (20:52 +0000)]
Apparently, a void cast doesn't override warn_unused_result.

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

12 years agoThe 3 possible errors with pipe(2) are all impossible in this situation.
Tilghman Lesher [Tue, 24 Feb 2009 20:40:02 +0000 (20:40 +0000)]
The 3 possible errors with pipe(2) are all impossible in this situation.

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

12 years agoMerged revisions 178373 via svnmerge from
Russell Bryant [Tue, 24 Feb 2009 20:39:57 +0000 (20:39 +0000)]
Merged revisions 178373 via svnmerge from

r178373 | russell | 2009-02-24 14:36:19 -0600 (Tue, 24 Feb 2009) | 6 lines

Only set dtmfcount on BEGIN, and ensure it gets reset to 0 properly.

(issue #14460)
Reported by: moliveras
Tested by: russell


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

12 years agoUse a SIGPIPE to kill the process, instead of depending upon the astcanary process...
Tilghman Lesher [Tue, 24 Feb 2009 20:06:48 +0000 (20:06 +0000)]
Use a SIGPIPE to kill the process, instead of depending upon the astcanary process being inherited by init.

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

12 years agoCause astcanary to exit if Asterisk exits abnormally and doesn't kill astcanary.
Tilghman Lesher [Tue, 24 Feb 2009 17:51:36 +0000 (17:51 +0000)]
Cause astcanary to exit if Asterisk exits abnormally and doesn't kill astcanary.
Also, add some documentation supporting the use of astcanary.
(closes issue #14538)
 Reported by: KNK
       asterisk-1.6.x-astcanary.diff uploaded by KNK (license 545)

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

12 years agoAllows manager command to see if IAX link is trunked and encrypted. Displays what...
David Vossel [Tue, 24 Feb 2009 17:42:37 +0000 (17:42 +0000)]
Allows manager command to see if IAX link is trunked and encrypted. Displays what kind of encryption is enabled as well.

Manager command "iaxpeers" now shows if a link is trunked and encrypted.  Instead of encryption saying simply "yes" or "no", it now displays what type of encryption is enabled and if keyrotation is on or not.

(closes issue #14427)
Reported by: snuffy
iax_show_trunks.diff uploaded by snuffy (license 35)
2009022200_iax2_show_trunkencryption.diff.txt uploaded by mvanbaak (license 7)
Tested by: mvanbaak, dvossel, snuffy

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

12 years agoMerged revisions 178205 via svnmerge from
Joshua Colp [Tue, 24 Feb 2009 15:18:38 +0000 (15:18 +0000)]
Merged revisions 178205 via svnmerge from

  r178205 | file | 2009-02-24 11:16:07 -0400 (Tue, 24 Feb 2009) | 9 lines

  Skip check for extension when subscribing for MWI.

  Since the remote side is not actually subscribing to a specific extension when
  subscribing for MWI just skip the check to see if the extension exists. They can't use it
  to specify the mailbox either since we require configuration of that in sip.conf

  (closes issue #14531)
  Reported by: festr

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

12 years agoMerged revisions 178141 via svnmerge from
Russell Bryant [Mon, 23 Feb 2009 23:11:37 +0000 (23:11 +0000)]
Merged revisions 178141 via svnmerge from

r178141 | russell | 2009-02-23 17:09:01 -0600 (Mon, 23 Feb 2009) | 14 lines

Fix infinite DTMF when a BEGIN is received without an END.

This commit is related to rev 175124 of 1.4 where a previous attempt was made
to fix this problem.  The problem with the previous patch was that the inserted
code needed to go _before_ setting the lastrxts to the current timestamp.
Because those were the same, the dtmfcount variable was never decremented, and
so the END was never sent.

In passing, I removed the dtmfsamples variable which was completed unused.  I
also removed a redundant setting of the lastrxts variable.

(closes issue #14460)
Reported by: moliveras


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

12 years agoPermit emailsubject and emailbody to be set per mailbox.
Tilghman Lesher [Mon, 23 Feb 2009 21:02:18 +0000 (21:02 +0000)]
Permit emailsubject and emailbody to be set per mailbox.
(closes issue #14372)
 Reported by: fhackenberger
       voicemail_individual_subject_and_body_1.6.1 uploaded by fhackenberger (license 592)
       with additional fixes by Corydon76 (license 14)

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

12 years agoupdate the new manager commands in chan_skinny to match
Michiel van Baak [Mon, 23 Feb 2009 18:23:38 +0000 (18:23 +0000)]
update the new manager commands in chan_skinny to match
chan_sip's headers. requested by oej.

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

12 years agoChanges the way keyrotation is enabled by default
David Vossel [Mon, 23 Feb 2009 17:59:55 +0000 (17:59 +0000)]
Changes the way keyrotation is enabled by default

Key rotation was enabled by default by setting the global encryption method to IAX_ENCRYPT_KEYROTATE.  the problem with this is that if encryption is not enabled, and the encryption method is set to anything except 0, the peer appears to have encryption enabled when issuing a "iax2 show peers".  Rather than have the key rotation bit always set by default, it is now only set when an encryption method is enabled.

(closes issue #14523)
Reported by: mvanbaak

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

12 years agolist the addition of the SKINNY manager actions in the CHANGES file.
Michiel van Baak [Mon, 23 Feb 2009 17:48:32 +0000 (17:48 +0000)]
list the addition of the SKINNY manager actions in the CHANGES file.

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

12 years agoFix a regression in scheduler entry ordering, and add a regression test for it.
Russell Bryant [Mon, 23 Feb 2009 17:29:16 +0000 (17:29 +0000)]
Fix a regression in scheduler entry ordering, and add a regression test for it.

(closes issue #14522)
Reported by: pj
Tested by: russell

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

12 years agoAdd a couple of manager commands to chan_skinny
Michiel van Baak [Sun, 22 Feb 2009 23:04:37 +0000 (23:04 +0000)]
Add a couple of manager commands to chan_skinny


(closes issue #14521)
Reported by: mvanbaak


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

12 years agoOn update, test against the existence of sipregs.
Tilghman Lesher [Sat, 21 Feb 2009 15:59:49 +0000 (15:59 +0000)]
On update, test against the existence of sipregs.

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

12 years agoadd extra check for sysinfo/sysctl
Michiel van Baak [Sat, 21 Feb 2009 14:37:04 +0000 (14:37 +0000)]
add extra check for sysinfo/sysctl

(closes issue #14513)
Reported by: snuffy
      bug14513_fixsysinfo.diff uploaded by snuffy (license 35)

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

12 years agoTrailing whitespace, minor coding guideline fixes, and start beefing up the
Sean Bright [Sat, 21 Feb 2009 14:16:44 +0000 (14:16 +0000)]
Trailing whitespace, minor coding guideline fixes, and start beefing up the
hashtab documentation a bit.

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

12 years agoFix build issues on Solaris and OpenBSD.
Russell Bryant [Sat, 21 Feb 2009 13:17:47 +0000 (13:17 +0000)]
Fix build issues on Solaris and OpenBSD.

(closes issue #14512)
Reported by: snuffy

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

12 years agoset ASTVARRUNDIR=$(localstatedir)/run/asterisk as default path
Michiel van Baak [Sat, 21 Feb 2009 13:13:35 +0000 (13:13 +0000)]
set ASTVARRUNDIR=$(localstatedir)/run/asterisk as default path

When running asterisk as non-root and without this patch the pidfile wants
to go into /var/run/ This directory is not writable for
the non-root user and changing permissions is not an option.
Putting it in /var/run/asterisk/ makes it possible
to set permissions on the /var/run/asterisk dir so everything
works as it should be.

Patched committed is based on pabelanger's patch.

(closes issue #13153)
Reported by: pabelanger
      2009012900_bug13153-nonrootscripts.diff.txt uploaded by mvanbaak (license 7)


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

12 years agomake chan_sip.c compile on OpenBSD again.
Michiel van Baak [Sat, 21 Feb 2009 12:22:32 +0000 (12:22 +0000)]
make chan_sip.c compile on OpenBSD again.

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

12 years agoMerged revisions 177786 via svnmerge from
Tilghman Lesher [Fri, 20 Feb 2009 23:02:35 +0000 (23:02 +0000)]
Merged revisions 177786 via svnmerge from

  r177786 | tilghman | 2009-02-20 16:59:52 -0600 (Fri, 20 Feb 2009) | 9 lines

  Don't print the CR-NL combination when we aren't outputting to the manager.

  An embedded CR-NL in a CLI command screws up several AMI parsers that don't
  expect to see that combination in the middle of output.

  (Closes issue #14305)
  Reported by: martins
  Patch by: tilghman

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

12 years agoMerged revisions 177701 via svnmerge from
Tilghman Lesher [Fri, 20 Feb 2009 21:25:37 +0000 (21:25 +0000)]
Merged revisions 177701 via svnmerge from

  r177701 | tilghman | 2009-02-20 15:15:01 -0600 (Fri, 20 Feb 2009) | 3 lines

  This exception does not appear to still be true for Solaris 10, and OpenSolaris definitely needs it to be removed.
  Fixed for snuff-home on -dev channel.

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

12 years agoMake app_fax compatible with spandsp-0.0.6pre4
Dwayne M. Hubbard [Fri, 20 Feb 2009 20:29:00 +0000 (20:29 +0000)]
Make app_fax compatible with spandsp-0.0.6pre4

Prior to spandsp-0.0.6pre4 the t30_stats_t structure used a pages_transferred
integer to indicate the number of pages transferred (so far) during the fax
session.  The spandsp-0.0.6pre4 release removed the pages_transferred integer
and replaced it with two different integers - pages_tx and pages_rx.  This
revision uses the new integers for spandsp-0.0.6pre4 while maintaining backwards
compatibility for previous spandsp releases.

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

12 years agoBlocked revisions 177696 via svnmerge
David Vossel [Fri, 20 Feb 2009 20:18:40 +0000 (20:18 +0000)]
Blocked revisions 177696 via svnmerge

  r177696 | dvossel | 2009-02-20 14:17:37 -0600 (Fri, 20 Feb 2009) | 8 lines

  Fixes issue with undefined audio codecs in chan_iax2

  During iax2 call negotiation, supported codecs are passed in an Information Element containing a 2 byte field where each bit correlates to a specific codec.  In 1.4 only audio codec bits 0-12 are defined, leaving bits 13-15 undefined.  By default all bits are enabled unless specified otherwise.  Since its a 2 byte field and 13-15 are not defined, these bits are never turned off.  In trunk, bits 13-15 are defined, which means 1.4 is advertising support for codecs it does not have when talking to trunk.  I fixed this by adding #define for undefined audio codec bits.  These bits are then removed from iax2's full bandwidth capabilities.

  (closes issue #14283)
  Reported by: jcovert

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

12 years agoAllow semicolons to be escaped, when passing arguments to the System command.
Tilghman Lesher [Fri, 20 Feb 2009 17:29:51 +0000 (17:29 +0000)]
Allow semicolons to be escaped, when passing arguments to the System command.
(closes issue #14231)
 Reported by: jcovert
       20090113__bug14231__2.diff.txt uploaded by Corydon76 (license 14)
       corrected_20090113__bug14231__2.diff.txt uploaded by jcovert (license 551)
 Tested by: jcovert

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

12 years agoOops, merge broke trunk
Tilghman Lesher [Fri, 20 Feb 2009 17:22:19 +0000 (17:22 +0000)]
Oops, merge broke trunk

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

12 years agoSet sip_request ast_str data to NULL so ast_str_copy allocates space properly
Jeff Peeler [Fri, 20 Feb 2009 00:35:53 +0000 (00:35 +0000)]
Set sip_request ast_str data to NULL so ast_str_copy allocates space properly
in copy_request

(issue #14478)
Reported by: erik_dedecker

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

12 years agoMerged revisions 177540 via svnmerge from
Steve Murphy [Thu, 19 Feb 2009 23:56:50 +0000 (23:56 +0000)]
Merged revisions 177540 via svnmerge from

Trunk was already pretty 8-bit clean; but I'm still
removing the --full from the flex command so everything
is uniform.

  r177540 | murf | 2009-02-19 15:51:37 -0700 (Thu, 19 Feb 2009) | 21 lines

  This patch fixes a problem with 8-bit input to the ast_expr2 scanner.

  The real culprit was the --full argument to flex
  in the Makefile! This causes a 7-bit scanner to be

  I reviewed the rules and found one rule where I needed
  to specifically include 8-bit chars for a token.

  I tested against the text supplied by ibercom, and
  all looks very well.

  This has been there a surprisingly long time!

  (closes issue #14498)
  Reported by: ibercom
        14498.patch uploaded by murf (license 17)
  Tested by: murf

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

12 years agoMerged revisions 177536 via svnmerge from
Tilghman Lesher [Thu, 19 Feb 2009 22:33:00 +0000 (22:33 +0000)]
Merged revisions 177536 via svnmerge from

  r177536 | tilghman | 2009-02-19 16:26:01 -0600 (Thu, 19 Feb 2009) | 7 lines

  Fix up potential crashes, by reducing the sharing between interactive and non-interactive threads.
  (closes issue #14253)
   Reported by: Skavin
         20090219__bug14253.diff.txt uploaded by Corydon76 (license 14)
   Tested by: Skavin

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

12 years agoDocument how to use database transactions
Tilghman Lesher [Thu, 19 Feb 2009 19:46:13 +0000 (19:46 +0000)]
Document how to use database transactions

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

12 years agoBlocking MWI change to 1.4 since the mwi system is different in 1.6.x and trunk....
Olle Johansson [Thu, 19 Feb 2009 19:14:05 +0000 (19:14 +0000)]
Blocking MWI change to 1.4 since the mwi system is different in 1.6.x and trunk. Will do some
testing to make sure this works properly, but from reading the code, it does seem to work
as it should.

Blocked revisions 177450 via svnmerge

r177450 | oej | 2009-02-19 19:58:57 +0100 (Tor, 19 Feb 2009) | 2 lines

Force a MWI notification after subscribe request. Reported by the Resiprocate dev team. Thanks!


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

12 years agoFix another merge error from 176708
Jeff Peeler [Thu, 19 Feb 2009 16:45:02 +0000 (16:45 +0000)]
Fix another merge error from 176708

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

12 years agoMerged revisions 177383 via svnmerge from
Joshua Colp [Thu, 19 Feb 2009 16:38:41 +0000 (16:38 +0000)]
Merged revisions 177383 via svnmerge from

  r177383 | file | 2009-02-19 12:37:25 -0400 (Thu, 19 Feb 2009) | 3 lines

  If we are able to create a speech structure unset the ERROR variable in case it was previously set.
  (issue #LUMENVOX-13)

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

12 years agoFix mismerge from revision 176708 pointed out by Kaloyan Kovachev on the
Jeff Peeler [Thu, 19 Feb 2009 15:56:31 +0000 (15:56 +0000)]
Fix mismerge from revision 176708 pointed out by Kaloyan Kovachev on the
asterisk-dev mailing list. Thanks!

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

12 years agoODBC transaction support
Tilghman Lesher [Thu, 19 Feb 2009 00:26:01 +0000 (00:26 +0000)]
ODBC transaction support

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

12 years agoUpdate CHANGES file to include MWI subscription support that was added some time...
Joshua Colp [Thu, 19 Feb 2009 00:08:41 +0000 (00:08 +0000)]
Update CHANGES file to include MWI subscription support that was added some time ago.

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

12 years agoHandle negative length and eliminate a condition that is always true.
Tilghman Lesher [Wed, 18 Feb 2009 23:51:35 +0000 (23:51 +0000)]
Handle negative length and eliminate a condition that is always true.

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

12 years agoMerged revisions 177225 via svnmerge from
Steve Murphy [Wed, 18 Feb 2009 23:50:57 +0000 (23:50 +0000)]
Merged revisions 177225 via svnmerge from

  r177225 | murf | 2009-02-18 15:43:14 -0700 (Wed, 18 Feb 2009) | 34 lines

  This patch fixes a regression of sorts that was introduced in
  rev 24425.

  It basically fixes AST-190/ABE-1782.

  What was wrong: the user has 6000 extensions in one context; and
  then 6000 contexts, one per extension. The parser could only handle
  about 4893 of the 6000 extens in the single context.

  This was due to the regression I mentioned. To get rid of
  shift/reduce conflicts, Luigi set up right-recursive lists
  for globals, context elements, switch lists, and statements.
  Right recursive lists got rid of the warnings, but instead, they
  use up a tremendous amount of stack space when the lists are long.

  I saw this a few years back, and resolved not to fix it until
  someone complained. That day has arrived!

  After the changes were made, I ran the regression test suite,
  and there were no problems.

  I took the test case the user provided, and added 100,000
  extensions to the single context, that already had 6,000 extens
  in it. (I'll see your 6, and raise you 100!) It takes a few minutes
  to read it all in, check it and generate code for it, but no

  So, I think I can say that fundamentally, there are no longer
  any limits on the number of items you can place in contexts,
  statement blocks, switches, or globals, beyond your virt mem

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

12 years agofix two very minor bugs: if anyone ever uses SLINEAR16 as a format in RTP, ensure...
Kevin P. Fleming [Wed, 18 Feb 2009 23:09:58 +0000 (23:09 +0000)]
fix two very minor bugs: if anyone ever uses SLINEAR16 as a format in RTP, ensure that the samples are byte-swapped to network order if needed. also, when a smoother is operating on a format that has a sample rate other than 8000 samples per second, use the proper sample rate for computing delivery timestamps.

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

12 years agoLocking issue in action_bridge and bridge_exec
David Vossel [Wed, 18 Feb 2009 22:51:38 +0000 (22:51 +0000)]
Locking issue in action_bridge and bridge_exec

action_bridge() and bridge_exec() both search for the channels to bridge to, and then immediately drop the lock.  Instead, they should hold the lock until the masquerade is complete.  This will guarantee the channel remains and prevent any other weirdness from occurring.  In action_bridge() some more weirdness comes into play.  Both channels are needlessly locked at the same time and perform the exact same logic.  It makes sense from a coding organizational standpoint, but could cause a theoretical deadlock so I split the code up.  There is an issue associated with this, but since its a rather complicated thing to reproduce I'm not certain this alone will close it.

issue# 14296

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