aboutsummaryrefslogtreecommitdiffstats
path: root/trunk/doc/modules.txt
diff options
context:
space:
mode:
Diffstat (limited to 'trunk/doc/modules.txt')
-rw-r--r--trunk/doc/modules.txt25
1 files changed, 25 insertions, 0 deletions
diff --git a/trunk/doc/modules.txt b/trunk/doc/modules.txt
new file mode 100644
index 000000000..f6d004718
--- /dev/null
+++ b/trunk/doc/modules.txt
@@ -0,0 +1,25 @@
+All modules must have at least the following:
+
+static int load_module():
+
+ Do what you need to do when you get started. This function can return
+AST_MODULE_LOAD_FAILURE if an action fails and the module is prevented from loading,
+AST_MODULE_LOAD_DECLINE if the module can not load because of a non-critical failure
+(the configuration file was not found), or AST_MODULE_LOAD_SUCCESS if the module
+loaded fine.
+
+static int unload_module():
+
+ The module will soon be unloaded. If any channels are using your
+features, you should give them a softhangup in an effort to keep the
+program from crashing. Generally, unload_module is only called when the
+usecount is 0 or less, but the user can force unloading at their
+discretion, and thus a module should do its best to comply (although in
+some cases there may be no way to avoid a crash). This function should
+return 0 on success and non-zero on failure (i.e. it cannot yet be
+unloaded).
+
+AST_MODULE_INFO_STANDARD(keystr, desc);
+
+keystr: Applicable license for module. In most cases this is ASTERISK_GPL_KEY.
+desc: Description of module.