Russell Bryant [Fri, 2 Nov 2007 20:56:12 +0000 (20:56 +0000)]
Merge the code from asterisk/team/group/chan_unistim:
This introduces a new channel driver, chan_unistim, that supports the Unistim
VoIP protocol for Nortel phones. The following models have been confirmed
to work: i2002, i2004 and i2050.
(closes issue #8864)
Reported by: c_hans
Patches:
chan_unistim.patch uploaded by c (license 304)
ustm_no_conf.diff uploaded by junky (license 177)
Tested by: c_hans, dbowerman, math, junky, loloski
Make subscribecontext behave as advertised. It will now look for the presence of a hint in the given context (be it subscribecontext or context).
(closes issue #10702)
Reported by: slavon
If an INFO request within a dialog is received with a content length of 0 simply send back a 200 OK. It is valid to do this and the remote side is probably using it to make sure the signalling is still alive.
(closes issue #5747)
Reported by: chandi
Patches:
infofix-81430-1.patch uploaded by IgorG (license 20)
Steve Murphy [Thu, 1 Nov 2007 22:26:51 +0000 (22:26 +0000)]
This commits the performance mods that give the priority processing engine in the pbx, a 25-30% speed boost. The two updates used, are, first, to merge the ast_exists_extension() and the ast_spawn_extension() where they are called sequentially in a loop in the code, into a slightly upgraded version of ast_spawn_extension(), with a few extra args; and, second, I modified the substitute_variables_helper_full, so it zeroes out the byte after the evaluated string instead of demanding you pre-zero the buffer; I also went thru the code and removed the code that zeroed this buffer before every call to the substitute_variables_helper_full. The first fix provides about a 9% speedup, and the second the rest. These figures come from the 'PIPS' benchmark I describe in blogs, conf. reports, etc.
Jason Parker [Thu, 1 Nov 2007 22:19:56 +0000 (22:19 +0000)]
Crap, accidentally copied the props. Thanks for pointing this out mvanbaak. The odds are quite high that this will break automerge on every team branch.
If a Zap channel contains a spy or a spy is added take it out of the conference in kernel space and make it go through Asterisk so the spy gets audio from both sides.
(closes issue #10060)
Reported by: mparker
Joshua Colp [Thu, 1 Nov 2007 00:04:43 +0000 (00:04 +0000)]
Drop any more references to type in the Exception dialplan function.
(closes issue #11134)
Reported by: blitzrage
Patches:
exception_patch.txt uploaded by blitzrage (license 10)
Steve Murphy [Wed, 31 Oct 2007 18:53:13 +0000 (18:53 +0000)]
Merged revisions 87849 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4
........
r87849 | murf | 2007-10-31 11:49:39 -0600 (Wed, 31 Oct 2007) | 1 line
closes issue #11108 -- where the 'dialplan save' cli command saves a file where the semicolon is not escaped. Fixed this; User also wanted comments to be preserved across dialplan save, but this is impossible at this point in time, because comments are not stored in the dialplan. They are 'compiled' out of extensions.conf. The only way to preserve those comments is to use the config file reader/writer that the GUI uses to allow online user edits. extensions.conf is first and foremost, a config file, and is read in by the normal config-file reading routines. Then, it is processed into a dialplan (context/exten structs). (in the case of trunk, tho, no mods needed to be made -- works OK there -- just make sure you use ',' to sep app args!)
........
Steve Murphy [Wed, 31 Oct 2007 04:20:40 +0000 (04:20 +0000)]
Merged revisions 87775 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4
........
r87775 | murf | 2007-10-30 21:51:52 -0600 (Tue, 30 Oct 2007) | 1 line
Included some verbage in the check_includes func, to inform the user that included contexts that have no match in the AEL, might be OK, as AEL cannot check in the extensions.conf or the in-memory contexts, as they may not be there at the time of the check.
........
Russell Bryant [Tue, 30 Oct 2007 21:22:48 +0000 (21:22 +0000)]
Merged revisions 87686 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4
........
r87686 | russell | 2007-10-30 16:19:09 -0500 (Tue, 30 Oct 2007) | 11 lines
Merge the changes from team/russell/iax2_poke_fix and iax2-poke-fix-trunk
There was a race condition related to the handling of POKEing peers. Essentially,
a reference to a peer is held by the scheduler when there are pending callbacks,
but the reference count didn't reflect it. So, it was possible for a peer to hit
a reference count of zero and have its destructor begin to be called at the same
time that the scheduler thread ran a POKE related callback. If that happened,
a crash would likely occur.
Add two more checks before printing out a warning message about bridging. If either channel has hungup of course the bridge will have failed.
(closes issue #10009)
Reported by: dimas
Kevin P. Fleming [Mon, 29 Oct 2007 22:44:49 +0000 (22:44 +0000)]
UGH... while trying to fix #10995, I found all kinds of cruft in this Makefile. It should all be gone now, and as a side effect hashtest2 now builds with --enable-dev-mode enabled without a host of errors
don't put '-pipe' into ASTCFLAGS if '-save-temps' is already there (used when debugging preprocessor issues) because the compiler will whine about each compile command
Russell Bryant [Mon, 29 Oct 2007 20:24:47 +0000 (20:24 +0000)]
Merged revisions 87396 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4
........
r87396 | russell | 2007-10-29 15:22:07 -0500 (Mon, 29 Oct 2007) | 5 lines
Add some more details to the output of "core show locks". When a thread
is waiting for a lock, this will now show the details about who currently
has it locked.
(inspired by issue #11100)
Mark Michelson [Mon, 29 Oct 2007 20:13:23 +0000 (20:13 +0000)]
Adding the more flexible QUEUE_MEMBER function to replace the QUEUE_MEMBER_COUNT function.
A deprecation notice will be issued the first time QUEUE_MEMBER_COUNT is used.
Joshua Colp [Mon, 29 Oct 2007 20:02:31 +0000 (20:02 +0000)]
Drop the RTCP Read too short message to debug. There are some phones out there that send a sort of keep alive packet in the RTCP that trigger this every 5 seconds.
Russell Bryant [Mon, 29 Oct 2007 19:47:52 +0000 (19:47 +0000)]
Merged revisions 87373 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4
........
r87373 | russell | 2007-10-29 14:21:06 -0500 (Mon, 29 Oct 2007) | 5 lines
Remove a lock that doesn't make any sense. The regions lock needs to be held
when traversing the list of allocated chunks so that they can be printed out
to the CLI.
(Thanks to eliel on #asterisk-dev for pointing this out!)
Fix issue where if both sides of the dialog cancelled the dialog at the same time chan_sip could kepe retransmitting a response for no reason.
(closes issue #9566)
Reported by: atca_pres
Patches:
bug9566.patch uploaded by oej
Joshua Colp [Mon, 29 Oct 2007 16:34:45 +0000 (16:34 +0000)]
Add autoconf checks for extra suppserv definitions that are not present in releases yet. chan_misdn should now build against the latest release.
(closes issue #11103)
Reported by: IgorG
Tilghman Lesher [Sun, 28 Oct 2007 14:16:45 +0000 (14:16 +0000)]
Add a simple dialgroup function. By taking one of the simpler uses of Queue
away from Queue, we simplify the lives of people who do not need all the bells
and whistles. Also, this is part of the functions that people need to
reimplement Queue in the dialplan, as a set of logic, rather than as a single
app with hundreds of options.
Add autoservice to several more functions which might delay in their responses.
Also, make sure that func_odbc functions have a channel on which to set
variables.
Reported by russell
Fixed by tilghman
Closes issue #11099
Steve Murphy [Fri, 26 Oct 2007 17:39:39 +0000 (17:39 +0000)]
Merged revisions 87168 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4
........
r87168 | murf | 2007-10-26 10:34:02 -0600 (Fri, 26 Oct 2007) | 1 line
closes issue #11086 where a user complains that references to following contexts report a problem; The problem was REALLy that he was referring to empty contexts, which were being ignored. Reporter stated that empty contexts should be OK. I checked it out against extensions.conf, and sure enough, empty contexts ARE ok. So, I removed the restriction from AEL. This, though, highlighted a problem with multiple contexts of the same name. This should be OK, also. So, I added the extend keyword to AEL, and it can preceed the 'context' keyword (mixed with 'abstract', if nec.). This will turn off the warnings in AEL if the same context name is used 2 or more times. Also, I now call ast_context_find_or_create for contexts now, instead of just ast_context_create; I did this because pbx_config does this. The 'extend' keyword thus becomes a statement of intent. AEL can now duplicate the behavior of pbx_config,
........
The addition of autoservice to func_curl additionally made func_curl dependent
on the existence of a channel, with no real reason. This should make func_curl
once again work without a channel.
Reported by jmls.
Fixed by tilghman.
Closes issue #11090
Russell Bryant [Thu, 25 Oct 2007 18:59:22 +0000 (18:59 +0000)]
Add support for a muted user to request to talk. The '2' option in the user
menu will adjust this status if a user is muted. The talk request status will
be reflected in the CLI commands as well as the manager interface.
Steve Murphy [Thu, 25 Oct 2007 16:21:30 +0000 (16:21 +0000)]
closes issue #11045 - each file needs to define ASTERISK_FILE_VERSION, if you are going to set MTX_PROFILE in the compiler flags; the problem was that the fixes were getting made to the generated .c file, and erased the next time someone regenerated that file from the corresponding .y or .flex file. Moral of story: keep your eyes open and make mods to the .y (or flex input file) and re-run bison (or flex) as the Makefile directs for that file, and then check in both. Also, res_config_sqlite was kinda missed, and has the same issue.
Russell Bryant [Mon, 22 Oct 2007 21:37:58 +0000 (21:37 +0000)]
Merged revisions 86836 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4
........
r86836 | russell | 2007-10-22 16:36:12 -0500 (Mon, 22 Oct 2007) | 9 lines
If lock tracking is not enabled, then we can not attempt to log any mutex
failures. If so, we could end up in infinite recursion. The only lock that
is affected by this is a mutex in astmm.c used when MALLOC_DEBUG is enabled.
Russell Bryant [Mon, 22 Oct 2007 15:45:04 +0000 (15:45 +0000)]
Merged revisions 86726 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4
........
r86726 | russell | 2007-10-22 10:43:30 -0500 (Mon, 22 Oct 2007) | 4 lines
Update the static mutex initializer to include the initialization of
the internal mutex used to protect the lock debugging data.
(closes issue #11044, patch suggested by Ivan)