2 * Prototypes for public functions only of internal interest,
3 * normally not used by modules.
4 * What goes here are typically *_init() routines.
10 * Prototypes for public functions only of internal interest,
15 #ifndef _ASTERISK__PRIVATE_H
16 #define _ASTERISK__PRIVATE_H
18 int load_modules(unsigned int); /*!< Provided by loader.c */
19 int load_pbx(void); /*!< Provided by pbx.c */
20 int init_logger(void); /*!< Provided by logger.c */
21 void close_logger(void); /*!< Provided by logger.c */
22 int init_framer(void); /*!< Provided by frame.c */
23 int ast_term_init(void); /*!< Provided by term.c */
24 int astdb_init(void); /*!< Provided by db.c */
25 void ast_channels_init(void); /*!< Provided by channel.c */
26 void ast_builtins_init(void); /*!< Provided by cli.c */
27 int ast_cli_perms_init(int reload); /*!< Provided by cli.c */
28 int dnsmgr_init(void); /*!< Provided by dnsmgr.c */
29 void dnsmgr_start_refresh(void); /*!< Provided by dnsmgr.c */
30 int dnsmgr_reload(void); /*!< Provided by dnsmgr.c */
31 void threadstorage_init(void); /*!< Provided by threadstorage.c */
32 int ast_event_init(void); /*!< Provided by event.c */
33 int ast_device_state_engine_init(void); /*!< Provided by devicestate.c */
34 int astobj2_init(void); /*!< Provided by astobj2.c */
35 int ast_file_init(void); /*!< Provided by file.c */
36 int ast_features_init(void); /*!< Provided by features.c */
37 void ast_autoservice_init(void); /*!< Provided by autoservice.c */
38 int ast_data_init(void); /*!< Provided by data.c */
39 int ast_http_init(void); /*!< Provided by http.c */
40 int ast_http_reload(void); /*!< Provided by http.c */
41 int ast_tps_init(void); /*!< Provided by taskprocessor.c */
42 int ast_timing_init(void); /*!< Provided by timing.c */
43 int ast_indications_init(void); /*!< Provided by indications.c */
44 int ast_indications_reload(void);/*!< Provided by indications.c */
45 void ast_stun_init(void); /*!< Provided by stun.c */
46 int ast_cel_engine_init(void); /*!< Provided by cel.c */
47 int ast_cel_engine_reload(void); /*!< Provided by cel.c */
48 int ast_ssl_init(void); /*!< Provided by ssl.c */
49 int ast_test_init(void); /*!< Provided by test.c */
52 * \brief Reload asterisk modules.
53 * \param name the name of the module to reload
55 * This function reloads the specified module, or if no modules are specified,
56 * it will reload all loaded modules.
58 * \note Modules are reloaded using their reload() functions, not unloading
59 * them and loading them again.
61 * \return 0 if the specified module was not found.
62 * \retval 1 if the module was found but cannot be reloaded.
63 * \retval -1 if a reload operation is already in progress.
64 * \retval 2 if the specfied module was found and reloaded.
66 int ast_module_reload(const char *name);
69 * \brief Process reload requests received during startup.
71 * This function requests that the loader execute the pending reload requests
72 * that were queued during server startup.
74 * \note This function will do nothing if the server has not completely started
75 * up. Once called, the reload queue is emptied, and further invocations
76 * will have no affect.
78 void ast_process_pending_reloads(void);
80 /*! \brief Load XML documentation. Provided by xmldoc.c
82 * \retval 0 on success.
84 int ast_xmldoc_load_documentation(void);
86 #endif /* _ASTERISK__PRIVATE_H */