[asterisk-commits] may: branch may/ooh323_ipv6_direct_rtp r321507 - in /team/may/ooh323_ipv6_dir...

SVN commits to the Asterisk project asterisk-commits at lists.digium.com
Sat May 28 04:23:19 CDT 2011


Author: may
Date: Sat May 28 04:23:02 2011
New Revision: 321507

URL: http://svnview.digium.com/svn/asterisk?view=rev&rev=321507
Log:
Merged revisions 320013,320040,320058,320060,320178,320181,320238,320340,320446,320505,320561,320579,320606,320651,320717,320772,320820,320825,320884,320946,321003,321043,321045,321101 via svnmerge from 
https://origsvn.digium.com/svn/asterisk/trunk

................
  r320013 | rmudgett | 2011-05-20 20:20:25 +0400 (Fri, 20 May 2011) | 9 lines
  
  Merged revisions 320007 via svnmerge from 
  https://origsvn.digium.com/svn/asterisk/branches/1.8
  
  ........
    r320007 | rmudgett | 2011-05-20 11:19:01 -0500 (Fri, 20 May 2011) | 2 lines
    
    Change some variable names to make pickup code easier to understand.
  ........
................
  r320040 | jrose | 2011-05-20 20:27:12 +0400 (Fri, 20 May 2011) | 10 lines
  
  Adds STRREPLACE function
  
  Adds a new STRREPLACe function to func_strings.c that allows users to search and replace
  against a variable in the dialplan.
  
  (closes issue #18023)
  Reported by: wdoekes
  
  Review: https://reviewboard.asterisk.org/r/1219/ 
................
  r320058 | rmudgett | 2011-05-20 20:46:02 +0400 (Fri, 20 May 2011) | 26 lines
  
  Merged revisions 320057 via svnmerge from 
  https://origsvn.digium.com/svn/asterisk/branches/1.8
  
  ........
    r320057 | rmudgett | 2011-05-20 11:43:02 -0500 (Fri, 20 May 2011) | 19 lines
    
    Crash while transferring a call during DTMF feature timeout.
    
    When a call is being attended transferred during the time between
    AST_FRAME_DTMF_BEGIN and AST_FRAME_DTMF_END, the transferred channel
    becomes a zombie (so tech data is not available), making ast_dtmf_stream()
    segfault when it tries to send the DTMF digit (at least with SIP
    channels).
    
    Patch based on feature-end-zombie.patch uploaded by Irontec (license 1256)
    
    * Check for zombies when ast_channel_bridge() returns.
    
    * Guarantee that the fo parameter value is initialized in
    ast_channel_bridge() before any returns.
    
    (closes issue #19116)
    Reported by: Irontec
    Tested by: rmudgett
  ........
................
  r320060 | rmudgett | 2011-05-20 21:04:53 +0400 (Fri, 20 May 2011) | 9 lines
  
  Merged revisions 320059 via svnmerge from 
  https://origsvn.digium.com/svn/asterisk/branches/1.8
  
  ........
    r320059 | rmudgett | 2011-05-20 12:03:49 -0500 (Fri, 20 May 2011) | 1 line
    
    Misc comment cleanup in features.c.
  ........
................
  r320178 | jrose | 2011-05-20 22:29:59 +0400 (Fri, 20 May 2011) | 22 lines
  
  Merged revisions 320162 via svnmerge from 
  https://origsvn.digium.com/svn/asterisk/branches/1.8
  
  ........
    r320162 | jrose | 2011-05-20 13:12:21 -0500 (Fri, 20 May 2011) | 15 lines
    
    Fixes an imapfolder related crash
    
    imapfolders being set in the general section of voicemail would cause the inbox folder name to
    change.  Since sound file names are made based on the names of the folders, this would cause
    the audio related to that folder name to change and if Asterisk attempted to play it, the
    channel would instantly hang up when the audio file couldn't be found.  This patch searches for
    the name of the folder first to leave existing behavior in tact and if that fails, it uses
    the normal inbox name to get the sound file instead.
    
    
    (closes issue #16104)
    Reported by: blkline
    
    Review: https://reviewboard.asterisk.org/r/1215/
  ........
................
  r320181 | mnicholson | 2011-05-20 22:49:48 +0400 (Fri, 20 May 2011) | 23 lines
  
  Merged revisions 320180 via svnmerge from 
  https://origsvn.digium.com/svn/asterisk/branches/1.8
  
  ........
    r320180 | mnicholson | 2011-05-20 13:48:46 -0500 (Fri, 20 May 2011) | 16 lines
    
    This commit modifies the way polling is done on TLS sockets.
    
    Because of the buffering the TLS layer does, polling is unreliable. If poll is
    called while there is data waiting to be read in the TLS layer but not at the
    network layer, the messaging processing engine will not proceed until something
    else writes data to the socket, which may not occur. This change modifies the
    logic around TLS sockets to only poll after a failed read on a non-blocking
    socket. This way we know that there is no data waiting to be read from the
    buffering layer.
    
    (closes issue #19182)
    Reported by: st
    Patches:
          ssl-poll-fix3.diff uploaded by mnicholson (license 96)
    Tested by: mnicholson
  ........
................
  r320238 | rmudgett | 2011-05-21 00:53:30 +0400 (Sat, 21 May 2011) | 34 lines
  
  Merged revisions 320237 via svnmerge from 
  https://origsvn.digium.com/svn/asterisk/branches/1.8
  
  ................
    r320237 | rmudgett | 2011-05-20 15:49:03 -0500 (Fri, 20 May 2011) | 27 lines
    
    Merged revisions 320236 via svnmerge from 
    https://origsvn.digium.com/svn/asterisk/branches/1.6.2
    
    ................
      r320236 | rmudgett | 2011-05-20 15:44:54 -0500 (Fri, 20 May 2011) | 20 lines
      
      Merged revisions 320235 via svnmerge from 
      https://origsvn.digium.com/svn/asterisk/branches/1.4
      
      ........
        r320235 | rmudgett | 2011-05-20 15:38:22 -0500 (Fri, 20 May 2011) | 13 lines
        
        The meetme CLI command completion leaves conferences mutex locked.
        
        When issuing a meetme kick CLI command and an invalid (non-existent)
        conference number is specified, pressing Tab leaves the conferences mutex
        locked and, therefore, all conferences deadlock.
        
        Add missing unlock.
        
        (closes issue #19336)
        Reported by: zvision
        Patches:
              app_meetme.diff uploaded by zvision (license 798)
      ........
    ................
  ................
................
  r320340 | dvossel | 2011-05-21 01:40:19 +0400 (Sat, 21 May 2011) | 21 lines
  
  Merged revisions 320338 via svnmerge from 
  https://origsvn.digium.com/svn/asterisk/branches/1.8
  
  ................
    r320338 | dvossel | 2011-05-20 16:39:36 -0500 (Fri, 20 May 2011) | 14 lines
    
    Merged revisions 320271 via svnmerge from 
    https://origsvn.digium.com/svn/asterisk/branches/1.6.2
    
    ........
      r320271 | dvossel | 2011-05-20 16:24:48 -0500 (Fri, 20 May 2011) | 8 lines
      
      Fixes issue with ast_tcptls_server_start failing on second attempt to bind.
      
      (closes issue #19289)
      Reported by: wdoekes
      Patches: 
            issue19289_delay_old_address_setting_tcptls.patch uploaded by wdoekes (license 717)
    ........
  ................
................
  r320446 | tilghman | 2011-05-23 03:36:02 +0400 (Mon, 23 May 2011) | 22 lines
  
  Merged revisions 320445 via svnmerge from 
  https://origsvn.digium.com/svn/asterisk/branches/1.8
  
  ................
    r320445 | tilghman | 2011-05-22 18:34:57 -0500 (Sun, 22 May 2011) | 15 lines
    
    Merged revisions 320444 via svnmerge from 
    https://origsvn.digium.com/svn/asterisk/branches/1.6.2
    
    ........
      r320444 | tilghman | 2011-05-22 18:25:51 -0500 (Sun, 22 May 2011) | 8 lines
      
      Don't crash when the connection fails.
      
      (closes issue #19250)
       Reported by: seadweller
       Patches: 
             20110514__issue19250.diff.txt uploaded by tilghman (license 14)
       Tested by: seadweller, sum
    ........
  ................
................
  r320505 | jrose | 2011-05-23 18:40:59 +0400 (Mon, 23 May 2011) | 17 lines
  
  Merged revisions 320504 via svnmerge from 
  https://origsvn.digium.com/svn/asterisk/branches/1.8
  
  ........
    r320504 | jrose | 2011-05-23 09:33:20 -0500 (Mon, 23 May 2011) | 10 lines
    
    Fixes segfault occuring in chan_sip.c at __set_address_from_contact
    
    Checks to see if domain contains anything before sending it off to ast_sockaddr_resolve
    which is where the segfault was occuring due to null str.
    
    (closes issue #18857)
    Reported by: sybasesql
    
    Review: https://reviewboard.asterisk.org/r/1225/
  ........
................
  r320561 | kpfleming | 2011-05-23 19:48:37 +0400 (Mon, 23 May 2011) | 10 lines
  
  Merged revisions 320560 via svnmerge from 
  https://origsvn.digium.com/svn/asterisk/branches/1.8
  
  ........
    r320560 | kpfleming | 2011-05-23 10:47:14 -0500 (Mon, 23 May 2011) | 4 lines
    
    Don't generate spurious "No: command not found" messages when running the
    configure script on a system that has neither gmime-config nor pkg-config.
  ........
................
  r320579 | tilghman | 2011-05-23 20:20:59 +0400 (Mon, 23 May 2011) | 14 lines
  
  Merged revisions 320573 via svnmerge from 
  https://origsvn.digium.com/svn/asterisk/branches/1.8
  
  ........
    r320573 | tilghman | 2011-05-23 11:19:32 -0500 (Mon, 23 May 2011) | 7 lines
    
    GNU libiconv uses symbol "libiconv_open" instead of "iconv_open".
    
    (closes issue #19344)
     Reported by: rohanl
     Patches: 
           iconv-check.patch uploaded by rohanl (license 1284)
  ........
................
  r320606 | dvossel | 2011-05-23 20:28:14 +0400 (Mon, 23 May 2011) | 21 lines
  
  Merged revisions 320568 via svnmerge from 
  https://origsvn.digium.com/svn/asterisk/branches/1.8
  
  ................
    r320568 | dvossel | 2011-05-23 11:18:33 -0500 (Mon, 23 May 2011) | 14 lines
    
    Merged revisions 320562 via svnmerge from 
    https://origsvn.digium.com/svn/asterisk/branches/1.6.2
    
    ........
      r320562 | dvossel | 2011-05-23 11:15:18 -0500 (Mon, 23 May 2011) | 9 lines
      
      Adds missing part to the ast_tcptls_server_start fails second attempt to bind patch.
      
      (closes issue #19289)
      Reported by: wdoekes
      Patches: 
            issue19289_delay_old_address_setting_tcptls_2.patch uploaded by wdoekes (license 717)
    ........
  ................
................
  r320651 | rmudgett | 2011-05-23 22:00:02 +0400 (Mon, 23 May 2011) | 23 lines
  
  Merged revisions 320650 via svnmerge from 
  https://origsvn.digium.com/svn/asterisk/branches/1.8
  
  ........
    r320650 | rmudgett | 2011-05-23 12:53:44 -0500 (Mon, 23 May 2011) | 16 lines
    
    Add ConnectedLineNum/Name headers to output of AMI action Status.
    
    * Add ConnectedLineNum and ConnectedLineName headers to the output of the
    AMI action Status.  This makes it easier to find out who the channel is
    connected to without having to lookup BridgedChannel or when they are
    connected to an application (e.g.: VoiceMail) which has no bridged
    channel.
    
    * Bridged channels with no CallerID had "" instead of "<unknown>" output,
    that might be a bug as "<unknown>" was what older versions used.
    
    (closes issue #18158)
    Reported by: gareth
    Patches:
          svn-292308.diff uploaded by gareth (license 208)
  ........
................
  r320717 | twilson | 2011-05-25 04:52:21 +0400 (Wed, 25 May 2011) | 11 lines
  
  Merged revisions 320716 via svnmerge from 
  https://origsvn.digium.com/svn/asterisk/branches/1.8
  
  ........
    r320716 | twilson | 2011-05-24 17:49:10 -0700 (Tue, 24 May 2011) | 4 lines
    
    Cast data as char * before using S_OR
    
    This is required for compiling successfully under dev mode
  ........
................
  r320772 | irroot | 2011-05-25 19:43:28 +0400 (Wed, 25 May 2011) | 10 lines
  
    CHANNEL(pickupgroup)
  
    Allow Setting / Reading the pickupgroup of a channel with func_channel.c
    
    (closes issue #19045)
    Reported by: irroot
    
    Review: https://reviewboard.asterisk.org/r/1148/
................
  r320820 | rmudgett | 2011-05-25 20:50:38 +0400 (Wed, 25 May 2011) | 24 lines
  
  Merged revisions 320796 via svnmerge from 
  https://origsvn.digium.com/svn/asterisk/branches/1.8
  
  ........
    r320796 | rmudgett | 2011-05-25 11:23:11 -0500 (Wed, 25 May 2011) | 17 lines
    
    Give zombies a safe channel driver to use.
    
    Recent crashes from zombie channels suggests that they need a safe home to
    goto.  When a masquerade happens, the physical part of the zombie channel
    is hungup.  The hangup normally sets the channel private pointer to NULL.
    If someone then blindly does a callback to the channel driver, a crash is
    likely because the private pointer is NULL.
    
    The masquerade now sets the channel technology of zombie channels to the
    kill channel driver.
    
    Related to the following issues:
    (issue #19116)
    (issue #19310)
    
    Review: https://reviewboard.asterisk.org/r/1224/
  ........
................
  r320825 | rmudgett | 2011-05-25 21:14:11 +0400 (Wed, 25 May 2011) | 25 lines
  
  Merged revisions 320823 via svnmerge from 
  https://origsvn.digium.com/svn/asterisk/branches/1.8
  
  ........
    r320823 | rmudgett | 2011-05-25 12:06:38 -0500 (Wed, 25 May 2011) | 18 lines
    
    The AMI Newstate event contains different information between v1.4 and v1.8.
    
    The addition of connected line support in v1.8 changes the behavior of the
    channel caller ID somewhat.  The channel caller ID value no longer time
    shares with the connected line ID on outgoing call legs.  The timing of
    some AMI events/responses output the connected line ID as caller ID.
    These party ID's are now separate.
    
    * The ConnectedLineNum and ConnectedLineName headers were added to many
    AMI events/responses if the CallerIDNum/CallerIDName headers were also
    present.
    
    (closes issue #18252)
    Reported by: gje
    Tested by: rmudgett
    
    Review: https://reviewboard.asterisk.org/r/1227/
  ........
................
  r320884 | rmudgett | 2011-05-26 02:28:01 +0400 (Thu, 26 May 2011) | 24 lines
  
  Merged revisions 320883 via svnmerge from 
  https://origsvn.digium.com/svn/asterisk/branches/1.8
  
  ........
    r320883 | rmudgett | 2011-05-25 17:25:18 -0500 (Wed, 25 May 2011) | 17 lines
    
    Native SIP CCSS sends bad CC cancel SUBSCRIBE message.
    
    The SUBSCRIBE message used to cancel a CC request has incorrect To/From
    SIP headers.  They are reversed and the dialog tags are the same when they
    should not be.  If pedantic mode was disabled, then the cancel would have
    succeeded despite the incorrect message.
    
    * The SIP_OUTGOING flag was not set correctly for the dialog and I had to
    move some CC subscribe handling code as a result.
    
    * Initialized the dialog subscribed type to CALL_COMPLETION earlier.  If a
    CC request SUBSCRIBE message comes in and the CC instance is not found,
    the 404 response was duplicated.
    
    JIRA AST-568
    JIRA SWP-3493
  ........
................
  r320946 | twilson | 2011-05-26 19:55:22 +0400 (Thu, 26 May 2011) | 16 lines
  
  Use va_copy for stringfields
  
  The ast_string_field_build_va functions were written to take to separate
  va_lists to work around FreeBSD 4 not having va_copy defined.
  
  In the end, we don't support anything using gcc < 3 anyway because we use
  va_copy all over the place anyway. This patch just simplifies things by
  removing the second va_list function arguments in favor of va_copy.
  
  Review: https://reviewboard.asterisk.org/r/1233/
  --This line, and those below, will be ignored--
  
  M    include/asterisk/stringfields.h
  M    main/utils.c
  M    main/channel.c
................
  r321003 | russell | 2011-05-26 20:54:06 +0400 (Thu, 26 May 2011) | 9 lines
  
  Merged revisions 320947 via svnmerge from 
  https://origsvn.digium.com/svn/asterisk/branches/1.8
  
  ........
    r320947 | russell | 2011-05-26 10:57:13 -0500 (Thu, 26 May 2011) | 2 lines
    
    Remove some variables that were set but unused.
  ........
................
  r321043 | twilson | 2011-05-26 21:35:55 +0400 (Thu, 26 May 2011) | 13 lines
  
  Merged revisions 321042 via svnmerge from 
  https://origsvn.digium.com/svn/asterisk/branches/1.8
  
  ........
    r321042 | twilson | 2011-05-26 10:29:54 -0700 (Thu, 26 May 2011) | 6 lines
    
    Initialize stack-allocated ast_sockaddrs before use
    
    It is important to always initialize ast_sockaddrs before use--even if they
    are passed to ast_sockaddr_copy as the underlying storage could be bigger
    than what ends up being copied--leaving part of the data unitialized.
  ........
................
  r321045 | rmudgett | 2011-05-26 22:10:46 +0400 (Thu, 26 May 2011) | 9 lines
  
  Merged revisions 321044 via svnmerge from 
  https://origsvn.digium.com/svn/asterisk/branches/1.8
  
  ........
    r321044 | rmudgett | 2011-05-26 13:10:17 -0500 (Thu, 26 May 2011) | 1 line
    
    Update ast_sockaddr comment with an important note.
  ........
................
  r321101 | markm | 2011-05-27 00:16:28 +0400 (Fri, 27 May 2011) | 17 lines
  
  Merged revisions 321100 via svnmerge from 
  https://origsvn.digium.com/svn/asterisk/branches/1.8
  
  ........
    r321100 | markm | 2011-05-26 16:09:35 -0400 (Thu, 26 May 2011) | 11 lines
    
    ast_sockaddr_resolve() in netsock2.c may deref a null pointer
    
    Added a null check in netsock2 ast_sockaddr_resolve() as well as added default initalizers in chan_sip parse_uri_legacy_check() to make sure that invalid uris will make null (and not undefined) user,pass,domain,transport variables
    
    (closes issue #19346)
    Reported by: kobaz
    Patches: 
          netsock2.patch uploaded by kobaz (license 834)
    Tested by: kobaz, Marquis
  ........
................

Modified:
    team/may/ooh323_ipv6_direct_rtp/   (props changed)
    team/may/ooh323_ipv6_direct_rtp/CHANGES
    team/may/ooh323_ipv6_direct_rtp/UPGRADE-1.8.txt
    team/may/ooh323_ipv6_direct_rtp/addons/chan_mobile.c
    team/may/ooh323_ipv6_direct_rtp/apps/app_dial.c
    team/may/ooh323_ipv6_direct_rtp/apps/app_directed_pickup.c
    team/may/ooh323_ipv6_direct_rtp/apps/app_fax.c
    team/may/ooh323_ipv6_direct_rtp/apps/app_meetme.c
    team/may/ooh323_ipv6_direct_rtp/apps/app_queue.c
    team/may/ooh323_ipv6_direct_rtp/apps/app_voicemail.c
    team/may/ooh323_ipv6_direct_rtp/channels/chan_alsa.c
    team/may/ooh323_ipv6_direct_rtp/channels/chan_sip.c
    team/may/ooh323_ipv6_direct_rtp/configure
    team/may/ooh323_ipv6_direct_rtp/configure.ac
    team/may/ooh323_ipv6_direct_rtp/funcs/func_channel.c
    team/may/ooh323_ipv6_direct_rtp/funcs/func_strings.c
    team/may/ooh323_ipv6_direct_rtp/include/asterisk/autoconfig.h.in
    team/may/ooh323_ipv6_direct_rtp/include/asterisk/channel.h
    team/may/ooh323_ipv6_direct_rtp/include/asterisk/netsock2.h
    team/may/ooh323_ipv6_direct_rtp/include/asterisk/stringfields.h
    team/may/ooh323_ipv6_direct_rtp/main/channel.c
    team/may/ooh323_ipv6_direct_rtp/main/features.c
    team/may/ooh323_ipv6_direct_rtp/main/format_cap.c
    team/may/ooh323_ipv6_direct_rtp/main/manager.c
    team/may/ooh323_ipv6_direct_rtp/main/netsock2.c
    team/may/ooh323_ipv6_direct_rtp/main/rtp_engine.c
    team/may/ooh323_ipv6_direct_rtp/main/tcptls.c
    team/may/ooh323_ipv6_direct_rtp/main/utils.c
    team/may/ooh323_ipv6_direct_rtp/res/res_odbc.c

Propchange: team/may/ooh323_ipv6_direct_rtp/
------------------------------------------------------------------------------
Binary property 'branch-1.8-merged' - no diff available.

Propchange: team/may/ooh323_ipv6_direct_rtp/
------------------------------------------------------------------------------
--- svnmerge-integrated (original)
+++ svnmerge-integrated Sat May 28 04:23:02 2011
@@ -1,1 +1,1 @@
-/trunk:1-313143,313191,313280,313367,313383-313481,313483-313744,313781-313906,313908-313943,313945-315447,315453-316213,316216-316520,316552-319000,319024-320000
+/trunk:1-313143,313191,313280,313367,313383-313481,313483-313744,313781-313906,313908-313943,313945-315447,315453-316213,316216-316520,316552-319000,319024-320000,320013-321101

Modified: team/may/ooh323_ipv6_direct_rtp/CHANGES
URL: http://svnview.digium.com/svn/asterisk/team/may/ooh323_ipv6_direct_rtp/CHANGES?view=diff&rev=321507&r1=321506&r2=321507
==============================================================================
--- team/may/ooh323_ipv6_direct_rtp/CHANGES (original)
+++ team/may/ooh323_ipv6_direct_rtp/CHANGES Sat May 28 04:23:02 2011
@@ -81,6 +81,10 @@
    have the rx streams jitterbuffered before conference mixing occurs.
  * Added DB_KEYS, which lists the next set of keys in the Asterisk database
    hierarchy.
+ * Added STRREPLACE function.  This function let's the user search a variable
+   for a given string to replace with another string as many times as the
+   user specifies or just throughout the whole string.
+ * Added option to CHANNEL(pickupgroup) allow reading and setting the pickupgroup of channel.
 
 libpri channel driver (chan_dahdi) DAHDI changes
 --------------------------
@@ -563,6 +567,8 @@
  * Added a new eventfilter option per user to allow whitelisting and blacklisting
    of events.
  * Added optional parkinglot variable for park command.
+ * Added ConnectedLineNum and ConnectedLineName headers to AMI events/responses
+   if CallerIDNum and CallerIDName headers are also present.
 
 Channel Event Logging
 ---------------------

Modified: team/may/ooh323_ipv6_direct_rtp/UPGRADE-1.8.txt
URL: http://svnview.digium.com/svn/asterisk/team/may/ooh323_ipv6_direct_rtp/UPGRADE-1.8.txt?view=diff&rev=321507&r1=321506&r2=321507
==============================================================================
--- team/may/ooh323_ipv6_direct_rtp/UPGRADE-1.8.txt (original)
+++ team/may/ooh323_ipv6_direct_rtp/UPGRADE-1.8.txt Sat May 28 04:23:02 2011
@@ -132,6 +132,14 @@
 
 * The default value for the pedantic option in sip.conf has been changed
   from "no" to "yes".
+
+* The ConnectedLineNum and ConnectedLineName headers were added to many AMI
+  events/responses if the CallerIDNum/CallerIDName headers were also present.
+  The addition of connected line support changes the behavior of the channel
+  caller ID somewhat.  The channel caller ID value no longer time shares with
+  the connected line ID on outgoing call legs.  The timing of some AMI
+  events/responses output the connected line ID as caller ID.  These party ID's
+  are now separate.
 
 From 1.6.1 to 1.6.2:
 

Modified: team/may/ooh323_ipv6_direct_rtp/addons/chan_mobile.c
URL: http://svnview.digium.com/svn/asterisk/team/may/ooh323_ipv6_direct_rtp/addons/chan_mobile.c?view=diff&rev=321507&r1=321506&r2=321507
==============================================================================
--- team/may/ooh323_ipv6_direct_rtp/addons/chan_mobile.c (original)
+++ team/may/ooh323_ipv6_direct_rtp/addons/chan_mobile.c Sat May 28 04:23:02 2011
@@ -1185,7 +1185,7 @@
 	int res = AST_DEVICE_INVALID;
 	struct mbl_pvt *pvt;
 
-	device = ast_strdupa(S_OR(data, ""));
+	device = ast_strdupa(S_OR((char *) data, ""));
 
 	ast_debug(1, "Checking device state for device %s\n", device);
 

Modified: team/may/ooh323_ipv6_direct_rtp/apps/app_dial.c
URL: http://svnview.digium.com/svn/asterisk/team/may/ooh323_ipv6_direct_rtp/apps/app_dial.c?view=diff&rev=321507&r1=321506&r2=321507
==============================================================================
--- team/may/ooh323_ipv6_direct_rtp/apps/app_dial.c (original)
+++ team/may/ooh323_ipv6_direct_rtp/apps/app_dial.c Sat May 28 04:23:02 2011
@@ -768,12 +768,16 @@
 		"Destination: %s\r\n"
 		"CallerIDNum: %s\r\n"
 		"CallerIDName: %s\r\n"
+		"ConnectedLineNum: %s\r\n"
+		"ConnectedLineName: %s\r\n"
 		"UniqueID: %s\r\n"
 		"DestUniqueID: %s\r\n"
 		"Dialstring: %s\r\n",
 		src->name, dst->name,
 		S_COR(src->caller.id.number.valid, src->caller.id.number.str, "<unknown>"),
 		S_COR(src->caller.id.name.valid, src->caller.id.name.str, "<unknown>"),
+		S_COR(src->connected.id.number.valid, src->connected.id.number.str, "<unknown>"),
+		S_COR(src->connected.id.name.valid, src->connected.id.name.str, "<unknown>"),
 		src->uniqueid, dst->uniqueid,
 		dialstring ? dialstring : "");
 }

Modified: team/may/ooh323_ipv6_direct_rtp/apps/app_directed_pickup.c
URL: http://svnview.digium.com/svn/asterisk/team/may/ooh323_ipv6_direct_rtp/apps/app_directed_pickup.c?view=diff&rev=321507&r1=321506&r2=321507
==============================================================================
--- team/may/ooh323_ipv6_direct_rtp/apps/app_directed_pickup.c (original)
+++ team/may/ooh323_ipv6_direct_rtp/apps/app_directed_pickup.c Sat May 28 04:23:02 2011
@@ -117,15 +117,15 @@
 
 static int pickup_by_name_cb(void *obj, void *arg, void *data, int flags)
 {
-	struct ast_channel *chan = obj;
+	struct ast_channel *target = obj;/*!< Potential pickup target */
 	struct pickup_by_name_args *args = data;
 
-	ast_channel_lock(chan);
-	if (!strncasecmp(chan->name, args->name, args->len) && can_pickup(chan)) {
+	ast_channel_lock(target);
+	if (!strncasecmp(target->name, args->name, args->len) && can_pickup(target)) {
 		/* Return with the channel still locked on purpose */
 		return CMP_MATCH | CMP_STOP;
 	}
-	ast_channel_unlock(chan);
+	ast_channel_unlock(target);
 
 	return 0;
 }
@@ -162,7 +162,7 @@
 static int pickup_by_channel(struct ast_channel *chan, char *pickup)
 {
 	int res = -1;
-	struct ast_channel *target;
+	struct ast_channel *target;/*!< Potential pickup target */
 
 	target = my_ast_get_channel_by_name_locked(pickup);
 	if (target) {
@@ -180,7 +180,7 @@
 /* Attempt to pick up specified extension with context */
 static int pickup_by_exten(struct ast_channel *chan, const char *exten, const char *context)
 {
-	struct ast_channel *target = NULL;
+	struct ast_channel *target = NULL;/*!< Potential pickup target */
 	struct ast_channel_iterator *iter;
 	int res = -1;
 
@@ -211,17 +211,17 @@
 
 static int find_by_mark(void *obj, void *arg, void *data, int flags)
 {
-	struct ast_channel *c = obj;
+	struct ast_channel *target = obj;/*!< Potential pickup target */
 	const char *mark = data;
 	const char *tmp;
 
-	ast_channel_lock(c);
-	tmp = pbx_builtin_getvar_helper(c, PICKUPMARK);
-	if (tmp && !strcasecmp(tmp, mark) && can_pickup(c)) {
+	ast_channel_lock(target);
+	tmp = pbx_builtin_getvar_helper(target, PICKUPMARK);
+	if (tmp && !strcasecmp(tmp, mark) && can_pickup(target)) {
 		/* Return with the channel still locked on purpose */
 		return CMP_MATCH | CMP_STOP;
 	}
-	ast_channel_unlock(c);
+	ast_channel_unlock(target);
 
 	return 0;
 }
@@ -229,7 +229,7 @@
 /* Attempt to pick up specified mark */
 static int pickup_by_mark(struct ast_channel *chan, const char *mark)
 {
-	struct ast_channel *target;
+	struct ast_channel *target;/*!< Potential pickup target */
 	int res = -1;
 
 	/* The found channel is already locked. */
@@ -245,22 +245,22 @@
 
 static int find_channel_by_group(void *obj, void *arg, void *data, int flags)
 {
-	struct ast_channel *chan = obj;
-	struct ast_channel *c = data;
-
-	ast_channel_lock(chan);
-	if (c != chan && (c->pickupgroup & chan->callgroup) && can_pickup(chan)) {
+	struct ast_channel *target = obj;/*!< Potential pickup target */
+	struct ast_channel *chan = data;/*!< Channel wanting to pickup call */
+
+	ast_channel_lock(target);
+	if (chan != target && (chan->pickupgroup & target->callgroup) && can_pickup(target)) {
 		/* Return with the channel still locked on purpose */
 		return CMP_MATCH | CMP_STOP;
 	}
-	ast_channel_unlock(chan);
+	ast_channel_unlock(target);
 
 	return 0;
 }
 
 static int pickup_by_group(struct ast_channel *chan)
 {
-	struct ast_channel *target;
+	struct ast_channel *target;/*!< Potential pickup target */
 	int res = -1;
 
 	/* The found channel is already locked. */
@@ -310,16 +310,17 @@
 /* Find channel for pick up specified by partial channel name */ 
 static int find_by_part(void *obj, void *arg, void *data, int flags)
 {
-	struct ast_channel *c = obj; 
+	struct ast_channel *target = obj;/*!< Potential pickup target */
 	const char *part = data;
 	int len = strlen(part);
 
-	ast_channel_lock(c);
-	if (len <= strlen(c->name) && !strncmp(c->name, part, len) && can_pickup(c)) {
+	ast_channel_lock(target);
+	if (len <= strlen(target->name) && !strncmp(target->name, part, len)
+		&& can_pickup(target)) {
 		/* Return with the channel still locked on purpose */
 		return CMP_MATCH | CMP_STOP;
 	}
-	ast_channel_unlock(c);
+	ast_channel_unlock(target);
 
 	return 0;
 }
@@ -327,7 +328,7 @@
 /* Attempt to pick up specified by partial channel name */ 
 static int pickup_by_part(struct ast_channel *chan, const char *part)
 {
-	struct ast_channel *target;
+	struct ast_channel *target;/*!< Potential pickup target */
 	int res = -1;
 
 	/* The found channel is already locked. */

Modified: team/may/ooh323_ipv6_direct_rtp/apps/app_fax.c
URL: http://svnview.digium.com/svn/asterisk/team/may/ooh323_ipv6_direct_rtp/apps/app_fax.c?view=diff&rev=321507&r1=321506&r2=321507
==============================================================================
--- team/may/ooh323_ipv6_direct_rtp/apps/app_fax.c (original)
+++ team/may/ooh323_ipv6_direct_rtp/apps/app_fax.c Sat May 28 04:23:02 2011
@@ -255,6 +255,9 @@
 		"Channel: %s\r\n"
 		"Exten: %s\r\n"
 		"CallerID: %s\r\n"
+		"CallerIDName: %s\r\n"
+		"ConnectedLineNum: %s\r\n"
+		"ConnectedLineName: %s\r\n"
 		"RemoteStationID: %s\r\n"
 		"LocalStationID: %s\r\n"
 		"PagesTransferred: %d\r\n"
@@ -264,6 +267,9 @@
 		s->chan->name,
 		s->chan->exten,
 		S_COR(s->chan->caller.id.number.valid, s->chan->caller.id.number.str, ""),
+		S_COR(s->chan->caller.id.name.valid, s->chan->caller.id.name.str, ""),
+		S_COR(s->chan->connected.id.number.valid, s->chan->connected.id.number.str, ""),
+		S_COR(s->chan->connected.id.name.valid, s->chan->connected.id.name.str, ""),
 		far_ident,
 		local_ident,
 		pages_transferred,

Modified: team/may/ooh323_ipv6_direct_rtp/apps/app_meetme.c
URL: http://svnview.digium.com/svn/asterisk/team/may/ooh323_ipv6_direct_rtp/apps/app_meetme.c?view=diff&rev=321507&r1=321506&r2=321507
==============================================================================
--- team/may/ooh323_ipv6_direct_rtp/apps/app_meetme.c (original)
+++ team/may/ooh323_ipv6_direct_rtp/apps/app_meetme.c Sat May 28 04:23:02 2011
@@ -2756,11 +2756,15 @@
 			"Meetme: %s\r\n"
 			"Usernum: %d\r\n"
 			"CallerIDnum: %s\r\n"
-			"CallerIDname: %s\r\n",
+			"CallerIDname: %s\r\n"
+			"ConnectedLineNum: %s\r\n"
+			"ConnectedLineName: %s\r\n",
 			chan->name, chan->uniqueid, conf->confno,
 			user->user_no,
 			S_COR(user->chan->caller.id.number.valid, user->chan->caller.id.number.str, "<unknown>"),
-			S_COR(user->chan->caller.id.name.valid, user->chan->caller.id.name.str, "<unknown>")
+			S_COR(user->chan->caller.id.name.valid, user->chan->caller.id.name.str, "<unknown>"),
+			S_COR(user->chan->connected.id.number.valid, user->chan->connected.id.number.str, "<unknown>"),
+			S_COR(user->chan->connected.id.name.valid, user->chan->connected.id.name.str, "<unknown>")
 			);
 		sent_event = 1;
 	}
@@ -3817,11 +3821,15 @@
 				"Usernum: %d\r\n"
 				"CallerIDNum: %s\r\n"
 				"CallerIDName: %s\r\n"
+				"ConnectedLineNum: %s\r\n"
+				"ConnectedLineName: %s\r\n"
 				"Duration: %ld\r\n",
 				chan->name, chan->uniqueid, conf->confno,
 				user->user_no,
 				S_COR(user->chan->caller.id.number.valid, user->chan->caller.id.number.str, "<unknown>"),
 				S_COR(user->chan->caller.id.name.valid, user->chan->caller.id.name.str, "<unknown>"),
+				S_COR(user->chan->connected.id.number.valid, user->chan->connected.id.number.str, "<unknown>"),
+				S_COR(user->chan->connected.id.name.valid, user->chan->connected.id.name.str, "<unknown>"),
 				(long)(now.tv_sec - user->jointime));
 		}
 
@@ -4883,6 +4891,8 @@
 				"UserNumber: %d\r\n"
 				"CallerIDNum: %s\r\n"
 				"CallerIDName: %s\r\n"
+				"ConnectedLineNum: %s\r\n"
+				"ConnectedLineName: %s\r\n"
 				"Channel: %s\r\n"
 				"Admin: %s\r\n"
 				"Role: %s\r\n"
@@ -4895,6 +4905,8 @@
 				user->user_no,
 				S_COR(user->chan->caller.id.number.valid, user->chan->caller.id.number.str, "<unknown>"),
 				S_COR(user->chan->caller.id.name.valid, user->chan->caller.id.name.str, "<no name>"),
+				S_COR(user->chan->connected.id.number.valid, user->chan->connected.id.number.str, "<unknown>"),
+				S_COR(user->chan->connected.id.name.valid, user->chan->connected.id.name.str, "<no name>"),
 				user->chan->name,
 				ast_test_flag64(&user->userflags, CONFFLAG_ADMIN) ? "Yes" : "No",
 				ast_test_flag64(&user->userflags, CONFFLAG_MONITOR) ? "Listen only" : ast_test_flag64(&user->userflags, CONFFLAG_TALKER) ? "Talk only" : "Talk and listen",

Modified: team/may/ooh323_ipv6_direct_rtp/apps/app_queue.c
URL: http://svnview.digium.com/svn/asterisk/team/may/ooh323_ipv6_direct_rtp/apps/app_queue.c?view=diff&rev=321507&r1=321506&r2=321507
==============================================================================
--- team/may/ooh323_ipv6_direct_rtp/apps/app_queue.c (original)
+++ team/may/ooh323_ipv6_direct_rtp/apps/app_queue.c Sat May 28 04:23:02 2011
@@ -2515,10 +2515,20 @@
 		q->count++;
 		res = 0;
 		ast_manager_event(qe->chan, EVENT_FLAG_CALL, "Join",
-			"Channel: %s\r\nCallerIDNum: %s\r\nCallerIDName: %s\r\nQueue: %s\r\nPosition: %d\r\nCount: %d\r\nUniqueid: %s\r\n",
+			"Channel: %s\r\n"
+			"CallerIDNum: %s\r\n"
+			"CallerIDName: %s\r\n"
+			"ConnectedLineNum: %s\r\n"
+			"ConnectedLineName: %s\r\n"
+			"Queue: %s\r\n"
+			"Position: %d\r\n"
+			"Count: %d\r\n"
+			"Uniqueid: %s\r\n",
 			qe->chan->name,
 			S_COR(qe->chan->caller.id.number.valid, qe->chan->caller.id.number.str, "unknown"),/* XXX somewhere else it is <unknown> */
 			S_COR(qe->chan->caller.id.name.valid, qe->chan->caller.id.name.str, "unknown"),
+			S_COR(qe->chan->connected.id.number.valid, qe->chan->connected.id.number.str, "unknown"),/* XXX somewhere else it is <unknown> */
+			S_COR(qe->chan->connected.id.name.valid, qe->chan->connected.id.name.str, "unknown"),
 			q->name, qe->pos, q->count, qe->chan->uniqueid );
 		ast_debug(1, "Queue '%s' Join, Channel '%s', Position '%d'\n", q->name, qe->chan->name, qe->pos );
 	}
@@ -3152,6 +3162,8 @@
 			"DestinationChannel: %s\r\n"
 			"CallerIDNum: %s\r\n"
 			"CallerIDName: %s\r\n"
+			"ConnectedLineNum: %s\r\n"
+			"ConnectedLineName: %s\r\n"
 			"Context: %s\r\n"
 			"Extension: %s\r\n"
 			"Priority: %d\r\n"
@@ -3160,6 +3172,8 @@
 			qe->parent->name, tmp->interface, tmp->member->membername, qe->chan->name, tmp->chan->name,
 			S_COR(tmp->chan->caller.id.number.valid, tmp->chan->caller.id.number.str, "unknown"),
 			S_COR(tmp->chan->caller.id.name.valid, tmp->chan->caller.id.name.str, "unknown"),
+			S_COR(tmp->chan->connected.id.number.valid, tmp->chan->connected.id.number.str, "unknown"),
+			S_COR(tmp->chan->connected.id.name.valid, tmp->chan->connected.id.name.str, "unknown"),
 			qe->chan->context, qe->chan->exten, qe->chan->priority, qe->chan->uniqueid,
 			qe->parent->eventwhencalled == QUEUE_EVENT_VARIABLES ? vars2manager(qe->chan, vars, sizeof(vars)) : "");
 		ast_verb(3, "Called %s\n", tmp->interface);
@@ -7247,12 +7261,16 @@
 					"Uniqueid: %s\r\n"
 					"CallerIDNum: %s\r\n"
 					"CallerIDName: %s\r\n"
+					"ConnectedLineNum: %s\r\n"
+					"ConnectedLineName: %s\r\n"
 					"Wait: %ld\r\n"
 					"%s"
 					"\r\n",
 					q->name, pos++, qe->chan->name, qe->chan->uniqueid,
 					S_COR(qe->chan->caller.id.number.valid, qe->chan->caller.id.number.str, "unknown"),
 					S_COR(qe->chan->caller.id.name.valid, qe->chan->caller.id.name.str, "unknown"),
+					S_COR(qe->chan->connected.id.number.valid, qe->chan->connected.id.number.str, "unknown"),
+					S_COR(qe->chan->connected.id.name.valid, qe->chan->connected.id.name.str, "unknown"),
 					(long) (now - qe->start), idText);
 			}
 		}

Modified: team/may/ooh323_ipv6_direct_rtp/apps/app_voicemail.c
URL: http://svnview.digium.com/svn/asterisk/team/may/ooh323_ipv6_direct_rtp/apps/app_voicemail.c?view=diff&rev=321507&r1=321506&r2=321507
==============================================================================
--- team/may/ooh323_ipv6_direct_rtp/apps/app_voicemail.c (original)
+++ team/may/ooh323_ipv6_direct_rtp/apps/app_voicemail.c Sat May 28 04:23:02 2011
@@ -6698,7 +6698,21 @@
 		if (d)
 			return d;
 		snprintf(fn, sizeof(fn), "vm-%s", mbox(NULL, x));	/* Folder name */
-		d = vm_play_folder_name(chan, fn);
+
+		/* The inbox folder can have its name changed under certain conditions
+		 * so this checks if the sound file exists for the inbox folder name and
+		 * if it doesn't, plays the default name instead. */
+		if (x == 0) {
+			if (ast_fileexists(fn, NULL, NULL)) {
+				d = vm_play_folder_name(chan, fn);
+			} else {
+				ast_verb(1, "failed to find %s\n", fn);
+				d = vm_play_folder_name(chan, "vm-INBOX");
+			}
+		} else {
+			d = vm_play_folder_name(chan, fn);
+		}
+
 		if (d)
 			return d;
 		d = ast_waitfordigit(chan, 500);

Modified: team/may/ooh323_ipv6_direct_rtp/channels/chan_alsa.c
URL: http://svnview.digium.com/svn/asterisk/team/may/ooh323_ipv6_direct_rtp/channels/chan_alsa.c?view=diff&rev=321507&r1=321506&r2=321507
==============================================================================
--- team/may/ooh323_ipv6_direct_rtp/channels/chan_alsa.c (original)
+++ team/may/ooh323_ipv6_direct_rtp/channels/chan_alsa.c Sat May 28 04:23:02 2011
@@ -383,7 +383,6 @@
 	static char sizbuf[8000];
 	static int sizpos = 0;
 	int len = sizpos;
-	int pos;
 	int res = 0;
 	/* size_t frames = 0; */
 	snd_pcm_state_t state;
@@ -397,7 +396,6 @@
 	} else {
 		memcpy(sizbuf + sizpos, f->data.ptr, f->datalen);
 		len += f->datalen;
-		pos = 0;
 		state = snd_pcm_state(alsa.ocard);
 		if (state == SND_PCM_STATE_XRUN)
 			snd_pcm_prepare(alsa.ocard);

Modified: team/may/ooh323_ipv6_direct_rtp/channels/chan_sip.c
URL: http://svnview.digium.com/svn/asterisk/team/may/ooh323_ipv6_direct_rtp/channels/chan_sip.c?view=diff&rev=321507&r1=321506&r2=321507
==============================================================================
--- team/may/ooh323_ipv6_direct_rtp/channels/chan_sip.c (original)
+++ team/may/ooh323_ipv6_direct_rtp/channels/chan_sip.c Sat May 28 04:23:02 2011
@@ -1923,6 +1923,7 @@
 		ast_get_ccnr_available_timer(monitor->interface->config_params);
 
 	sip_pvt_lock(monitor_instance->subscription_pvt);
+	ast_set_flag(&monitor_instance->subscription_pvt->flags[0], SIP_OUTGOING);
 	create_addr(monitor_instance->subscription_pvt, monitor_instance->peername, 0, 1, NULL);
 	ast_sip_ouraddrfor(&monitor_instance->subscription_pvt->sa, &monitor_instance->subscription_pvt->ourip, monitor_instance->subscription_pvt);
 	monitor_instance->subscription_pvt->subscribed = CALL_COMPLETION;
@@ -2495,7 +2496,7 @@
 */
 static void *_sip_tcp_helper_thread(struct sip_pvt *pvt, struct ast_tcptls_session_instance *tcptls_session)
 {
-	int res, cl, timeout = -1, authenticated = 0, flags;
+	int res, cl, timeout = -1, authenticated = 0, flags, after_poll = 0, need_poll = 1;
 	time_t start;
 	struct sip_request req = { 0, } , reqcpy = { 0, };
 	struct sip_threadinfo *me = NULL;
@@ -2608,6 +2609,7 @@
 		/* handle the socket event, check for both reads from the socket fd,
 		 * and writes from alert_pipe fd */
 		if (fds[0].revents) { /* there is data on the socket to be read */
+			after_poll = 1;
 
 			fds[0].revents = 0;
 
@@ -2648,22 +2650,35 @@
 					timeout = -1;
 				}
 
-				res = ast_wait_for_input(tcptls_session->fd, timeout);
-				if (res < 0) {
-					ast_debug(2, "SIP %s server :: ast_wait_for_input returned %d\n", tcptls_session->ssl ? "SSL": "TCP", res);
-					goto cleanup;
-				} else if (res == 0) {
-					/* timeout */
-					ast_debug(2, "SIP %s server timed out\n", tcptls_session->ssl ? "SSL": "TCP");
-					goto cleanup;
+				/* special polling behavior is required for TLS
+				 * sockets because of the buffering done in the
+				 * TLS layer */
+				if (!tcptls_session->ssl || need_poll) {
+					need_poll = 0;
+					after_poll = 1;
+					res = ast_wait_for_input(tcptls_session->fd, timeout);
+					if (res < 0) {
+						ast_debug(2, "SIP TCP server :: ast_wait_for_input returned %d\n", res);
+						goto cleanup;
+					} else if (res == 0) {
+						/* timeout */
+						ast_debug(2, "SIP TCP server timed out\n");
+						goto cleanup;
+					}
 				}
 

[... 1583 lines stripped ...]



More information about the asterisk-commits mailing list