Commit Graph

3299 Commits

Author SHA1 Message Date
Mark Michelson
a4948990e2 Merged revisions 181846 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

........
  r181846 | mmichelson | 2009-03-12 16:43:51 -0500 (Thu, 12 Mar 2009) | 3 lines
  
  Run the macro on the queue member's channel when he answers, not the caller's channel.
........


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.1@181849 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-03-12 21:45:48 +00:00
Joshua Colp
4340fb2aa6 Merged revisions 181612 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

........
  r181612 | file | 2009-03-12 10:24:12 -0300 (Thu, 12 Mar 2009) | 5 lines
  
  Fix crash when sleep and retries argument was not given to RetryDial application.
  
  (closes issue #14647)
  Reported by: sherpya
........


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.1@181614 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-03-12 13:28:39 +00:00
Mark Michelson
7fc00ada3d Merged revisions 180579 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

................
  r180579 | mmichelson | 2009-03-06 12:25:44 -0600 (Fri, 06 Mar 2009) | 9 lines
  
  Merged revisions 180567 via svnmerge from 
  https://origsvn.digium.com/svn/asterisk/branches/1.4
  
  ........
    r180567 | mmichelson | 2009-03-06 12:23:09 -0600 (Fri, 06 Mar 2009) | 2 lines
    
    Make compilation succeed in dev-mode when IMAP storage is enabled.
  ........
................


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.1@180585 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-03-06 18:26:55 +00:00
Mark Michelson
37857c3703 Merged revisions 180465 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

................
  r180465 | mmichelson | 2009-03-05 17:26:58 -0600 (Thu, 05 Mar 2009) | 22 lines
  
  Merged revisions 180464 via svnmerge from 
  https://origsvn.digium.com/svn/asterisk/branches/1.4
  
  ........
    r180464 | mmichelson | 2009-03-05 17:26:11 -0600 (Thu, 05 Mar 2009) | 16 lines
    
    [IMAP] Fix message retrieval issues when identical mailbox names were defined in separate contexts.
    
    There was a fix put in a while back so that an X-Asterisk-VM-Context message header was
    added to stored IMAP voicemails. This would allow for us to differentiate if the same
    mailbox name was used in multiple contexts. The problem still left was that not all places
    where messages were retrieved actually attempted to use this header for information when
    retrieving messages. This commit fixes that so that MWI and message retrieval from VoiceMailMain
    work as expected.
    
    (closes issue #13853)
    Reported by: vicks1
    Patches:
          13853_v2.patch uploaded by mmichelson (license 60)
    Tested by: lmadsen
  ........
................


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.1@180467 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-03-05 23:28:33 +00:00
Mark Michelson
2876025927 Merged revisions 180383 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

................
  r180383 | mmichelson | 2009-03-05 13:14:14 -0600 (Thu, 05 Mar 2009) | 31 lines
  
  Merged revisions 180380 via svnmerge from 
  https://origsvn.digium.com/svn/asterisk/branches/1.4
  
  ........
    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
    Patches:
          14599.patch uploaded by mmichelson (license 60) (with slight modification)
    Tested by: lmadsen
  ........
................


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.1@180425 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-03-05 19:27:07 +00:00
Joshua Colp
4b09db51ab Merged revisions 180120 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

........
  r180120 | file | 2009-03-04 10:39:28 -0400 (Wed, 04 Mar 2009) | 7 lines
  
  Remove duplicate 'k' and 'K' Dial options.
  
  (closes issue #14601)
  Reported by: alecdavis
  Patches:
        app_dial.optionk.diff.txt uploaded by alecdavis (license 585)
........


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.1@180122 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-03-04 14:41:03 +00:00
David Vossel
84b495160a Merged revisions 180032 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

........
  r180032 | dvossel | 2009-03-03 17:21:18 -0600 (Tue, 03 Mar 2009) | 14 lines
  
  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
  Patches:
  	fix_app_read.patch uploaded by Marquis (license 32)
  	read-ampersanmd.patch2 uploaded by dvossel (license 671)
  Tested by: Marquis, dvossel
  Review: http://reviewboard.digium.com/r/177/
........


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.1@180080 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-03-03 23:39:25 +00:00
Mark Michelson
e170745b70 Merged revisions 180007 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

................
  r180007 | mmichelson | 2009-03-03 16:49:07 -0600 (Tue, 03 Mar 2009) | 22 lines
  
  Merged revisions 180006 via svnmerge from 
  https://origsvn.digium.com/svn/asterisk/branches/1.4
  
  ........
    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: https://origsvn.digium.com/svn/asterisk/branches/1.6.1@180009 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-03-03 22:49:51 +00:00
Russell Bryant
01fc3b5542 Merged revisions 179903 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

........
r179903 | bmd | 2009-03-03 14:02:20 -0600 (Tue, 03 Mar 2009) | 1 line

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/branches/1.6.1@179905 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-03-03 20:09:59 +00:00
Russell Bryant
17860dd56c Merged revisions 179533 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

................
r179533 | russell | 2009-03-02 17:36:38 -0600 (Mon, 02 Mar 2009) | 48 lines

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/branches/1.6.1@179535 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-03-02 23:39:56 +00:00
Mark Michelson
4633a91d1a Merged revisions 179254 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

........
  r179254 | mmichelson | 2009-03-01 17:25:23 -0600 (Sun, 01 Mar 2009) | 5 lines
  
  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/branches/1.6.1@179256 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-03-01 23:28:19 +00:00
Dwayne M. Hubbard
c65127f5bd Merged revisions 177699 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

........
  r177699 | dhubbard | 2009-02-20 14:29:00 -0600 (Fri, 20 Feb 2009) | 9 lines
  
  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/branches/1.6.1@177785 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-02-20 22:27:17 +00:00
Tilghman Lesher
493bda9494 Merged revisions 177664 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

........
  r177664 | tilghman | 2009-02-20 11:29:51 -0600 (Fri, 20 Feb 2009) | 8 lines
  
  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/branches/1.6.1@177761 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-02-20 21:35:18 +00:00
Tilghman Lesher
a7dd6fcf19 Merged revisions 177661 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

........
  r177661 | tilghman | 2009-02-20 11:22:19 -0600 (Fri, 20 Feb 2009) | 2 lines
  
  Oops, merge broke trunk
........


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.1@177663 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-02-20 17:28:28 +00:00
Tilghman Lesher
df70c07ee3 Merged revisions 177537 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

................
  r177537 | tilghman | 2009-02-19 16:33:00 -0600 (Thu, 19 Feb 2009) | 14 lines
  
  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/branches/1.6.1@177539 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-02-19 22:35:48 +00:00
Joshua Colp
7e2f9d59ef Merged revisions 177384 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

................
  r177384 | file | 2009-02-19 12:38:41 -0400 (Thu, 19 Feb 2009) | 10 lines
  
  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/branches/1.6.1@177386 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-02-19 16:40:16 +00:00
Russell Bryant
2b58929510 Merged revisions 177101 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

........
r177101 | russell | 2009-02-18 13:12:49 -0600 (Wed, 18 Feb 2009) | 8 lines

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/branches/1.6.1@177158 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-02-18 19:30:18 +00:00
Russell Bryant
ceffd56266 Merged revisions 176557 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

........
r176557 | russell | 2009-02-17 11:33:38 -0600 (Tue, 17 Feb 2009) | 12 lines

Fix a race condition that caused device states to become incorrect for hints.

The problem here is that the hint processing code was subscribed to the wrong
event type.  So, it started processing state for a hint too soon, before the
device state cache had been updated.

Also, fix a similar bug in app_queue, as it was also subscribed to the wrong
event type.

(closes issue #14461)
Reported by: alecdavis

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.1@176559 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-02-17 17:38:47 +00:00
Mark Michelson
dc6d1cd3b9 Merged revisions 176253 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

................
  r176253 | mmichelson | 2009-02-16 15:40:40 -0600 (Mon, 16 Feb 2009) | 24 lines
  
  Merged revisions 176249,176252 via svnmerge from 
  https://origsvn.digium.com/svn/asterisk/branches/1.4
  
  ........
    r176249 | mmichelson | 2009-02-16 15:34:27 -0600 (Mon, 16 Feb 2009) | 14 lines
    
    Open the DAHDI pseudo device and set it to be nonblocking atomically
    
    Apparently on FreeBSD, attempting to set the O_NONBLOCKING flag separately
    from opening the file was causing an "inappropriate ioctl for device" error.
    While I cannot fathom why this would be happening, I certainly am not opposed
    to making the code a bit more compact/efficient if it also fixes a bug.
    
    (closes issue #14482)
    Reported by: ys
    Patches:
          meetme.patch uploaded by ys (license 281)
    Tested by: ys
  ........
    r176252 | mmichelson | 2009-02-16 15:39:21 -0600 (Mon, 16 Feb 2009) | 3 lines
    
    Remove unused variable and make dev-mode compilation happy
  ........
................


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.1@176257 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-02-16 21:50:31 +00:00
Mark Michelson
a3125621bc Merged revisions 175591 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

................
  r175591 | mmichelson | 2009-02-13 13:49:38 -0600 (Fri, 13 Feb 2009) | 22 lines
  
  Merged revisions 175590 via svnmerge from 
  https://origsvn.digium.com/svn/asterisk/branches/1.4
  
  ........
    r175590 | mmichelson | 2009-02-13 13:47:48 -0600 (Fri, 13 Feb 2009) | 16 lines
    
    Fix a potential crash situation when using IMAP voicemail
    
    If calling into VoiceMailMain when using IMAP storage, it was
    possible to crash Asterisk by hanging up the phone when prompted
    for a voicemail mailbox. This patch fixes the issue.
    
    While it may appear that this patch is superficial, it allows code
    execution to continue to the failure case just below the IMAP_STORAGE
    code block where this patch has been applied
    
    (closes issue #14473)
    Reported by: dwpaul
    Patches:
          voicemail_imap_crash_no_mailbox.patch uploaded by dwpaul (license 689)
  ........
................


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.1@175593 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-02-13 19:52:03 +00:00
Joshua Colp
fea48f9cac Merged revisions 175549 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

........
  r175549 | file | 2009-02-13 12:41:15 -0400 (Fri, 13 Feb 2009) | 4 lines
  
  Add an option to keep the recorded file upon hangup.
  (closes issue #14341)
  Reported by: fnordian
........


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.1@175551 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-02-13 16:44:37 +00:00
Mark Michelson
063e72f154 Merged revisions 174951 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

........
  r174951 | mmichelson | 2009-02-11 17:12:57 -0600 (Wed, 11 Feb 2009) | 3 lines
  
  Fix a bit of odd logic for announcing position. Sync with 1.6.0's logic
........


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.1@174952 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-02-11 23:13:21 +00:00
Mark Michelson
47ba9f946d Merged revisions 174948 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

........
  r174948 | mmichelson | 2009-02-11 17:03:08 -0600 (Wed, 11 Feb 2009) | 20 lines
  
  Fix odd "thank you" sound playing behavior in app_queue.c
  
  If someone has configured the queue to play an position or holdtime
  announcement, then it is odd and potentially unexpected to hear a 
  "Thank you for your patience" sound when no position or holdtime
  was actually announced.
  
  This fixes the announcement so that the "thanks" sound is only played
  in the case that a position or holdtime was actually announced.
  
  There is a way that the "thank you" sound can be played without a
  position or holdtime, and that is to set announce-frequency to a value
  but keep announce-position and announce-holdtime both turned off.
  
  (closes issue #14227)
  Reported by: caspy
  Patches:
        14227_v3.patch uploaded by putnopvut (license 60)
  Tested by: caspy
........


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.1@174950 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-02-11 23:11:33 +00:00
Mark Michelson
20655a3a05 Merged revisions 174945 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

........
  r174945 | mmichelson | 2009-02-11 16:41:01 -0600 (Wed, 11 Feb 2009) | 29 lines
  
  Fix 'd' option for app_dial and add new option to Answer application
  
  The 'd' option would not work for channel types which use RTP to transport
  DTMF digits. The only way to allow for this to work was to answer the channel
  if we saw that this option was enabled.
  
  I realized that this may cause issues with CDRs, specifically with giving false
  dispositions and answer times. I therefore modified ast_answer to take another
  parameter which would tell if the CDR should be marked answered.
  
  I also extended this to the Answer application so that the channel may be answered
  but not CDRified if desired.
  
  I also modified app_dictate and app_waitforsilence to only answer the channel if it
  is not already up, to help not allow for faulty CDR answer times.
  
  All of these changes are going into Asterisk trunk. For 1.6.0 and 1.6.1, however, all
  the changes except for the change to the Answer application will go in since we do
  not introduce new features into stable branches
  
  (closes issue #14164)
  Reported by: DennisD
  Patches:
        14164.patch uploaded by putnopvut (license 60)
  Tested by: putnopvut
  
  Review: http://reviewboard.digium.com/r/145
........


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.1@174947 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-02-11 22:55:16 +00:00
Mark Michelson
056c9137cc Merged revisions 174805 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

........
r174805 | mmichelson | 2009-02-10 17:17:03 -0600 (Tue, 10 Feb 2009) | 11 lines

Fix potential for stack overflows in app_chanspy.c

When using the 'g' or 'e' options, the stack allocations that
were used could cause a stack overflow if a spyer stayed on the
line long enough without actually successfully spying on anyone.

The problem has been corrected by using static buffers and copying
the contents of the appropriate strings into them instead of using
functions like alloca or ast_strdupa


........


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.1@174823 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-02-10 23:21:03 +00:00
Tilghman Lesher
0d7e202ebf Merged revisions 174503 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

........
  r174503 | tilghman | 2009-02-10 01:06:29 -0600 (Tue, 10 Feb 2009) | 2 lines
  
  Fix0ring build
........


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.1@174504 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-02-10 07:07:30 +00:00
Tilghman Lesher
52ca2bcf7c Merged revisions 174470 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

........
  r174470 | tilghman | 2009-02-09 23:39:33 -0600 (Mon, 09 Feb 2009) | 2 lines
  
  Remove the usage of the KeepAlive app, as it no longer exists.
........


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.1@174471 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-02-10 05:42:52 +00:00
Steve Murphy
308faf8b56 This patch corrects warnings which seem to appear
only on 64-bit compilers, gcc-4.3.2.



git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.1@174440 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-02-10 05:13:15 +00:00
Steve Murphy
ba39cdfefa One final fix in the 1.6.1 release only; some variables the compiler
worries "may not be initialized".



git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.1@174438 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-02-10 05:03:18 +00:00
Steve Murphy
778562b8e5 Merged revisions 174435 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

........
r174435 | murf | 2009-02-09 21:49:02 -0700 (Mon, 09 Feb 2009) | 8 lines

This patch removes the use of AST_PBX_KEEPALIVE
from app_rpt.c.


(closes issue #14435)
Reported by: D_McNaul


........


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.1@174437 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-02-10 04:57:40 +00:00
Steve Murphy
d636f3a9db Merged revisions 174432 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

........
r174432 | murf | 2009-02-09 21:36:22 -0700 (Mon, 09 Feb 2009) | 3 lines

More intptr_t work.


........


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.1@174434 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-02-10 04:46:17 +00:00
Steve Murphy
879326b3f3 Merged revisions 174370 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

................
  r174370 | murf | 2009-02-09 19:45:56 -0700 (Mon, 09 Feb 2009) | 10 lines
  
  Merged revisions 174369 via svnmerge from 
  https://origsvn.digium.com/svn/asterisk/branches/1.4
  
  ........
    r174369 | murf | 2009-02-09 19:27:40 -0700 (Mon, 09 Feb 2009) | 5 lines
    
    This patch solves some compiler complaints
    in both 32 and 64-bit environments.
  ........
................


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.1@174428 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-02-10 04:09:42 +00:00
David Vossel
200935605b Merged revisions 174325 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

........
  r174325 | dvossel | 2009-02-09 11:26:02 -0600 (Mon, 09 Feb 2009) | 9 lines
  
  Fixes issue with hangups not being sent and external process never terminating. 
  
  The ignore_hangup, run_dead, and noanswer flags were never initilized to zero causing hangups to never be issued.  If the external script expects to be notified of a hangup and never receives one, it runs indefinitely. 
  
  (closes issue #14251)
  Reported by: chris-mac
  Tested by: dvossel
........


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.1@174330 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-02-09 17:47:27 +00:00
Joshua Colp
993d0af118 Merged revisions 173902 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

........
  r173902 | file | 2009-02-06 11:59:17 -0400 (Fri, 06 Feb 2009) | 4 lines
  
  Always detach and destroy the whisper and barge audiohooks. Additionally also allow an audiohook to be detached if it has not been attached.
  (closes issue #14414)
  Reported by: bluecrow76
........


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.1@173904 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-02-06 16:01:01 +00:00
Mark Michelson
41859bdb73 Merged revisions 173773 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

........
r173773 | mmichelson | 2009-02-05 17:28:19 -0600 (Thu, 05 Feb 2009) | 7 lines

Properly set "seen" and "unseen" flags when moving messages from the new to the old folder when using IMAP for voicemail storage

(closes issue #13905)
Reported by: jaroth
Patches:
      foldermove_v2.patch uploaded by jaroth (license 50)

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.1@173775 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-02-05 23:31:53 +00:00
Jeff Peeler
9f3e4e86b3 Merged revisions 173697 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

................
  r173697 | jpeeler | 2009-02-05 15:00:26 -0600 (Thu, 05 Feb 2009) | 18 lines
  
  Merged revisions 173696 via svnmerge from 
  https://origsvn.digium.com/svn/asterisk/branches/1.4
  
  ........
    r173696 | jpeeler | 2009-02-05 14:47:51 -0600 (Thu, 05 Feb 2009) | 12 lines
    
    Add new configuration option to make shared IMAP mailboxes function as expected.
    
    The new option is "imapvmshareid" which is an ID to tag multiple mailboxes
    using the same IMAP storage location to function as one mailbox. This allows
    all messages to be retrieved for any user in the group. The patch alters the
    'X-Asterisk-VM-Extension' header that is responsible for matching voicemails
    for a given user.
    
    (closes issue #13673)
    Reported by: howardwilkinson
  ........
................


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.1@173699 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-02-05 21:06:12 +00:00
Mark Michelson
d9694895c9 Merged revisions 173693 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

................
r173693 | mmichelson | 2009-02-05 14:30:45 -0600 (Thu, 05 Feb 2009) | 20 lines

Merged revisions 173692 via svnmerge from 
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r173692 | mmichelson | 2009-02-05 14:29:09 -0600 (Thu, 05 Feb 2009) | 12 lines

Fix situations where queue members could be autopaused unexpectedly

Specifically, this patch prevents us from autopausing members when
we receive a busy or congestion frame from them.

(closes issue #14376)
Reported by: fiddur
Patches:
      14376.patch uploaded by putnopvut (license 60)
Tested by: fiddur


........

................


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.1@173695 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-02-05 20:35:42 +00:00
Mark Michelson
075fb9b0cd Merged revisions 173593 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

................
r173593 | mmichelson | 2009-02-05 12:48:55 -0600 (Thu, 05 Feb 2009) | 11 lines

Merged revisions 173592 via svnmerge from 
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r173592 | mmichelson | 2009-02-05 12:47:24 -0600 (Thu, 05 Feb 2009) | 3 lines

Add some missing cleanup to app_mixmonitor


........

................


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.1@173595 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-02-05 18:50:00 +00:00
Mark Michelson
616a6fdd54 Merged revisions 173589 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

................
r173589 | mmichelson | 2009-02-05 12:34:06 -0600 (Thu, 05 Feb 2009) | 33 lines

Merged revisions 173559 via svnmerge from 
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r173559 | mmichelson | 2009-02-05 11:34:33 -0600 (Thu, 05 Feb 2009) | 25 lines

Fix a problem where a channel pointer becomes invalid due to masquerading or hanging up.

app_mixmonitor runs its own thread to monitor the channel's activity and write the mixed
audio to a file. Since this thread runs independently of the channel, it is possible that
the mixmonitor thread's channel pointer will point to freed memory when the channel either
is masqueraded or hangs up (technically, both cases are hangups, but we need to handle the
cases slightly differently).

The solution for this is to employ a datastore, which has the nice benefit of allowing us 
to hook into channel masquerades and hangups and update our pointer as necessary. If this
looks familiar, this same technique is employed in app_chanspy. app_chanspy is a bit more
involved since it does a lot more operations on the channel that is being spied upon.

app_mixmonitor does have an extra touch that app_chanspy doesn't have, though. Since there
is a thread race between the channel's thread and the mixmonitor thread on a hangup, we em-
ploy a condition-and-boolean combination to ensure that the channel thread finishes with
our structure before the mixmonitor thread attempts to free it. No crashes!

(closes issue #14374)
Reported by: aragon
Patches:
	  14374.patch uploaded by putnopvut (license 60)
Tested by: aragon, putnopvut


........

................


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.1@173591 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-02-05 18:42:12 +00:00
Mark Michelson
e24a4644e4 Merged revisions 173507 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

........
r173507 | mmichelson | 2009-02-04 16:16:19 -0600 (Wed, 04 Feb 2009) | 7 lines

Fix some areas where the incorrect interface was passed to ast_device_state

I swear it feels like I already did this once...

(closes issue #14359)
Reported by: francesco_r

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.1@173541 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-02-04 22:25:06 +00:00
Mark Michelson
f932b09c5f Merged revisions 173397 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

................
r173397 | mmichelson | 2009-02-04 11:45:14 -0600 (Wed, 04 Feb 2009) | 11 lines

Merged revisions 173396 via svnmerge from 
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r173396 | mmichelson | 2009-02-04 11:44:48 -0600 (Wed, 04 Feb 2009) | 3 lines

Revert my previous change because it was stupid


........

................


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.1@173399 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-02-04 17:46:36 +00:00
Mark Michelson
0017b5cf52 Merged revisions 173393 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

................
r173393 | mmichelson | 2009-02-04 11:41:02 -0600 (Wed, 04 Feb 2009) | 11 lines

Merged revisions 173392 via svnmerge from 
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r173392 | mmichelson | 2009-02-04 11:40:29 -0600 (Wed, 04 Feb 2009) | 3 lines

Add a missing unlock. Extremely unlikely to ever matter, but it's needed.


........

................


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.1@173395 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-02-04 17:42:41 +00:00
Tilghman Lesher
13508cc9f3 Merged revisions 172741 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

........
  r172741 | tilghman | 2009-01-31 20:44:23 -0600 (Sat, 31 Jan 2009) | 4 lines
  
  Blank argument crashes Asterisk
  (closes issue #14377)
   Reported by: amorsen
........


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.1@172743 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-02-01 02:45:47 +00:00
Terry Wilson
ef566503d3 Merged revisions 172580 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

................
  r172580 | twilson | 2009-01-30 15:29:12 -0600 (Fri, 30 Jan 2009) | 44 lines
  
  Merged revisions 172517 via svnmerge from 
  https://origsvn.digium.com/svn/asterisk/branches/1.4
  
  ........
    r172517 | twilson | 2009-01-30 11:47:41 -0600 (Fri, 30 Jan 2009) | 37 lines
    
    Fix feature inheritance with builtin features
    
    When using builtin features like parking and transfers, the AST_FEATURE_* flags
    would not be set correctly for all instances when either performing a builtin
    attended transfer, or parking a call and getting the timeout callback.  Also,
    there was no way on a per-call basis to specify what features someone should
    have on picking up a parked call (since that doesn't involve the Dial() command).
    There was a global option for setting whether or not all users who pickup a
    parked call should have AST_FEATURE_REDIRECT set, but nothing for DISCONNECT,
    AUTOMON, or PARKCALL.
    
    This patch:
    1) adds the BRIDGE_FEATURES dialplan variable which can be set either in the
    dialplan or with setvar in channels that support it.  This variable can be set
    to any combination of 't', 'k', 'w', and 'h' (case insensitive matching of the
    equivalent dial options), to set what features should be activated on this
    channel.  The patch moves the setting of the features datastores into the
    bridging code instead of app_dial to help facilitate this.
    
    2) adds global options parkedcallparking, parkedcallhangup, and
    parkedcallrecording to be similar to the parkedcalltransfers option for
    globally setting features.
    
    3) has builtin_atxfer call builtin_parkcall if being transfered to the parking
    extension since tracking everything through multiple masquerades, etc. is
    difficult and error-prone
    
    4) attempts to fix all cases of return calls from parking and completed builtin
    transfers not having the correct permissions
    (closes issue #14274)
    Reported by: aragon
    Patches: 
          fix_feature_inheritence.diff.txt uploaded by otherwiseguy (license 396)
    Tested by: aragon, otherwiseguy
    
    Review http://reviewboard.digium.com/r/138/
  ........
................


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.1@172636 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-01-31 00:05:17 +00:00
Tilghman Lesher
95c892e3f9 Merged revisions 172441 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

................
  r172441 | tilghman | 2009-01-29 17:15:40 -0600 (Thu, 29 Jan 2009) | 16 lines
  
  Merged revisions 172438 via svnmerge from 
  https://origsvn.digium.com/svn/asterisk/branches/1.4
  
  ........
    r172438 | tilghman | 2009-01-29 16:54:29 -0600 (Thu, 29 Jan 2009) | 9 lines
    
    Lose the CAP_NET_ADMIN at every fork, instead of at startup.  Otherwise, if
    Asterisk runs as a non-root user and the administrator does a 'restart now',
    Asterisk loses the ability to set QOS on packets.
    (closes issue #14004)
     Reported by: nemo
     Patches: 
           20090105__bug14004.diff.txt uploaded by Corydon76 (license 14)
     Tested by: Corydon76
  ........
................


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.1@172504 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-01-29 23:53:12 +00:00
Steve Murphy
dfb881fadf Merged revisions 172063 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

................
  r172063 | murf | 2009-01-28 13:31:06 -0700 (Wed, 28 Jan 2009) | 52 lines
  
  Merged revisions 172030 via svnmerge from 
  https://origsvn.digium.com/svn/asterisk/branches/1.4
  
  ........
    r172030 | murf | 2009-01-28 11:51:16 -0700 (Wed, 28 Jan 2009) | 46 lines
    
    This patch fixes h-exten running misbehavior in manager-redirected 
    situations.
    
    What it does:
    1. A new Flag value is defined in include/asterisk/channel.h,
     AST_FLAG_BRIDGE_HANGUP_DONT, which used as a messenge to the
     bridge hangup exten code not to run the h-exten there (nor
     publish the bridge cdr there). It will done at the pbx-loop
     level instead.
    2. In the manager Redirect code, I set this flag on the channel
     if the channel has a non-null pbx pointer. I did the same for the
     second (chan2) channel, which gets run if name2 is set...
     and the first succeeds.
    3. I restored the ending of the cdr for the pbx loop h-exten
     running code. Don't know why it was removed in the first place.
    4. The first attempt at the fix for this bug was to place code
       directly in the async_goto routine, which was called from a
       large number of places, and could affect a large number of
       cases, so I tested that fix against a fair number of transfer
       scenarios, both with and without the patch. In the process,
       I saw that putting the fix in async_goto seemed not to affect
       any of the blind or attended scenarios, but still, I was
       was highly concerned that some other scenarios I had not tested
       might be negatively impacted, so I refined the patch to 
       its current scope, and jmls tested both. In the process, tho,
       I saw that blind xfers in one situation, when the one-touch
       blind-xfer feature is used by the peer, we got strange 
       h-exten behavior.  So, I  inserted code to swap CDRs and
       to set the HANGUP_DONT field, to get uniform behavior.
    5. I added code to the bridge to obey the HANGUP_DONT flag,
       skipping both publishing the bridge CDR, and running
       the h-exten; they will be done at the pbx-loop (higher)
       level instead.
    6. I removed all the debug logs from the patch before committing.
    7. I moved the AUTOLOOP set/reset in the h-exten code in res_features
       so it's only done if the h-exten is going to be run. A very
       minor performance improvement, but technically correct.
    
    
    (closes issue #14241)
    Reported by: jmls
    Patches:
          14241_redirect_no_bridgeCDR_or_h_exten_via_transfer uploaded by murf (license 17)
    Tested by: murf, jmls
  ........
................


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.1@172067 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-01-28 20:56:48 +00:00
Mark Michelson
2d42d6cc64 Merged revisions 171618 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

........
r171618 | mmichelson | 2009-01-27 13:30:54 -0600 (Tue, 27 Jan 2009) | 24 lines

Fix queue crashes that would occur after the calling channel was masqueraded.

The data passed to the end_bridge_callback was assumed to be data which was
still stack'd. The problem was that with some call features, attended transfers
in particular, a new bridge thread is started once the feature completes, meaning
that when the end_bridge_callback is called, the end_bridge_callback_data was
invalid.

To fix this problem, there are two measures taken

1. Instead of pointing to stacked data, we now used heap-allocated data for
passing to the end_bridge_callback in app_queue
2. Since bridges can end multiple times on a single logical call, we wait until
the final bridge is broken to actually set any queue variables. This is accomplished
through reference-counting and the use of an end_bridge_callback_data_fixup function
in app_queue.c

(closes issue #14260)
Reported by: ccesario
Patches:
      14260.patch uploaded by putnopvut (license 60)
Tested by: ccesario


........


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.1@171620 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-01-27 19:43:22 +00:00
Sean Bright
3595adcf68 Merged revisions 170980 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

................
  r170980 | seanbright | 2009-01-25 08:35:48 -0500 (Sun, 25 Jan 2009) | 16 lines
  
  Merged revisions 170979 via svnmerge from 
  https://origsvn.digium.com/svn/asterisk/branches/1.4
  
  ........
    r170979 | seanbright | 2009-01-25 08:33:20 -0500 (Sun, 25 Jan 2009) | 9 lines
    
    Resolve a logic error that was causing Page() to crash when more than one
    channel was specified.
    
    (closes issue #14308)
    Reported by: bluefox
    Patches:
          20090124__bug14308.diff.txt uploaded by seanbright (license 71)
    Tested by: kc0bvu
  ........
................


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.1@170982 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-01-25 13:40:52 +00:00
Joshua Colp
692b93004e Merged revisions 170569 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

................
  r170569 | file | 2009-01-23 15:09:18 -0400 (Fri, 23 Jan 2009) | 11 lines
  
  Merged revisions 170568 via svnmerge from 
  https://origsvn.digium.com/svn/asterisk/branches/1.4
  
  ........
    r170568 | file | 2009-01-23 15:06:54 -0400 (Fri, 23 Jan 2009) | 4 lines
    
    When a call is forwarded stop any active indications. The new channel will provide an indication, if need be, itself.
    (closes issue #14310)
    Reported by: RadicAlish
  ........
................


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.1@170571 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-01-23 19:10:43 +00:00
Joshua Colp
97cae952ea Merged revisions 170148 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

................
  r170148 | file | 2009-01-22 12:52:21 -0400 (Thu, 22 Jan 2009) | 11 lines
  
  Merged revisions 170147 via svnmerge from 
  https://origsvn.digium.com/svn/asterisk/branches/1.4
  
  ........
    r170147 | file | 2009-01-22 12:50:54 -0400 (Thu, 22 Jan 2009) | 4 lines
    
    If we are unable to request a DAHDI pseudo channel and we are using the user introduction without review option make sure it gets unset so other code does not blindly assume a DAHDI pseudo channel exists.
    (closes issue #14282)
    Reported by: cheesegrits
  ........
................


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.1@170150 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-01-22 16:54:45 +00:00