summaryrefslogtreecommitdiff
path: root/apps/app_macro.c
AgeCommit message (Collapse)Author
2007-11-21remove another set of redundant #include "asterisk/options.h"Luigi Rizzo
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@89512 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-11-19include "logger.h" and errno.h from asterisk.h - usage shows that theyLuigi Rizzo
were included almost everywhere. Remove some of the instances. git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@89424 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-11-16Start untangling header inclusion in a way that does not affectLuigi Rizzo
build times - tested, there is no measureable difference before and after this commit. In this change: use asterisk/compat.h to include a small set of system headers: inttypes.h, unistd.h, stddef.h, stddint.h, sys/types.h, stdarg.h, stdlib.h, alloca.h, stdio.h Where available, the inclusion is conditional on HAVE_FOO_H as determined by autoconf. Normally, source files should not include any of the above system headers, and instead use either "asterisk.h" or "asterisk/compat.h" which does it better. For the time being I have left alone second-level directories (main/db1-ast, etc.). git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@89333 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-11-06"show application <foo>" changes for clarity.Mark Michelson
(closes issue #11171, reported and patched by blitzrage) Many thanks! git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@89044 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-11-01This commits the performance mods that give the priority processing engine ↵Steve Murphy
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-08-01Convert code that checks the _softhangup member of ast_channel directory to useRussell Bryant
the ast_check_hangup() funciton. This function takes scheduled hangups into account. (closes issue #10230, patch by Juggie) git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@77858 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-07-31Mostly cleanup of documentation to substitute the pipe with the comma, but a ↵Tilghman Lesher
few other formatting cleanups, too. git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@77808 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-07-30Merged revisions 77768 via svnmerge from Joshua Colp
https://origsvn.digium.com/svn/asterisk/branches/1.4 ................ r77768 | file | 2007-07-30 11:51:44 -0300 (Mon, 30 Jul 2007) | 12 lines Merged revisions 77767 via svnmerge from https://origsvn.digium.com/svn/asterisk/branches/1.2 ........ r77767 | file | 2007-07-30 11:50:02 -0300 (Mon, 30 Jul 2007) | 4 lines (closes issue #10334) Reported by: ramonpeek Pass through the return value from macro_exec through the MacroIf application. ........ ................ git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@77769 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-07-26Do a massive conversion for using the ast_verb() macroRussell Bryant
(closes issue #10277, patches by mvanbaak) Basically, this changes ... if (option_verbose > 2) ast_verbose(VERBOSE_PREFIX_3, "Something\n"); to ... ast_verb(3, "Something\n"); git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@77299 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-07-23Merge the dialplan_aesthetics branch. Most of this patch simply converts ↵Tilghman Lesher
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-16Applications no longer need to call ast_module_user_add and ↵Joshua Colp
ast_module_user_remove. This is now taken care of in the pbx_exec function outside of the application. git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@75200 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-07-16It is no longer required for each module that deals with a channel to call ↵Joshua Colp
ast_module_user_hangup_all in it's unload function. The loader will automatically perform this action for it. git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@75183 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-06-14Add a massive set of changes for converting to use the ast_debug() macro.Russell Bryant
(issue #9957, patches from mvanbaak, caio1982, critch, and dimas) git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@69327 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-06-06Issue 9869 - replace malloc and memset with ast_calloc, and other coding ↵Tilghman Lesher
guidelines changes git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@67864 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-05-31Merged revisions 66770 via svnmerge from Tilghman Lesher
https://origsvn.digium.com/svn/asterisk/branches/1.4 ................ r66770 | tilghman | 2007-05-31 12:15:09 -0500 (Thu, 31 May 2007) | 10 lines Merged revisions 66744 via svnmerge from https://origsvn.digium.com/svn/asterisk/branches/1.2 ........ r66744 | tilghman | 2007-05-31 10:58:45 -0500 (Thu, 31 May 2007) | 2 lines Issue 9818 - Fix for issue 8329 breaks pbx_realtime. Issue 8329 will remain unfixed for pbx_realtime, but only because we lack core API to do it. ........ ................ git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@66771 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-05-08Merged revisions 63478 via svnmerge from Tilghman Lesher
https://origsvn.digium.com/svn/asterisk/branches/1.4 ................ r63478 | tilghman | 2007-05-08 17:38:02 -0500 (Tue, 08 May 2007) | 10 lines Merged revisions 63477 via svnmerge from https://origsvn.digium.com/svn/asterisk/branches/1.2 ........ r63477 | tilghman | 2007-05-08 17:19:15 -0500 (Tue, 08 May 2007) | 2 lines Issue 9602 - segfault in app_macro ........ ................ git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@63479 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-04-08Merged revisions 60713 via svnmerge from Tilghman Lesher
https://origsvn.digium.com/svn/asterisk/branches/1.4 ................ r60713 | tilghman | 2007-04-08 09:14:29 -0500 (Sun, 08 Apr 2007) | 10 lines Merged revisions 60711 via svnmerge from https://origsvn.digium.com/svn/asterisk/branches/1.2 ........ r60711 | tilghman | 2007-04-08 09:00:22 -0500 (Sun, 08 Apr 2007) | 2 lines Gosub called within a Macro resets the arguments improperly and causes general weirdness. (Issue 8329) ........ ................ git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@60715 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-03-23Merged revisions 59188 via svnmerge from Steve Murphy
https://origsvn.digium.com/svn/asterisk/branches/1.4 ................ r59188 | murf | 2007-03-23 10:09:01 -0600 (Fri, 23 Mar 2007) | 9 lines Merged revisions 59186 via svnmerge from https://origsvn.digium.com/svn/asterisk/branches/1.2 ........ r59186 | murf | 2007-03-23 09:57:26 -0600 (Fri, 23 Mar 2007) | 1 line Added a few words in the Macro doc strings about the behavior of macros with hangups (et al.), as per 9337 ........ ................ git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@59190 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-02-07Merged revisions 53355 via svnmerge from Tilghman Lesher
https://origsvn.digium.com/svn/asterisk/branches/1.4 ................ r53355 | tilghman | 2007-02-07 09:33:51 -0600 (Wed, 07 Feb 2007) | 10 lines Merged revisions 53354 via svnmerge from https://origsvn.digium.com/svn/asterisk/branches/1.2 ........ r53354 | tilghman | 2007-02-07 09:30:02 -0600 (Wed, 07 Feb 2007) | 2 lines Issue 7440 - Macro called from Macro from the h extension exits prematurely ........ ................ git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@53356 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-10-04Added a warning to the documentation for Macro in response to bug 7776Steve Murphy
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@44336 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-10-03bug #8076 check option_debug before printing to debug channel.Matt O'Gorman
patch provided in bugnote, with minor changes. git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@44253 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-09-19Various updates from PCadach's chan_h323-live branchMatthew Fredrickson
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@43294 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-09-19similar patch for verbose vs debug with minor changesMatt O'Gorman
bug 2617 git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@43272 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-08-29Committed a fix for 7731, suggested by mnehauser.Steve Murphy
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@41268 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-08-21merge new_loader_completion branch, including (at least):Kevin P. Fleming
- 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-17In app_macro, changed the previously changed upper recursion depth limit to ↵Steve Murphy
a variable, default of the original val of 7. MACRO_RECURSION is a channel variable that will override the limit, but until I can understand and fix why this limit is neccessary, I am not advertising this variable in the docs. git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@40200 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-08-15This change fixes bug 7731, macros not executing more than one level deep in ↵Steve Murphy
a hung-up situation; also increased maximum recursion depth from 7 to 20, to keep serious coders from painful toe-stubbings git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@39909 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-08-14resolve some compiler warnings ...Russell Bryant
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@39684 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-08-14add MacroExclusive application, a Macro that only one call can executed atRussell Bryant
a time (issue #7366, Steve Davies, with mods by me as discussed in the report) git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@39681 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-06-07simplify autoconfig include mechanism (make tholo happy he can use lint ↵Kevin P. Fleming
again :-) git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@32846 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-05-05Merged revisions 24837 via svnmerge from Russell Bryant
https://origsvn.digium.com/svn/asterisk/branches/1.2 ........ r24837 | russell | 2006-05-05 10:44:50 -0400 (Fri, 05 May 2006) | 3 lines use pbx_checkcondition() instead of ast_true() to evaluate the condition for MacroIf and WhileIf (issue #7086) ........ git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@24838 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-04-14This rather large commit changes the way modules are loaded. Luigi Rizzo
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-08since the module API is changing, it's a good time to const-ify the ↵Kevin P. Fleming
description() and key() return values git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@18552 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-03-30use ast_strdup instead of strdupLuigi Rizzo
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@16561 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-02-15remove the uses of the deprecated STANDARD_LOCAL_USERRussell Bryant
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@10241 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-02-05Merged revisions 9156 via svnmerge from Tilghman Lesher
https://origsvn.digium.com/svn/asterisk/branches/1.2 ........ r9156 | tilghman | 2006-02-05 11:10:19 -0600 (Sun, 05 Feb 2006) | 2 lines Bug 6176 - Fix race condition ........ git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@9157 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-01-21on this pass, only remove duplicate log messagesRussell Bryant
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@8403 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-01-21revert my pass through the tree to remove checks of the result of ast_strdupaRussell Bryant
(revisions 8378 through 8381) git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@8387 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-01-21remove lots of useless checks of the result of ast_strdupaRussell Bryant
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@8379 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-01-13Various cleanups from comments in an email from Luigi Rizzo. Thank you!Russell Bryant
- Use a cleaner syntax for declaring the allocation macros - Fix return value for ast_strdup/ast_strndup - remove safe_strdup from app_macro, since ast_strup does the same thing - fix a place in app_queue where ast_calloc+strncpy was used instead of ast_strdup. If you are helping out with these conversions, please watch out for other places where this is done. - add a note to the coding guidelines about the fix to app_queue git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@8065 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-12-30update doxygen docs to specify authorsRussell Bryant
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@7682 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-12-13reduce some duplicated code when doing a strdup (issue #5986)Russell Bryant
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@7472 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-12-03Bug 5858 - Make the chanvars.c functions return a 'const char *'Tilghman Lesher
This should prevent us from unintentionally changing variable values when they're returned from pbx_builtin_getvar_helper. git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@7304 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-11-29remove extraneous svn:executable propertiesKevin P. Fleming
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@7221 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-11-08make app_queue 1.2 jump compliant (issue #5580)Russell Bryant
add missing includes of stdio.h remove some unused and duplicate headers git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@7026 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-11-07application doc updateKevin P. Fleming
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@6992 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-11-06issue #5605Russell Bryant
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@6979 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-10-26remove unnecessary checks before calls to ast_strlen_zeroRussell Bryant
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@6864 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-10-24Doxygen documentation update from oej (issue #5505)Russell Bryant
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@6847 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-10-19Massive cleanups to applications for LOCAL_USER handling and some other things.Russell Bryant
In general, LOCAL_USER_ADD/REMOVE should be the first/last thing called in an application. An exception is if there is some *fast* setup code that might halt the execution of the application, such as checking to see if an argument exists. git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@6832 65c4cc65-6c06-0410-ace0-fbb531ad65f3