Steve Murphy
63f2f04cf4
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.
...
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@88166 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-11-01 22:26:51 +00:00
Steve Murphy
4e20c42a13
Merged revisions 86902 via svnmerge from
...
https://origsvn.digium.com/svn/asterisk/branches/1.4
........
r86902 | murf | 2007-10-23 15:18:08 -0600 (Tue, 23 Oct 2007) | 1 line
closes issue #11052 -- where nothing after the ? will allow un-initialized variable values to corrupt and crash asterisk on 64-bit platforms
........
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@86903 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-10-23 21:25:37 +00:00
Tilghman Lesher
314d4e6048
Merged revisions 81415 via svnmerge from
...
https://origsvn.digium.com/svn/asterisk/branches/1.4
........
r81415 | tilghman | 2007-08-31 14:16:52 -0500 (Fri, 31 Aug 2007) | 2 lines
The IF() function was not allowing true values that had embedded colons (closes issue #10613 )
........
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@81431 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-09-03 03:01:31 +00:00
Tilghman Lesher
55b1ee298e
Merge the dialplan_aesthetics branch. Most of this patch simply converts applications
...
using old methods of parsing arguments to using the standard macros. However, the big
change is that the really old way of specifying application and arguments separated by
a comma will no longer work (e.g. NoOp,foo|bar). Instead, the way that has been
recommended since long before 1.0 will become the only method available (e.g. NoOp(foo,bar).
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@76703 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-07-23 19:51:41 +00:00
Olle Johansson
0ddb38ddee
Doxygen update
...
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@51920 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-01-24 09:05:29 +00:00
Kevin P. Fleming
37182c873e
finish const-ifying ast_func_read()
...
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@49741 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-01-06 00:13:33 +00:00
Tilghman Lesher
9ca7c56c74
Merged revisions 44808 via svnmerge from
...
https://origsvn.digium.com/svn/asterisk/branches/1.4
........
r44808 | tilghman | 2006-10-10 11:42:19 -0500 (Tue, 10 Oct 2006) | 2 lines
Lost of a bit of logic when this was simplified between 1.2 and 1.4 (Bug 8117)
........
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@44810 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-10-10 16:46:01 +00:00
Kevin P. Fleming
0a27d8bfe5
merge new_loader_completion branch, including (at least):
...
- restructured build tree and makefiles to eliminate recursion problems
- support for embedded modules
- support for static builds
- simpler cross-compilation support
- simpler module/loader interface (no exported symbols)
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@40722 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-08-21 02:11:39 +00:00
Kevin P. Fleming
472c1ca282
simplify autoconfig include mechanism (make tholo happy he can use lint again :-)
...
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@32846 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-06-07 18:54:56 +00:00
Tilghman Lesher
9fd91e0829
Merged revisions 27051 via svnmerge from
...
https://origsvn.digium.com/svn/asterisk/branches/1.2
........
r27051 | tilghman | 2006-05-11 18:02:57 -0500 (Thu, 11 May 2006) | 2 lines
Bug 7086 - pbx_checkcondition substitution, so that arbitrary strings are true (for regex)
........
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@27052 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-05-11 23:16:27 +00:00
Luigi Rizzo
e43bc6634d
This rather large commit changes the way modules are loaded.
...
As partly documented in loader.c and include/asterisk/module.h,
modules are now expected to return all of their methods and flags
into a structure 'mod_data', and are normally loaded with RTLD_NOW
| RTLD_LOCAL, so symbols are resolved immediately and conflicts
should be less likely. Only in a small number of cases (res_*,
typically) modules are loaded RTLD_GLOBAL, so they can export
symbols.
The core of the change is only the two files loader.c and
include/asterisk/module.h, all the rest is simply adaptation of the
existing modules to the new API, a rather mechanical (but believe
me, time and finger-consuming!) process whose detail you can figure
out by svn diff'ing any single module.
Expect some minor compilation issue after this change, please
report it on mantis http://bugs.digium.com/view.php?id=6968
so we collect all the feedback in one place.
I am just sorry that this change missed SVN version number 20000!
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@20003 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-04-14 14:08:19 +00:00
Kevin P. Fleming
f10f427d49
since the module API is changing, it's a good time to const-ify the description() and key() return values
...
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@18552 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-04-08 22:01:19 +00:00
Kevin P. Fleming
96bf384e7d
major dialplan functions update
...
deprecate LANGUAGE() and MUSICCLASS(), in favor of CHANNEL()
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@9674 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-02-12 04:28:58 +00:00
Kevin P. Fleming
a38a7eec61
build function modules independently (no more pbx_functions.so)
...
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@9469 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-02-11 03:14:05 +00:00
Russell Bryant
4414f45393
on this pass, only remove duplicate log messages
...
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@8403 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-01-21 20:57:06 +00:00
Russell Bryant
9fa6eb5e07
revert my pass through the tree to remove checks of the result of ast_strdupa
...
(revisions 8378 through 8381)
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@8387 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-01-21 17:50:04 +00:00
Russell Bryant
2499926195
remove useless checks of the result of ast_strdupa
...
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@8380 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-01-21 08:23:57 +00:00
Russell Bryant
a725468381
update doxygen docs to specify authors
...
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@7682 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-12-30 21:18:06 +00:00
Kevin P. Fleming
2c65582b66
remove extraneous svn:executable properties
...
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@7221 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-11-29 18:24:39 +00:00
Kevin P. Fleming
a0a9769616
issue #5648
...
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@7011 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-11-08 01:55:31 +00:00
Russell Bryant
3453e3efa5
Doxygen documentation update from oej (issue #5505 )
...
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@6847 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-10-24 20:12:06 +00:00
Kevin P. Fleming
5da915dcfd
update MANY more files with proper copyright/license info (thanks Ian!)
...
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@6596 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-09-14 20:46:50 +00:00
Kevin P. Fleming
6aeb93a629
handle whitepace around expression
...
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@6390 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-08-23 22:03:24 +00:00
Josh Roberson
88ea13f07e
Fix description text for IF function. (Bug #4966 )
...
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@6336 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-08-15 17:06:30 +00:00
Kevin P. Fleming
2b8338cb52
more file version tags
...
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@5866 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-06-06 22:12:19 +00:00
Kevin P. Fleming
b364c1b953
clean up logic functions code and help texts
...
add IFTIME function (bug #4394 , with mods)
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@5836 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-06-03 21:04:04 +00:00
Kevin P. Fleming
102c76a9c8
make IF dialplan function handle quoted strings properly (bug #4322 , with API mods)
...
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@5750 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-05-20 16:30:13 +00:00
Mark Spencer
f3cbf61cbf
Add SET function (bug #4335 )
...
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@5745 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-05-19 20:38:51 +00:00
Russell Bryant
376bc46af5
prevent copying of NULL (bug #4307 )
...
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@5708 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-05-17 16:45:42 +00:00
Kevin P. Fleming
7cd4ac0ee1
clean up file headers
...
restore appropriate copyrights for functions that came from files with copyrights listed
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@5587 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-05-05 12:48:52 +00:00
Kevin P. Fleming
4d2537ae11
major re-work of dialplan functions, including:
...
- locking of functions list during registration/unregistration/searching
- rename of function description structure to be consistent with the rest of the API
- addition of 'desc' element to description structure, for detailed description (like applications)
- addition of 'show function' CLI command to show function details
- conversion of existing functions to use uppercase names to match policy
- creation of new 'pbx_functions.so' module to contain standard 'builtin' functions
- removal of all builtin functions from pbx.c and apps and placement into new 'funcs' directory
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@5583 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-05-05 05:39:33 +00:00