Commit Graph

3199 Commits

Author SHA1 Message Date
Jeff Peeler
c28a605bbd Add missing debug info for ao2_link for use with REF_DEBUG in ao2 callback.
(closes issue #18758)
Reported by: rgagnon
Patches: 
      branch-1.8-r306540-astobj-fix.diff uploaded by rgagnon (license 1202)
      trunk-r306540-astobj-fix.diff uploaded by rgagnon (license 1202)


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.8@307273 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2011-02-09 21:06:33 +00:00
Jeff Peeler
e07ccee87f Merged revisions 307227 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.6.2

........
  r307227 | jpeeler | 2011-02-09 13:52:12 -0600 (Wed, 09 Feb 2011) | 11 lines
  
  Make sure to set parking dial context for non-default parking lots.
  
  Since parking_con_dial isn't settable, set all parking lots to "park-dial".
  
  (closes issue #17946)
  Reported by: bluecrow76
  Patches:
        asterisk-1.8.0-beta4-multipark-fixes-2010SEP02.diff uploaded by bluecrow76 (license 270)
        modified by me
........


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.8@307228 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2011-02-09 19:52:51 +00:00
Tilghman Lesher
6be4e4d83c Initialize tracking variable in structure properly. Fixes a memory leak.
(Reported by The_Boy_Wonder on IRC, fixed by me.)


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.8@307142 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2011-02-09 05:39:39 +00:00
Jason Parker
5da9bab0bc Fix issue with verbose messages not showing on remote console.
This code was reworked recently, and since the logchannel list hadn't been
created yet at this point, and it was a verbose message, it was being dropped
on the floor.  Now it'll continue on to where it should be handled.

(closes issue #18580)
Reported by: pabelanger


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.8@307092 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2011-02-08 21:24:01 +00:00
Mark Michelson
c4b05dfaf0 Add a couple of useful channel variables for the CC recall macro.
CC_EXTEN and CC_CONTEXT will allow you to determine the channel
and context that will be called when the recall occurs.



git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.8@307065 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2011-02-08 21:13:08 +00:00
Terry Wilson
36f5dd0013 Merged revisions 306673 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.6.2

................
  r306673 | twilson | 2011-02-07 14:40:20 -0800 (Mon, 07 Feb 2011) | 17 lines
  
  Merged revisions 306672 via svnmerge from 
  https://origsvn.digium.com/svn/asterisk/branches/1.4
  
  ........
    r306672 | twilson | 2011-02-07 14:35:20 -0800 (Mon, 07 Feb 2011) | 10 lines
    
    Don't try to pickup a call in the middle of a masquerade
    
    If A calls B which doesn't answer and C & D both try to do a call pickup, it is
    possible for ast_pickup_call to answer the call, then fail to masquerade one of
    the calls because the other one is already in the process of masquerading. This
    patch checks to see if the channel is in the process of masquerading before
    call before selecting it for a pickup.
    
    Review: https://reviewboard.asterisk.org/r/1094/
  ........
................


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.8@306674 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2011-02-07 22:43:22 +00:00
Mark Michelson
aa1ce8bbb2 Rearrange a bit of code in the generic CC recall operation.
By waiting to call the callback macro after the CC_INTERFACES,
extension, priority, and context have been set, this information
can be accessed more easily within the callback macro.

Reported by Philippe Lindheimer.



git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.8@306575 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2011-02-07 17:36:56 +00:00
Jeff Peeler
3ff8273840 Merged revisions 306123 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.6.2

........
  r306123 | jpeeler | 2011-02-03 14:49:48 -0600 (Thu, 03 Feb 2011) | 10 lines
  
  Set exception on channel in parking thread when POLLPRI event detected.
  
  This is done just to make the code be equivalent to the old select code. As
  noted in 303106 the same issue was already fixed in this branch, but the
  exception was not set on the channel in the case of POLLPRI. The reason that
  this did not cause a problem here is because in 122923 the check in __ast_read
  to check the exception flag was removed.
  
  (related to #18637)
........


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.8@306124 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2011-02-03 20:50:48 +00:00
Richard Mudgett
a785544090 Merged revisions 305889 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.6.2

................
  r305889 | rmudgett | 2011-02-02 18:15:07 -0600 (Wed, 02 Feb 2011) | 17 lines
  
  Merged revisions 305888 via svnmerge from
  https://origsvn.digium.com/svn/asterisk/branches/1.4
  
  ........
    r305888 | rmudgett | 2011-02-02 18:02:43 -0600 (Wed, 02 Feb 2011) | 8 lines
  
    Minor AST_FRAME_TEXT related issues.
  
    * Include the null terminator in the buffer length.  When the frame is
    queued it is copied.  If the null terminator is not part of the frame
    buffer length, the receiver could see garbage appended onto it.
  
    * Add channel lock protection with ast_sendtext().
  
    * Fixed AMI SendText action ast_sendtext() return value check.
  ........
................


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.8@305923 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2011-02-03 00:24:40 +00:00
Andrew Latham
bb2cd0fc1a Replacing doc/* with wiki links
Adding links to http(s)://wiki.asterisk.org



git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.8@305798 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2011-02-02 18:56:42 +00:00
Jason Parker
1d498760ef Add alternative name for config option.
The SIP sample configuration had "tlscadir" as the option name, but chan_sip
used the more correct "tlscapath".  Now both are accepted.

Discovered (sort of) by a user on IRC in #asterisk


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.8@305247 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2011-01-31 22:25:23 +00:00
Andrew Latham
32b998a781 Asterisk HTTP response Content-type
Address content type for BSD and other platforms

(closes issue #18456)
Reported by: alexo
Patches:
     asterisk18_http.patch uploaded by alexo (license 1175)
Tested by: alexo


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.8@305083 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2011-01-31 13:56:05 +00:00
Tilghman Lesher
fd11f34692 Change mutex tracking so that it only consumes memory in the core mutex object when it's actually being used.
This reduces the overall size of a mutex which was 3016 bytes before this back
down to 216 bytes (this is on 64-bit Linux with a glibc-implemented mutex).
The exactness of the numbers here may vary slightly based upon how mutexes are
implemented on a platform, but the long and short of it is that prior to this
commit, chan_iax2 held down 98MB of memory on a 64-bit system for nothing more
than a table of 32767 locks.  After this commit, the same table occupies a mere
7MB of memory.

(closes issue #18194)
 Reported by: job
 Patches: 
       20110124__issue18194.diff.txt uploaded by tilghman (license 14)
 Tested by: tilghman
 
Review: https://reviewboard.asterisk.org/r/1066


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.8@304950 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2011-01-31 06:41:36 +00:00
Sean Bright
45e00ac1c5 Restore some conditionals that we lost in r277814.
There are some cases where ast_append_ha() is called with a NULL instead of a
valid int pointer.  So if we get a NULL, don't try to dereference it.

(closes issue #18162)
Reported by: imcdona
Patches:
      issue0018162.patch uploaded by pabelanger (license 224)
Tested by: enegaard


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.8@304638 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2011-01-28 20:19:08 +00:00
Richard Mudgett
de6f2397c4 Warning message if CALLCOMPLETION(cc_callback_macro or cc_agent_dialstring) are empty.
Test if the value pointer is not NULL instead of not ast_strlen_zero().


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.8@304554 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2011-01-27 19:08:14 +00:00
Jeff Peeler
81c72dfedc Merged revisions 304338 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.6.2

........
  r304338 | jpeeler | 2011-01-26 16:26:37 -0600 (Wed, 26 Jan 2011) | 2 lines
  
  Change delimiter used internally for GOTO_ON_BLINDXFR to commas to match 76703.
........


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.8@304339 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2011-01-26 22:27:30 +00:00
Mark Michelson
6a8f1a2f42 Merged revisions 304250 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.6.2

................
  r304250 | mmichelson | 2011-01-26 15:02:10 -0600 (Wed, 26 Jan 2011) | 9 lines
  
  Merged revisions 304242 via svnmerge from 
  https://origsvn.digium.com/svn/asterisk/branches/1.4
  
  ........
    r304242 | mmichelson | 2011-01-26 14:38:37 -0600 (Wed, 26 Jan 2011) | 3 lines
    
    Get rid of unused 'verbose' field in ast_udptl
  ........
................


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.8@304251 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2011-01-26 21:02:56 +00:00
Sean Bright
ef8451a3b2 Merged revisions 304096 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.6.2

........
  r304096 | seanbright | 2011-01-25 20:24:58 -0500 (Tue, 25 Jan 2011) | 12 lines
  
  Per the man page, setvbuf() must be called before any other operation on an open file.
  
  We use setvbuf() to associate a buffer with a stream, but we have already written
  to the open file.  This works (by chance) on Linux, but fails on other platforms,
  such as OpenSolaris.
  
  (closes issue #16610)
  Reported by: bklang
  Patches:
        setvbuf.patch uploaded by crjw (license 963)
  Tested by: bklang, asgaroth, efutch
........


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.8@304097 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2011-01-26 01:26:26 +00:00
Richard Mudgett
0c837cdf57 Merged revisions 304006 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.6.2

................
  r304006 | rmudgett | 2011-01-25 17:25:32 -0600 (Tue, 25 Jan 2011) | 15 lines
  
  Merged revisions 304005 via svnmerge from 
  https://origsvn.digium.com/svn/asterisk/branches/1.4
  
  ........
    r304005 | rmudgett | 2011-01-25 17:21:09 -0600 (Tue, 25 Jan 2011) | 8 lines
    
    DTMF attended transfers sometimes fail for no apparent reason.
    
    The loop in feature_request_and_dial() can exit when Party C has answered
    without processing an AST_CONTROL_ANSWER.  Also sometimes an
    AST_CONTROL_ANSWER never happens even though Party C has answered.
    
    Don't hangup Party C if he is up or we receive an AST_CONTROL_ANSWER.
  ........
................


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.8@304007 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2011-01-25 23:28:25 +00:00
Russell Bryant
cfc893a5bc Merged revisions 303548 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.6.2

................
  r303548 | russell | 2011-01-24 14:49:53 -0600 (Mon, 24 Jan 2011) | 38 lines
  
  Merged revisions 303546 via svnmerge from 
  https://origsvn.digium.com/svn/asterisk/branches/1.4
  
  ........
    r303546 | russell | 2011-01-24 14:32:21 -0600 (Mon, 24 Jan 2011) | 31 lines
    
    Fix channel redirect out of MeetMe() and other issues with channel softhangup.
    
    Mantis issue #18585 reports that a channel redirect out of MeetMe() stopped
    working properly.  This issue includes a patch that resolves the issue by
    removing a call to ast_check_hangup() from app_meetme.c.  I left that in my
    patch, as it doesn't need to be there.  However, the rest of the patch fixes
    this problem with or without the change to app_meetme.
    
    The key difference between what happens before and after this patch is the
    effect of the END_OF_Q control frame.  After END_OF_Q is hit in ast_read(),
    ast_read() will return NULL.  With the ast_check_hangup() removed, app_meetme
    sees this which causes it to exit as intended.  Checking ast_check_hangup()
    caused app_meetme to exit earlier in the process, and the target of the
    redirect saw the condition where ast_read() returned NULL.
    
    Removing ast_check_hangup() works around the issue in app_meetme, but doesn't
    solve the issue if another application did the same thing.  There are also
    other edge cases where if an application finishes at the same time that a
    redirect happens, the target of the redirect will think that the channel hung
    up.  So, I made some changes in pbx.c to resolve it at a deeper level.  There
    are already places that unset the SOFTHANGUP_ASYNCGOTO flag in an attempt to
    abort the hangup process.  My patch extends this to remove the END_OF_Q frame
    from the channel's read queue, making the "abort hangup" more complete.  This
    same technique was used in every place where a softhangup flag was cleared.
    
    (closes issue #18585)
    Reported by: oej
    Tested by: oej, wedhorn, russell
    
    Review: https://reviewboard.asterisk.org/r/1082/
  ........
................


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.8@303549 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2011-01-24 20:51:37 +00:00
Richard Mudgett
8719d034ed Merged revision 303098 from
https://origsvn.digium.com/svn/asterisk/be/branches/C.3-bier

..........
  r303098 | rmudgett | 2011-01-20 12:11:45 -0600 (Thu, 20 Jan 2011) | 15 lines

  CC_INTERFACES does not get built correctly with local channels.

  If local channels are used with CCSS, CC_INTERFACES gets garbage prepended
  to it so the CC recall fails.  Also CC_INTERFACES gets "&(null)" appended
  to it.

  * Initialize the buffer to eliminate the prepended garbage.

  * Filter out the empty interface strings to eliminate the latter.

  * Added a diagnostic message if the CC_INTERFACES is ever empty.

  JIRA ABE-2740
  JIRA SWP-2848
..........


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.8@303153 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2011-01-20 20:31:20 +00:00
Shaun Ruffell
98b01f964f Merged revisions 303106 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.6.2

........
  r303106 | sruffell | 2011-01-20 13:56:34 -0600 (Thu, 20 Jan 2011) | 15 lines
  
  main/features: Use POLLPRI when waiting for events on parked channels.
  
  This change resolves a regression in the 1.6.2 when converting from
  select to poll.  The DAHDI timers use POLLPRI to indicate that the timer
  fired, but features was not waiting for that flag.  The result was no
  audio for MOH when a call was parked and res_timing_dahdi was in use.
  
  This patch is slightly modified from the one on the mantis issue.  It does
  not set an exception on the channel if the POLLPRI flag is set.
  
  (closes issue #18262)
  Reported by: francesco_r
  Patches:
        patch_park_moh-trunk-2.txt uploaded by cjacobsen (license 1029)
        Tested by: francesco_r, rfrantik, one47
........


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.8@303107 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2011-01-20 19:57:31 +00:00
Russell Bryant
5537ae9930 Only check container count if it exists.
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.8@302837 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2011-01-19 23:56:48 +00:00
Russell Bryant
a13d703fe3 Merged revisions 302788 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.6.2

........
  r302788 | russell | 2011-01-19 17:06:14 -0600 (Wed, 19 Jan 2011) | 4 lines
  
  Turn a noisy verbose message into a debug message.
  
  This can drown your console if you're using the AMI over HTTP.
........


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.8@302789 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2011-01-19 23:06:46 +00:00
Russell Bryant
5001983a56 Resolve a memory leak with the manager interface is disabled.
The intent of this check as it stands in previous versions of Asterisk was to
check if there are any active sessions.  If there were no sessions, then the
function would return immediately and not bother with queueing up the manager
event to be processed.  Since the conversion of storing sessions in an astobj2
container, this check will always pass.  I changed it to go back to checking
what was intended.

The side effect of this was that if the AMI is disabled, the manager event
queue is populated anyway, but the code that runs to clear out the queue
never runs.  A producer with no consumer is a bad thing.

Reported internally by kmorgan.


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.8@302785 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2011-01-19 22:35:15 +00:00
Richard Mudgett
d1abc2fcb3 Merged revisions 302693 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.6.2

................
  r302693 | rmudgett | 2011-01-19 15:25:41 -0600 (Wed, 19 Jan 2011) | 22 lines
  
  Merged revisions 302671 via svnmerge from 
  https://origsvn.digium.com/svn/asterisk/branches/1.4
  
  ........
    r302671 | rmudgett | 2011-01-19 15:21:56 -0600 (Wed, 19 Jan 2011) | 15 lines
    
    DTMF transfer plays the wrong sounds for wrong number or other call failure.
    
    * Set the default for features.conf.sample xferfailsound option to "beeperr"
    as documented instead of "pbx-invalid" and corrected the use of it in DTMF
    blind transfer (#1).
    
    * Improved DTMF blind transfer handling of wrong numbers.
    
    Most of the concerns in this issue were taken care of by the patch for
    issue 17999: Issues with DTMF triggered attended transfers.
    
    (closes issue #18379)
    Reported by: gincantalupo
    Tested by: rmudgett
  ........
................


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.8@302713 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2011-01-19 21:29:22 +00:00
Tilghman Lesher
ea422a4d96 Merged revisions 302599 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.6.2

........
  r302599 | tilghman | 2011-01-19 14:13:24 -0600 (Wed, 19 Jan 2011) | 15 lines
  
  Kill zombies.
  
  When we ast_safe_fork() with a non-zero argument, we're expected to reap our
  own zombies.  On a zero argument, however, the zombies are only reaped when
  there aren't any non-zero forked children alive.  At other times, we
  accumulate zombies.  This code is forward ported from res_agi in 1.4, so that
  forked children are always reaped, thus preventing an accumulation of zombie
  processes.
  
  (closes issue #18515)
  Reported by: ernied
  Patches: 
        20101221__issue18515.diff.txt uploaded by tilghman (license 14)
  Tested by: ernied
........


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.8@302634 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2011-01-19 20:24:57 +00:00
Sean Bright
dd98f858d7 Merged revisions 302554 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.6.2

........
  r302554 | seanbright | 2011-01-19 14:02:29 -0500 (Wed, 19 Jan 2011) | 7 lines
  
  Don't call strlen() when we only need to look at the next character or two.
  
  (closes issue #18042)
  Reported by: wdoekes
  Patches:
        astsvn-inefficient-ast-uri-decode.patch uploaded by wdoekes (license 717)
........


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.8@302555 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2011-01-19 19:03:32 +00:00
Sean Bright
4b5115b170 Merged revisions 302551 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.6.2

........
  r302551 | seanbright | 2011-01-19 13:54:03 -0500 (Wed, 19 Jan 2011) | 7 lines
  
  Remove an extraneous \r\n at the end of a parking manager events.
  
  (closes issue #18363)
  Reported by: clegall_proformatique
  Patches:
        asterisk_1.8_295998_parking_manager_events_format.patch uploaded by clegall proformatique (license 1139)
........


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.8@302552 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2011-01-19 18:54:47 +00:00
Sean Bright
01e8f4ef1b Merged revisions 302504 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.6.2

........
  r302504 | seanbright | 2011-01-19 12:56:32 -0500 (Wed, 19 Jan 2011) | 7 lines
  
  Make sure that h_length is set when we short-circuit out of ast_gethostbyname.
  
  (closes issue #16135)
  Reported by: thedavidfactor
  Patches:
        utils.patch uploaded by thedavidfactor (license 903)
........


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.8@302505 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2011-01-19 17:58:11 +00:00
Richard Mudgett
42a17e5de0 Use the expanded format type instead of plain int.
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.8@302318 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2011-01-18 22:04:14 +00:00
Russell Bryant
3173d54bd0 Don't enable AO2_DEBUG by default if AST_DEVMODE is on.
AO2_DEBUG is not important and is causing a false compiler warning to be
generated on my Ubuntu Natty dev box.


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.8@302267 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2011-01-18 20:19:57 +00:00
Jeff Peeler
8e1e37c43e Merged revisions 302265 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.6.2

........
  r302265 | jpeeler | 2011-01-18 14:13:52 -0600 (Tue, 18 Jan 2011) | 27 lines
  
  Convert device state callbacks to ao2 objects to fix a deadlock in chan_sip.
  
  Lock scenario presented here:
  Thread 1
   holds ast_rdlock_contexts &conlock
   holds handle_statechange hints
   holds handle_statechange hint
    waiting for cb_extensionstate
     Locked Here: chan_sip.c line 7428 (find_call)
  Thread 2
   holds handle_request_do &netlock
   holds find_call sip_pvt_ptr
    waiting for ast_rdlock_contexts &conlock
     Locked Here: pbx.c line 9911 (ast_rdlock_contexts)
  
  Chan_sip has an established locking order of locking the sip_pvt and then
  getting the context lock. So the as stated by the summary, the operations in
  thread 2 have been modified to no longer require the context lock.
  
  (closes issue #18310)
  Reported by: one47
  Patches: 
        statecbs_ao2.mk2.patch uploaded by one47 (license 23),
        modified by me
  
  Review: https://reviewboard.asterisk.org/r/1072/
........


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.8@302266 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2011-01-18 20:19:57 +00:00
Richard Mudgett
d900b5dbc5 Merged revisions 302173 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.6.2

................
  r302173 | rmudgett | 2011-01-18 12:07:15 -0600 (Tue, 18 Jan 2011) | 95 lines
  
  Merged revisions 302172 via svnmerge from 
  https://origsvn.digium.com/svn/asterisk/branches/1.4
  
  ........
    r302172 | rmudgett | 2011-01-18 12:04:36 -0600 (Tue, 18 Jan 2011) | 88 lines
    
    Issues with DTMF triggered attended transfers.
    
    Issue #17999
    1) A calls B. B answers.
    2) B using DTMF dial *2 (code in features.conf for attended transfer).
    3) A hears MOH. B dial number C
    4) C ringing. A hears MOH.
    5) B hangup. A still hears MOH. C ringing.
    6) A hangup. C still ringing until "atxfernoanswertimeout" expires.
    For v1.4 C will ring forever until C answers the dead line. (Issue #17096)
    
    Problem: When A and B hangup, C is still ringing.
    
    Issue #18395
    SIP call limit of B is 1
    1. A call B, B answered
    2. B *2(atxfer) call C
    3. B hangup, C ringing
    4. Timeout waiting for C to answer
    5. Recall to B fails because B has reached its call limit.
    
    Because B reached its call limit, it cannot do anything until the transfer
    it started completes.
    
    Issue #17273
    Same scenario as issue 18395 but party B is an FXS port.  Party B cannot
    do anything until the transfer it started completes.  If B goes back off
    hook before C answers, B hears ringback instead of the expected dialtone.
    
    **********
    Note for the issue #17273 and #18395 fix:
    
    DTMF attended transfer works within the channel bridge.  Unfortunately,
    when either party A or B in the channel bridge hangs up, that channel is
    not completely hung up until the transfer completes.  This is a real
    problem depending upon the channel technology involved.
    
    For chan_dahdi, the channel is crippled until the hangup is complete.
    Either the channel is not useable (analog) or the protocol disconnect
    messages are held up (PRI/BRI/SS7) and the media is not released.
    
    For chan_sip, a call limit of one is going to block that endpoint from any
    further calls until the hangup is complete.
    
    For party A this is a minor problem.  The party A channel will only be in
    this condition while party B is dialing and when party B and C are
    conferring.  The conversation between party B and C is expected to be a
    short one.  Party B is either asking a question of party C or announcing
    party A.  Also party A does not have much incentive to hangup at this
    point.
    
    For party B this can be a major problem during a blonde transfer.  (A
    blonde transfer is our term for an attended transfer that is converted
    into a blind transfer.  :)) Party B could be the operator.  When party B
    hangs up, he assumes that he is out of the original call entirely.  The
    party B channel will be in this condition while party C is ringing, while
    attempting to recall party B, and while waiting between call attempts.
    
    WARNING:
    The ATXFER_NULL_TECH conditional is a hack to fix the problem.  It will
    replace the party B channel technology with a NULL channel driver to
    complete hanging up the party B channel technology.  The consequences of
    this code is that the 'h' extension will not be able to access any channel
    technology specific information like SIP statistics for the call.
    
    ATXFER_NULL_TECH is not defined by default.
    **********
    
    (closes issue #17999)
    Reported by: iskatel
    Tested by: rmudgett
    JIRA SWP-2246
    
    (closes issue #17096)
    Reported by: gelo
    Tested by: rmudgett
    JIRA SWP-1192
    
    (closes issue #18395)
    Reported by: shihchuan
    Tested by: rmudgett
    
    (closes issue #17273)
    Reported by: grecco
    Tested by: rmudgett
    
    Review: https://reviewboard.asterisk.org/r/1047/
  ........
................


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.8@302174 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2011-01-18 18:11:43 +00:00
Matthew Nicholson
523aed7d2f Merged revisions 301594 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.6.2

................
  r301594 | mnicholson | 2011-01-12 12:50:31 -0600 (Wed, 12 Jan 2011) | 15 lines
  
  Removed a usleep(1) that shouldn't be necessary in session_do, and removed the
  ms_t member from the mansession_session structure.
  
  Merged revisions 301591 via svnmerge from 
  https://origsvn.digium.com/svn/asterisk/branches/1.4
  
  ........
    r301591 | mnicholson | 2011-01-12 12:39:03 -0600 (Wed, 12 Jan 2011) | 5 lines
    
    Don't store the thread id for the manager session in the structure we pass to
    the thread for the manager session.
    
    ABE-2543
  ........
................


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.8@301595 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2011-01-12 18:51:37 +00:00
Jeff Peeler
743048953d Merged revisions 301503 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.6.2

................
  r301503 | jpeeler | 2011-01-12 12:11:49 -0600 (Wed, 12 Jan 2011) | 19 lines
  
  Merged revisions 301502 via svnmerge from 
  https://origsvn.digium.com/svn/asterisk/branches/1.4
  
  ........
    r301502 | jpeeler | 2011-01-12 12:10:42 -0600 (Wed, 12 Jan 2011) | 12 lines
    
    Fix CPU spike when pressing DTMF after agent login.
    
    The problem here is that DTMF was being continuously deferred and requeued
    since ast_safe_sleep is called in a loop. There are serveral other places in the
    code that sleeps and then loops in a similar fashion. Because of this fact I
    opted to not defer DTMF any more, which will not affect the original fix:
    
    https://reviewboard.asterisk.org/r/674
    
    (closes issue #18130)
    Reported by: rgj
  ........
................


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.8@301504 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2011-01-12 18:12:08 +00:00
David Vossel
a0bfbc836c Removal of unused variables so Asterisk will compile.
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.8@301446 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2011-01-12 16:05:12 +00:00
Tilghman Lesher
b98153bf45 Call execl() directly for a better solution for paths with spaces.
(closes issue #18600)
Reported by: ebroad
Patches: 
      20110111__issue18600__2.diff.txt uploaded by tilghman (license 14)


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.8@301402 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2011-01-12 00:26:39 +00:00
Matthew Nicholson
dc4e49bc2b Merged revisions 301307 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.6.2

................
  r301307 | mnicholson | 2011-01-11 12:42:05 -0600 (Tue, 11 Jan 2011) | 11 lines
  
  Merged revisions 301305 via svnmerge from 
  https://origsvn.digium.com/svn/asterisk/branches/1.4
  
  ........
    r301305 | mnicholson | 2011-01-11 12:34:40 -0600 (Tue, 11 Jan 2011) | 4 lines
    
    Prevent buffer overflows in ast_uri_encode()
    
    ABE-2705
  ........
................


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.8@301308 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2011-01-11 18:51:40 +00:00
Tilghman Lesher
4399cbef3f Little endian machines were not converted properly.
(closes issue #18583)
Reported by: jcovert
Patches: 
      20110110__issue18583.diff.txt uploaded by tilghman (license 14)
Tested by: jcovert


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.8@301263 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2011-01-10 22:39:31 +00:00
Leif Madsen
d5036e449b Merged revisions 300520 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.6.2

........
  r300520 | lmadsen | 2011-01-04 15:52:41 -0600 (Tue, 04 Jan 2011) | 9 lines
  
  Fix backwards and broken XML documentation.
  
  (closes issue #18547)
  Reported by: jcovert
  Patches: 
        xmldoc.c.patch uploaded by jcovert (license 551)
        chan_iax2.c.doc.patch uploaded by jcovert (license 551)
        chan_sip.c.patch uploaded by jcovert (license 551)
        chan_agent.c.patch uploaded by jcovert (license 551)
........


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.8@300521 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2011-01-04 21:53:27 +00:00
Richard Mudgett
6e32efa8c2 Merged revisions 300165 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.6.2

........
  r300165 | rmudgett | 2011-01-03 17:02:13 -0600 (Mon, 03 Jan 2011) | 4 lines
  
  Use correct variable for atxfercallbackretries config option.
  
  * Misc formatting changes.
........


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.8@300166 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2011-01-03 23:14:55 +00:00
Tilghman Lesher
d514f9c3a8 Quote arguments, just in case there's a space in a pathname.
(Diagnosed by pabelanger on #asterisk-dev, fixed by me.)


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.8@299989 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-12-29 22:02:59 +00:00
Leif Madsen
88b1f72afe Merged revisions 299087 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.6.2

........
  r299087 | lmadsen | 2010-12-20 10:18:03 -0600 (Mon, 20 Dec 2010) | 5 lines
  
  Note that Park() timeout is milliseconds.
  
  (closes issue #15758)
  Reported by: mmurdock
  Tested by: mmurdock, seanbright
........


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.8@299088 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-12-20 16:18:26 +00:00
Tzafrir Cohen
8a73e54701 Typos: recieved => received
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.8@299004 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-12-20 09:14:29 +00:00
Tilghman Lesher
c8f2f6961b Merged revisions 298962 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.6.2

........
  r298962 | tilghman | 2010-12-17 18:08:57 -0600 (Fri, 17 Dec 2010) | 2 lines
  
  Remove backtrace used for testing merge process
........


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.8@298963 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-12-18 00:09:49 +00:00
Tilghman Lesher
d70a3b0856 Merged revisions 298957 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.6.2

................
  r298957 | tilghman | 2010-12-17 17:30:55 -0600 (Fri, 17 Dec 2010) | 13 lines
  
  Merged revisions 298905 via svnmerge from 
  https://origsvn.digium.com/svn/asterisk/branches/1.4
  
  ........
    r298905 | tilghman | 2010-12-17 15:40:56 -0600 (Fri, 17 Dec 2010) | 6 lines
    
    Let Asterisk find better backtrace information with libbfd.
    
    The menuselect option BETTER_BACKTRACES, if enabled, will use libbfd to search
    for better symbol information within both the Asterisk binary, as well as
    loaded modules, to assist when using inline backtraces to track down problems.
  ........
................


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.8@298960 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-12-17 23:52:04 +00:00
Tilghman Lesher
5c50b497f5 Merged revisions 298050 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.6.2

........
  r298050 | tilghman | 2010-12-10 10:24:13 -0600 (Fri, 10 Dec 2010) | 11 lines
  
  Portability issue on OpenSolaris.
  
  Also detect the required structure element, because OpenSolaris defines
  SIOCGIFHWADDR, but without support for IP sockets.
  
  (closes issue #18442)
   Reported by: ranjtech
   Patches: 
         20101209__issue18442.diff.txt uploaded by tilghman (license 14)
   Tested by: ranjtech
........


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.8@298051 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-12-10 16:26:46 +00:00
Terry Wilson
b42d70951b Don't crash after Set(CDR(userfield)=...) in ast_bridge_call
Instead of setting peer->cdr = NULL, set it to not post.

(closes issue #18415)
Reported by: macbrody
Patches: 
      patch-18415 uploaded by jsolares (license 1167)
Tested by: jsolares, twilson


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.8@297952 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-12-09 20:48:44 +00:00
Jeff Peeler
2a7d090ba1 Merged revisions 297824 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.6.2

................
  r297824 | jpeeler | 2010-12-07 16:58:54 -0600 (Tue, 07 Dec 2010) | 19 lines
  
  Merged revisions 297823 via svnmerge from 
  https://origsvn.digium.com/svn/asterisk/branches/1.4
  
  ........
    r297823 | jpeeler | 2010-12-07 16:57:48 -0600 (Tue, 07 Dec 2010) | 12 lines
    
    Revert code that changed SSRC for DTMF.
    
    Some previous behavior was attempted to be restored, but mistakingly I did
    not realize that the previous behavior was incorrect. This fixes DTMF not
    being detected since DTMF shouldn't cause the SSRC to change.
    
    (related to issue #17404)
    (closes issue #18189)
    (closes issue #18352)
    Reported by: marcbou
    Tested by: cmbaker82
  ........
................


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.8@297825 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-12-07 22:59:30 +00:00