Commit Graph

16682 Commits

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

........
r174327 | mmichelson | 2009-02-09 11:27:32 -0600 (Mon, 09 Feb 2009) | 3 lines

Fix something I messed up in the merge I just did


........


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.0@174328 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-02-09 17:28:52 +00:00
Mark Michelson
0919e13437 Merged revisions 174301 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

................
r174301 | mmichelson | 2009-02-09 11:20:55 -0600 (Mon, 09 Feb 2009) | 20 lines

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

........
r174282 | mmichelson | 2009-02-09 11:11:05 -0600 (Mon, 09 Feb 2009) | 12 lines

Don't do an SRV lookup if a port is specified

RFC 3263 says to do A record lookups on a hostname
if a port has been specified, so that's what we're
going to do. See section 4.2.

(closes issue #14419)
Reported by: klaus3000
Patches:
      patch_chan_sip_nosrvifport_1.4.23.txt uploaded by klaus3000 (license 65)


........

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


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.0@174322 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-02-09 17:25:09 +00:00
Joshua Colp
1eb4c5d727 Merged revisions 174219 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

................
  r174219 | file | 2009-02-09 10:49:24 -0400 (Mon, 09 Feb 2009) | 11 lines
  
  Merged revisions 174218 via svnmerge from 
  https://origsvn.digium.com/svn/asterisk/branches/1.4
  
  ........
    r174218 | file | 2009-02-09 10:48:21 -0400 (Mon, 09 Feb 2009) | 4 lines
    
    Don't overwrite our pointer to the music class when music on hold stops. We will use this if it starts again to see if we can resume the music where it left off.
    (closes issue #14407)
    Reported by: mostyn
  ........
................


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.0@174220 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-02-09 14:50:09 +00:00
Russell Bryant
40864afe1d Merged revisions 174149 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

................
r174149 | russell | 2009-02-07 10:16:50 -0600 (Sat, 07 Feb 2009) | 10 lines

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

........
r174148 | russell | 2009-02-07 10:15:07 -0600 (Sat, 07 Feb 2009) | 2 lines

Fix a race condition that could cause a crash.

........

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


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.0@174151 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-02-07 16:17:20 +00:00
Dwayne M. Hubbard
24e312a999 Merged revisions 174084 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

................
r174084 | dhubbard | 2009-02-06 17:51:56 -0600 (Fri, 06 Feb 2009) | 13 lines

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

........
r174082 | dhubbard | 2009-02-06 17:36:03 -0600 (Fri, 06 Feb 2009) | 5 lines

check ast_strlen_zero() before calling ast_strdupa() in sip_uri_headers_cmp()
and sip_uri_params_cmp()

The reporter didn't actually upload a properly-formed patch, instead a 
modified chan_sip.c file was uploaded.  I created a patch to determine the
changes, then modified the suggested changes to create a proper fix.  The
summary above is a complete description of the changes.

(closes issue #13547)
Reported by: tecnoxarxa
Patches:
      chan_sip.c.gz uploaded by tecnoxarxa (license 258)
Tested by: tecnoxarxa

........

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

------------------------------------------------------------------------


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.0@174085 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-02-06 23:59:42 +00:00
David Vossel
f42760444c Blocked revisions 174046 via svnmerge
........
  r174046 | dvossel | 2009-02-06 14:12:33 -0600 (Fri, 06 Feb 2009) | 12 lines
  
  Adds immediate yes/no option to iax.conf
  
  This is very similar to the DAHDI immediate=yes option.  When the phone is picked up, instead of giving a dialtone it connects directly to the "s" extension.  Changes where implemented in chan_iax2.c to directly connect to the "s" extension in the appropriate context when this option is enabled.  Examples explaining its use are added to iax2.conf.sample.  CHANGES has been updated as well. 
  
  (closes issue #14266)
  Reported by: jcovert
  Patches:
        chan_iax2.c.patch-trunk uploaded by jcovert (license 551)
        iax.conf.sample.patch uploaded by jcovert (license 551)
  Tested by: jcovert, dvossel
  Review: http://reviewboard.digium.com/r/143/
........


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.0@174075 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-02-06 20:25:58 +00:00
Joshua Colp
e9df380e47 Merged revisions 174041 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

........
  r174041 | file | 2009-02-06 15:28:53 -0400 (Fri, 06 Feb 2009) | 4 lines
  
  Don't subscribe to a mailbox on pseudo channels. It is futile. This solves an issue where duplicated pseudo channels would cause a crash because the first one would unsubscribe and the next one would also try to unsubscribe the same subscription.
  (closes issue #14322)
  Reported by: amessina
........


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.0@174042 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-02-06 19:29:41 +00:00
Joshua Colp
494e3efac7 Merged revisions 173974 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

................
  r173974 | file | 2009-02-06 13:18:35 -0400 (Fri, 06 Feb 2009) | 15 lines
  
  Merged revisions 173967-173968 via svnmerge from 
  https://origsvn.digium.com/svn/asterisk/branches/1.4
  
  ........
    r173967 | file | 2009-02-06 13:14:15 -0400 (Fri, 06 Feb 2009) | 4 lines
    
    Some clients do not put the call-id for replaces at the beginning, so support it being anywhere in the string.
    (closes issue #14350)
    Reported by: fhackenberger
  ........
    r173968 | file | 2009-02-06 13:15:01 -0400 (Fri, 06 Feb 2009) | 2 lines
    
    Remove a debug message I put in by accident.
  ........
................


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.0@173986 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-02-06 17:21:02 +00:00
Matthew Nicholson
76e95662cf Merged revisions 173952 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

................
  r173952 | mnicholson | 2009-02-06 10:28:19 -0600 (Fri, 06 Feb 2009) | 14 lines
  
  Merged revisions 173917 via svnmerge from 
  https://origsvn.digium.com/svn/asterisk/branches/1.4
  
  ........
    r173917 | mnicholson | 2009-02-06 10:20:23 -0600 (Fri, 06 Feb 2009) | 7 lines
    
    Limit the addition of the Contact header in SIP responses according to various
    SIP RFCs.
    
    (closes issue #13602)
    Reported by: hjourdain
    Tested by: mnicholson
  ........
................


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.0@173963 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-02-06 16:33:05 +00:00
Joshua Colp
514d93d9a0 Blocked revisions 173902 via svnmerge
........
  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.0@173903 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-02-06 15:59:54 +00:00
Russell Bryant
c8571f59e7 Blocked revisions 173858 via svnmerge
........
r173858 | russell | 2009-02-06 04:55:35 -0600 (Fri, 06 Feb 2009) | 13 lines

Add a common implementation of a scheduler context with a dedicated thread.

This commit expands the Asterisk scheduler API to include a common implementation
of a scheduler context being processed by a dedicated thread.  chan_iax2 has been
updated to use this new code.  Also, as a result, this resolves some race
conditions related to the previous chan_iax2 scheduler handling.

Related to rev 171452 which resolved the same issues in 1.4.

Code from team/russell/sched_thread2

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

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.0@173859 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-02-06 10:56:23 +00:00
Russell Bryant
e3a21e6e01 Blocked revisions 173848 via svnmerge
........
r173848 | russell | 2009-02-06 04:25:09 -0600 (Fri, 06 Feb 2009) | 2 lines

Resolve a memory leak that would occur on an invalid channel given to Action: Status

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.0@173849 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-02-06 10:25:40 +00:00
Mark Michelson
d652d5c06a Merged revisions 173776 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

........
r173776 | mmichelson | 2009-02-05 17:48:48 -0600 (Thu, 05 Feb 2009) | 14 lines

Update extensions.conf.sample to be correct.

In trunk, the only necessary change pointed out was that the call
to ChanIsAvail uses an option that has been removed.

For the 1.6.1 branch, however, it appears that the sample file is
badly in need of updating since there are |'s used all over the place
there. My tentative plan is just to copy trunk's sample config file
to those branches since the info there is most up-to-date and should
be correct for use in 1.6.1

Thanks to macli in #asterisk-dev for bringing this up


........


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.0@173777 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-02-05 23:51:13 +00:00
Mark Michelson
e7a195d88b 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.0@173774 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-02-05 23:30:58 +00:00
Jeff Peeler
4bd27c1d11 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.0@173698 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-02-05 21:04:57 +00:00
Mark Michelson
a31c0961ab 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.0@173694 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-02-05 20:34:44 +00:00
Mark Michelson
1efdb3072c 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.0@173594 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-02-05 18:49:22 +00:00
Mark Michelson
32f3ed9929 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.0@173590 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-02-05 18:39:35 +00:00
Jeff Peeler
d7d53fa278 fix WORKING_FORK detection
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.0@173554 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-02-05 16:23:58 +00:00
Tilghman Lesher
24dc2f1054 regenerate with bootstrap.sh
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.0@173548 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-02-05 00:11:35 +00:00
Jeff Peeler
1b4e2a5d6b I messed up and accidentally reverted the trunk-merged prop before committing 173546. Added it manually.
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.0@173547 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-02-04 23:44:56 +00:00
Jeff Peeler
58d71a9470 Merged revisions 173500 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

................
  r173500 | jpeeler | 2009-02-04 15:17:53 -0600 (Wed, 04 Feb 2009) | 23 lines
  
  Merged revisions 173211 via svnmerge from 
  https://origsvn.digium.com/svn/asterisk/branches/1.4
  
  ........
    r173211 | jpeeler | 2009-02-03 15:57:01 -0600 (Tue, 03 Feb 2009) | 17 lines
    
    Parking attempts made to one end of a bridge no longer will hang up due to a
    parking failure.
    
    Parking attempts made using either one-touch, or doing either a blind or 
    assisted transfer to the parking extension now keep up the bridge instead of
    hanging up the attempted parked party. Normal causes for the parking attempt
    to fail includes the specific specified extension (via PARKINGEXTEN) not being 
    available or if all the parking spaces are currently in use. To avoid having
    to reverse a masquerade park_space_reserve was made to provide foresight if
    a parking attempt will succeed and if so reserve the parking space.
    
    (closes issue #13494)
    Reported by: mdu113
    
    Reviewed by Russell: http://reviewboard.digium.com/r/133/
  ........
................


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.0@173546 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-02-04 23:38:54 +00:00
Mark Michelson
f94677ac39 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.0@173534 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-02-04 22:23:52 +00:00
Tilghman Lesher
8c1a726973 Merged revisions 173458 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

........
  r173458 | tilghman | 2009-02-04 12:48:06 -0600 (Wed, 04 Feb 2009) | 9 lines
  
  When using a socket as a FILE *, the stdio functions will sometimes try to do
  an fseek() on the stream, which is an invalid operation for a socket.  Turning
  off buffering explicitly lets the stdio functions know they cannot do this,
  thus avoiding a potential error.
  (closes issue #14400)
   Reported by: fnordian
   Patches: 
         tcptls.patch uploaded by fnordian (license 110)
........


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.0@173460 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-02-04 18:55:32 +00:00
Mark Michelson
826418a799 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.0@173398 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-02-04 17:46:12 +00:00
Mark Michelson
e1136de5bf 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.0@173394 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-02-04 17:42:01 +00:00
Mark Michelson
a71ca0b0e3 Merged revisions 173354 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

........
r173354 | mmichelson | 2009-02-04 09:30:12 -0600 (Wed, 04 Feb 2009) | 30 lines

Fix a problem where file playback would cause fds to remain open forever

The problem came from the fact that a frame read from a format interpreter
was not freed. Adding a call to ast_frfree fixed this. The explanation for
why this caused the problem is a bit complex, but here goes:

There was a problem in all versions of Asterisk where the embedded frame
of a filestream structure was referenced after the filestream was freed. This
was fixed by adding reference counting to the filestream structure. The refcount
would increase every time that a filestream's frame pointer was pointing to an
actual frame of data. When the frame was freed, the refcount would decrease. Once
the refcount reached 0, the filestream was freed, and as part of the operation,
the open files were closed as well.

Thus it becomes more clear why a missing ast_frfree would cause a reference leak
and cause the files to not be closed. You may ask then if there was a frame leak
before this patch. The answer to that is actually no! The filestream code was
"smart" enough to know that since the frame we received came from a format interpreter,
the frame had no malloced data and thus didn't need to be freed. Now, however, there
is cleanup that needs to be done when we finish with the frame, so we do need to
call ast_frfree on the frame to be sure that the refcount for the filestream is
decremented appropriately.

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


........


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.0@173355 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-02-04 15:30:54 +00:00
Tilghman Lesher
3d71c38287 Merged revisions 173311 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

........
  r173311 | tilghman | 2009-02-03 18:43:52 -0600 (Tue, 03 Feb 2009) | 10 lines
  
  Ensure that commas placed in the middle of extension character classes do not
  interfere with correct parsing of the extension.  Also, if an unterminated
  character class DOES make its way into the pbx core (through some other
  method), ensure that it does not crash Asterisk.
  (closes issue #14362)
   Reported by: Nick_Lewis
   Patches: 
         20090129__bug14362.diff.txt uploaded by Corydon76 (license 14)
   Tested by: Corydon76
........


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.0@173312 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-02-04 00:45:32 +00:00
David Vossel
1c73c18e80 Fixes issue with IAX2 transfer not handing of calls.
Fixes issue with IAX2 transfers not taking place.  As it was, a call that was being transfered would never be handed off correctly to the call ends because of how call numbers were stored in a hash table.  The hash table, "iax_peercallno_pvt", storing all the current call numbers did not take into account the complications associated with transferring a call, so a separate hash table was required.  This second hash table "iax_transfercallno_pvt" handles calls being transfered, once the call transfer is complete the call is removed from the transfer hash table and added to the peer hash table resuming normal operations. Addition functions were created to handle storing, removing, and comparing items in the iax_transfercallno_pvt table. 

(issue #13468)
Review: http://reviewboard.digium.com/r/140/


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.0@173250 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-02-03 23:41:28 +00:00
Tilghman Lesher
0d05f4cd3b Merged revisions 173104 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

................
  r173104 | tilghman | 2009-02-02 18:24:52 -0600 (Mon, 02 Feb 2009) | 12 lines
  
  Merged revisions 173070 via svnmerge from 
  https://origsvn.digium.com/svn/asterisk/branches/1.4
  
  ........
    r173070 | tilghman | 2009-02-02 18:15:59 -0600 (Mon, 02 Feb 2009) | 5 lines
    
    Add warning to standard config, that globals may be overridden by other
    dialplan configuration files.
    (closes issue #14388)
     Reported by: macli
  ........
................


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.0@173111 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-02-03 00:26:08 +00:00
Terry Wilson
6aa5e4f230 Merged revisions 173067 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

................
  r173067 | twilson | 2009-02-02 17:57:25 -0600 (Mon, 02 Feb 2009) | 9 lines
  
  Merged revisions 173066 via svnmerge from 
  https://origsvn.digium.com/svn/asterisk/branches/1.4
  
  ........
    r173066 | twilson | 2009-02-02 17:48:06 -0600 (Mon, 02 Feb 2009) | 2 lines
    
    Fix a feature inheritance bug I added after code review
  ........
................


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.0@173068 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-02-02 23:59:46 +00:00
Leif Madsen
b7734870fc Merged revisions 172894 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

........
  r172894 | lmadsen | 2009-02-02 13:13:40 -0500 (Mon, 02 Feb 2009) | 7 lines
  
  Update the res_ldap.conf file with a better working example.
  
  (closes issue #13861)
  Reported by: scramatte
  Patches:
        __20080110-res_ldap.conf-2.patch uploaded by blitzrage (license 10)
  Tested by: jcovert
........


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.0@172896 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-02-02 18:15:51 +00:00
Steve Murphy
20c1047c23 Blocked revisions 172890 via svnmerge
........
  r172890 | murf | 2009-02-02 10:37:15 -0700 (Mon, 02 Feb 2009) | 41 lines
  
  This change allows the disconnect feature (as in "one-touch" in features.c)
  to be used within the dial app, before a call is bridged.
  
  Many thanks to sobomax for submitting this patch. 
  
  Quoting from bug 11582:
  
    "So the goal of the patch was to use the user configured feature code during the 
     call setup phase. The original ast_feature_interpret() function is not well suited 
     for this purpose as it uses much call bridge specific data and doesn't separate a 
     detection of feature from a feature handler call. So a new function ast_feature_detect() 
     has been extracted off the ast_feature_interpret() function but keeping the original 
     logic intact except some insignificant changes to locking.
  
    "Having created the ast_feature_detect() function the possibility to use feature detection 
     in almost any place of the asterisk code. So a call to this function has been added to 
     wait_for_answer() function of app_dial.so module. This code doesn't call the feature handler 
     however and uses old call leg disconnect logic to make the changes as small and simple as 
     possible to prevent unexpected problems. A disconnect feature currently is the only one 
     supported during call setup as other features as call parking and call transfer don't make much 
     sense during call setup. However if need in some of the features would arise it is much easier to 
     implement as the infrastructure changes are already in place with this patch."
  
  I have cleaned up the patch somewhat, and verified that the existing functionality is not
  harmed, and that the new functionality works. Terry has committed his stuff, and there were
  no conflicts (see 14274).
  
  (closes issue #11583)
  Reported by: sobomax
  Patches:
        patch-apps__app_dial.c uploaded by sobomax (license 359)
        patch-include__asterisk__features.h uploaded by sobomax (license 359)
        patch-res__res_features.c uploaded by sobomax (license 359)
        enable-features-during-call-setup.diff uploaded by sobomax (license 359)
        11583.newdiff uploaded by murf (license 17)
        enable-features-during-call-setup-1.diff uploaded by sobomax (license 359)
        11583.latest-patch uploaded by murf (license 17)
  Tested by: sobomax, murf
........


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.0@172892 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-02-02 17:40:02 +00:00
Tilghman Lesher
66d4b791c8 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.0@172742 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-02-01 02:45:05 +00:00
Tilghman Lesher
54068a791e Merged revisions 172706 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

........
  r172706 | tilghman | 2009-01-31 10:40:59 -0600 (Sat, 31 Jan 2009) | 7 lines
  
  Don't increment the loop, now that incrementing is taken care of by the
  decoder function.
  (closes issue #14363)
   Reported by: andrew53
   Patches: 
         func_strings_filter.patch uploaded by andrew53 (license 519)
........


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.0@172707 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-01-31 16:41:48 +00:00
Terry Wilson
fc3b4491f6 Merged revisions 172581 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

........
  r172581 | twilson | 2009-01-30 15:50:03 -0600 (Fri, 30 Jan 2009) | 2 lines
  
  Remove incorret line from sample config
........


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.0@172637 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-01-31 00:06:27 +00:00
Terry Wilson
af2b34cb56 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.0@172635 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-01-30 23:58:31 +00:00
Mark Michelson
07adec4209 Merged revisions 172598 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

........
r172598 | mmichelson | 2009-01-30 16:22:04 -0600 (Fri, 30 Jan 2009) | 3 lines

Fix redefinition of flag in channel.h


........


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.0@172604 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-01-30 22:23:11 +00:00
Tilghman Lesher
407d3d8861 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.0@172503 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-01-29 23:47:00 +00:00
Richard Mudgett
12782036b0 Merged revisions 172400 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

........
  r172400 | rmudgett | 2009-01-29 14:38:34 -0600 (Thu, 29 Jan 2009) | 12 lines
  
  channels/chan_dahdi.c
  *  Added doxygen comments to the major dahdi structures.
  *  Fixed PRI and SS7 using an incorrect string value if the extension
  delimiter is not present in the Dial() function.
  *  Fixed SS7 not checking if the dialed extension is at least as long
  as the stripmsd option.
  *  Fixed PRI not handling unknown TON/NPI prefix letters correctly.
  *  Fixed some uninitialized string variables on FXS ports.
  
  configs/chan_dahdi.conf.sample
  *  Updated some documentation.
........


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.0@172434 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-01-29 21:35:18 +00:00
Tilghman Lesher
4b4f6c1497 Merged revisions 172315 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

........
  r172315 | tilghman | 2009-01-29 10:48:25 -0600 (Thu, 29 Jan 2009) | 2 lines
  
  Better document mode=multirow, based upon a conversation with Jared.
........


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.0@172316 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-01-29 16:49:27 +00:00
Leif Madsen
148390c562 Merged revisions 172271 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

........
  r172271 | lmadsen | 2009-01-29 08:47:27 -0500 (Thu, 29 Jan 2009) | 5 lines
  
  The realtime_pgsql.sql script is missing a couple of fields.
  closes issue #14339)
  Reported by: fiddur
  Patches:
        realtime_pgsql.sql.diff uploaded by fiddur (license 678)
........


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.0@172273 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-01-29 13:51:48 +00:00
Olle Johansson
3873563d82 Merged revisions 172173 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

................
r172173 | oej | 2009-01-29 10:18:01 +0100 (Tor, 29 Jan 2009) | 24 lines

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

........
r172169 | oej | 2009-01-29 09:48:18 +0100 (Tor, 29 Jan 2009) | 16 lines

Make sure that we always add the hangupcause headers. In some cases, the owner was disconnected before we checked for the cause.
This patch implements a temporary storage in the pvt and use that instead.

The code is based on ideas from code from Adomjan in issue #13385 (Add support for Reason: header)
Thanks to Klaus Darillion for testing!

(closes issue #14294)
related to issue #13385

Reported by: klaus3000 and adomjan
Patches: 
      bug14294b.diff uploaded by oej (license 306)
      Based on 20080829_chan_sip.c-q850reason_header.patch uploaded by adomjan (license 487)
Tested by: oej, klaus3000


........

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


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.0@172217 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-01-29 09:56:53 +00:00
Steve Murphy
491c4a9c68 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.0@172065 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-01-28 20:41:45 +00:00
Tilghman Lesher
86a664056f Merged revisions 171964 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

................
  r171964 | tilghman | 2009-01-28 11:27:40 -0600 (Wed, 28 Jan 2009) | 9 lines
  
  Merged revisions 171963 via svnmerge from 
  https://origsvn.digium.com/svn/asterisk/branches/1.4
  
  ........
    r171963 | tilghman | 2009-01-28 11:25:18 -0600 (Wed, 28 Jan 2009) | 2 lines
    
    Clarify log message (suggested by manxpower on #asterisk-dev)
  ........
................


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.0@171965 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-01-28 17:28:37 +00:00
Olle Johansson
d5948d6eda Merged revisions 171838 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

................
r171838 | oej | 2009-01-28 14:11:44 +0100 (Ons, 28 Jan 2009) | 10 lines

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

........
r171837 | oej | 2009-01-28 14:07:27 +0100 (Ons, 28 Jan 2009) | 2 lines

Add a better explanation of the difference between the device namespace and the dialplan for newbies.

........

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


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.0@171846 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-01-28 13:18:54 +00:00
David Vossel
2204a467be Blocked revisions 171757 via svnmerge
........
  r171757 | dvossel | 2009-01-27 16:43:36 -0600 (Tue, 27 Jan 2009) | 7 lines
  
  Adding AES_ENCRYPT and AES_DECRYPT dialplan functions.  
  
  (closes issue #14301)
  Reported by: amorsen
  
  review: http://reviewboard.digium.com/r/128/
........


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.0@171758 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-01-27 22:48:48 +00:00
Mark Michelson
ac8fa4c2c3 Merged revisions 171691 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

................
r171691 | mmichelson | 2009-01-27 15:58:39 -0600 (Tue, 27 Jan 2009) | 47 lines

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

........
r171689 | mmichelson | 2009-01-27 15:55:08 -0600 (Tue, 27 Jan 2009) | 39 lines

Fix devicestate problems for "always-on" agent channels

A revision to chan_agent attempted to "inherit" the device
state of the underlying channel in order to report the
device state of an agent channel more accurately.

The problem with the logic here is that it makes no sense to
use this for always-on agents. If the agent is logged in, then
to the underlying channel, the agent will always appear to be
"in use," no matter if the agent is on a call or not. The reason
is that to the underlying channel, the channel is currently in use
on a call to the AgentLogin application.

The most common cause that I found for this issue to occur was for
a SIP channel to be the underlying channel type for an Agent channel.
If the SIP phone re-registers, then the registration will cause the
device state core to query the device state of the SIP channel. Since the
SIP channel is in use, the Agent channel would also inherit this status.
Once the agent channel was set to "in use" there was no way that the device
state could change on that channel unless the agent logged out.

The solution for this problem is a bit different in 1.4 than it is in the
other branches. In 1.4, there will be a one-line fix to make sure that only
callback agents will inherit device state from their underlying channel type.
For the other branches of Asterisk, since callback support has been removed, there
is also no need for device state inheritance in chan_agent, so I will simply be
removing it from the code.

In addition, the 1.4 source is getting a new comment to help the next person who
edits chan_agent.c. I'm adding a comment that a agent_pvt's loginchan field may be
used to determine if the agent is a callback agent or not.

(closes issue #14173)
Reported by: nathan
Patches:
      14173.patch uploaded by putnopvut (license 60)
Tested by: nathan, aramirez


........

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


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.0@171692 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-01-27 22:00:44 +00:00
Mark Michelson
0a9595289a Merged revisions 171622 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

................
r171622 | mmichelson | 2009-01-27 14:11:30 -0600 (Tue, 27 Jan 2009) | 26 lines

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

........
r171621 | mmichelson | 2009-01-27 14:06:01 -0600 (Tue, 27 Jan 2009) | 18 lines

Prevent a crash from occurring when a jitter buffer interpolated frame is
removed from a slinfactory

slinfactory used the "samples" field of an ast_frame in order to determine
the amount of data contained within the frame. In certain cases, such as
jitter buffer interpolated frames, the frame would have a non-zero value for
"samples" but have NULL "data"

This caused a problem when a memcpy call in ast_slinfactory_read would attempt
to access invalid memory. The solution in use here is to never feed frames into
the slinfactory if they have NULL "data"

(closes issue #13116)
Reported by: aragon
Patches:
      13116.diff uploaded by putnopvut (license 60)


........

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


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.0@171623 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-01-27 20:13:17 +00:00
Mark Michelson
344dfe6f84 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.0@171619 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-01-27 19:38:27 +00:00