Commit Graph

17055 Commits

Author SHA1 Message Date
Russell Bryant
d45b336720 Blocked revisions 180862 via svnmerge
........
r180862 | russell | 2009-03-10 14:36:21 -0500 (Tue, 10 Mar 2009) | 1 line

add more projects
........


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.0@180863 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-03-10 19:36:42 +00:00
Russell Bryant
90e3195b9c Blocked revisions 180859 via svnmerge
........
r180859 | russell | 2009-03-10 14:23:41 -0500 (Tue, 10 Mar 2009) | 1 line

add more project ideas
........


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.0@180860 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-03-10 19:24:59 +00:00
Joshua Colp
f604257f31 Merged revisions 180800 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

........
  r180800 | file | 2009-03-10 11:40:38 -0300 (Tue, 10 Mar 2009) | 5 lines
  
  Reset the thread local string buffer when handling the UserEvent action.
  
  (closes issue #14593)
  Reported by: JimDickenson
........


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.0@180801 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-03-10 14:41:33 +00:00
Joshua Colp
c6837adabc If a port is specified when dialing a peer then use it.
(closes issue #14626)
Reported by: acunningham


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.0@180799 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-03-10 13:32:58 +00:00
Russell Bryant
d375364194 Blocked revisions 180750 via svnmerge
........
r180750 | russell | 2009-03-09 17:00:42 -0500 (Mon, 09 Mar 2009) | 4 lines

Add current mentors list, and first pass on a project list broken out of "PineMango"

I will work on adding projects that have been sent to be via email tomorrow.

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.0@180751 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-03-09 22:01:16 +00:00
Jeff Peeler
d18b4d4f92 Blocked revisions 180719 via svnmerge
........
  r180719 | jpeeler | 2009-03-09 15:58:17 -0500 (Mon, 09 Mar 2009) | 16 lines
  
  Add Doxygen documentation for API changes from 1.6.0 to 1.6.1
  
  Copied from my review board description:
  This is a continuation of the API changes documentation started for describing
  changes between releases. Most of the API changes were pretty simple needing
  only to be brought to attention via the new "Asterisk API Changes" list.
  However, if you see anything that needs further explanation feel free to
  supplement what is there. The current method of documenting is to add (in the
  header file): \version <ver number> <description of changes> and then to add
  the function to the change list in doxyref.h on the AstAPIChanges page. I also
  made sure all the functions that were newly added were tagged with \since
  1.6.1. I think this is a good habit to start both for the historical aspect as
  well as for the future ability to easily add a "New Asterisk API" page.
  
  Review: http://reviewboard.digium.com/r/190/
........


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.0@180720 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-03-09 20:59:34 +00:00
Joshua Colp
b332b085ee Ensure that the new outgoing dialog to a peer is able to set the socket details, even if the default is present.
(closes issue #14480)
Reported by: jon


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.0@180718 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-03-09 20:14:05 +00:00
Russell Bryant
2d4de30630 Blocked revisions 180684 via svnmerge
........
r180684 | russell | 2009-03-09 09:14:34 -0500 (Mon, 09 Mar 2009) | 2 lines

Add skeleton for GSoC ideas list

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.0@180685 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-03-09 14:14:56 +00:00
Russell Bryant
0dd22e88ce Blocked revisions 180641 via svnmerge
........
r180641 | russell | 2009-03-07 09:36:00 -0600 (Sat, 07 Mar 2009) | 7 lines

Make some minor updates to the doxygen configuration

- add bridges directory to be processed
- add some res/ subdirs
- alphabetize subdirs
- use consistent indentation

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.0@180642 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-03-07 15:36:27 +00:00
Mark Michelson
a2985ff7c3 Merged revisions 180579 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

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


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.0@180582 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-03-06 18:26:28 +00:00
David Vossel
f94e5b2d7c Merged revisions 180534 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

................
  r180534 | dvossel | 2009-03-06 11:26:38 -0600 (Fri, 06 Mar 2009) | 15 lines
  
  Merged revisions 180532 via svnmerge from 
  https://origsvn.digium.com/svn/asterisk/branches/1.4
  
  ........
    r180532 | dvossel | 2009-03-06 11:19:55 -0600 (Fri, 06 Mar 2009) | 9 lines
    
    Fix handling of backreferences for ENUM lookups
    
    enum.c did not handle regex backtraces correctly.  The '\1' in the regex is a backreference that requires a pattern match to be inserted.  The way the code used to work is that it would find the backreference and insert the entire input string minus the '+'.  This is incorrect.  The regexec() function takes in a variable called pmatch which is an array of structs containing the start and end indexes for each backreference substring.  The original code actually passed the pmatch array pointer into regexec but never did anything with it.  Now when a backtrace is found, the backtrace number is looked up in the pmatch array and the correct substring is inserted.
    
    (closes issue #14576)
    Reported by: chris-mac
    Review: http://reviewboard.digium.com/r/187/
  ........
................


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.0@180535 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-03-06 17:28:52 +00:00
Mark Michelson
5d055cb8b2 Merged revisions 180465 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

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


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

................
  r180383 | mmichelson | 2009-03-05 13:14:14 -0600 (Thu, 05 Mar 2009) | 31 lines
  
  Merged revisions 180380 via svnmerge from 
  https://origsvn.digium.com/svn/asterisk/branches/1.4
  
  ........
    r180380 | mmichelson | 2009-03-05 12:58:48 -0600 (Thu, 05 Mar 2009) | 25 lines
    
    Fix broken mailbox parsing when searchcontexts option is enabled.
    
    When using the searchcontexts option in voicemail.conf, the code
    made the assumption that all mailbox names defined were unique across
    all contexts. However, the code did nothing to actually enforce this
    assumption, nor did it do anything to alert a user that he may have
    created an ambiguity in his voicemail.conf file by defining the same
    mailbox name in multiple contexts.
    
    With this change, we now will issue a nice long warning if searchcontexts
    is on and we encounter the same mailbox name in multiple contexts and ignore
    any duplicates after the first box. Whether searchcontexts is enabled or not,
    if we come across a duplicate mailbox in the same context, then we will issue
    a warning and ignore the duplicated mailbox. I have also added a small note
    to voicemail.conf.sample in the explanation for searchcontexts explaining
    that you cannot define the same mailbox in multiple contexts if you have
    enabled the option.
    
    (closes issue #14599)
    Reported by: lmadsen
    Patches:
          14599.patch uploaded by mmichelson (license 60) (with slight modification)
    Tested by: lmadsen
  ........
................


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.0@180404 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-03-05 19:21:23 +00:00
Michiel van Baak
19f4a4ab25 Blocked revisions 180382 via svnmerge
........
  r180382 | mvanbaak | 2009-03-05 20:05:20 +0100 (Thu, 05 Mar 2009) | 2 lines
  
  Make sure we terminate the first s| command so we can actually produce correct files.
........


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.0@180384 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-03-05 19:15:14 +00:00
Kevin P. Fleming
2a877c8fcb Merged revisions 180373 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

................
  r180373 | kpfleming | 2009-03-05 12:29:38 -0600 (Thu, 05 Mar 2009) | 15 lines
  
  Merged revisions 180372 via svnmerge from 
  https://origsvn.digium.com/svn/asterisk/branches/1.4
  
  ........
    r180372 | kpfleming | 2009-03-05 12:22:16 -0600 (Thu, 05 Mar 2009) | 9 lines
    
    Fix problems when RTP packet frame size is changed
    
    During some code analysis, I found that calling ast_rtp_codec_setpref() on an ast_rtp session does not work as expected; it does not adjust the smoother that may on the RTP session, in fact it summarily drops it, even if it has data in it, even if the current format's framing size has not changed. This is not good.
    
    This patch changes this behavior, so that if the packetization size for the current format changes, any existing smoother is safely updated to use the new size, and if no smoother was present, one is created. A new API call for smoothers, ast_smoother_reconfigure(), was required to implement these changes.
    
    Review: http://reviewboard.digium.com/r/184/
  ........
................


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.0@180377 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-03-05 18:36:31 +00:00
Joshua Colp
6dc1cc36c6 Blocked revisions 180369 via svnmerge
........
  r180369 | file | 2009-03-05 14:18:27 -0400 (Thu, 05 Mar 2009) | 13 lines
  
  Merge phase 1 support for the new bridging architecture.
  
  This commit brings in the bridging core, bridging technologies,
  and the ConfBridge application.
  
  For usage information on the ConfBridge application please see
  the output of "core show application ConfBridge" from the CLI.
  
  For API documentation please see the doxygen page describing the
  architecture and the documentation for each API call.
  
  Review: http://reviewboard.digium.com/r/93/
........


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.0@180370 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-03-05 18:19:06 +00:00
Russell Bryant
4becc9332a Blocked revisions 180261 via svnmerge
........
r180261 | russell | 2009-03-04 15:01:05 -0600 (Wed, 04 Mar 2009) | 54 lines

Resolve object matching issues related to the removal of the sip_user object.

Previously, chan_sip had both sip_peer and sip_user objects in memory.  A
patch went in to remove sip_user to simplify the code, since everything
could be done with just sip_peer.  This patch resolves some regressions
found that were introduced by those changes.

This code comes from svn/asterisk/team/group/sip-object-matching/.

Here is a list of the changes that have been made:

1) When doing a match by name with the find_peer() function, make it much
   easier to specify which objects should be matched by having a parameter
   that specifies exactly which object types should be considered.  Also,
   update find_by_name() to handle this parameter.  Finally, update all
   code to use the new option values.

2) When looking up an object for an outbound request by name, consider
   peers only.  (create_addr())

3) Only match peers on an incoming registration request.

4) When doing authentication (except for SUBSCRIBE), look up users
   by name, instead of all objects by name.
   
5) When doing authentication (except for SUBSCRIBE), after looking for
   a user by name, look for a peer by IP address, instead of all objects
   by IP address.

6) When handling the SIP qualify CLI command or manager action, look for
   a peer by name, instead of any object by name.

7) When handling the SIP unregister CLI command, look for a peer by name,
   instead of any object by name.

9) In sip_do_debug_peer(), search for a peer by name, instead of any object
   by name.

9) When handling the SIPPEER() dialplan function, search for a peer by name,
   instead of any object by name.

10) In the following session timer related functions, st_get_se(),
    st_get_refresher(), and st_get_mode(), when looking for an object for a
    given sip_pvt using pvt->peername, look for a peer by name, instead of any
    object by name.

11) Fix build_peer() to properly handle the case where separate type=peer and
    type=user entries were specified in sip.conf.

(closes issue #14505)
Reported by: lmadsen

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

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.0@180262 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-03-04 21:03:28 +00:00
Joshua Colp
75d0d2389e Merged revisions 180195 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

................
  r180195 | file | 2009-03-04 15:24:59 -0400 (Wed, 04 Mar 2009) | 11 lines
  
  Merged revisions 180194 via svnmerge from 
  https://origsvn.digium.com/svn/asterisk/branches/1.4
  
  ........
    r180194 | file | 2009-03-04 15:22:50 -0400 (Wed, 04 Mar 2009) | 4 lines
    
    Look for the number in a callerid string starting from the end. This way a value using <> can exist in the name portion.
    
    (issue #AST-194)
  ........
................


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.0@180196 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-03-04 19:25:59 +00:00
Mark Michelson
85b1f7dcef Blocked revisions 180155 via svnmerge
........
  r180155 | mmichelson | 2009-03-04 11:03:32 -0600 (Wed, 04 Mar 2009) | 14 lines
  
  Allow for "magic" pickups to work when we wish to ignore the context
  
  When the subscription context for a call pickup subscription differs
  from the context of the call pickup target, there's not an easy way
  to divine what context should be used for the pickup. The way to work
  around this is to use PICKUPMARK as the context for the pickup.
  
  This has been documented in the sip.conf.sample file
  
  (ABE-1708)
  
  closes issue #14567
  submitted by: alecdavis
........


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.0@180158 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-03-04 17:15:11 +00:00
Joshua Colp
0c8d1667b9 Merged revisions 180120 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

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


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.0@180121 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-03-04 14:40:12 +00:00
Steve Murphy
bbd996fbc0 Blocked revisions 180079 via svnmerge
........
  r180079 | murf | 2009-03-03 16:35:26 -0700 (Tue, 03 Mar 2009) | 1 line
  
  My bad! left check_expr2 in the ALL_UTILS list by mistake. Already done to 1.6.x
........


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.0@180081 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-03-03 23:40:14 +00:00
David Vossel
9cad0b7e22 Merged revisions 180032 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

........
  r180032 | dvossel | 2009-03-03 17:21:18 -0600 (Tue, 03 Mar 2009) | 14 lines
  
  app_read does not break from prompt loop with user terminated empty string
  
  In app.c, ast_app_getdata is called to stream the prompts and receive DTMF input.  If ast_app_getdata() receives an empty string caused by the user inputing the end of string character, in this case '#', it should break from the prompt loop and return to app_read, but instead it cycles through all the prompts.  I've added a return value for this special case in ast_readstring() which uses an enum I've delcared in apps.h.  This enum is now used as a return value for ast_app_getdata().
  
  (closes issue #14279)
  Reported by: Marquis
  Patches:
  	fix_app_read.patch uploaded by Marquis (license 32)
  	read-ampersanmd.patch2 uploaded by dvossel (license 671)
  Tested by: Marquis, dvossel
  Review: http://reviewboard.digium.com/r/177/
........


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.0@180078 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-03-03 23:35:18 +00:00
Steve Murphy
ce5bbc3eb8 Merged revisions 179973 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

................
  r179973 | murf | 2009-03-03 15:12:02 -0700 (Tue, 03 Mar 2009) | 33 lines
  
  Merged revisions 179807 via svnmerge from 
  https://origsvn.digium.com/svn/asterisk/branches/1.4
  
  I had some work to do to port these changes to trunk; the 
  check_expr stuff hasn't been updated here for quite some
  time, it appears. I added some more tests to the check_expr2
  suite. I had to play around with the makefile a bit, etc.
  
  I added STANDALONE2 #ifdefs to ast_expr2.y so as not to
  conflict structure with aelparse.
  
  ........
    r179807 | murf | 2009-03-03 11:11:34 -0700 (Tue, 03 Mar 2009) | 19 lines
    
    These changes allow AEL to better check ${} constructs within $[...], that are concatenated with text.
    
    I modified and added rules in ast_expr2.fl to better handle
    the concatenations.
    
    I added some default routines to ast_expr2.y so the standalone would
    compile. It also looks like I haven't run this thru bison since 2.1, so
    it's good to get this updated.
    
    The Makefile has comments added now for check_expr2 and check_expr to
    explain what they are for, and how to run them. 
    
    The testexpr2s stuff has been removed, in favor of check_expr2.
    
    expr2.testinput has been updated to include the two expressions
    that inspired these changes (from mcnobody on #asterisk this morning)
    The regression has been run and all looks well.
  ........
................


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.0@180058 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-03-03 23:26:54 +00:00
Mark Michelson
d24e3e05bc Merged revisions 180007 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

................
  r180007 | mmichelson | 2009-03-03 16:49:07 -0600 (Tue, 03 Mar 2009) | 22 lines
  
  Merged revisions 180006 via svnmerge from 
  https://origsvn.digium.com/svn/asterisk/branches/1.4
  
  ........
    r180006 | mmichelson | 2009-03-03 16:48:18 -0600 (Tue, 03 Mar 2009) | 17 lines
    
    Clarify some documentation of queues.conf.sample
    
    It had always been possible to explicitly specify a "blank"
    value for a sound file in queues.conf and have no sound played
    back. The problem with this is that it would result in some ugly
    CLI warnings from file.c.
    
    This commit introduces a check when playing a file in app_queue
    to see if the name of the file is zero-length and return early if
    that is the case. Also, the ability to specify the blank sound
    files in queues.conf is now mentioned more clearly in queues.conf.sample
    
    (closes issue #14227)
    Reported by: caspy
  ........
................


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.0@180008 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-03-03 22:49:32 +00:00
David Vossel
6767bd053d Blocked revisions 179972 via svnmerge
........
  r179972 | dvossel | 2009-03-03 16:01:24 -0600 (Tue, 03 Mar 2009) | 13 lines
  
  app_meetme not setting filename and fileformat correctly for realtime
  
  When app_meetme finds a realtime conference, it doesn't get the filename and fileformat correctly when 'r' is set.  Now app_meetme first checks to see if fileformat and filename are declared in the db, if they're not it checks the .conf file, if its not declared there either it then uses defaults. 
  
  (closes issue #14545)
  Reported by: dalbaech
  Patches:
  	app_meetme-realtime5.patch uploaded by dvossel (license 671)
  	Realtime_Conference_Record_workaround.txt uploaded by dalbaech (license 705)
  Tested by: dvossel, dalbaech
  Review: http://reviewboard.digium.com/r/180/
........


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.0@180005 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-03-03 22:25:13 +00:00
Mark Michelson
3cb51f0127 Fix a memory leak when updating a realtime member field.
This was discovered while looking at issue #14353



git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.0@179971 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-03-03 21:43:09 +00:00
Mark Michelson
408082d376 Blocked revisions 179937 via svnmerge
........
  r179937 | mmichelson | 2009-03-03 14:59:16 -0600 (Tue, 03 Mar 2009) | 20 lines
  
  Add documentation for timing modules used in Asterisk
  
  This document specifies the timing modules available in Asterisk beginning
  with Asterisk 1.6.1. The document goes into detail about the differences
  between each and gives a general overview of what timing is used for in
  Asterisk. There is also a section which can be used to help customize
  your setup or to troubleshoot timing issues you may have.
  
  I also added messages to the DAHDI timing test used in res_timing_dahdi.c
  that points to this new documentation if people experience problems.
  
  Big thanks to all who contributed comments on this.
  
  (closes issue #14490)
  Reported by: mmichelson
  Patches:
        timing.txt uploaded by mmichelson (license 60)
  
  Review: http://reviewboard.digium.com/r/164/
........


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.0@179938 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-03-03 21:00:16 +00:00
Russell Bryant
220d2b601f Blocked revisions 179903 via svnmerge
........
r179903 | bmd | 2009-03-03 14:02:20 -0600 (Tue, 03 Mar 2009) | 1 line

fix a leaked channel lock (and future deadlock) when we try to pick up our own channel
........


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.0@179904 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-03-03 20:07:30 +00:00
Joshua Colp
807cb98467 Merged revisions 179841 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

................
  r179841 | file | 2009-03-03 14:28:46 -0400 (Tue, 03 Mar 2009) | 16 lines
  
  Merged revisions 179840 via svnmerge from 
  https://origsvn.digium.com/svn/asterisk/branches/1.4
  
  ........
    r179840 | file | 2009-03-03 14:27:09 -0400 (Tue, 03 Mar 2009) | 9 lines
    
    Do not assume that the bridge_cdr is still attached to the channel when the 'h' exten is finished executing.
    
    It is possible for a masquerade operation to occur when the 'h' exten is operating. This operation moves
    the CDR records around causing the bridge_cdr to no longer exist on the channel where it is expected to.
    We can not safely modify it afterwards because of this, so don't even try.
    
    (closes issue #14564)
    Reported by: meric
  ........
................


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.0@179842 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-03-03 18:29:34 +00:00
Mark Michelson
bde7a0435b Blocked revisions 179745 via svnmerge
........
  r179745 | mmichelson | 2009-03-03 11:03:47 -0600 (Tue, 03 Mar 2009) | 8 lines
  
  Convert pbx_spool to use string fields instead of statically-sized buffers.
  
  In tests run after making this conversion, I noticed an approximate 85% 
  reduction in memory usage for call file processing.
  
  Review: http://reviewboard.digium.com/r/168/
........


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.0@179746 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-03-03 17:04:17 +00:00
Russell Bryant
e4ae90e0cb Merged revisions 179742 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

................
r179742 | russell | 2009-03-03 10:47:28 -0600 (Tue, 03 Mar 2009) | 14 lines

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

........
r179741 | russell | 2009-03-03 10:45:46 -0600 (Tue, 03 Mar 2009) | 6 lines

Ensure chan->fdno always gets reset to -1 after handling a channel fd event.

Since setting fdno to -1 had to be moved, a couple of other code paths that
do process an fd event return early and do not pass through the code path
where it was moved to.  So, set it to -1 in a few other places, too.

........

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


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.0@179743 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-03-03 16:48:15 +00:00
Joshua Colp
5284efc9ce Merged revisions 179672 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

................
  r179672 | file | 2009-03-03 10:40:04 -0400 (Tue, 03 Mar 2009) | 10 lines
  
  Merged revisions 179671 via svnmerge from 
  https://origsvn.digium.com/svn/asterisk/branches/1.4
  
  ........
    r179671 | file | 2009-03-03 10:38:09 -0400 (Tue, 03 Mar 2009) | 3 lines
    
    Move where fdno is set to the default value to *after* the read callback of the channel driver is called.
    We have to do this as the underlying channel driver may need the fdno value to determine what to read.
  ........
................


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.0@179673 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-03-03 14:40:59 +00:00
Russell Bryant
1e4f2f5a1b Merged revisions 179609 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

................
r179609 | russell | 2009-03-03 07:54:41 -0600 (Tue, 03 Mar 2009) | 17 lines

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

........
r179608 | russell | 2009-03-03 07:53:52 -0600 (Tue, 03 Mar 2009) | 9 lines

Make it easier to detect an improper call to ast_read().

When you call ast_waitfor() on a channel, the index into the channel fds array
that holds the file descriptor that poll() determines has input available is
stored in fdno.  This patch clears out this value after a call to ast_read()
and also reports errors if ast_read() is called without an fdno set.

From a discussion on the asterisk-dev list.

........

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


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.0@179610 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-03-03 13:55:34 +00:00
Jeff Peeler
f355d2180a Merged revisions 179537 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

................
  r179537 | jpeeler | 2009-03-02 18:01:51 -0600 (Mon, 02 Mar 2009) | 21 lines
  
  Merged revisions 179536 via svnmerge from 
  https://origsvn.digium.com/svn/asterisk/branches/1.4
  
  ........
    r179536 | jpeeler | 2009-03-02 17:54:39 -0600 (Mon, 02 Mar 2009) | 15 lines
    
    Fix bridging regression from commit 176701
    
    This fixes a bad regression where the bridge would exit after an attended
    transfer was made. The problem was due to nexteventts getting set after the
    masquerade which caused the bridge to return AST_BRIDGE_COMPLETE.
    
    (closes issue #14315)
    Reported by: tim_ringenbach
  ........
................


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.0@179538 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-03-03 00:03:36 +00:00
Russell Bryant
49d2383e12 Merged revisions 179533 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

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

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

........
r179532 | russell | 2009-03-02 17:34:13 -0600 (Mon, 02 Mar 2009) | 40 lines

Move ast_waitfor() down to avoid the results of the API call becoming stale.

This call to ast_waitfor() was being done way too soon in this section of code.
Specifically, there was code in between the call to waitfor and the code that
uses the result that puts the channel in autoservice.  By putting the channel
in autoservice, the previous results of ast_waitfor() become meaningless,
as the autoservice thread will do it's own ast_waitfor() and ast_read()
on the channel.

So, when we came back out of autoservice and eventually hit the block of code
that calls ast_read() on the channel, there may not actually be any input on
the channel available.  Even though the previous call to ast_waitfor() in
app_meetme said there was input, the autoservice thread has since serviced
the channel for some period of time.

This bug manifested itself while dvossel was doing some testing of MeetMe in
Asterisk trunk.  He was using the timerfd timing module.  When the code hit
ast_read() erroneously, it determined that it must have been called because of
input on the timer fd, as chan->fdno was set to AST_TIMING_FD, since that was 
the cause of the last legitimate call to ast_read() done by autoservice.  

In this test, an IAX2 channel was calling into the MeetMe conference.  It was
_much_ more likely to be seen with an IAX2 channel because of the way audio
is handled.  Every audio frame that comes in results in a call to
ast_queue_frame(), which then uses ast_timer_enable_continuous() to notify
the channel thread that a frame is waiting to be handled.  So, the chances
of ast_waitfor() indicating that a channel needs servicing due to a timer
event on an IAX2 event is very high.

Finally, it is interesting to note that if a different timing interface was
being used, this bug would probably not be noticed.  When ast_read() is called
and erroneously thinks that there is a timer event to handle, it calls the
ast_timer_ack() function.  The pthread and dahdi timing modules handle the
ack() function being called when there is no event by simply ignoring it.
In the case of the timerfd module, it results in a read() on the timer fd
that will block forever, as there is no data to read.  This caused Asterisk
to lock up very quickly.

Thanks to dvossel and mmichelson for the fun debugging session.  :-)

........

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


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.0@179534 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-03-02 23:38:23 +00:00
Mark Michelson
f805a657a3 Merged revisions 151464 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

........
  r151464 | mmichelson | 2008-10-21 18:54:41 -0500 (Tue, 21 Oct 2008) | 11 lines
  
  Make the sip_standard_port function more granular by allowing separate
  type and port arguments. This is necessary because when building our From
  and Contact headers, we need to be absolutely sure that we are placing our
  source port there and not the peer's source port.
  
  (closes issue #12761)
  Reported by: asbestoshead
  Patches:
        patch-chan-sip-contact-port.txt uploaded by asbestoshead (license 455)
........


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.0@179473 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-03-02 23:15:51 +00:00
Tilghman Lesher
93bba53c69 Merged revisions 179469 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

................
  r179469 | tilghman | 2009-03-02 17:10:18 -0600 (Mon, 02 Mar 2009) | 17 lines
  
  Merged revisions 179468 via svnmerge from 
  https://origsvn.digium.com/svn/asterisk/branches/1.4
  
  ........
    r179468 | tilghman | 2009-03-02 17:09:01 -0600 (Mon, 02 Mar 2009) | 10 lines
    
    When ending a recording with silence detection, remember to reduce the duration.
    The end of the recording is correspondingly trimmed, but the duration was not
    trimmed by the number of seconds trimmed, so the saved duration was necessarily
    longer than the actual soundfile duration.
    (closes issue #14406)
     Reported by: sasargen
     Patches: 
           20090226__bug14406.diff.txt uploaded by tilghman (license 14)
     Tested by: sasargen
  ........
................


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.0@179470 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-03-02 23:11:24 +00:00
Russell Bryant
7091bad5a0 Blocked revisions 179465 via svnmerge
........
r179465 | russell | 2009-03-02 17:06:16 -0600 (Mon, 02 Mar 2009) | 4 lines

Fix a reference leak in timerfd_set_rate().

(found during a debugging session with dvossel and mmichelson.)

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.0@179466 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-03-02 23:06:39 +00:00
Russell Bryant
9a6e93c561 Merged revisions 179462 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

................
r179462 | russell | 2009-03-02 17:00:30 -0600 (Mon, 02 Mar 2009) | 16 lines

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

........
r179461 | russell | 2009-03-02 16:58:18 -0600 (Mon, 02 Mar 2009) | 8 lines

Ensure that only one thread is calling ast_settimeout() on a channel at a time.

For example, with an IAX2 channel, you can have both the channel thread and the
chan_iax2 processing threads calling this function, and doing so twice at the
same time is a bad thing.

(Found in a debugging session with dvossel and mmichelson)

........

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


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.0@179463 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-03-02 23:02:49 +00:00
Jason Parker
98d73b0f65 Merged revisions 179396 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

................
  r179396 | qwell | 2009-03-02 14:16:51 -0600 (Mon, 02 Mar 2009) | 9 lines
  
  Merged revisions 179395 via svnmerge from 
  https://origsvn.digium.com/svn/asterisk/branches/1.4
  
  ........
    r179395 | qwell | 2009-03-02 14:14:57 -0600 (Mon, 02 Mar 2009) | 1 line
    
    Remove several silly warnings in editline.  One about a broken preprocessor directive, and another about strlcpy/strlcat.

    (closes issue #14264)
    Reported by: dimas
  ........
................


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.0@179402 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-03-02 20:17:55 +00:00
Tilghman Lesher
33d3f5ab4f KeepAlive application no longer exists, so fix gosub implementation to not use it.
(closes issue #14571)
 Reported by: zktech
 Patches: 
       20090302__bug14571.diff.txt uploaded by tilghman (license 14)
 Tested by: tilghman


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.0@179363 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-03-02 17:58:20 +00:00
Tilghman Lesher
1a1831118b If cdr registration somehow succeeds without a config file, don't crash.
(closes issue #14563)
 Reported by: alerios


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.0@179360 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-03-02 17:16:57 +00:00
Joshua Colp
bb4419c8f0 Blocked revisions 179323 via svnmerge
........
  r179323 | file | 2009-03-02 10:28:09 -0400 (Mon, 02 Mar 2009) | 5 lines
  
  Do not try to remove a registration scheduled item if the scheduler context has already been destroyed.
  
  (closes issue #14580)
  Reported by: alecdavis
........


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.0@179324 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-03-02 14:28:56 +00:00
Joshua Colp
420a08e866 Blocked revisions 179291 via svnmerge
........
  r179291 | file | 2009-03-02 10:13:45 -0400 (Mon, 02 Mar 2009) | 7 lines
  
  Fix issue where changing the volume of both directions of audio did not work.
  
  (closes issue #14574)
  Reported by: KNK
  Patches:
        audiohook_volume_fix.diff uploaded by KNK (license 545)
........


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.0@179292 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-03-02 14:14:11 +00:00
Mark Michelson
8d49f52408 Blocked revisions 179254 via svnmerge
........
  r179254 | mmichelson | 2009-03-01 17:25:23 -0600 (Sun, 01 Mar 2009) | 5 lines
  
  Swap reversed timevals.
  
  This was pointed out by ScribbleJ in #asterisk-dev. Thanks very much, ScribbleJ!
........


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.0@179255 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-03-01 23:27:03 +00:00
Mark Michelson
eb9e2f2c4e Add error checking when updating the "paused" field of a realtime queue member.
This code already existed in trunk and 1.6.1, but was not in 1.6.0 prior to
this commit.


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



git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.0@179222 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-03-01 22:07:09 +00:00
Mark Michelson
8c5803b286 Merged revisions 179219 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

........
  r179219 | mmichelson | 2009-03-01 15:45:08 -0600 (Sun, 01 Mar 2009) | 18 lines
  
  Properly free memory and remove scheduler entries when a transmission failure occurs.
  
  Previously, only the "data" field of the sip_pkt created during __sip_reliable_xmit 
  was freed when XMIT_FAILURE was returned by __sip_xmit. When retrans_pkt was called,
  this inevitably resulted in the reading and writing of freed memory.
  
  XMIT_FAILURE is a condition meaning that we don't want to attempt resending the packet
  at all. The proper action to take is to remove the scheduler entry we just created,
  free the packet's data as well as the packet itself, and unlink it from the list of
  packets on the sip_pvt structure.
  
  (closes issue #14455)
  Reported by: Nick_Lewis
  Patches:
        14455.patch uploaded by mmichelson (license 60)
  Tested by: Nick_Lewis
........


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.0@179220 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-03-01 21:52:39 +00:00
Russell Bryant
10464df9cd Blocked revisions 179164 via svnmerge
........
r179164 | russell | 2009-02-27 15:47:18 -0600 (Fri, 27 Feb 2009) | 2 lines

Mark res_ais as experimental, as the binary event format is subject to change.

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.0@179165 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-02-27 21:47:37 +00:00
Tilghman Lesher
43ab90e500 Merged revisions 179161 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

........
  r179161 | tilghman | 2009-02-27 15:32:13 -0600 (Fri, 27 Feb 2009) | 3 lines
  
  If config file is blank, don't load module.
  (Closes issue #14563)
........


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.0@179162 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-02-27 21:33:31 +00:00
Russell Bryant
2769f06e91 Blocked revisions 179154 via svnmerge
........
r179154 | russell | 2009-02-27 15:23:12 -0600 (Fri, 27 Feb 2009) | 2 lines

Add a note about the ordering of entries in sip.conf in 1.6.1.

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.0@179159 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-02-27 21:24:06 +00:00