asterisk/asterisk.git
10 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
Patches:
      timing.txt uploaded by mmichelson (license 60)

Review: http://reviewboard.digium.com/r/164/

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

10 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: https://origsvn.digium.com/svn/asterisk/trunk@179903 65c4cc65-6c06-0410-ace0-fbb531ad65f3

10 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
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
  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: https://origsvn.digium.com/svn/asterisk/trunk@179841 65c4cc65-6c06-0410-ace0-fbb531ad65f3

10 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.

Review: http://reviewboard.digium.com/r/168/

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

10 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
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
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: https://origsvn.digium.com/svn/asterisk/trunk@179742 65c4cc65-6c06-0410-ace0-fbb531ad65f3

10 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: https://origsvn.digium.com/svn/asterisk/trunk@179675 65c4cc65-6c06-0410-ace0-fbb531ad65f3

10 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
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
  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: https://origsvn.digium.com/svn/asterisk/trunk@179672 65c4cc65-6c06-0410-ace0-fbb531ad65f3

10 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
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
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: https://origsvn.digium.com/svn/asterisk/trunk@179609 65c4cc65-6c06-0410-ace0-fbb531ad65f3

10 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
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
  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: https://origsvn.digium.com/svn/asterisk/trunk@179537 65c4cc65-6c06-0410-ace0-fbb531ad65f3

10 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
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
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: https://origsvn.digium.com/svn/asterisk/trunk@179533 65c4cc65-6c06-0410-ace0-fbb531ad65f3

10 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
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
  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
   Patches:
         20090226__bug14406.diff.txt uploaded by tilghman (license 14)
   Tested by: sasargen
........

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

10 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: https://origsvn.digium.com/svn/asterisk/trunk@179465 65c4cc65-6c06-0410-ace0-fbb531ad65f3

10 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
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
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: https://origsvn.digium.com/svn/asterisk/trunk@179462 65c4cc65-6c06-0410-ace0-fbb531ad65f3

10 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
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
  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: https://origsvn.digium.com/svn/asterisk/trunk@179396 65c4cc65-6c06-0410-ace0-fbb531ad65f3

10 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: https://origsvn.digium.com/svn/asterisk/trunk@179361 65c4cc65-6c06-0410-ace0-fbb531ad65f3

10 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: https://origsvn.digium.com/svn/asterisk/trunk@179323 65c4cc65-6c06-0410-ace0-fbb531ad65f3

10 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
Patches:
      audiohook_volume_fix.diff uploaded by KNK (license 545)

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

10 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: https://origsvn.digium.com/svn/asterisk/trunk@179254 65c4cc65-6c06-0410-ace0-fbb531ad65f3

10 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
Patches:
      14455.patch uploaded by mmichelson (license 60)
Tested by: Nick_Lewis

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

10 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: https://origsvn.digium.com/svn/asterisk/trunk@179164 65c4cc65-6c06-0410-ace0-fbb531ad65f3

10 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: https://origsvn.digium.com/svn/asterisk/trunk@179161 65c4cc65-6c06-0410-ace0-fbb531ad65f3

10 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: https://origsvn.digium.com/svn/asterisk/trunk@179154 65c4cc65-6c06-0410-ace0-fbb531ad65f3

10 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
Patches:
      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

Review: http://reviewboard.digium.com/r/130/

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

10 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
Patches:
      ANSWEREDTIME-1.4-patch.txt uploaded by klaus3000 (license 65)
      ANSWEREDTIME-trunk-patch.txt uploaded by klaus3000 (license 65)

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

10 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: https://origsvn.digium.com/svn/asterisk/trunk@179021 65c4cc65-6c06-0410-ace0-fbb531ad65f3

10 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
https://origsvn.digium.com/svn/asterisk/branches/1.4

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: https://origsvn.digium.com/svn/asterisk/trunk@178986 65c4cc65-6c06-0410-ace0-fbb531ad65f3

10 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
 Patches:
       pickupsound2-trunk.patch uploaded by azielke (license 548)
       __20081124_bug_13826_updated.patch uploaded by lmadsen (license 10)
 Tested by: lmadsen

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

10 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: https://origsvn.digium.com/svn/asterisk/trunk@178871 65c4cc65-6c06-0410-ace0-fbb531ad65f3

10 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: https://origsvn.digium.com/svn/asterisk/trunk@178870 65c4cc65-6c06-0410-ace0-fbb531ad65f3

10 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
  Review: http://reviewboard.digium.com/r/176/
........

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

10 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
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
  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
  Patches:
        14515.patch uploaded by murf (license 17)
  Tested by: murf, sodom
........

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

10 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: https://origsvn.digium.com/svn/asterisk/trunk@178801 65c4cc65-6c06-0410-ace0-fbb531ad65f3

10 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
Review: http://reviewboard.digium.com/r/176/

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

10 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: https://origsvn.digium.com/svn/asterisk/trunk@178764 65c4cc65-6c06-0410-ace0-fbb531ad65f3

10 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: https://origsvn.digium.com/svn/asterisk/trunk@178733 65c4cc65-6c06-0410-ace0-fbb531ad65f3

10 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: https://origsvn.digium.com/svn/asterisk/trunk@178704 65c4cc65-6c06-0410-ace0-fbb531ad65f3

10 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: https://origsvn.digium.com/svn/asterisk/trunk@178703 65c4cc65-6c06-0410-ace0-fbb531ad65f3

10 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
  Patches:
        patch.14543 uploaded by murf (license 17)
  Tested by: murf
........

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

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

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

10 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
 Patches:
       20090127__bug14300.diff.txt uploaded by tilghman (license 14)
       20090224__bug14300.diff uploaded by jamessan (license 246)
 Tested by: jamessan
 Review: http://reviewboard.digium.com/r/136/

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

10 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: https://origsvn.digium.com/svn/asterisk/trunk@178573 65c4cc65-6c06-0410-ace0-fbb531ad65f3

10 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
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
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: https://origsvn.digium.com/svn/asterisk/trunk@178509 65c4cc65-6c06-0410-ace0-fbb531ad65f3

10 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
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
  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: https://origsvn.digium.com/svn/asterisk/trunk@178446 65c4cc65-6c06-0410-ace0-fbb531ad65f3

10 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: https://origsvn.digium.com/svn/asterisk/trunk@178381 65c4cc65-6c06-0410-ace0-fbb531ad65f3

10 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: https://origsvn.digium.com/svn/asterisk/trunk@178375 65c4cc65-6c06-0410-ace0-fbb531ad65f3

10 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
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
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: https://origsvn.digium.com/svn/asterisk/trunk@178374 65c4cc65-6c06-0410-ace0-fbb531ad65f3

10 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: https://origsvn.digium.com/svn/asterisk/trunk@178342 65c4cc65-6c06-0410-ace0-fbb531ad65f3

10 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
 Patches:
       asterisk-1.6.x-astcanary.diff uploaded by KNK (license 545)

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

10 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
Patches:
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
Review: http://reviewboard.digium.com/r/173/

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

10 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
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
  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: https://origsvn.digium.com/svn/asterisk/trunk@178213 65c4cc65-6c06-0410-ace0-fbb531ad65f3

10 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
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
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: https://origsvn.digium.com/svn/asterisk/trunk@178142 65c4cc65-6c06-0410-ace0-fbb531ad65f3

10 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
 Patches:
       voicemail_individual_subject_and_body_1.6.1 uploaded by fhackenberger (license 592)
       with additional fixes by Corydon76 (license 14)

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

10 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: https://origsvn.digium.com/svn/asterisk/trunk@178061 65c4cc65-6c06-0410-ace0-fbb531ad65f3

10 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: https://origsvn.digium.com/svn/asterisk/trunk@178030 65c4cc65-6c06-0410-ace0-fbb531ad65f3

10 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: https://origsvn.digium.com/svn/asterisk/trunk@178027 65c4cc65-6c06-0410-ace0-fbb531ad65f3

10 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: https://origsvn.digium.com/svn/asterisk/trunk@178022 65c4cc65-6c06-0410-ace0-fbb531ad65f3

10 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

Added:
SKINNYdevices
SKINNYshowdevice
SKINNYlines
SKINNYshowline

(closes issue #14521)
Reported by: mvanbaak

Review: http://reviewboard.digium.com/r/170/

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

10 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: https://origsvn.digium.com/svn/asterisk/trunk@177944 65c4cc65-6c06-0410-ace0-fbb531ad65f3

10 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
Patches:
      bug14513_fixsysinfo.diff uploaded by snuffy (license 35)

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

10 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: https://origsvn.digium.com/svn/asterisk/trunk@177884 65c4cc65-6c06-0410-ace0-fbb531ad65f3

10 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: https://origsvn.digium.com/svn/asterisk/trunk@177855 65c4cc65-6c06-0410-ace0-fbb531ad65f3

10 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/asterisk.pid. This directory is not writable for
the non-root user and changing permissions is not an option.
Putting it in /var/run/asterisk/asterisk.pid 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
Patches:
      2009012900_bug13153-nonrootscripts.diff.txt uploaded by mvanbaak (license 7)

Review: http://reviewboard.digium.com/r/139/

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

10 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: https://origsvn.digium.com/svn/asterisk/trunk@177849 65c4cc65-6c06-0410-ace0-fbb531ad65f3

10 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
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
  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: https://origsvn.digium.com/svn/asterisk/trunk@177787 65c4cc65-6c06-0410-ace0-fbb531ad65f3

10 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
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
  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: https://origsvn.digium.com/svn/asterisk/trunk@177732 65c4cc65-6c06-0410-ace0-fbb531ad65f3

10 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: https://origsvn.digium.com/svn/asterisk/trunk@177699 65c4cc65-6c06-0410-ace0-fbb531ad65f3

10 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: https://origsvn.digium.com/svn/asterisk/trunk@177697 65c4cc65-6c06-0410-ace0-fbb531ad65f3

10 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
 Patches:
       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: https://origsvn.digium.com/svn/asterisk/trunk@177664 65c4cc65-6c06-0410-ace0-fbb531ad65f3

10 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: https://origsvn.digium.com/svn/asterisk/trunk@177661 65c4cc65-6c06-0410-ace0-fbb531ad65f3

10 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: https://origsvn.digium.com/svn/asterisk/trunk@177624 65c4cc65-6c06-0410-ace0-fbb531ad65f3

10 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
https://origsvn.digium.com/svn/asterisk/branches/1.4

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
  generated.

  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
  Patches:
        14498.patch uploaded by murf (license 17)
  Tested by: murf
........

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

10 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
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
  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
   Patches:
         20090219__bug14253.diff.txt uploaded by Corydon76 (license 14)
   Tested by: Skavin
........

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

10 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: https://origsvn.digium.com/svn/asterisk/trunk@177506 65c4cc65-6c06-0410-ace0-fbb531ad65f3

10 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: https://origsvn.digium.com/svn/asterisk/trunk@177451 65c4cc65-6c06-0410-ace0-fbb531ad65f3

10 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: https://origsvn.digium.com/svn/asterisk/trunk@177387 65c4cc65-6c06-0410-ace0-fbb531ad65f3

10 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
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
  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: https://origsvn.digium.com/svn/asterisk/trunk@177384 65c4cc65-6c06-0410-ace0-fbb531ad65f3

10 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: https://origsvn.digium.com/svn/asterisk/trunk@177356 65c4cc65-6c06-0410-ace0-fbb531ad65f3

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

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

10 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: https://origsvn.digium.com/svn/asterisk/trunk@177291 65c4cc65-6c06-0410-ace0-fbb531ad65f3

10 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: https://origsvn.digium.com/svn/asterisk/trunk@177287 65c4cc65-6c06-0410-ace0-fbb531ad65f3

10 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
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
  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
  problems.

  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
  constraints.
........

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

10 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: https://origsvn.digium.com/svn/asterisk/trunk@177229 65c4cc65-6c06-0410-ace0-fbb531ad65f3

10 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
Review: http://reviewboard.digium.com/r/167/

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

10 years agoModify h323 to build against PTLib as well as the older PWLib
Jeff Peeler [Wed, 18 Feb 2009 20:11:57 +0000 (20:11 +0000)]
Modify h323 to build against PTLib as well as the older PWLib

Several changes in PTLib have occurred requiring build time detection. Changes
accounted for include the library name change, config option change, install
location change, and a boolean type change which is handled by ast_ptlib.h.
Also, the sed check has been modified to properly work with autoconf >= 2.62.

(closes issue #14224)
Reported by: bergolth
Patches:
      asterisk-autoconf-sed.patch uploaded by bergolth (license 661)
      asterisk-pwlib-v3.patch uploaded by bergolth (license 661)
Tested by: jpeeler

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

10 years agoBlocked revisions 177160 via svnmerge
Jeff Peeler [Wed, 18 Feb 2009 20:08:42 +0000 (20:08 +0000)]
Blocked revisions 177160 via svnmerge

........
  r177160 | jpeeler | 2009-02-18 14:06:45 -0600 (Wed, 18 Feb 2009) | 15 lines

  Modify h323 to build against PTLib as well as the older PWLib

  Several changes in PTLib have occurred requiring build time detection. Changes
  accounted for include the library name change, config option change, install
  location change, and a boolean type change which is handled by ast_ptlib.h.
  Also, the sed check has been modified to properly work with autoconf >= 2.62.

  (closes issue #14224)
  Reported by: bergolth
  Patches:
        asterisk-autoconf-sed.patch uploaded by bergolth (license 661)
        asterisk-pwlib-v3.patch uploaded by bergolth (license 661)
  Tested by: jpeeler
........

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

10 years agoRe-add 'o' option to MeetMe, reverting rev 62297.
Russell Bryant [Wed, 18 Feb 2009 19:12:49 +0000 (19:12 +0000)]
Re-add 'o' option to MeetMe, reverting rev 62297.

Enabling this option by default proved to be a bad idea, as the talker detection
is not very reliable.  So, make it optional again, and off by default.

(issue #13801)
Reported by: justdave

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

10 years agoMerged revisions 177096 via svnmerge from
Tilghman Lesher [Wed, 18 Feb 2009 19:05:15 +0000 (19:05 +0000)]
Merged revisions 177096 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
  r177096 | tilghman | 2009-02-18 12:30:38 -0600 (Wed, 18 Feb 2009) | 2 lines

  Document the return value of the update method (as requested on -dev list)
........

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

10 years agoFixed error where a check for an zero length, terminated string was needed.
Doug Bailey [Wed, 18 Feb 2009 17:24:07 +0000 (17:24 +0000)]
Fixed error where a check for an zero length, terminated string was needed.

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

10 years agoFix ordering of output for a ChannelUpdate manager event.
Joshua Colp [Wed, 18 Feb 2009 17:11:52 +0000 (17:11 +0000)]
Fix ordering of output for a ChannelUpdate manager event.
(closes issue #14497)
Reported by: vinsik
Patches:
      chan_update_fix-chan_sip.c.diff uploaded by vinsik (license 623)

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

10 years agoNeed to take into account the \0 terminator of the old string to determine the amount...
Doug Bailey [Wed, 18 Feb 2009 16:09:12 +0000 (16:09 +0000)]
Need to take into account the \0 terminator of the old string to determine the amount available.

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

10 years agoThis patch fixes merge_contexts_and_delete so it does not deadlock when hints are...
Steve Murphy [Wed, 18 Feb 2009 15:35:26 +0000 (15:35 +0000)]
This patch fixes merge_contexts_and_delete so it does not deadlock when hints are present.

Reason: when I re-engineered the merge_and_delete func to
reduce its lock time, I failed to notice that the
functions it calls still also do locking as before.
This leads to deadlocks on dialplan reloads, when
there are actually living, subscribed hints registered
in the system.

While the reporter come across this problem while using
AEL, I might note that these deadlocks should also happen
if extensions.conf were used.

Here I added these routines to pbx.c:

ast_add_extension_nolock
add_pri_lockopt
ast_add_extension2_lockopt
find_context
add_hint_nolock

All of the above routines are static and restricted
to be used only within pbx.c, and more specifically
within the merge_contexts_and_delete routine.

They are pretty much the same as their counterparts
except they don't lock contexts or hints.

Most of them now do the real work of their
name-alike, with optional locking via extra arguments,
and are called by their name-alike. The goal was to
have the original functions so they would behave
exactly as before.

Both PJ and I tested these fixes, and the deadlocking
problem is no longer encountered.

(closes issue #14357)
Reported by: pj
Patches:
      14357.diff uploaded by murf (license 17)
Tested by: pj, murf

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

10 years agoAdd example code for a heap traversal.
Russell Bryant [Wed, 18 Feb 2009 06:14:47 +0000 (06:14 +0000)]
Add example code for a heap traversal.

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

10 years agoFix a number of incorrect uses of strncpy().
Russell Bryant [Wed, 18 Feb 2009 06:00:40 +0000 (06:00 +0000)]
Fix a number of incorrect uses of strncpy().

The big problem here is that the 3rd argument provided in these uses of strncpy()
did not reserve a byte for the null terminator, leaving the potential for writing
one byte past the end of the buffer.

Aside from this, there were coding guidelines violations with regards to spacing,
as well as hard coded lengths being used instead of sizeof().

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

10 years agoT38 faxdetect should jump to the 'fax' extension for incoming calls only
Dwayne M. Hubbard [Wed, 18 Feb 2009 02:55:12 +0000 (02:55 +0000)]
T38 faxdetect should jump to the 'fax' extension for incoming calls only

The previous implementation of T38 faxdetect resulted in both sides of the
call jumping to a fax extension when both sides had 't38pt_udptl=yes' and
'faxdetect=yes' in sip.conf and a 'fax' extension in the current context.
This revision will jump to a 'fax' extension on incoming calls only.

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

10 years agosuppress smoothers for Siren codecs as well as Speex and G.723.1
Kevin P. Fleming [Wed, 18 Feb 2009 02:02:54 +0000 (02:02 +0000)]
suppress smoothers for Siren codecs as well as Speex and G.723.1

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

10 years agoRemove a dependency that no longer exists.
Russell Bryant [Tue, 17 Feb 2009 22:52:43 +0000 (22:52 +0000)]
Remove a dependency that no longer exists.

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

10 years agoSeveral changes to codec_dahdi to play nice with G723.
Shaun Ruffell [Tue, 17 Feb 2009 22:28:41 +0000 (22:28 +0000)]
Several changes to codec_dahdi to play nice with G723.

This commit brings in the changes that were living out on the
svn/asterisk/team/sruffell/asterisk-trunk-transcoder branch.  codec_dahdi.c now
always uses signed linear as the simple codec so that a soft g729 codec will
not end up being preferred to the hardware codec.  There are also changes to
allow codec_dahdi.c to feed packets to the hardware in the native sample size of
the codec.  This solves problems with choppy audio when using G723.

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

10 years agoMerged revisions 176701 via svnmerge from
Jeff Peeler [Tue, 17 Feb 2009 22:08:00 +0000 (22:08 +0000)]
Merged revisions 176701 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
  r176701 | jpeeler | 2009-02-17 15:54:34 -0600 (Tue, 17 Feb 2009) | 17 lines

  Modify bridging to properly evaluate DTMF after first warning is played

  The main problem is currently if the Dial flag L is used with a warning sound,
  DTMF is not evaluated after the first warning sound. To fix this, a flag has
  been added in ast_generic_bridge for playing the warning which ensures that if
  a scheduled warning is missed, multiple warrnings are not played back (due to a
  feature evaluation or waiting for digits). ast_channel_bridge was modified to
  store the nexteventts in the ast_bridge_config structure as that information
  was lost every time ast_channel_bridge was reentered, causing a hangup due to
  incorrect time calculations.

  (closes issue #14315)
  Reported by: tim_ringenbach

  Reviewed on reviewboard:
  http://reviewboard.digium.com/r/163/
........

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

10 years agoUse constants from inttypes.h to clear up 32-bit compilation errors
Mark Michelson [Tue, 17 Feb 2009 22:02:42 +0000 (22:02 +0000)]
Use constants from inttypes.h to clear up 32-bit compilation errors

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

10 years agocreate a UDPTL structure in create_addr_from_peer() if it does not already exist...
Dwayne M. Hubbard [Tue, 17 Feb 2009 21:59:38 +0000 (21:59 +0000)]
create a UDPTL structure in create_addr_from_peer() if it does not already exist for T38

This is required to create a UDPTL structure in create_addr_from_peer() to handle the
scenario where 't38pt_udptl=yes' is not defined in the [general] section of sip.conf but
is defined the peer's context.  I tested this patch by enabling t38pt_udptl in the
[general] section on one system and only enabling t38pt_udptl in a peer's context on
the system sending a fax.  Without the patch, the sending system will fail to initiate
T38 negotiation with the warning message, "No way to add SDP without an UDPTL structure".
When this patch is applied the sending side will successfully initiate T38 negotiation.

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