mirror of
https://github.com/asterisk/asterisk.git
synced 2026-05-07 22:04:00 +00:00
This patch includes a number of changes to the indications API. The primary motivation for this work was to improve stability. The object management in this API was significantly flawed, and a number of trivial situations could cause crashes. The changes included are: 1) Remove the module res_indications. This included the critical functionality that actually loaded the indications configuration. I have seen many people have Asterisk problems because they accidentally did not have an indications.conf present and loaded. Now, this code is in the core, and Asterisk will fail to start without indications configuration. There was one part of res_indications, the dialplan applications, which did belong in a module, and have been moved to a new module, app_playtones. 2) Object management has been significantly changed. Tone zones are now managed using astobj2, and it is no longer possible to crash Asterisk by issuing a reload that destroys tone zones while they are in use. 3) The API documentation has been filled out. 4) The API has been updated to follow our naming conventions. 5) Various bits of code throughout the tree have been updated to account for the API update. 6) Configuration parsing has been mostly re-written. 7) "Code cleanup" The code is from svn/asterisk/team/russell/indications/. Review: http://reviewboard.digium.com/r/149/ git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@176627 65c4cc65-6c06-0410-ace0-fbb531ad65f3
69 lines
2.6 KiB
C
69 lines
2.6 KiB
C
/*
|
|
* Prototypes for public functions only of internal interest,
|
|
* normally not used by modules.
|
|
* What goes here are typically *_init() routines.
|
|
*/
|
|
|
|
/*! \file
|
|
*
|
|
* \brief
|
|
* Prototypes for public functions only of internal interest,
|
|
*
|
|
*/
|
|
|
|
|
|
#ifndef _ASTERISK__PRIVATE_H
|
|
#define _ASTERISK__PRIVATE_H
|
|
|
|
int load_modules(unsigned int); /*!< Provided by loader.c */
|
|
int load_pbx(void); /*!< Provided by pbx.c */
|
|
int init_logger(void); /*!< Provided by logger.c */
|
|
void close_logger(void); /*!< Provided by logger.c */
|
|
int init_framer(void); /*!< Provided by frame.c */
|
|
int ast_term_init(void); /*!< Provided by term.c */
|
|
int astdb_init(void); /*!< Provided by db.c */
|
|
void ast_channels_init(void); /*!< Provided by channel.c */
|
|
void ast_builtins_init(void); /*!< Provided by cli.c */
|
|
int ast_cli_perms_init(int reload); /*!< Provided by cli.c */
|
|
int dnsmgr_init(void); /*!< Provided by dnsmgr.c */
|
|
void dnsmgr_start_refresh(void); /*!< Provided by dnsmgr.c */
|
|
int dnsmgr_reload(void); /*!< Provided by dnsmgr.c */
|
|
void threadstorage_init(void); /*!< Provided by threadstorage.c */
|
|
void ast_event_init(void); /*!< Provided by event.c */
|
|
int ast_device_state_engine_init(void); /*!< Provided by devicestate.c */
|
|
int astobj2_init(void); /*!< Provided by astobj2.c */
|
|
int ast_file_init(void); /*!< Provided by file.c */
|
|
int ast_features_init(void); /*!< Provided by features.c */
|
|
void ast_autoservice_init(void); /*!< Provided by autoservice.c */
|
|
int ast_http_init(void); /*!< Provided by http.c */
|
|
int ast_http_reload(void); /*!< Provided by http.c */
|
|
int ast_tps_init(void); /*!< Provided by taskprocessor.c */
|
|
int ast_timing_init(void); /*!< Provided by timing.c */
|
|
int ast_indications_init(void); /*!< Provided by indications.c */
|
|
int ast_indications_reload(void);/*!< Provided by indications.c */
|
|
|
|
/*!
|
|
* \brief Reload asterisk modules.
|
|
* \param name the name of the module to reload
|
|
*
|
|
* This function reloads the specified module, or if no modules are specified,
|
|
* it will reload all loaded modules.
|
|
*
|
|
* \note Modules are reloaded using their reload() functions, not unloading
|
|
* them and loading them again.
|
|
*
|
|
* \return 0 if the specified module was not found.
|
|
* \retval 1 if the module was found but cannot be reloaded.
|
|
* \retval -1 if a reload operation is already in progress.
|
|
* \retval 2 if the specfied module was found and reloaded.
|
|
*/
|
|
int ast_module_reload(const char *name);
|
|
|
|
/*! \brief Load XML documentation. Provided by xmldoc.c
|
|
* \retval 1 on error.
|
|
* \retval 0 on success.
|
|
*/
|
|
int ast_xmldoc_load_documentation(void);
|
|
|
|
#endif /* _ASTERISK__PRIVATE_H */
|