diff options
author | Kevin P. Fleming <kpfleming@digium.com> | 2006-02-11 03:14:05 +0000 |
---|---|---|
committer | Kevin P. Fleming <kpfleming@digium.com> | 2006-02-11 03:14:05 +0000 |
commit | a38a7eec61eaad39440b37da1e73a9e626adb34a (patch) | |
tree | 47f92d29e3216d69801be7bdb5d15fef7aab9a4d /funcs/func_math.c | |
parent | c7da92d2ea7fa551daf28e05917745a751677e48 (diff) |
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
Diffstat (limited to 'funcs/func_math.c')
-rw-r--r-- | funcs/func_math.c | 40 |
1 files changed, 32 insertions, 8 deletions
diff --git a/funcs/func_math.c b/funcs/func_math.c index ebd7a707b..4ae62499f 100644 --- a/funcs/func_math.c +++ b/funcs/func_math.c @@ -31,8 +31,9 @@ #include "asterisk.h" -/* ASTERISK_FILE_VERSION(__FILE__, "$Revision$") */ +ASTERISK_FILE_VERSION(__FILE__, "$Revision$") +#include "asterisk/module.h" #include "asterisk/channel.h" #include "asterisk/pbx.h" #include "asterisk/logger.h" @@ -47,7 +48,6 @@ enum TypeOfFunctions MULTIPLYFUNCTION, SUBTRACTFUNCTION, MODULUSFUNCTION, - GTFUNCTION, LTFUNCTION, GTEFUNCTION, @@ -64,7 +64,7 @@ enum TypeOfResult }; -static char *builtin_function_math(struct ast_channel *chan, char *cmd, char *data, char *buf, size_t len) +static char *math(struct ast_channel *chan, char *cmd, char *data, char *buf, size_t len) { float fnum1; float fnum2; @@ -237,10 +237,7 @@ static char *builtin_function_math(struct ast_channel *chan, char *cmd, char *da return buf; } -#ifndef BUILTIN_FUNC -static -#endif /* BUILTIN_FUNC */ -struct ast_custom_function math_function = { +static struct ast_custom_function math_function = { .name = "MATH", .synopsis = "Performs Mathematical Functions", .syntax = "MATH(<number1><op><number 2>[,<type_of_result>])", @@ -253,5 +250,32 @@ struct ast_custom_function math_function = { " h, hex - hex,\n" " c, char - char\n" "Example: Set(i=${MATH(123%16,int)}) - sets var i=11", - .read = builtin_function_math + .read = math }; + +static char *tdesc = "Mathematical dialplan function"; + +int unload_module(void) +{ + return ast_custom_function_unregister(&math_function); +} + +int load_module(void) +{ + return ast_custom_function_register(&math_function); +} + +char *description(void) +{ + return tdesc; +} + +int usecount(void) +{ + return 0; +} + +char *key() +{ + return ASTERISK_GPL_KEY; +} |