For my next trick I will make it so dialplan functions no longer need to call ast_module_user_add and ast_module_user_remove. These are now called in the ast_func_read and ast_func_write functions outside of the module.

git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@75255 65c4cc65-6c06-0410-ace0-fbb531ad65f3
This commit is contained in:
Joshua Colp
2007-07-16 18:24:29 +00:00
parent ce8f95d750
commit e498488bde
9 changed files with 33 additions and 68 deletions

View File

@@ -76,6 +76,7 @@ struct ast_custom_function {
const char *syntax; /*!< Syntax description */
int (*read)(struct ast_channel *, const char *, char *, char *, size_t); /*!< Read function, if read is supported */
int (*write)(struct ast_channel *, const char *, char *, const char *); /*!< Write function, if write is supported */
struct ast_module *mod; /*!< Module this custom function belongs to */
AST_RWLIST_ENTRY(ast_custom_function) acflist;
};
@@ -862,9 +863,14 @@ struct ast_custom_function* ast_custom_function_find(const char *name);
int ast_custom_function_unregister(struct ast_custom_function *acf);
/*!
* \brief Reigster a custom function
* \brief Register a custom function
*/
int ast_custom_function_register(struct ast_custom_function *acf);
#define ast_custom_function_register(acf) ast_custom_function_register2(acf, ast_module_info->self)
/*!
* \brief Register a custom function
*/
int ast_custom_function_register2(struct ast_custom_function *acf, struct ast_module *mod);
/*!
* \brief Retrieve the number of active calls