Commit Graph

1758 Commits

Author SHA1 Message Date
Jason Parker ef247c398f Merged revisions 285530 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.8

................
  r285530 | qwell | 2010-09-08 15:43:10 -0500 (Wed, 08 Sep 2010) | 9 lines
  
  Merged revisions 285529 via svnmerge from 
  https://origsvn.digium.com/svn/asterisk/branches/1.6.2
  
  ........
    r285529 | qwell | 2010-09-08 15:42:44 -0500 (Wed, 08 Sep 2010) | 1 line
    
    Follow coding guidelines in moh rescan fix.  Also fix the documentation that got me in trouble.
  ........
................


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@285531 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-09-08 20:43:38 +00:00
Jason Parker d077b0f081 Merged revisions 285527 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.8

................
  r285527 | qwell | 2010-09-08 15:32:13 -0500 (Wed, 08 Sep 2010) | 15 lines
  
  Merged revisions 285526 via svnmerge from 
  https://origsvn.digium.com/svn/asterisk/branches/1.6.2
  
  ........
    r285526 | qwell | 2010-09-08 15:31:43 -0500 (Wed, 08 Sep 2010) | 8 lines
    
    Fixes issue where moh files were no longer rescanned during a reload.
    
    (closes issue #16744)
    Reported by: pj
    Patches: 
          16744-reload.diff uploaded by qwell (license 4)
    Tested by: qwell
  ........
................


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@285528 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-09-08 20:32:49 +00:00
Jan Kalab 063d1b72cb Merge of strdupa() fix for calendars categories priorities
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@284853 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-09-03 13:09:23 +00:00
Jan Kalab a7505c0b91 Support for calendar events priorities and categories (with ISO C90 fix)
See RFC 5545 ch. 3.8.1.2 and 9.

(closes issue #17837)
Review: https://reviewboard.asterisk.org/r/880/


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@284851 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-09-03 12:58:52 +00:00
Tilghman Lesher 5eae9f44f7 Merged revisions 284597 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.8

................
  r284597 | tilghman | 2010-09-02 00:00:34 -0500 (Thu, 02 Sep 2010) | 29 lines
  
  Merged revisions 284593,284595 via svnmerge from 
  https://origsvn.digium.com/svn/asterisk/branches/1.6.2
  
  ................
    r284593 | tilghman | 2010-09-01 17:59:50 -0500 (Wed, 01 Sep 2010) | 18 lines
    
    Merged revisions 284478 via svnmerge from 
    https://origsvn.digium.com/svn/asterisk/branches/1.4
    
    ........
      r284478 | tilghman | 2010-09-01 13:49:11 -0500 (Wed, 01 Sep 2010) | 11 lines
      
      Ensure that all areas that previously used select(2) now use poll(2), with implementations that need poll(2) implemented with select(2) safe against 1024-bit overflows.
      
      This is a followup to the fix for the pthread timer in 1.6.2 and beyond, fixing
      a potential crash bug in all supported releases.
      
      (closes issue #17678)
       Reported by: russell
      Branch: https://origsvn.digium.com/svn/asterisk/team/tilghman/ast_select 
      
      Review: https://reviewboard.asterisk.org/r/824/
    ........
  ................
    r284595 | tilghman | 2010-09-01 22:57:43 -0500 (Wed, 01 Sep 2010) | 2 lines
    
    Failed to rerun bootstrap.sh after last commit
  ................
................


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@284598 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-09-02 05:02:54 +00:00
Terry Wilson 920f5ea8b7 Merged revisions 284477 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.8

........
  r284477 | twilson | 2010-09-01 13:44:36 -0500 (Wed, 01 Sep 2010) | 17 lines
  
  Fix SRTP for changing SSRC and multiple a=crypto SDP lines
  
  Adding code to Asterisk that changed the SSRC during bridges and masquerades
  broke SRTP functionality. Also broken was handling the situation where an
  incoming INVITE had more than one crypto offer. This patch caches the SRTP
  policies the we use so that we can change the ssrc and inform libsrtp of the
  new streams. It also uses the first acceptable a=crypto line from the incoming
  INVITE.
  
  (closes issue #17563)
  Reported by: Alexcr
  Patches: 
        srtp.diff uploaded by twilson (license 396)
  Tested by: twilson
  
  Review: https://reviewboard.asterisk.org/r/878/
........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@284479 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-09-01 18:52:27 +00:00
Tilghman Lesher af67f7621a Merged revisions 284473 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.8

................
  r284473 | tilghman | 2010-09-01 13:16:37 -0500 (Wed, 01 Sep 2010) | 12 lines
  
  Merged revisions 284472 via svnmerge from 
  https://origsvn.digium.com/svn/asterisk/branches/1.6.2
  
  ........
    r284472 | tilghman | 2010-09-01 13:13:35 -0500 (Wed, 01 Sep 2010) | 5 lines
    
    Don't warn on floats and timestamps
    
    (closes issue #17082)
    Reported by: coolmig
  ........
................


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@284474 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-09-01 18:19:12 +00:00
Jason Parker 7dd1392fba Merged revisions 283882 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.8

................
  r283882 | qwell | 2010-08-27 15:31:55 -0500 (Fri, 27 Aug 2010) | 22 lines
  
  Merged revisions 283881 via svnmerge from 
  https://origsvn.digium.com/svn/asterisk/branches/1.6.2
  
  ................
    r283881 | qwell | 2010-08-27 15:30:27 -0500 (Fri, 27 Aug 2010) | 15 lines
    
    Merged revisions 283880 via svnmerge from 
    https://origsvn.digium.com/svn/asterisk/branches/1.4
    
    ........
      r283880 | qwell | 2010-08-27 15:29:11 -0500 (Fri, 27 Aug 2010) | 8 lines
      
      Fix issue with decoding ^-escaped characters in realtime.
      
      (closes issue #17790)
      Reported by: denzs
      Patches: 
            17790-chunky.diff uploaded by qwell (license 4)
      Tested by: qwell, denzs
    ........
  ................
................


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@283883 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-08-27 20:32:21 +00:00
Tilghman Lesher 3170dab50d Merged revisions 283770 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.8

........
  r283770 | tilghman | 2010-08-26 18:47:02 -0500 (Thu, 26 Aug 2010) | 8 lines
  
  Convert MOH to use generic timers.
  
  (closes issue #17726)
   Reported by: lmadsen
   Patches: 
         20100825__issue17726__2.diff.txt uploaded by tilghman (license 14)
   Tested by: tilghman
........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@283771 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-08-26 23:51:55 +00:00
Russell Bryant 405a831032 Merged revisions 283659 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.8

........
  r283659 | russell | 2010-08-26 08:26:14 -0500 (Thu, 26 Aug 2010) | 2 lines
  
  Slight improvement to a debug message.
........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@283660 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-08-26 13:28:05 +00:00
Tilghman Lesher 1f77076d21 Merged revisions 283561 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.8

........
  r283561 | tilghman | 2010-08-25 11:12:43 -0500 (Wed, 25 Aug 2010) | 5 lines
  
  Initialize connect timeout on each time through the loop.
  
  (closes issue #17911)
   Reported by: wurstsalat
........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@283562 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-08-25 16:14:11 +00:00
Leif Madsen ea7ddb38fc Merged revisions 283457 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.8

........
  r283457 | lmadsen | 2010-08-24 13:56:29 -0500 (Tue, 24 Aug 2010) | 9 lines
  
  Fix issue where TOS is no longer set on RTP packets.
  Fix issue where the tos is no longer being set on RTP packets through res_rtp_asterisk.
  
  (closes issue #17890)
  Reported by: elguero
  Patches:
        qos_18.diff uploaded by elguero (license 37)
  
  Review: https://reviewboard.asterisk.org/r/868
........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@283458 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-08-24 18:58:46 +00:00
David Vossel 4be043383c This fix downgrades the ERROR message indicating no res_stun_monitor.conf to a WARNING message.
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@283456 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-08-24 18:45:57 +00:00
Tilghman Lesher 5da7daf1fc Merged revisions 283175 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.8

........
  r283175 | tilghman | 2010-08-23 07:06:26 -0500 (Mon, 23 Aug 2010) | 2 lines
  
  Don't fail to start if the config file is missing.
........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@283176 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-08-23 12:09:17 +00:00
David Vossel 0f8eaa6299 Merged revisions 282269 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.8

........
  r282269 | dvossel | 2010-08-13 15:03:56 -0500 (Fri, 13 Aug 2010) | 4 lines
  
  res_stun_monitor for monitoring network changes behind a NAT device
  
  Review: https://reviewboard.asterisk.org/r/854
........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@282270 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-08-13 20:05:44 +00:00
Matthew Nicholson f02c4ff527 Merged revisions 281358 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.8

........
  r281358 | mnicholson | 2010-08-09 09:49:38 -0500 (Mon, 09 Aug 2010) | 4 lines
  
  Validate minrate, maxrate, and modem settings before attempting a fax session.
  
  FAX-224
........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@281359 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-08-09 14:52:21 +00:00
Matthew Nicholson 1862c1b4cf Merged revisions 280909 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.8

........
  r280909 | mnicholson | 2010-08-04 10:11:13 -0500 (Wed, 04 Aug 2010) | 2 lines
  
  Initialize FAXOPT() status variables in sendfax and receivefax instead of when the details structure is created.
........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@280910 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-08-04 15:22:02 +00:00
Matthew Nicholson 680c3e1883 Merged revisions 280557 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.8

........
  r280557 | mnicholson | 2010-07-29 16:07:21 -0500 (Thu, 29 Jul 2010) | 4 lines
  
  Fix regression introduced in r1664.  Give the fax stack time to shutdown and populate the FAXOPT output variables.
  
  FAX-222
........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@280559 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-07-29 21:08:42 +00:00
Terry Wilson 0d4a91f062 Merged revisions 280225 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.8

........
  r280225 | twilson | 2010-07-28 12:34:42 -0700 (Wed, 28 Jul 2010) | 3 lines
  
  Do rtp/rtcp debugging when it is turned on w/o filtering
........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@280226 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-07-28 19:37:45 +00:00
Russell Bryant 0bac4255db Merged revisions 280058 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.8

........
  r280058 | russell | 2010-07-28 08:01:15 -0500 (Wed, 28 Jul 2010) | 2 lines
  
  s/init keys/keys init/
........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@280059 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-07-28 13:02:11 +00:00
Tilghman Lesher 12a0639429 Merged revisions 279601 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.8

................
  r279601 | tilghman | 2010-07-26 16:07:45 -0500 (Mon, 26 Jul 2010) | 19 lines
  
  Merged revisions 279597 via svnmerge from 
  https://origsvn.digium.com/svn/asterisk/branches/1.6.2
  
  ........
    r279597 | ghenry | 2010-07-26 15:25:54 -0500 (Mon, 26 Jul 2010) | 13 lines
    
    Apply all patches in:
    
    https://issues.asterisk.org/view.php?id=13573
    
    (closes issue #13573)
    Reported by: navkumar
    Patches: 
          res_config_ldap-category.diff uploaded by navkumar (license 580)
          res_config_ldap.patch uploaded by bencer (license 961)
          res_config_ldap uploaded by bencer (license 961)
    Tested by: suretec
  ........
................


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@279602 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-07-26 21:08:24 +00:00
Tilghman Lesher 84873a8e95 Merged revisions 279113 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.8

........
  r279113 | tilghman | 2010-07-23 13:56:04 -0500 (Fri, 23 Jul 2010) | 2 lines
  
  Silly 64-bit compilers (who uses 64-bit anyway?)
........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@279115 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-07-23 18:56:59 +00:00
Tilghman Lesher 3ab0041118 Merge the realtime failover branch
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@278957 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-07-23 16:19:21 +00:00
Olle Johansson 98ad48e5d4 Minor corrections to the LDAP realtime driver
Review: https://reviewboard.asterisk.org/r/798/

Thanks Mark for a quick review!


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@278875 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-07-23 13:37:17 +00:00
Terry Wilson d6e1c724e5 Remove built-in AES code and use optional_api instead
Review: https://reviewboard.asterisk.org/r/793/


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@278538 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-07-21 19:11:32 +00:00
Russell Bryant 765b275976 Use poll() instead of select() in res_timing_pthread to avoid stack corruption.
This code did not properly check FD_SETSIZE to ensure that it did not try to
select() on fds that were too large.  Switching to poll() removes the limitation
on the maximum fd value.

(closes issue #15915)
Reported by: keiron

(closes issue #17187)
Reported by: Eddie Edwards

(closes issue #16494)
Reported by: Hubguru

(closes issue #15731)
Reported by: flop

(closes issue #12917)
Reported by: falves11

(closes issue #14920)
Reported by: vrban

(closes issue #17199)
Reported by: aleksey2000

(closes issue #15406)
Reported by: kowalma

(closes issue #17438)
Reported by: dcabot

(closes issue #17325)
Reported by: glwgoes

(closes issue #17118)
Reported by: erikje

possibly other issues, too ...


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@278465 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-07-21 16:15:00 +00:00
Matthew Nicholson 3b5d63fd2b Properly show the current page being transfered for 'fax show session'
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@278462 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-07-21 15:54:29 +00:00
Matthew Nicholson 180846d2e7 Don't print failure status when the remote end hangs up, it may not be an actual failure.
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@278426 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-07-21 13:03:01 +00:00
Tilghman Lesher 82448ad7d2 Separate queue_log arguments into separate fields, and allow the text file to be used, even when realtime is used.
(closes issue #17082)
 Reported by: coolmig
 Patches: 
       20100720__issue17082.diff.txt uploaded by tilghman (license 14)
 Tested by: coolmig


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@278307 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-07-20 23:23:25 +00:00
Matthew Nicholson c149b851b3 This commit contains several changes to the way output channel variables are handled.
FAX output channel variables will now match the values reported by FAXOPT() and should be set in all failure and success cases.

This commit also contains a few modifications to the way FAXOPT() variables are populated in a few spots and fixes for some reference count leaks of the session details structure in some failure cases.

Also found and fixed more cases where FAXOPT(status) may not have gotten set.

FAX-214
FAX-203


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@278168 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-07-20 21:01:26 +00:00
Tilghman Lesher b4e18d5660 Add load priority order, such that preload becomes unnecessary in most cases
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@278132 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-07-20 19:35:02 +00:00
Tilghman Lesher a7c92fad28 Merged revisions 277568 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
  r277568 | tilghman | 2010-07-16 16:54:29 -0500 (Fri, 16 Jul 2010) | 8 lines
  
  Since we split values at the semicolon, we should store values with a semicolon as an encoded value.
  
  (closes issue #17369)
   Reported by: gkservice
   Patches: 
         20100625__issue17369.diff.txt uploaded by tilghman (license 14)
   Tested by: tilghman
........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@277773 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-07-17 17:39:28 +00:00
Bradley Latus c0607e02b5 Update res_fax.c to be a good xml citizen.
(closes issues #17667)
 Reported by: snuffy


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@277667 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-07-17 00:03:37 +00:00
Tilghman Lesher f12afaaebc Add documentation for MOH realtime fields
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@277452 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-07-16 20:25:11 +00:00
Tilghman Lesher 7515e03c8b And yet one more
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@276911 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-07-16 06:04:22 +00:00
Tilghman Lesher be7fbdf25d "Item may be used uninitialized in this function."
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@276910 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-07-16 05:59:11 +00:00
Mark Michelson 1e8c66e749 Fix errors where incorrect address information was printed.
ast_sockaddr_stringiy_fmt (which is call by all ast_sockaddr_stringify* functions)
uses thread-local storage for storing the string that it creates. In cases where
ast_sockaddr_stringify_fmt was being called twice within the same statement, the
result of one call would be overwritten by the result of the other call. This
usually was happening in printf-like statements and was resulting in the same
stringified addressed being printed twice instead of two separate addresses.

I have fixed this by using ast_strdupa on the result of stringify functions if
they are used twice within the same statement. As far as I could tell, there were
no instances where a pointer to the result of such a call were saved anywhere, so
this is the only situation I could see where this error could occur.



git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@276570 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-07-14 22:32:29 +00:00
Tilghman Lesher 832d1296c6 Remove the old stub files, preferring the optional_api method.
(closes issue #17475)
 Reported by: tilghman
 
Review: https://reviewboard.asterisk.org/r/695/


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@276490 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-07-14 20:48:59 +00:00
Richard Mudgett cf7bbcc4c6 Expand the caller ANI field to an ast_party_id
Expand the ani field in ast_party_caller and ast_party_connected_line to
an ast_party_id.

This is an extension to the ast_callerid restructuring patch in review:
https://reviewboard.asterisk.org/r/702/

Review: https://reviewboard.asterisk.org/r/744/


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@276393 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-07-14 16:58:03 +00:00
Richard Mudgett 2cf60bb09d Make compile again.
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@276391 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-07-14 16:39:18 +00:00
Richard Mudgett ec37ffbdaf ast_callerid restructuring
The purpose of this patch is to eliminate struct ast_callerid since it has
turned into a miscellaneous collection of various party information.

Eliminate struct ast_callerid and replace it with the following struct
organization:

struct ast_party_name {
	char *str;
	int char_set;
	int presentation;
	unsigned char valid;
};
struct ast_party_number {
	char *str;
	int plan;
	int presentation;
	unsigned char valid;
};
struct ast_party_subaddress {
	char *str;
	int type;
	unsigned char odd_even_indicator;
	unsigned char valid;
};
struct ast_party_id {
	struct ast_party_name name;
	struct ast_party_number number;
	struct ast_party_subaddress subaddress;
	char *tag;
};
struct ast_party_dialed {
	struct {
		char *str;
		int plan;
	} number;
	struct ast_party_subaddress subaddress;
	int transit_network_select;
};
struct ast_party_caller {
	struct ast_party_id id;
	char *ani;
	int ani2;
};

The new organization adds some new information as well.

* The party name and number now have their own presentation value that can
be manipulated independently.  ISDN supplies the presentation value for
the name and number at different times with the possibility that they
could be different.

* The party name and number now have a valid flag.  Before this change the
name or number string could be empty if the presentation were restricted.
Most channel drivers assume that the name or number is then simply not
available instead of indicating that the name or number was restricted.

* The party name now has a character set value.  SIP and Q.SIG have the
ability to indicate what character set a name string is using so it could
be presented properly.

* The dialed party now has a numbering plan value that could be useful to
have available.

The various channel drivers will need to be updated to support the new
core features as needed.  They have simply been converted to supply
current functionality at this time.


The following items of note were either corrected or enhanced:

* The CONNECTEDLINE() and REDIRECTING() dialplan functions were
consolidated into func_callerid.c to share party id handling code.

* CALLERPRES() is now deprecated because the name and number have their
own presentation values.

* Fixed app_alarmreceiver.c write_metadata().  The workstring[] could
contain garbage.  It also can only contain the caller id number so using
ast_callerid_parse() on it is silly.  There was also a typo in the
CALLERNAME if test.

* Fixed app_rpt.c using ast_callerid_parse() on the channel's caller id
number string.  ast_callerid_parse() alters the given buffer which in this
case is the channel's caller id number string.  Then using
ast_shrink_phone_number() could alter it even more.

* Fixed caller ID name and number memory leak in chan_usbradio.c.

* Fixed uninitialized char arrays cid_num[] and cid_name[] in
sig_analog.c.

* Protected access to a caller channel with lock in chan_sip.c.

* Clarified intent of code in app_meetme.c sla_ring_station() and
dial_trunk().  Also made save all caller ID data instead of just the name
and number strings.

* Simplified cdr.c set_one_cid().  It hand coded the ast_callerid_merge()
function.

* Corrected some weirdness with app_privacy.c's use of caller
presentation.

Review:	https://reviewboard.asterisk.org/r/702/


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@276347 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-07-14 15:48:36 +00:00
Tilghman Lesher da8450323f Kill some startup warnings and errors and make some messages more helpful in tracking down the source.
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@275105 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-07-09 17:00:22 +00:00
Mark Michelson cd4ebd336f Add IPv6 to Asterisk.
This adds a generic API for accommodating IPv6 and IPv4 addresses
within Asterisk. While many files have been updated to make use of the
API, chan_sip and the RTP code are the files which actually support
IPv6 addresses at the time of this commit. The way has been paved for
easier upgrading for other files in the near future, though.

Big thanks go to Simon Perrault, Marc Blanchet, and Jean-Philippe Dionne
for their hard work on this.

(closes issue #17565)
Reported by: russell
Patches: 
      asteriskv6-test-report.pdf uploaded by russell (license 2)

Review: https://reviewboard.asterisk.org/r/743



git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@274783 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-07-08 22:08:07 +00:00
Eliel C. Sardanons a1b89a6a50 Implement AstData API data providers as part of the GSOC 2010 project,
midterm evaluation.

Review: https://reviewboard.asterisk.org/r/757/



git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@274727 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-07-08 14:48:42 +00:00
Matthew Nicholson f03b3691ea Set proper FAXOPT(status), FAXOPT(statusstr), and FAXOPT(error) values where possible. Previously some failure cases did not result in proper FAXOPT values.
FAX-203


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@274540 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-07-07 16:40:19 +00:00
Matthew Nicholson 390d5781cf Properly detect and report invalid maxrate and maxrate values in the FAXOPT dialplan function. Also make fax_rate_str_to_int() return an unsigned int and return 0 instead of -1 in the event of an error.
FAX-202


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@274243 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-07-06 19:53:04 +00:00
Mark Michelson 41cdf6a720 Merged revisions 274157 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
  r274157 | mmichelson | 2010-07-06 09:29:23 -0500 (Tue, 06 Jul 2010) | 16 lines
  
  Fix problem with RFC 2833 DTMF not being accepted.
  
  A recent check was added to ensure that we did not erroneously
  detect duplicate DTMF when we received packets out of order.
  The problem was that the check did not account for the fact that
  the seqno of an RTP stream will roll over back to 0 after hitting
  65535. Now, we have a secondary check that will ensure that the
  seqno rolling over will not cause us to stop accepting DTMF.
  
  (closes issue #17571)
  Reported by: mdeneen
  Patches: 
        rtp_seqno_rollover.patch uploaded by mmichelson (license 60)
  Tested by: richardf, maxochoa, JJCinAZ
........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@274164 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-07-06 14:31:13 +00:00
Tzafrir Cohen c613897d1c Fix various typos reported by Lintian
(Also fix the typos in the comments)


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@273641 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-07-02 15:57:02 +00:00
Matthew Nicholson 6acfd9f20a Properly handle failures of fax->start_session()
FAX-177


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@273464 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-07-01 19:34:47 +00:00
Paul Belanger 6012128a48 Fix rt(c)p set debug ip taking wrong argument
Also clean up some coding errors.

(closes issue #17469)
Reported by: wdoekes
Patches:
      astsvn-rtp-set-debug-ip.patch uploaded by wdoekes (license 717)
Tested by: wdoekes, pabelanger



git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@273233 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-06-30 17:28:04 +00:00
Matthew Nicholson 480b7e43ca Implemement support for handling multiple documents when sending.
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@272558 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-06-25 19:42:54 +00:00
Tilghman Lesher 621a86db18 If there is realtime configuration, it does not get re-read on reload unless the config file also changes.
(closes issue #16982)
 Reported by: dmitri
 Patches: 
       res_musiconhold.patch uploaded by dmitri (license 1001)
 Tested by: atis


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@272332 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-06-23 21:53:49 +00:00
Tilghman Lesher 9ec4987d3b Ensure a NULL file while debugging cannot crash AEL.
(closes issue #17215)
 Reported by: vazir
 Patches: 
       20100518__issue17215.diff.txt uploaded by tilghman (license 14)
 Tested by: tilghman


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@272260 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-06-23 21:06:40 +00:00
Russell Bryant 294c78a27e Resolve some errors that occur on a graceful shutdown.
Don't Finalize() if Initialize() did not succeed.  This resulted in an error
about trying to Finalize() an invalid handle.

Also trim some trailing whitespace while in the area.


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@271867 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-06-22 16:28:03 +00:00
Russell Bryant 9cc7c55578 Change the method of retrieving the Asterisk version string.
Using this method makes it so res_fax doesn't have to be rebuilt on every
svn update.


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@271833 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-06-22 16:17:14 +00:00
Tilghman Lesher e3873889b8 Conflict kqueue on OS X, since it doesn't work there yet, anyway.
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@271657 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-06-21 22:41:00 +00:00
Jeff Peeler b3281ac725 Merged revisions 271552 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
  r271552 | jpeeler | 2010-06-21 15:37:47 -0500 (Mon, 21 Jun 2010) | 7 lines
  
  Do not use sizeof to calculate size of a heap allocated character array.
  
  Change left out from 271399.
  
  (closes issue #16053)
  Reported by: diLLec
........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@271554 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-06-21 20:46:53 +00:00
David Vossel 1a7e1aee5e fixes logic error introduced by slin16 sip support
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@271551 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-06-21 20:33:41 +00:00
Jeff Peeler 54f2dfc91c Merged revisions 271399 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
  r271399 | jpeeler | 2010-06-18 14:28:24 -0500 (Fri, 18 Jun 2010) | 11 lines
  
  Fix crash when parsing some heavily nested statements in AEL on reload.
  
  Due to the recursion used when compiling AEL in gen_prios, all the stack space 
  was being consumed when parsing some AEL that contained nesting 13 levels deep.
  Changing a few large buffers to be heap allocated fixed the crash, although I
  did not test how many more levels can now be safely used.
  
  (closes issue #16053)
  Reported by: diLLec
  Tested by: jpeeler
........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@271483 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-06-18 21:32:09 +00:00
David Vossel ba3d1ad680 adds support for slin16 in sip
(closes issue #16153)
Reported by: kfister
Patches:
      16153-1.6.2.0-rc5.patch uploaded by kfister (license 912)
      slin16.sip.patch.1 uploaded by malcolmd (license 924)
Tested by: kfister, malcolmd


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@271261 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-06-17 18:36:06 +00:00
David Vossel b00f58da25 adds speex 16khz audio support
(closes issue #17501)
Reported by: fabled
Patches:
      asterisk-trunk-speex-wideband-v2.patch uploaded by fabled (license 448)
Tested by: malcolmd, fabled, dvossel



git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@271231 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-06-17 17:23:43 +00:00
David Vossel fcb055fb4e addition of G.719 pass-through support
(closes issue #16293)
Reported by: malcolmd
Patches:
      g719.passthrough.patch.7 uploaded by malcolmd (license 924)
      format_g719.c uploaded by malcolmd (license 924)



git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@270940 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-06-16 19:03:24 +00:00
Paul Belanger 0bf94685fd MSG_OOB flag on HANGUP packet removed.
Per Tilghman's request on IRC (#asterisk-bugs).

(closes issue #17506)
Reported by: brycebaril
Tested by: pabelanger, tilghman


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@270936 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-06-16 18:43:22 +00:00
Terry Wilson fb71a38a41 Don't send files twice and remove extra \r\n from header
After the manager http auth changes, we forgot to remove the manual
sending of the file. Also, ast_http_send adds two \r\n to the header that
is passed to it, so a trailing \r\n is removed from the Content-type
header. It might be better to change ast_http_send, but I don't like changing
the behavior of an API function.

(closes issue #17239)
Reported by: cjacobsen
Patches: 
      patch2.diff uploaded by cjacobsen (license 1029)
Tested by: lathama, cjacobsen



git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@270660 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-06-15 21:10:15 +00:00
Tilghman Lesher a0d8a35659 Argh, mixed declarations and code.
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@270552 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-06-15 18:16:04 +00:00
Tilghman Lesher 81c15adfa2 Add distributed devicestate via the XMPP protocol.
(closes issue #15757)
 Reported by: Marquis
 Patches: 
       distributed_devstate-XMPP.txt uploaded by lmadsen (license 10)
 Tested by: Marquis, lmadsen, marcelloceschia
 
Review: https://reviewboard.asterisk.org/r/351/


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@270519 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-06-15 17:06:23 +00:00
Paul Belanger 41d7b51bf7 Merged revisions 270331 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
  r270331 | pabelanger | 2010-06-14 17:31:59 -0400 (Mon, 14 Jun 2010) | 14 lines
  
  Properly play first file in sort list.
  
  When using sort=alpha we would always skip the first file
  in the list first time through.  We now check for that
  properly. 
  
  (closes issue #17470)
  Reported by: pabelanger
  Patches:
        sort.aplha.patch uploaded by pabelanger (license 224)
  Tested by: lmadsen
  
  Review: https://reviewboard.asterisk.org/r/703/
........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@270332 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-06-14 21:33:55 +00:00
David Vossel e98835e437 fixes crash in moh when cachertclasses flag is used
The result for moh_register was not verified to guarantee
the mohclass as added to the container.


(closes issue #16993)
Reported by: dmitri
Patches:
      res_musiconhold_rtclass2.patch uploaded by dmitri (license 1001)
      moh_crash2.diff uploaded by dvossel (license 671)
Tested by: dmitri




git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@269271 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-06-09 15:09:25 +00:00
Leif Madsen c672763af8 Fix some doxygen warnings.
(closes issue #17336)
Reported by: snuffy
Patches:
      doxygen-fixes1.diff uploaded by snuffy (license 35)
Tested by: russell

git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@268969 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-06-08 14:38:18 +00:00
Tilghman Lesher 523e4e50bf Release list lock before returning on error.
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@268933 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-06-08 06:57:24 +00:00
Terry Wilson 857814f435 Add SRTP support for Asterisk
After 5 years in mantis and over a year on reviewboard, SRTP support is finally
being comitted. This includes generic CHANNEL dialplan functions that work for
getting the status of whether a call has secure media or signaling as defined
by the underlying channel technology and for setting whether or not a new
channel being bridged to a calling channel should have secure signaling or
media. See doc/tex/secure-calls.tex for examples.

Original patch by mikma, updated for trunk and revised by me.

(closes issue #5413)
Reported by: mikma
Tested by: twilson, notthematrix, hemanshurpatel

Review: https://reviewboard.asterisk.org/r/191/


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@268894 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-06-08 05:29:08 +00:00
Tilghman Lesher 6279bf10c4 Avoid unloading res_smdi twice.
(closes issue #17237)
Reported by: pabelanger


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@268653 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-06-07 17:14:40 +00:00
Terry Wilson a55820a26d Use the correct ical.h file
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@266832 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-06-01 22:14:44 +00:00
Tilghman Lesher 464e44e325 Don't register functions until the last possible point, so they're not unloaded unnecessarily.
(closes issue #15996)
 Reported by: junky
 Patches: 
       sdmi_wait.diff uploaded by junky (license 177)


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@266735 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-06-01 18:02:24 +00:00
Terry Wilson 9a2f04ce26 Fix ical library handling (again)
Newer versions of libical (which we require) store the header file in a
libical/ subfolder and include an ical.h file that does a #warning for
deprecation and then #includes <libical/ical.h>. Since we now test for
libical/ical.h, we can change the #includes back to <libical/ical.h> and
remove the test which specifically adds /usr/include/libical as an include
directory.


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@266386 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-05-28 22:54:03 +00:00
Mark Michelson 529a87ce7d Remove unrelated MOH change from previous commit.
Thanks Kevin!



git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@266094 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-05-26 20:15:47 +00:00
Mark Michelson 8999372c33 Fix misspelling of macro args.
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@266092 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-05-26 20:04:51 +00:00
Tilghman Lesher 35025c16d0 Merged revisions 265910 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
  r265910 | tilghman | 2010-05-26 11:21:00 -0500 (Wed, 26 May 2010) | 7 lines
  
  Not finding rows in the DB does not rise to the level of a warning.
  
  (closes issue #17062)
   Reported by: drookie
   Patches: 
         20100525__issue17062.diff.txt uploaded by tilghman (license 14)
........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@265923 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-05-26 16:23:28 +00:00
Tilghman Lesher 5c9fdd8666 Construct socket name, according to the Postgres docs, and document as such.
(closes issue #17392)
 Reported by: dps
 Patches: 
       20100525__issue17392.diff.txt uploaded by tilghman (license 14)
 Tested by: dps


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@265894 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-05-26 16:14:48 +00:00
Terry Wilson f1503b9e1d Ensure that libneon > 0.29.0 is installed for res_calendar_ews
This uses a modified version of pabelanger's patch that checks for NTLM support
instead, which was added in 0.29.0 which is what is required for
res_calendar_ews.

(closes issue #17391)
Reported by: loloski
Patches: 
      issue17391.patch.v2 uploaded by pabelanger (license 224)
Tested by: twilson


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@265793 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-05-26 05:33:11 +00:00
Tilghman Lesher a7498ae02e Use configure to determine the prefixes and include directories properly.
This ensures cross-platform compatibility, even among Linux distributions,
which don't always put headers in the same place.

(closes issue #17391)
 Reported by: loloski


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@265747 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-05-26 00:29:40 +00:00
Terry Wilson 880cde12ac Calendaring support for Exchange Server 2007+ via EWS
This commit adds support for calendaring with Exchange Server 2007+ via
Exchange Web Services. Full write support and for querying attendees. Many
thanks to Jan Kaláb for the feature.

(closes issue #17022)
Reported by: pitel
Patches: 
      res_calendar_ews.c uploaded by pitel (license 1008)
Tested by: pitel, twilson

Review: https://reviewboard.asterisk.org/r/557/
Review: https://reviewboard.asterisk.org/r/668/


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@265317 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-05-24 18:21:20 +00:00
Mark Michelson 0a63e3fa10 Log spandsp's fax debug output to the FAX logger level.
Review: https://reviewboard.asterisk.org/r/658



git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@264953 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-05-21 15:15:58 +00:00
David Vossel 51e7ee235b fixes crash during dtmf
During the processing of Cisco dtmf the dtmf samples were
not being calculated correctly.  In an attempt to determine
what sample rate was being used, a NULL frame was processed
which caused a crash.  This patch resolves this.

(closes issue #17248)
Reported by: falves11
Patches:
      issue_17248.diff uploaded by dvossel (license 671)



git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@264114 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-05-19 14:38:02 +00:00
Tilghman Lesher a21192f4a7 Make happy green color come back
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@263858 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-05-18 20:49:00 +00:00
Tilghman Lesher 113c677257 For FreeBSD
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@262987 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-05-13 17:49:51 +00:00
Tilghman Lesher 88a8703c37 Hmmm, probably should have read the manpage more thoroughly.
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@262940 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-05-13 16:46:18 +00:00
Tilghman Lesher 8d6ee962c7 Add kqueue(2) implementation to Asterisk in various places.
This will save a considerable amount of CPU on the BSDs, including Mac OS X,
as it eliminates several places in the code that we previously used a busy
loop.  Additionally, this adds a res_timing interface, using kqueue timers.

Review: https://reviewboard.asterisk.org/r/543/


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@262852 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-05-13 05:37:31 +00:00
Leif Madsen c17cda109a Revert previous WARNING message removal.
Marquis42 suggested a better method of doing what I wanted because I ended up
removing the WARNING message for all instances when really I just wanted to
remove it for the 'return' keyword, not everything.

(issue #17145)

git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@262798 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-05-12 19:53:10 +00:00
Leif Madsen 881450ec82 Remove unnecessary WARNING message in ael/pval.c
(closes issue #17145)
Reported by: okrief

git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@262796 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-05-12 19:31:42 +00:00
Jason Parker d8dea9e76a Merged revisions 262421 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
  r262421 | qwell | 2010-05-11 14:55:42 -0500 (Tue, 11 May 2010) | 11 lines
  
  Use a less silly method for modifying a flex-generated file.
  
  The sed syntax that was used wasn't actually valid, causing some versions to
  choke.  This is the method that is used in 1.6.x+ for similar changes.
  
  (closes issue #16696)
  Reported by: bklang
  Patches: 
        16696-sedfix.diff uploaded by qwell (license 4)
  Tested by: qwell
........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@262422 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-05-11 19:57:24 +00:00
Mark Michelson a554e00fed Merged revisions 260345 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
  r260345 | mmichelson | 2010-04-30 15:08:15 -0500 (Fri, 30 Apr 2010) | 18 lines
  
  Fix potential crash from race condition due to accessing channel data without the channel locked.
  
  In res_musiconhold.c, there are several places where a channel's
  stream's existence is checked prior to calling ast_closestream on it. The issue
  here is that in several cases, the channel was not locked while checking the
  stream. The result was that if two threads checked the state of the channel's
  stream at approximately the same time, then there could be a situation where
  both threads attempt to call ast_closestream on the channel's stream. The result
  here is that the refcount for the stream would go below 0, resulting in a crash.
  
  I have added proper channel locking to res_musiconhold.c to ensure that
  we do not try to check chan->stream without the channel locked. A Digium customer
  has been using this patch for several weeks and has not had any crashes since
  applying the patch.
  
  ABE-2147
........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@260346 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-04-30 20:11:02 +00:00
Jason Parker 7f5a3370ad Fix compile on systems without HAVE_NULLSAFE_PRINTF defined.
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@259617 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-04-27 22:47:36 +00:00
Matthew Nicholson 13f523731a Update res_fax and res_fax_spandsp to be compatible with Fax For Asterisk 1.2.
The fax session initilization code for T.38 faxes has been rewritten. T.38 session initialization was removed from generic_fax_exec, and split into two different code paths for receive and send.  Also the 'z' option (to send a T.38 reinvite if we do not receive one) was added to sendfax.

In the output of 'fax show sessions', the 'Type' column has been renamed to 'Tech' and replaced with a new 'Tech' column that will report 'G.711' or 'T.38'.

Control of ECM defaults has been added to res_fax

A 'fax show settings' CLI command has been added.

Support of the new AST_T38_REQUEST_PARMS control method request to handle channels that have already received a T.38 reinvite before the FAX application is start has been added.

Support for the 'fax show settings' command has been added to res_fax_spandsp and handling of the ECM flag has been slightly altered.


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@258896 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-04-26 14:18:15 +00:00
Tilghman Lesher 56a6994310 Merged revisions 258775 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
  r258775 | tilghman | 2010-04-25 13:09:05 -0500 (Sun, 25 Apr 2010) | 6 lines
  
  When StopMonitor is called, ensure that it will not be restarted by a channel event.
  (closes issue #16590)
   Reported by: kkm
   Patches: 
         resmonitor-16590-trunk.239289.diff uploaded by kkm (license 888)
........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@258776 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-04-25 18:12:14 +00:00
Jason Parker 9e3f5fa6fb Remove ABI differences that occured when compiling with DEBUG_THREADS.
"Bad Things" would happen if Asterisk was compiled with DEBUG_THREADS, but a
loaded module was not (or vice versa).  This also immensely simplifies the
lock code, since there are no longer 2 separate versions of them.

Review: https://reviewboard.asterisk.org/r/508/


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@258557 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-04-22 19:08:01 +00:00
Leif Madsen f905bb1c0f Fix the \brief description in the res_calendar_*.c files.
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@258265 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-04-21 13:26:28 +00:00
Julian Lyndon-Smith d85650e4aa Added MixMonitorMute manager command
Added a new manager command to mute/unmute MixMonitor audio on a channel. 
Added a new feature to audiohooks so that you can mute either read / write
(or both) types of frames - this allows for MixMonitor to mute either side
of the conversation without affecting the conversation itself.

(closes issue #16740)
Reported by: jmls

Review: https://reviewboard.asterisk.org/r/487/



git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@258190 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-04-21 11:27:27 +00:00
Richard Mudgett a5a0a5f867 Consolidate ast_channel.cid.cid_rdnis into ast_channel.redirecting.from.number.
SWP-1229
ABE-2161

* Ensure chan_local.c:local_call() will not leak cid.cid_dnid when
copying.


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@256104 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-04-03 02:12:33 +00:00
Kevin P. Fleming 2be88e05c0 Allow symbol export filtering to work properly on platforms that have symbol prefixes.
Some platforms prefix externally-visible symbols in object files generated
from C sources (most commonly, '_' is the prefix). On these platforms,
the existing symbol export filtering process ends up suppressing all the symbols
that are supposed to be left visible. This patch allows the prefix string
to be supplied to the top-level Makefile in the LINKER_SYMBOL_PREFIX variable,
and then generates the linker scripts as required to include the prefix
supplied.



git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@255906 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-04-02 18:57:58 +00:00
Mark Michelson bd716c50fd Recorded merge of revisions 254452 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
  r254452 | mmichelson | 2010-03-25 10:59:56 -0500 (Thu, 25 Mar 2010) | 44 lines
  
  Several fixes regarding RFC2833 DTMF detection.
  
  Here is a copy and paste of the details from my request on
  reviewboard that dealt with these changes:
  
  Fix 1. The first change in place is to fix Mantis issue 15811, which deals with a situation where Asterisk will incorrectly interpret out of order RFC2833 frames as duplicate DTMF digits. For instance, we would receive a sequence like:
  
  seqno 1: DTMF 1
  seqno 2: DTMF 1
  seqno 3: DTMF 1
  seqno 4: DTMF 1
  seqno 6: DTMF 1 (end)
  seqno 5: DTMF 1
  seqno 7: DTMF 1 (end)
  seqno 8: DTMF 1 (end)
  
  Prior to this patch when we received the frame with seqno 5, we would interpret this as a new DTMF 1. With this patch, we will check the seqno of the incoming digit and not process the frame if the seqno is lower than the last recorded seqno. Note that we do not record the seqno of the dropped DTMF frame for future processing. While the above situation is what was designed to be fixed, the patch is written in such a way that the following would also be fixed too:
  
  seqno  9: DTMF 1
  seqno 10: DTMF 1 (end)
  seqno 11: DTMF 1 (end)
  seqno 13: DTMF 2
  seqno 12: DTMF 1 (end)
  seqno 14: DTMF 2
  seqno 15: DTMF 2 (end)
  seqno 16: DTMF 2 (end)
  seqno 17: DTMF 2 (end)
  
  In this second situation, the beginning of the DTMF 2 arrives before the final end frame of the DTMF 1. With the patch, seqno 12 is no processed and thus we properly interpret the DTMF.
  
  Fix 2. The second change in place is to fix an issue like the following:
  
  seqno 1: DTMF 1
  seqno 2: DTMF 1
  seqno 3: DTMF 1 (end) *packet lost*
  seqno 4: DTMF 1 (end) *packet lost*
  seqno 5: DTMF 1 (end) *packet lost*
  seqno 6: DTMF 2
  
  When we receive seqno 6, we had code in place that was supposed to properly end the previously unended DTMF 1. The problem was that the code was essentially a no-op. The code would set up an end frame for the DTMF 1 but would immediately overwrite the frame with the begin for DTMF 2. I changed process_dtmf_rfc2833() so that instead of returning a single frame, it is given as an output parameter a list of frames. Each frame that needs to be returned is appended to this list.
  
  Fix 3. The final change is a minor one where an AST_CONTROL_SRCCHANGE frame could get lost. If we process a cisco DTMF or an RFC 3389 frame and no frame was returned, then we would return &ast_null_frame. The problem is that earlier in the function, we may have generated an AST_CONTROL_SRCCHANGE frame and put it in the list of frames we wish to return. This frame would be lost in such a case. The patch fixes this problem
........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@254454 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-03-25 16:04:48 +00:00
Kevin P. Fleming 42577406fd Improve handling of T.38 re-INVITEs that arrive before a T.38-capable
application is executing on a channel.

This patch addresses an issue found during working with end-users
using res_fax. If an incoming call is answered in the dialplan, or
jumps to the 'fax' extension due to reception of a CNG tone (with
faxdetect enabled), and then the remote endpoint sends a T.38
re-INVITE, it is possible for the channel's T.38 state to be
'T38_STATE_NEGOTIATING' when the application starts up. Unfortunately,
even if the application wants to use T.38, it can't respond to the
peer's negotiation request, because the AST_CONTROL_T38_PARAMETERS
control frame that chan_sip sent originally has been lost, and the
application needs the content of that frame to be able to formulate a
reply.

This patch adds a new 'request' type to AST_CONTROL_T38_PARAMETERS,
AST_T38_REQUEST_PARMS. If the application sends this request, chan_sip
will re-send the original control frame (with
AST_T38_REQUEST_NEGOTIATE as the request type), and the application
can respond as normal. If this occurs within the five second timeout
in chan_sip, the automatic cancellation of the peer reinvite will be
stopped, and the application will 'own' the negotiation process from
that point onwards.

This also improves the code path in chan_sip to allow sip_indicate(),
when called for AST_CONTROL_T38_PARAMETERS, to be able to return a
non-zero response, which should have been in place before since the
control frame *can* fail to be processed properly. It also modifies
ast_indicate() to return whatever result the channel driver returned
for this control frame, rather than converting all non-zero results
into '-1'. Finally, the new request type intentionally returns a
positive value, so that an application that sends
AST_T38_REQUEST_PARMS can know for certain whether the channel driver
accepted it and will be replying with a control frame of its own, or
whether it was ignored (if the sip_indicate()/ast_indicate() path had
properly supported failure responses before, this would not be
necessary).

This patch also modifies res_fax to take advantage of the new request.

In addition, this patch makes sip_t38_abort() actually lock the
private structure before doing its work... bad programmer, no donut.

This patch also enhances chan_sip's 'faxdetect' support to allow
triggering on T.38 re-INVITEs received as well as CNG tone detection.

Review: https://reviewboard.asterisk.org/r/556/



git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@254450 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-03-25 15:27:31 +00:00
Leif Madsen 0eb71bccf1 handle_speechset has 4 arguments.
Update code to reflect that handle_speechset has 4 arguments.

(closes issue #17093)
Reported by: gpatri
Patches: 
      res_agi.patch uploaded by gpatri (license 1014)
Tested by: pabelanger, mmichelson

git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@254446 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-03-25 15:21:26 +00:00
Jeff Peeler 5990fe07b8 Merged revisions 254235 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
  r254235 | jpeeler | 2010-03-23 19:37:23 -0500 (Tue, 23 Mar 2010) | 72 lines
  
  Ensure that monitor recordings are written to the correct location (again)
  
  This is an extension to 248860. As such the dialplan test has been extended:
  
  ; non absolute path, not combined
  exten => 5040, 1, monitor(wav,tmp/jeff/monitor_test)
  exten => 5040, n, dial(sip/5001)
  ; absolute path, not combined
  exten => 5041, 1, monitor(wav,/tmp/jeff/monitor_test2)
  exten => 5041, n, dial(sip/5001)
  ; no path, not combined
  exten => 5042, 1, monitor(wav,monitor_test3)
  exten => 5042, n, dial(sip/5001)
  ; combined: changemonitor from non absolute to no path (leaves tmp/jeff)
  exten => 5043, 1, monitor(wav,tmp/jeff/monitor_test4,m)
  exten => 5043, n, changemonitor(monitor_test5)
  exten => 5043, n, dial(sip/5001)
  ; combined: changemonitor from no path to non absolute path
  exten => 5044, 1, monitor(wav,monitor_test6,m)
  exten => 5044, n, changemonitor(tmp/jeff/monitor_test7) ; this wasn't possible before
  exten => 5044, n, dial(sip/5001)
  ; non absolute path, combined
  exten => 5045, 1, monitor(wav,tmp/jeff/monitor_test8,m)
  exten => 5045, n, dial(sip/5001)
  ; absolute path, combined 
  exten => 5046, 1, monitor(wav,/tmp/jeff/monitor_test9,m)
  exten => 5046, n, dial(sip/5001)
  ; no path, combined
  exten => 5047, 1, monitor(wav,monitor_test10,m)
  exten => 5047, n, dial(sip/5001)
  ; combined: changemonitor from non absolute to absolute (leaves tmp/jeff)
  exten => 5048, 1, monitor(wav,tmp/jeff/monitor_test11,m)
  exten => 5048, n, changemonitor(/tmp/jeff/monitor_test12)
  exten => 5048, n, dial(sip/5001)
  ; combined: changemonitor from absolute to non absolute (leaves /tmp/jeff)
  exten => 5049, 1, monitor(wav,/tmp/jeff/monitor_test13,m)
  exten => 5049, n, changemonitor(tmp/jeff/monitor_test14)
  exten => 5049, n, dial(sip/5001)
  ; combined: changemonitor from no path to absolute
  exten => 5050, 1, monitor(wav,monitor_test15,m)
  exten => 5050, n, changemonitor(/tmp/jeff/monitor_test16)
  exten => 5050, n, dial(sip/5001)
  ; combined: changemonitor from absolute to no path (leaves /tmp/jeff)
  exten => 5051, 1, monitor(wav,/tmp/jeff/monitor_test17,m)
  exten => 5051, n, changemonitor(monitor_test18)
  exten => 5051, n, dial(sip/5001)
  ; not combined: changemonitor from non absolute to no path (leaves tmp/jeff)
  exten => 5052, 1, monitor(wav,tmp/jeff/monitor_test19)
  exten => 5052, n, changemonitor(monitor_test20)
  exten => 5052, n, dial(sip/5001)
  ; not combined: changemonitor from no path to non absolute
  exten => 5053, 1, monitor(wav,monitor_test21)
  exten => 5053, n, changemonitor(tmp/jeff/monitor_test22)
  exten => 5053, n, dial(sip/5001)
  ; not combined: changemonitor from non absolute to absolute (leaves tmp/jeff)
  exten => 5054, 1, monitor(wav,tmp/jeff/monitor_test23)
  exten => 5054, n, changemonitor(/tmp/jeff/monitor_test24)
  exten => 5054, n, dial(sip/5001)
  ; not combined: changemonitor from absolute to non absolute (leaves /tmp/jeff)
  exten => 5055, 1, monitor(wav,/tmp/jeff/monitor_test24)
  exten => 5055, n, changemonitor(tmp/jeff/monitor_test25)
  exten => 5055, n, dial(sip/5001)
  ; not combined: changemonitor from no path to absolute
  exten => 5056, 1, monitor(wav,monitor_test26)
  exten => 5056, n, changemonitor(/tmp/jeff/monitor_test27)
  exten => 5056, n, dial(sip/5001)
  ; not combined: changemonitor from absolute to no path (leaves /tmp/jeff)
  exten => 5057, 1, monitor(wav,/tmp/jeff/monitor_test28)
  exten => 5057, n, changemonitor(monitor_test29)
  exten => 5057, n, dial(sip/5001)
........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@254277 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-03-24 17:15:05 +00:00
Kevin P. Fleming ae6008ef3a Change per-file debug and verbose levels to be per-module, the way
users expect them to work.

'core set debug' and 'core set verbose' can optionally change the
level for a specific filename; however, this is actually for a
specific source file name, not the module that source file is included
in. With examples like chan_sip, chan_iax2, chan_misdn and others
consisting of multiple source files, this will not lead to the
behavior that users expect. If they want to set the debug level for
chan_sip, they want it set for all of chan_sip, and not to have to
also set it for reqresp_parser and other files that comprise the
chan_sip module.

This patch changes this functionality to be module-name based instead
of file-name based.

To make this work, some Makefile modifications were required to ensure
that the AST_MODULE definition is present in each object file produced
for each module as well.

Review: https://reviewboard.asterisk.org/r/574/



git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@253917 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-03-23 14:22:27 +00:00
Philippe Sultan 5200b6e81e Prevent a crash when a buddy gets offline.
(closes issue #16760)
Reported by: fiddur
Patches:
      248394.diff uploaded by fiddur (license 678)i with modifications by me
Tested by: fiddur, phsultan


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@253261 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-03-18 15:59:19 +00:00
Sean Bright 5f3730df4c Include an extra newline after "Aliased CLI command" to get back the prompt.
The other issue mentioned in this bug will be more difficult to resolve since we
have no idea (right now) of knowing if the command that is aliased has been
installed yet.

(issue #16978)
Reported by: jw-asterisk
Tested by: seanbright


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@252848 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-03-16 19:36:24 +00:00
Kevin P. Fleming 43d922b5a6 Improve handling of values supplied to FAXOPT(ecm).
Previously, values that began with whitespace were silently treated as 'no',
and all non-'yes' values were also treated as 'no'. Now the supplied value
is specifically checked for a 'yes' or 'no' (or equivalent) value, after skipping
leading whitespace. If the value is not valid, then a warning message is generated.



git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@252709 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-03-15 22:48:38 +00:00
Terry Wilson 68d1ded8dd Only change the RTP ssrc when we see that it has changed
This change basically reverts the change reviewed in
https://reviewboard.asterisk.org/r/374/ and instead limits the
updating of the RTP synchronization source to only those times when we
detect that the other side of the conversation has changed the ssrc.

The problem is that SRCUPDATE control frames are sent many times where
we don't want a new ssrc, including whenever Asterisk has to send DTMF
in a normal bridge. This is also not the first time that this mistake
has been made. The initial implementation of the ast_rtp_new_source
function also changed the ssrc--and then it was removed because of
this same issue. Then, we put it back in again to fix a different
issue. This patch attempts to only change the ssrc when we see that
the other side of the conversation has changed the ssrc.

It also renames some functions to make their purpose more clear.

Review: https://reviewboard.asterisk.org/r/540/


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@252089 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-03-12 22:04:51 +00:00
Jeff Peeler 7f29269d68 Merged revisions 250786 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
  r250786 | jpeeler | 2010-03-04 19:02:58 -0600 (Thu, 04 Mar 2010) | 9 lines
  
  Fix not being able to specify a URL in MOH class directory.
  
  Don't attempt to chdir on a URL!
  
  (closes issue #16875)
  Reported by: raarts
  Patches: 
        moh-http.patch uploaded by raarts (license 937)
........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@250787 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-03-05 01:05:46 +00:00
Matthew Nicholson 8ef8706944 Updated CHANGES file to mention res_fax and res_fax_spandsp.
Also fixed MODULEINFO depends and conflicts for app_fax, res_fax, and res_fax_spandsp.


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@250302 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-03-03 15:39:45 +00:00
Matthew Nicholson 06dc8bc123 Merge res_fax and res_fax_spandsp.
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@250190 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-03-02 23:11:06 +00:00
Leif Madsen 06041ea28d Fix several XML documentation validate errors.
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@249892 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-03-02 19:02:56 +00:00
Jeff Peeler 406bb18127 Merged revisions 248860 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
  r248860 | jpeeler | 2010-02-25 15:22:06 -0600 (Thu, 25 Feb 2010) | 18 lines
  
  Ensure that monitor recordings are written to the correct location (again)
  
  This is an extension to 248757. As such the dialplan test has been extended:
  
  exten => 5040, 1, monitor(wav,tmp/jeff/monitor_test,b)
  exten => 5040, n, dial(sip/5001)
  exten => 5041, 1, monitor(wav,/tmp/jeff/monitor_test2,b)
  exten => 5041, n, dial(sip/5001)
  exten => 5042, 1, monitor(wav,monitor_test3,b)
  exten => 5042, n, dial(sip/5001)
  exten => 5043, 1, monitor(wav,tmp/jeff/monitor_test3,m)
  exten => 5043, n, changemonitor(monitor_test4)
  exten => 5043, n, dial(sip/5001)
  exten => 5044, 1, monitor(wav,monitor_test4,m)
  exten => 5044, n, changemonitor(tmp/jeff/monitor_test5) ; this looks to fail by design and emits a warning
  exten => 5044, n, dial(sip/5001)
........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@248952 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-02-25 23:09:54 +00:00
Jeff Peeler d64987f8ad Merged revisions 248757 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
  r248757 | jpeeler | 2010-02-25 12:06:54 -0600 (Thu, 25 Feb 2010) | 15 lines
  
  Ensure that monitor recordings are written to the correct location.
  
  Recordings should be placed in the monitor directory when a non-absolute path
  is used.
  
  Exact dialplan used for testing:
  exten => 5040, 1, monitor(wav,tmp/jeff/monitor_test,b)
  exten => 5040, n, dial(sip/5001)
  exten => 5041, 1, monitor(wav,/tmp/jeff/monitor_test2,b)
  exten => 5041, n, dial(sip/5001)
  exten => 5042, 1, monitor(wav,monitor_test3,b)
  exten => 5042, n, dial(sip/5001)
  
  ABE-2101
........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@248793 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-02-25 18:37:56 +00:00
Olle Johansson e8df30b584 Improve support for RTCP reports without report blocks
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@248108 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-02-20 22:37:22 +00:00
Tilghman Lesher de1d19f511 Revert an errant part of a previous cleanup, to fix a memory corruption issue.
(closes issue #16368)
 Reported by: thirionjwf
 Patches: 
       res_speech.c.patch uploaded by thirionjwf (license 955)


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@247841 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-02-18 23:13:46 +00:00
Philippe Sultan 945529cae8 Add a new manager event for our buddies status.
The new JabberStatus event gives a concise view of the status change to the AMI
clients. Thanks fiddur!

(closes issue #16760)
Reported by: fiddur
Patches:
      244498.2.diff uploaded by fiddur (license 678)
Tested by: fiddur, phsultan


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@247500 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-02-18 16:34:08 +00:00
Tilghman Lesher 83b0d30de5 res_pktccops needs to be able to export a symbol for chan_mgcp
(closes issue #16782)
 Reported by: nahuelgreco
 Patches: 
       res_pktccops.exports uploaded by nahuelgreco (license 162)


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@246208 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-02-10 21:55:42 +00:00
Tilghman Lesher c8abb42e6a Solaris doesn't like outputting a NULL to a %s in format strings.
Detect all platforms that don't like that, either, and ensure that when documentation is
missing, we pass a non-NULL pointer when outputting the corresponding documentation.

(closes issue #16689)
 Reported by: bklang
 Patches: 
       20100209__issue16689__with_tests.diff.txt uploaded by tilghman (license 14)
 
Review: https://reviewboard.asterisk.org/r/497/


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@246030 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-02-10 16:01:28 +00:00
Terry Wilson 6ad3619189 Fix crash on 32-bit for users not using https
(closes issue #16778)
Reported by: pitel
Patches: 
      diff.txt uploaded by twilson (license 396)
Tested by: twilson, pitel



git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@244945 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-02-05 17:20:24 +00:00
Tilghman Lesher 1ffdf5c2ee Merged revisions 242969 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
  r242969 | tilghman | 2010-01-25 15:50:22 -0600 (Mon, 25 Jan 2010) | 2 lines
  
  Err, and use the new menuselect define, too.
........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@242971 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-01-25 21:51:41 +00:00
Tilghman Lesher 245bd1861f Merged revisions 242852 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
  r242852 | tilghman | 2010-01-25 14:15:45 -0600 (Mon, 25 Jan 2010) | 2 lines
  
  Restore FreeBSD to able-to-compile-ish-mode
........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@242857 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-01-25 20:18:15 +00:00
Terry Wilson fb65a6860a Fix INTERNAL_OBJ error on stop when calendars.conf missing
Initialize the calendars container before calling load_config and return FAILURE
on allocation failure. Also, use the AST_MODULE_LOAD_* values for return values.
Thanks to rmudgett for pointing out the error and the need to use the defined
values for return


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@242812 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-01-25 18:01:08 +00:00
Tilghman Lesher afb9fab574 Merged revisions 242728 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
  r242728 | tilghman | 2010-01-24 23:42:22 -0600 (Sun, 24 Jan 2010) | 2 lines
  
  Buildbot pointed out an error (thanks, buildbot!)
........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@242729 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-01-25 05:45:00 +00:00
Tilghman Lesher 137046e459 Merged revisions 242723 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
  r242723 | tilghman | 2010-01-24 23:33:37 -0600 (Sun, 24 Jan 2010) | 2 lines
  
  Oops, should have used CMD_PREFIX, not ECHO_PREFIX, for the commands.
........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@242724 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-01-25 05:34:33 +00:00
Sean Bright 8f356343dd Instead of crashing, allocate our header ast_str before we try to use it.
(closes issue #16680)
Reported by: lmadsen
Patches:
      issue16680_20100122.patch uploaded by seanbright (license 71)
Tested by: lmadsen


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@242607 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-01-24 21:49:17 +00:00
Tilghman Lesher bc9f02a60d Merged revisions 242520 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
  r242520 | tilghman | 2010-01-24 00:33:01 -0600 (Sun, 24 Jan 2010) | 8 lines
  
  Only rebuild bison and flex source files on demand, if bison and flex are detected by the configure script.
  
  Changed after discussion on the -dev list about possible unnecessary build
  failures, due to checkouts/untars causing these special source files to
  possibly be newer than their resulting C files.  This should additionally
  ensure that nobody need learn about extra Makefile arguments to ensure the
  proper files get rebuilt when changes are made to these special source files.
........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@242521 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-01-24 06:40:31 +00:00
Tilghman Lesher 3d51b9025f Merged revisions 242423 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
  r242423 | tilghman | 2010-01-22 15:44:18 -0600 (Fri, 22 Jan 2010) | 7 lines
  
  Rebuild from flex, bison sources when necessary.
  
  (issue #14629)
   Reported by: Marquis
   Patches: 
         20100121__issue14629.diff.txt uploaded by tilghman (license 14)
........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@242424 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-01-22 21:45:18 +00:00
David Vossel e469483d82 rtp timestamp to timeval calculation fix
The rtp timestamp to timeval calculation was only
accurate for 8kHz audio. This patch corrects this.

Review: https://reviewboard.asterisk.org/r/468/

SWP-648



git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@241714 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-01-20 21:14:47 +00:00
Tilghman Lesher 49bf540c71 Create iterative method for querying SRV results, and use that for finding AGI servers.
(closes issue #14775)
 Reported by: _brent_
 Patches: 
       20091215__issue14775.diff.txt uploaded by tilghman (license 14)
       hagi-5.patch uploaded by brent (license 388)
 Tested by: _brent_
 Reviewboard: https://reviewboard.asterisk.org/r/378/


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@241188 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-01-19 00:28:49 +00:00
Sean Bright 1a30c33d47 Get MoH building on OpenSolaris.
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@240667 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-01-16 00:54:08 +00:00
Sean Bright a60935478b Clarify error message in res_timing_timerfd.
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@240505 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-01-15 22:07:31 +00:00
Sean Bright e612d87695 Convert a few places to use ast_calloc_with_stringfields where applicable.
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@240368 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-01-15 18:21:50 +00:00
Sean Bright 37b73283ff Plug a memory leak in res_config_ldap.
(closes issue #16257)
Reported by: nito
Patches:
      issue16257_20100111.diff uploaded by seanbright (license 71)


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@240271 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-01-14 23:13:02 +00:00
Sean Bright cd2ba30e9e If we aren't running on a machine that support CLOCK_MONOTONIC, don't load.
Group developed and tested by seanbright, Corydon76, Kobaz, and Amorsen.


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@240226 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-01-14 20:30:03 +00:00
Sean Bright a5688e483b Fix crash in res_config_ldap.
We need to allocate enough room for 2 pointers, not 2 characters.

(closes issue #16397)
Reported by: bklang
Patches:
      res_config_ldap.patch uploaded by applsplatz (license 949)
Tested by: applsplatz


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@239473 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-01-12 17:09:12 +00:00
Tilghman Lesher cd8aa003e4 Socket level option is SOL_SOCKET, not SO_SOCKET.
(issue #16580)


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@239245 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-01-11 23:19:51 +00:00
Sean Bright ea47ab7ed9 Pass NULL for the ao2_callback function pointer instead of duplicating cb_true.
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@239114 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-01-11 16:41:44 +00:00
Tilghman Lesher 055cb0e0ae Add the class actually used in the MusicOnHold start event.
(closes issue #16499)
 Reported by: syspert
 Patches: 
       mohclass.patch uploaded by syspert (license 938)


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@238795 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-01-08 22:54:59 +00:00
Tilghman Lesher 963319d807 Initialize variables that we attempt to free later.
(closes issue #16302)
 Reported by: yahsyn
 Patches: 
       20091124__issue16302.diff.txt uploaded by tilghman (license 14)
 Tested by: yahsyn


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@238754 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-01-08 22:17:03 +00:00
Tilghman Lesher 386b847075 Merged revisions 237405 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
  r237405 | tilghman | 2010-01-04 12:19:00 -0600 (Mon, 04 Jan 2010) | 16 lines
  
  Add a flag to disable the Background behavior, for AGI users.
  This is in a section of code that relates to two other issues, namely
  issue #14011 and issue #14940), one of which was the behavior of
  Background when called with a context argument that matched the current
  context.  This fix broke FreePBX, however, in a post-Dial situation.
  Needless to say, this is an extremely difficult collision of several
  different issues.  While the use of an exception flag is ugly, fixing all
  of the issues linked is rather difficult (although if someone would like
  to propose a better solution, we're happy to entertain that suggestion).
  (closes issue #16434)
   Reported by: rickead2000
   Patches: 
         20091217__issue16434.diff.txt uploaded by tilghman (license 14)
         20091222__issue16434__1.6.1.diff.txt uploaded by tilghman (license 14)
   Tested by: rickead2000
........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@237406 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-01-04 18:28:28 +00:00
Jeff Peeler fb6606dc4a Fix timeout for AGI command speech recognize.
(closes issue #16297)
Reported by: semond


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@237323 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-01-04 16:24:51 +00:00
Olle Johansson 8160e75638 - Disable res_pktccops by default
- Add dependency in chan_mgcp that was missing
- Add a small amount of doc to the source code


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@237284 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-01-04 07:55:30 +00:00
Tilghman Lesher 24107651e7 Merged revisions 236184 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
  r236184 | tilghman | 2009-12-22 20:55:24 -0600 (Tue, 22 Dec 2009) | 4 lines
  
  If EXEC only gets a single argument, don't crash when the second is used.
  (closes issue #16504)
   Reported by: bklang
........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@236186 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-12-23 03:07:48 +00:00
Jeff Peeler f95ee393f2 Merged revisions 235940 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
  r235940 | jpeeler | 2009-12-21 13:43:41 -0600 (Mon, 21 Dec 2009) | 13 lines
  
  Change Monitor to not assume file to write to does not contain pathing.
  
  227944 changed the fname_base argument to always append the configured monitor
  path. This change was necessary to properly compare files for uniqueness. 
  If a full path is given though, nothing needs to be appended and that is
  handled correctly now.
  
  (closes issue #16377)
  (closes issue #16376)
  Reported by: bcnit
  Patches:
        res_monitor.c-issue16376-1.patch uploaded by dant (license 670)
........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@235941 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-12-21 19:54:20 +00:00
Jeff Peeler 6b34563778 Add auth_policy option to jabber.conf for auto user registration.
The option is global and currently the acceptable values as noted in the sample
config are accept or deny.

(closes issue #15228)
Reported by: lp0


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@235342 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-12-16 20:25:27 +00:00
Tilghman Lesher 2204f89a1d Merged revisions 235052 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
  r235052 | tilghman | 2009-12-15 09:29:24 -0600 (Tue, 15 Dec 2009) | 4 lines
  
  Mandatory argument checking
  (closes issue #16446)
   Reported by: nicchap
........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@235053 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-12-15 15:33:49 +00:00
Tilghman Lesher b510b53ebc Missed a case that emits a WARNING where none is warranted.
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@234210 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-12-10 18:56:23 +00:00
Tilghman Lesher 219f969dcf Find another ref leak and change how we manage module references.
(closes issue #16388, closes issue #16279, closes issue #16390)
 Reported by: parisioa
 Patches: 
       20091208__issue16388.diff.txt uploaded by tilghman (license 14)
 Tested by: parisioa, tilghman
 Review: https://reviewboard.asterisk.org/r/442/


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@233718 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-12-08 18:22:44 +00:00
Jeff Peeler 26daf50863 Add applications JabberJoin, JabberLeave, JabberSendGroup for XMPP groupchat
(closes issue #14352)
Reported by: fiddur
Patches: 
      trunk-14352-2.diff uploaded by phsultan (license 73)
Tested by: fiddur


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@233468 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-12-07 17:59:46 +00:00
Tilghman Lesher 7768e2c62e Buildbot complained
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@232982 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-12-04 05:26:54 +00:00
Tilghman Lesher aa9ec67f97 OS X does not define MSG_NOSIGNAL, but it does have a socket option SO_NOSIGPIPE.
(closes issue #16178)
 Reported by: oej


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@232950 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-12-04 04:52:24 +00:00
Tilghman Lesher c8d5ce7c13 Remove debugging line
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@232661 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-12-03 00:09:36 +00:00
Tilghman Lesher 7e0a2db236 Fix multiple issues with musiconhold, which led to classes not getting destroyed properly.
* Classes are now tracked past removal from the core container, and module
   removal is actively prevented until all references are freed.
 * A hanging reference stored in the channel has been removed.  This could have
   caused a mismatch and the music state not properly cleared, if two or more
   reloads occurred between MOH being stopped and MOH being restarted.
 * In certain circumstances, duplicate classes were possible.
 * A race existed at reload time between a process being killed and the thread
   responsible for reading from the related pipe respawning that process.
 * Several reference counts have also been corrected.  At least one could have
   caused deleted classes to stick around forever, consuming resources.  This
   originally manifested as MOH external processes that were not killed at
   reload time.
(closes issue #16279, closes issue #16207)
 Reported by: parisioa, dcabot
 Patches: 
       20091202__issue16279__2.diff.txt uploaded by tilghman (license 14)
 Tested by: parisioa, tilghman


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@232660 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-12-03 00:08:55 +00:00
Tilghman Lesher f59fe83c56 More 32->64 bit codec conversions.
In the process of swapping ULAW to a place in the extended codec space, we
found several unhandled cases, where a 32-bit integer was still being used to
handle a codec field.  Most of these have been fixed with this commit, although
there is at least one case (codec_dahdi) which depends upon outside headers to
be altered before a conversion can be made.
(Fixes AST-278, SWP-459)


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@231850 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-12-01 20:27:37 +00:00
David Vossel cf87d81e9d Merged revisions 231441 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
  r231441 | dvossel | 2009-11-30 11:14:08 -0600 (Mon, 30 Nov 2009) | 11 lines
  
  fixes crash caused by RTP comfort noise payload greater than 24 bytes
  
  AST-2009-010
  
  (closes issue #16242)
  Reported by: amorsen
  Patches:
        issue16242.diff uploaded by oej (license 306)
  Tested by: amorsen, oej, dvossel
........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@231491 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-11-30 17:28:28 +00:00
Tilghman Lesher 5e2aa190fe Display a list of channel variables in each channel-oriented event.
(Closes AST-33)
Reviewboard:	https://reviewboard.asterisk.org/r/368/


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@230111 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-11-13 20:42:03 +00:00
David Vossel 4e14faaefe fixes pgsql double free of threadstorage
A thread storage variable was being freed incorrectly, which
resulted in a double free if two queries were made in the same thread.

(closes issue #16011)
Reported by: cristiandimache
Patches:
      issue16011.diff uploaded by dvossel (license 671)



git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@229093 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-11-10 15:27:45 +00:00
Tilghman Lesher c0b3c923a4 Fix various problems detected with Valgrind.
* chan_console accessed pvts after deallocation.
 * cdr_mysql stored a pointer that was freed by realloc()
 * The module loader did not check usecount on shutdown, which led to chan_iax2
 reading a timer that was already unloaded.
 * The event subsystem sometimes creates an event with no IEs.  Due to a corner
 condition, the code would read beyond the memory boundary.
 * res_pktccops did not correctly check whether its monitor thread was started.
(closes issue #16062)
 Reported by: alexanderheinz
 Patches: 
       20091109__issue16062.diff.txt uploaded by tilghman (license 14)
 Tested by: tilghman


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@228798 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-11-09 07:37:52 +00:00
Jeff Peeler b6290e0e93 Merged revisions 227944 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
  r227944 | jpeeler | 2009-11-04 17:47:08 -0600 (Wed, 04 Nov 2009) | 14 lines
  
  Fix incorrect filename comparsion after monitor file change
  
  The logic to detect if a requested file is indeed a different file from the
  current file was incorrect. The main issue being confusion of the use of
  filename_base which was previously set without pathing information and then
  compared to another full path. Robust file comparison logic has been added
  to properly check if two files are the same even if symlinks are used.
  
  (closes issue #15313)
  Reported by: caspy
  Patches: 
        20091103__issue15313__1.4.diff.txt uploaded by jpeeler (license 325)
        but mostly tilghman's work
........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@227945 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-11-04 23:50:59 +00:00
Tilghman Lesher d8e0c58437 Expand codec bitfield from 32 bits to 64 bits.
Reviewboard: https://reviewboard.asterisk.org/r/416/


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@227580 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-11-04 14:05:12 +00:00
Russell Bryant 3313924572 Resolve another warning.
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@227464 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-11-03 22:13:25 +00:00
Tilghman Lesher 66579d9d49 Add PacketCable NCS 1.0 support for Docsis/Eurodocsis networks
(closes issue #12950)
 Reported by: alea-soluciones
 Patches: 
       ncs-pktccops-12950-r206803.patch uploaded by alea-soluciones (license 514)
 Tested by: alea-soluciones, adomjan, urtho, nahuelgreco


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@227049 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-11-02 22:29:19 +00:00
Russell Bryant 844a01b27e Add an "Asterisk Architecture Overview" section to the doxygen documentation.
This is a side project I've been poking at this week.  The intent is to discuss
Asterisk architecture in a top down fashion to help new developers understand how
Asterisk is put together.  There is a ton of stuff to write about, so this will
just continue to evolve over time.


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@226606 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-10-30 04:08:39 +00:00
Terry Wilson ba8176dc52 Don't prepend the URI prefix to the post directory
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@226099 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-10-27 16:48:54 +00:00
Kevin P. Fleming cdd1f9e296 Finish implementaton of astobj2 OBJ_MULTIPLE, and convert ast_channel_iterator to use it.
This patch finishes the implementation of OBJ_MULTIPLE in astobj2 (the
case where multiple results need to be returned; OBJ_NODATA mode
already was supported). In addition, it converts ast_channel_iterators
(only the targeted versions, not the ones that iterate over all
channels) to use this method.

During this work, I removed the 'ao2_flags' arguments to the
ast_channel_iterator constructor functions; there were no uses of that
argument yet, there is only one possible flag to pass, and it made the
iterators less 'opaque'. If at some point in the future someone really
needs an ast_channel_iterator that does not lock the container, we can
provide constructor(s) for that purpose.

Review: https://reviewboard.asterisk.org/r/379/



git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@225244 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-10-21 21:08:47 +00:00
Kevin P. Fleming 092a118d89 Merged revisions 224670 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
  r224670 | kpfleming | 2009-10-19 18:44:07 -0500 (Mon, 19 Oct 2009) | 7 lines
  
  Correct timestamp calculations when RTP sample rates over 8kHz are used.
  
  While testing some endpoints that support 16kHz and 32kHz sample rates, some
  log messages were generated due to calc_rxstamp() computing timestamps in a way
  that produced odd results, so this patch sanitizes the result of the
  computations.
........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@224671 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-10-19 23:47:39 +00:00
Terry Wilson 5af2438403 Properly handle PUT requests for CALENDAR_WRITE()
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@224109 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-10-15 06:48:17 +00:00
Terry Wilson cb74681b6d Add missing 'getnum' field
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@224074 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-10-14 21:16:57 +00:00
Terry Wilson 5ea7d4a291 use Calendar: instead of Calendar/ for devstate
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@223992 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-10-13 22:14:22 +00:00
Richard Mudgett 76831d0c78 Fix compiler warning.
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@223911 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-10-13 17:11:05 +00:00
Terry Wilson a8034cd770 Fix handling of notification calls w/ the dialing api
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@223874 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-10-13 01:51:46 +00:00
Terry Wilson 88e526439f Fix handling of floating times and dates
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@223449 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-10-10 20:02:32 +00:00
Terry Wilson 46f157df89 Properly return "free" on confirmed events that are free
CONFIRMED status doesn't imply busy or free, that is handled with the TRANSP
field. Luckily, libical already sets the is_busy status on the span for us.


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@223370 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-10-09 22:04:04 +00:00
Terry Wilson d81a8e34dd Don't add Attendees during copy, replace them
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@223053 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-10-09 15:00:49 +00:00
Terry Wilson a75ba8d1a9 Remove global variable that makes dlopen unhappy
This isn't the best way to do this, but it is the easiest. There are some
limitations that are going to need to be addressed at some point with reloads
and when I (or someone else) work on that, then the API can be updated to
handle passing the private config data that the calendar tech modules need in
a better way as well.


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@223016 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-10-08 23:11:23 +00:00
Olle Johansson 864aa14426 Formatting, moving error messages to ERROR, removing references to unexisting debug output. No functionality changes.
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@222615 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-10-07 18:57:29 +00:00
Olle Johansson fff998bf41 Use extref for doxygen references to external libraries (in this case PostgreSQL)
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@222614 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-10-07 18:55:25 +00:00
Tilghman Lesher 2d60b75594 Change schema query to involve the use of an optional schema parameter.
This change is done in such a way as to allow the driver to continue to
function with older databases which don't have these features.
(closes issue #16000)
 Reported by: jamicque
 Patches: 
       20091002__issue16000.diff.txt uploaded by tilghman (license 14)
       20091002__issue16000__1.6.1.diff.txt uploaded by tilghman (license 14)
 Tested by: jamicque


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@222309 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-10-06 19:31:39 +00:00
Tilghman Lesher 78012e4f71 When we call a gosub routine, the variables should be scoped to avoid contaminating the caller.
This affected the ~~EXTEN~~ hack, where a subroutine might have changed the
value before it was used in the caller.
Patch by myself, tested by ebroad on #asterisk


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@222273 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-10-06 19:17:11 +00:00
Kevin P. Fleming 1c9fe00920 Recorded merge of revisions 222152 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
  r222152 | kpfleming | 2009-10-05 20:16:36 -0500 (Mon, 05 Oct 2009) | 20 lines
  
  Fix ao2_iterator API to hold references to containers being iterated.
  
  See Mantis issue for details of what prompted this change.
  
  Additional notes:
  
  This patch changes the ao2_iterator API in two ways: F_AO2I_DONTLOCK
  has become an enum instead of a macro, with a name that fits our
  naming policy; also, it is now necessary to call
  ao2_iterator_destroy() on any iterator that has been
  created. Currently this only releases the reference to the container
  being iterated, but in the future this could also release other
  resources used by the iterator, if the iterator implementation changes
  to use additional resources.
  
  (closes issue #15987)
  Reported by: kpfleming
  
  Review: https://reviewboard.asterisk.org/r/383/
........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@222176 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-10-06 01:24:24 +00:00
Terry Wilson 717d2ec3c9 Remove spurious debug
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@221300 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-09-30 18:47:53 +00:00
Terry Wilson 10ce6cd757 Use rtp properties instead of adding a callback
Thanks, Josh.


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@221278 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-09-30 18:21:03 +00:00
Terry Wilson 865daf4858 Merged revisions 221086 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
  r221086 | twilson | 2009-09-30 09:49:11 -0500 (Wed, 30 Sep 2009) | 25 lines
  
  Change the SSRC by default when our media stream changes
  
  Be default, change SSRC when doing an audio stream changes Asterisk doesn't
  honor marker bit when reinvited to already-bridged RTP streams,resulting in
  far-end stack discarding packets with "old" timestamps that areactually part of
  a new stream.  This patch sends AST_CONTROL_SRCUPDATE whenever there is a
  reinvite, unless the 'constantssrc' is set to true in sip.conf.
  
  The original issue reported to Digium support detailed the following situation:
  ITSP <-> Asterisk 1.4.26.2 <-> SIP-based Application Server Call comes in
  fromITSP, Asterisk dials the app server which sends a re-invite back
  toAsterisk--not to negotiate to send media directly to the ITSP, but to
  indicatethat it's changing the stream it's sending to Asterisk.  The app
  servergenerates a new SSRC, sequence numbers, timestamps, and sets the marker
  bit on the new stream.  Asterisk passes through the teimstamp of the new stream,
  butdoes not reset the SSRC, sequence numbers, or set the marker bit.
  
  When the timestamp on the new stream is older than the timestamp on the
  originalstream, the ITSP (which doesn't know there has been any change) discards
  the newframes because it thinks they are too old.  This patch addresses this by
  changing the SSRC on a stream update unless constantssrc=true is set in
  sip.conf.
  
  Review: https://reviewboard.asterisk.org/r/374/
........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@221266 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-09-30 17:52:30 +00:00
Philippe Sultan b11b94a083 Add JABBER_RECEIVE as a dialplan function, implement SendText in Jingle channels
JABBER_RECEIVE (along with JabberSend) makes Asterisk interact with users over
XMPP to process calls.
SendText can be used instead of JabberSend in the context of XMPP based voice
channels (chan_gtalk and chan_jingle).

(closes issue #12569)
Reported by: eech55
Tested by: phsultan, asannucci, lmadsen, jtodd, maxgo

Review: https://reviewboard.asterisk.org/r/88/


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@220457 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-09-25 10:54:42 +00:00
Sean Bright d8a2d3dedf Remove some unused defines from res_jabber.
(closes issue #15359)
Reported by: snuffy
Patches:
      bug_res_jabber_unused_defines.diff uploaded by snuffy (license 35)


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@218973 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-09-16 20:32:50 +00:00
Michiel van Baak 3c04a79abf use the actual given ip address for 'rtp set debug ip <foo>' instead of the word 'ip'
(closes issue #15711)
Reported by: davidw
Patches:
      2009082800-rtpdebug.diff.txt uploaded by mvanbaak (license 7)
Tested by: davidw


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@218107 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-09-12 13:08:16 +00:00
Matthias Nick 8e1bae06bf Sets the correct musicclass after an announcement
(closes issue #15279)
Reported by: mbeckwell
Patches:
      patch.txt uploaded by mnick (license )
Tested by: mnick

(closes issue #15832)
Reported by: mbeckwell
Patches:
      patch.txt uploaded by mnick (license 874)
Tested by: mnick




git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@217730 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-09-10 19:39:41 +00:00
Tilghman Lesher c9dd40c1f6 Verify support for wide ODBC character types before using them.
(closes issue #15870)
 Reported by: nic_bellamy


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@217638 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-09-10 18:17:14 +00:00
Tzafrir Cohen 1ed1eb277e gcc 4.4 fix: union instead of cast
gcc 4.4 has more strict rules for aliasing. It doesn't like a 
struct sockaddr_in pointer pointing to a struct sockaddr. So we make it
a union.


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@217445 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-09-09 18:52:48 +00:00
Tilghman Lesher fe7ec8c675 Remove what appears to be an unnecessary define.
(closes issue #15851)
 Reported by: tzafrir


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@217033 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-09-08 15:30:18 +00:00
Olle Johansson eca8f9082c Adding MUTEAUDIO() dialplan function and MuteAudio AMI action (pinepeach)
Review: https://reviewboard.asterisk.org/r/345/



git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@215382 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-09-02 06:23:05 +00:00
Tilghman Lesher fdd078af52 Remove unnecessary define for Solaris
(closes issue #15358)
 Reported by: snuffy
 Patches: 
       bug_res_moh_remove_unneeded_include.diff uploaded by snuffy (license 35)


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@214611 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-08-28 16:50:05 +00:00
Michiel van Baak 6f63f3eb8d cast time_t type variables to long where needed.
This makes res_calendar.c compile on OpenBSD and the same
cast is used in a lot of other places where time_t type vars are used.

(closes issue #15656)
Reported by: mvanbaak
Patches:
      2009081100-rescalendarcompilefix.diff.txt uploaded by mvanbaak (license 7)


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@212343 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-08-15 11:36:19 +00:00
Gavin Henry f2b9fc797d Added three new attributes and applied a patch to res_config_ldap.c
attributetype ( AstAccountSubscribeContext
        NAME 'AstAccountSubscribeContext'
        DESC 'Asterisk subscribe context'
        EQUALITY caseIgnoreMatch
        SUBSTR caseIgnoreSubstringsMatch
        SYNTAX 1.3.6.1.4.1.1466.115.121.1.15)

attributetype ( AstAccountIpAddr
        NAME 'AstAccountIpAddr'
        DESC 'Asterisk aaccount IP address'
        EQUALITY caseIgnoreMatch
        SUBSTR caseIgnoreSubstringsMatch
        SYNTAX 1.3.6.1.4.1.1466.115.121.1.15)

attributetype ( AstAccountUserAgent
        NAME 'AstAccountUserAgent'
        DESC 'Asterisk account user context'
        EQUALITY caseIgnoreMatch
        SUBSTR caseIgnoreSubstringsMatch
        SYNTAX 1.3.6.1.4.1.1466.115.121.1.15)

and patch fix_empty_attributes_1.6.1.4_v2.patch 

(closes issue #13725)
Reported by: macogeek
Patches:
      fix_empty_attributes_1.6.1.4_v2.patch uploaded by xvisor (license 863)
Tested by: suretec




git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@211767 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-08-12 16:00:46 +00:00
Tilghman Lesher 642bec4d6f AST-2009-005
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@211539 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-08-10 19:20:57 +00:00
Mark Michelson ed8ccbdb73 Gracefully handle malformed RTP text packets.
AST-2009-004



git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@209235 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-07-27 20:54:54 +00:00
Mark Michelson 33a48e257e Honor channel's music class when using realtime music on hold.
(closes issue #15051)
Reported by: alexh
Patches:
      15051.patch uploaded by mmichelson (license 60)
Tested by: alexh



git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@209197 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-07-27 20:11:42 +00:00
David Brooks d81d6d3415 Fixing typos. Replaces "recieved" with "received" and "initilize" with "initialize"
(closes issue #15571)
Reported by: alecdavis



git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@209098 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-07-27 16:33:50 +00:00
Tilghman Lesher 4ff3f0058d Clarify documentation on 'realtime update2' to show more than one condition.
(closes issue #15357)
 Reported by: snuffy
 Patches: 
       bug_fix_doc_update2.diff uploaded by snuffy (license 35)
       (slightly modified by me)


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@208052 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-07-22 16:49:42 +00:00
Kevin P. Fleming 96e4e31eeb Merged revisions 207647 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
  r207647 | kpfleming | 2009-07-21 08:04:44 -0500 (Tue, 21 Jul 2009) | 12 lines
  
  Ensure that user-provided CFLAGS and LDFLAGS are honored.
  
  This commit changes the build system so that user-provided flags (in ASTCFLAGS
  and ASTLDFLAGS) are supplied to the compiler/linker *after* all flags provided
  by the build system itself, so that the user can effectively override the
  build system's flags if desired. In addition, ASTCFLAGS and ASTLDFLAGS can now
  be provided *either* in the environment before running 'make', or as variable
  assignments on the 'make' command line. As a result, the use of COPTS and LDOPTS
  is no longer necessary, so they are no longer documented, but are still supported
  so as not to break existing build systems that supply them when building Asterisk.
........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@207680 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-07-21 13:28:04 +00:00
Russell Bryant 4cf8a968fd Add an API for reporting security events, and a security event logging module.
This commit introduces the security events API.  This API is to be used by
Asterisk components to report events that have security implications.
A simple example is when a connection is made but fails authentication.  These
events can be used by external tools manipulate firewall rules or something
similar after detecting unusual activity based on security events.

Inside of Asterisk, the events go through the ast_event API.  This means that
they have a binary encoding, and it is easy to write code to subscribe to these
events and do something with them.

One module is provided that is a subscriber to these events - res_security_log.
This module turns security events into a parseable text format and sends them
to the "security" logger level.  Using logger.conf, these log entries may be
sent to a file, or to syslog.

One service, AMI, has been fully updated for reporting security events.
AMI was chosen as it was a fairly straight forward service to convert.
The next target will be chan_sip.  That will be more complicated and will
be done as its own project as the next phase of security events work.

For more information on the security events framework, see the documentation
generated from doc/tex/.  "make asterisk.pdf"

Review: https://reviewboard.asterisk.org/r/273/


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@206021 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-07-11 19:15:03 +00:00
David Vossel ba2a8457b8 Merged revisions 205471 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
  r205471 | dvossel | 2009-07-08 18:15:54 -0500 (Wed, 08 Jul 2009) | 10 lines
  
  Fixes 8khz assumptions
  
  Many calculations assume 8khz is the codec rate. This
  is not always the case.  This patch only addresses chan_iax.c
  and res_rtp_asterisk.c, but I am sure there are other areas
  that make this assumption as well.
  
  Review: https://reviewboard.asterisk.org/r/306/
........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@205479 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-07-08 23:19:09 +00:00
Russell Bryant 0e8c630224 Move OpenSSL initialization to a single place, make library usage thread-safe.
While doing some reading about OpenSSL, I noticed a couple of things that
needed to be improved with our usage of OpenSSL.

1) We had initialization of the library done in multiple modules.  This has now
   been moved to a core function that gets executed during Asterisk startup.
   We already link OpenSSL into the core for TCP/TLS functionality, so this
   was the most logical place to do it.

2) OpenSSL is not thread-safe by default.  However, making it thread safe is
   very easy.  We just have to provide a couple of callbacks.  One callback
   returns a thread ID.  The other handles locking.  For more information,
   start with the "Is OpenSSL thread-safe?" question on the FAQ page of
   openssl.org.


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@205120 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-07-08 15:17:19 +00:00
Russell Bryant 0264eef115 Merge the new Channel Event Logging (CEL) subsystem.
CEL is the new system for logging channel events.  This was inspired after
facing many problems trying to represent what is possible to happen to a call
in Asterisk using CDR records.  For more information on CEL, see the built in
HTML or PDF documentation generated from the files in doc/tex/.

Many thanks to Steve Murphy (murf) and Brian Degenhardt (bmd) for their hard
work developing this code.  Also, thanks to Matt Nicholson (mnicholson) and
Sean Bright (seanbright) for their assistance in the final push to get this
code ready for Asterisk trunk.

Review: https://reviewboard.asterisk.org/r/239/


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@203638 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-06-26 15:28:53 +00:00
Joshua Colp ae87ba45b5 Add support for multicast RTP paging.
(closes issue #11797)
Reported by: macbrody

Review: https://reviewboard.asterisk.org/r/270/


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@203227 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-06-25 18:25:24 +00:00
Tilghman Lesher 6b53ec413d Fix 2 typos and add support for wide character types.
Reported by Benny Amorsen via the asterisk-users mailing list.
http://lists.digium.com/pipermail/asterisk-users/2009-June/233622.html


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@201904 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-06-19 15:47:55 +00:00
David Vossel dcfe69ec64 fixes some memory leaks and redundant conditions
(closes issue #15269)
Reported by: contactmayankjain
Patches:
      patch.txt uploaded by contactmayankjain (license 740)
      memory_leak_stuff.trunk.diff uploaded by dvossel (license 671)
Tested by: contactmayankjain, dvossel




git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@201678 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-06-18 16:37:42 +00:00
Russell Bryant 730e60e583 Merged revisions 201600 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
  r201600 | russell | 2009-06-18 10:24:31 -0500 (Thu, 18 Jun 2009) | 29 lines
  
  Fix memory corruption and leakage related reloads of non files mode MoH classes.
  
  For Music on Hold classes that are not files mode, meaning that we are executing
  an application that will feed us audio data, we use a thread to monitor the
  external application and read audio from it.  This thread also makes use of the
  MoH class object.  In the MoH class destructor, we used pthread_cancel() to ask
  the thread to exit.  Unfortunately, the code did not wait to ensure that the
  thread actually went away.  What needed to be done is a pthread_join() to ensure
  that the thread fully cleans up before we proceed.  By adding this one line, we
  resolve two significant problems:
  
    1) Since the thread was never joined, it never fully goes away.  So, on every
       reload of non-files mode MoH, an unused thread was sticking around.
  
    2) There was a race condition here where the application monitoring thread
       could still try to access the MoH class, even though the thread executing
       the MoH reload has already destroyed it.
  
  (issue #15109)
  Reported by: jvandal
  
  (issue #15123)
  Reported by: axisinternet
  
  (issue #15195)
  Reported by: amorsen
  
  (issue AST-208)
........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@201610 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-06-18 15:27:10 +00:00
Mark Michelson dce6a54a4a Trunk implementation of setting an alternate RTP source.
This contains the interface by which we can let an rtp instance know
that it might start receiving audio from a new source. This is similar
in nature to revision 197588 of Asterisk 1.4.

Review: https://reviewboard.asterisk.org/r/276



git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@201583 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-06-18 15:20:17 +00:00
Eliel C. Sardanons a179e144cd Show the interface name on error, if it is not found.
If the smdiport specified is not found, show the interface name
instead of '(null)'.



git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@200841 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-06-16 12:32:00 +00:00
Kevin P. Fleming 82fb56886e More 'static' qualifiers on module global variables.
The 'pglobal' tool is quite handy indeed :-)



git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@200620 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-06-15 17:34:30 +00:00
Kevin P. Fleming 6c5987811c Redesigned 'optional API' support.
This patch provides a new implementation of the optional API support defined
in asterisk/optional_api.h; this new version provides solves compatibility
issues with the use of linker version scripts for suppressing global symbols.
In addition, there is now a functional (and tested!) implementation for Mac OS/X,
so module writers no longer need to use special tests before calling optional
API functions. All future implementations must provide these same semantics,
so that module writers can rely on them.



git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@200519 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-06-15 16:07:23 +00:00
David Vossel d532cbcd8a module load priority
This patch adds the option to give a module a load priority. The value represents the order in which a module's load() function is initialized.  The lower the value, the higher the priority.  The value is only checked if the AST_MODFLAG_LOAD_ORDER flag is set.  If the AST_MODFLAG_LOAD_ORDER flag is not set, the value will never be read and the module will be given the lowest possible priority
on load.  Since some modules are reliant on a timing interface, the timing modules have been given a high load priorty.

(closes issue #15191)
Reported by: alecdavis
Tested by: dvossel

Review: https://reviewboard.asterisk.org/r/262/


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@199743 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-06-09 16:22:04 +00:00
Eliel C. Sardanons 515166ba37 Move music on hold related applications documentation to XML.
Move MusicOnHold, SetMusicOnHold, StartMusicOnHold, StopMusicOnHold static
documentation to the new AstXML form.

(issue #15245)
Reported by: eliel
Patches:
      res_musiconhold_static_conversion.txt uploaded by lmadsen (license 10)
      (with some fixes and formatting by me)


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@199413 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-06-06 23:03:15 +00:00
Eliel C. Sardanons 4f94236de5 Move function PP_EACH_USER and PP_EACH_EXTENSION documentation to XML.
Move function PP_EACH_USER and PP_EACH_EXTENSION documentation to the new
AstXML form.

(issue #15245)
Reported by: eliel
Patches:
      res_phoneprov_static_conversion.txt uploaded by lmadsen (license 10)
	(with PP_EACH_USER add by me)



git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@199411 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-06-06 22:45:42 +00:00
Eliel C. Sardanons 9ce385bd72 Move static docs to the new AstXML form.
Move SMDI_MSG and SMDI_MSG_RETRIEVE functions statis documentation
to XML.

(issue #15245)
Reported by: eliel
Patches:
      res_smdi_static_conversion.txt uploaded by lmadsen (license 10)



git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@199091 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-06-04 16:29:50 +00:00
Eliel C. Sardanons fb73ee6187 Moved more static documentation to the new AstXML form.
Moved more static docs to XML (pplications and manager actions):
Monitor, StopMonitor, ChangeMonitor, PauseMonitor, UnpauseMonitor.



git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@198661 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-06-01 19:37:30 +00:00
Eliel C. Sardanons 8d464b7211 Move JabberSend manager action from static docs to the AstXML form.
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@198565 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-06-01 16:09:42 +00:00
Eliel C. Sardanons 1b59a1cd7d Move static documentation of E|Dead|AGI() application and manager action to XML.
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@198561 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-06-01 15:38:48 +00:00
Eliel C. Sardanons 0c99bc31cb Avoid a crash when res_timing_dahdi is unloaded but wasn't properly loaded.
if dahdi_test_timer() fails, timing_funcs_handle remains NULL causing a crash
when calling ast_unregister_timing_interface() with a NULL pointer.

(closes issue #15234)
Reported by: eliel
Patches:
      timing_dahdi1.diff uploaded by eliel (license 64)



git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@198437 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-05-31 01:22:15 +00:00
Sean Bright 3353710e16 Properly terminate the receive buffer before sending to iksemel.
aji_io_recv takes the maximum number of bytes to read (instead of the total
buffer size), so we have to subtract 1 from our buffer size.  Without this, when
we receive packets that are larger than our buffer, iksemel will choke and
things get wonky.

(closes issue #15232)
Reported by: lp0
Patches:
      05302009_res_jabber.c.patch uploaded by seanbright (license 71)
Tested by: seanbright, lp0


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@198375 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-05-30 20:11:33 +00:00
Sean Bright 90c3db40ed Merged revisions 198370 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
  r198370 | seanbright | 2009-05-30 15:36:20 -0400 (Sat, 30 May 2009) | 12 lines
  
  Properly terminate AMI JabberSend response messages.
  
  The response message (either Error or Success) needs an extra trailing \r\n
  after the fields to inform the client that the message is complete.
  
  (closes issue #14876)
  Reported by: srt
  Patches:
        05302009_1.4_res_jabber.c.diff uploaded by seanbright (license 71)
        asterisk_14876.patch uploaded by srt (license 378)
        trunk-14876-2.diff uploaded by phsultan (license 73)
........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@198371 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-05-30 19:38:58 +00:00
Russell Bryant 1ee78437e4 Merged revisions 198311 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
  r198311 | russell | 2009-05-29 22:42:46 -0500 (Fri, 29 May 2009) | 5 lines
  
  Fix a crash that occurred when MWI SMDI messages expired.
  
  (closes issue #14561)
  Reported by: cmoss28
........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@198312 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-05-30 03:43:23 +00:00
Russell Bryant 04beecc859 Improve handling of trying to ACK too many timer expirations.
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@198183 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-05-29 22:33:31 +00:00
Terry Wilson c317d8f444 Add a couple of TODO items so I don't forget
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@198182 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-05-29 22:21:42 +00:00
Russell Bryant 1fab70a1c6 Resolve issues with choppy sound when using res_timing_pthread.
The situation that caused this problem was when continuous mode was being
turned on and off while a rate was set for a timing interface.  A very easy
way to replicate this bug was to do a Playback() from behind a Local channel.
In this scenario, a rate gets set on the channel for doing file playback.
At the same time, continuous mode gets turned on and off about every 20 ms
as frames get queued on to the PBX side channel from the other side of the
Local channel.

Essentially, this module treated continuous mode and a set rate as mutually
exclusive states for the timer to be in.  When I dug deep enough, I observed
the following pattern:

   1) Set timer to tick every 20 ms.
   2) Wait almost 20 ms ...
   3) Continuous mode gets turned on for a queued up frame
   4) Continuous mode gets turned off
   5) The timer goes back to its tick per 20 ms. state but starts counting
      at 0 ms.
   6) Goto step 2.

Sometimes, res_timing_pthread would make it 20 ms and produce a timer tick,
but not most of the time.  This is what produced the choppy sound (or sometimes
no sound at all).

Now, the module treats continuous mode and a set rate as completely independent
timer modes.  They can be enabled and disabled independently of each other and
things work as expected.


(closes issue #14412)
Reported by: dome
Patches:
      issue14412.diff.txt uploaded by russell (license 2)
      issue14412-1.6.1.0.diff.txt uploaded by russell (license 2)
Tested by: DennisD, russell


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@198146 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-05-29 20:06:59 +00:00
Russell Bryant 5894cefe1f Trim trailing whitespace so that I can work on this bug without it bothering me. :-)
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@197960 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-05-29 16:15:30 +00:00
Terry Wilson 71a3a2ebf6 Add Calendaring support for Asterisk
This commit add Calendaring support to Asterisk for iCalendar, CalDAV, and MS
Exchange calendars. Exchange support has only been tested on Exchange Server 2k3
and does not support forms-based authentication at this time (patches *very*
welcome). Exchange support is also currently missing the ability to return a
list of a meting's attendees (again, patches are very, very welcome).

Features include:
  Querying a calendar for events over a specific time range
  Checking a calendar's busy status via the dialplan
  Writing calendar events via the dialplan (CalDAV and Exchange only)
  Handling calendar event notifications through the dialplan

(closes issue #14771)
Tested by: lmadsen, twilson, Shivaprakash

Review: https://reviewboard.asterisk.org/r/58


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@197738 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-05-28 19:57:18 +00:00
Russell Bryant cc8da4eff3 Merged revisions 196826 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
  r196826 | russell | 2009-05-26 13:14:36 -0500 (Tue, 26 May 2009) | 9 lines
  
  Resolve a file handle leak.
  
  The frames here should have always been freed.  However, out of luck, there was
  never any memory leaked.  However, after file streams became reference counted,
  this code would leak the file stream for the file being read.
  
  (closes issue #15181)
  Reported by: jkroon
........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@196843 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-05-26 18:20:57 +00:00
Sean Bright 3abe8a963e Add new ast_complete_applications function so that we can use it with the
'channel originate ... application <app>' CLI command.

(And yeah, I cleaned up some whitespace in res_clioriginate.c... big whoop,
wanna fight about it!?)


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@196758 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-05-26 14:36:11 +00:00
Eliel C. Sardanons 5518c1b171 Move AGI static documentation to the new AstXML form.
Move AGI commands documentation to XML docs:
'set priority'
'set variable'
'stream file'
'control stream file'
'tdd mode'
'verbose'
'wait for digit'
'speech create'
'speech set'
'speech destroy'
'speech load grammar'
'speech unload grammar'
'speech activate grammar'
'speech deactivate grammar'
'speech recognize'



git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@196585 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-05-24 16:17:31 +00:00
Eliel C. Sardanons be4798f0b3 Move static AGI commands documentation to XML.
Move AGI commands ('say datetime', 'send image', 'send text', 'set autohangup',
'set callerid', 'set context', 'set extension') documentation to the AstXML
form.


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@196554 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-05-23 21:11:31 +00:00
Eliel C. Sardanons ad08eeaabf Moved static documentation to the AstXML form.
Moved AGI commands static documentation to XML docs ('say alpha', 'say digits',
'say number', 'say phonetic', 'say date' and 'say time').



git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@196344 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-05-22 19:11:44 +00:00
Eliel C. Sardanons 2c882626a0 Implement a new element in AstXML for AMI actions documentation.
A new xml element was created to manage the AMI actions documentation,
using AstXML.
To register a manager action using XML documentation it is now possible
using ast_manager_register_xml().
The CLI command 'manager show command' can be used to show the parsed
documentation.

Example manager xml documentation:
<manager name="ami action name" language="en_US">
    <synopsis>
        AMI action synopsis.
    </synopsis>
    <syntax>
        <xi:include xpointer="xpointer(...)" /> <-- for ActionID
        <parameter name="header1" required="true">
	    <para>Description</para>
	</parameter>
	...
    </syntax>
    <description>
        <para>AMI action description</para>
    </description>
    <see-also>
    	...
    </see-also>
</manager>



git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@196308 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-05-22 17:52:35 +00:00
Sean Bright fb39d11e6f Fix res_agi compilation after the const-ify the world merge.
Since we are dealing with a 'const char * const' now, we have to create a
temporary copy of the string to work on rather than the original.  Fix inspired
by reporter.  Reviewed by everyone-and-their-mother in #asterisk-dev.

(closes issue #15184)
Reported by: andrew


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@196270 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-05-22 16:51:22 +00:00
Sean Bright fcda626f3c Fix build under dev mode and remove some casts that are no longer necessary as
a result of the const-ify the world patch.


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@196227 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-05-22 16:10:33 +00:00
Kevin P. Fleming e6b2e9a750 Const-ify the world (or at least a good part of it)
This patch adds 'const' tags to a number of Asterisk APIs where they are appropriate (where the API already demanded that the function argument not be modified, but the compiler was not informed of that fact). The list includes:

- CLI command handlers
- CLI command handler arguments
- AGI command handlers
- AGI command handler arguments
- Dialplan application handler arguments
- Speech engine API function arguments

In addition, various file-scope and function-scope constant arrays got 'const' and/or 'static' qualifiers where they were missing.

Review: https://reviewboard.asterisk.org/r/251/



git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@196072 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-05-21 21:13:09 +00:00
Tilghman Lesher bdcafc1ab4 Recorded merge of revisions 195366 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
  r195366 | tilghman | 2009-05-18 15:24:13 -0500 (Mon, 18 May 2009) | 8 lines
  
  Add a similar dependency on SMDI for voicemail as already exists for ADSI.
  (closes issue #14846)
   Reported by: pj
   Patches: 
         20090413__bug14846__1.4.diff.txt uploaded by tilghman (license 14)
         20090507__issue14846__1.6.0.diff.txt uploaded by tilghman (license 14)
         20090507__issue14846__1.6.1.diff.txt uploaded by tilghman (license 14)
........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@195370 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-05-18 20:52:33 +00:00
Eliel C. Sardanons 75cd3f4918 Move AGI documentation from static to the XML form.
Move the AGI commands 'receive text', 'receive char' and 'record'
static documentation to XML docs.



git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@195365 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-05-18 20:18:43 +00:00
Joshua Colp 1179ecf165 Merged revisions 194208 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
  r194208 | file | 2009-05-13 10:38:01 -0300 (Wed, 13 May 2009) | 11 lines
  
  Fix RFC2833 issues with DTMF getting duplicated and with duration wrapping over.
  
  (closes issue #14815)
  Reported by: geoff2010
  Patches:
        v1-14815.patch uploaded by dimas (license 88)
  Tested by: geoff2010, file, dimas, ZX81, moliveras
  (closes issue #14460)
  Reported by: moliveras
  Tested by: moliveras
........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@194209 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-05-13 13:39:10 +00:00
Kevin P. Fleming 1c988d8996 add 'const' qualifiers in various places where they should have been
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@193832 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-05-12 13:59:35 +00:00
Russell Bryant 174697b7d1 Fix some timer state corruption.
In res_timer_timerfd, handle the case that set_rate gets called while a timer
is still in continuous mode.  In this case, we want to remember the configured
rate, but not actually set it until continuous mode has been disabled.

Thanks to dvossel for finding and helping to debug the problem.

(closes issue #15080)
Reported by: dvossel
Tested by: dvossel


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@193718 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-05-11 22:04:40 +00:00
Joshua Colp 4d840c93b6 Make the code that prevents an infinite loop from happening into a case insensitive check.
(thanks eliel)


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@192736 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-05-06 16:09:27 +00:00
Joshua Colp 38a5f51006 Fix an infinite loop with tab completion of CLI aliases that reference themselves.
(closes issue #15020)
Reported by: junky


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@192700 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-05-06 14:35:47 +00:00
Tilghman Lesher e0aba74fa9 Restore 'asyncagi break' command to 1.6.1 and higher.
(closes issue #14985)
 Reported by: nikkk
 Patches: 
       20090428__bug14985.diff.txt uploaded by tilghman (license 14)
       20090429__bug14985__1.6.1.diff.txt uploaded by tilghman (license 14)
 Tested by: nikkk


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@192171 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-05-04 19:29:13 +00:00
Jeff Peeler c675733e6c fix typos
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@191213 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-04-29 22:56:55 +00:00
Tilghman Lesher a866a75900 Merge str_substitution branch.
This branch adds additional methods to dialplan functions, whereby the result
buffers are now dynamic buffers, which can be expanded to the size of any
result.  No longer are variable substitutions limited to 4095 bytes of data.
In addition, the common case of needing buffers much smaller than that will
enable substitution to only take up the amount of memory actually needed.
The existing variable substitution routines are still available, but users
of those API calls should transition to using the dynamic-buffer APIs.
Reviewboard: http://reviewboard.digium.com/r/174/


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@191140 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-04-29 18:53:01 +00:00
Russell Bryant 639ece2a31 Merged revisions 190661-190662 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r190661 | russell | 2009-04-27 14:00:54 -0500 (Mon, 27 Apr 2009) | 9 lines

Resolve a crash in res_smdi when used with chan_dahdi.

When chan_dahdi goes to get an SMDI message, it provides no search criteria.
It just grabs the next message that arrives.  This code was written with the
SMDI dialplan functions in mind, since that is now the preferred method of
using SMDI.  However, this broke support of it being used from chan_dahdi.

(closes AST-212)

........
r190662 | russell | 2009-04-27 14:03:59 -0500 (Mon, 27 Apr 2009) | 2 lines

Fix a typo from 190661.

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@190663 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-04-27 19:08:12 +00:00