]> jfr.im git - solanum.git/blobdiff - doc/technical/hooks.txt
Add oper:privs
[solanum.git] / doc / technical / hooks.txt
index 8ea267d5ed025371e65b0db412dc29636f48cebb..32611a69c2426bb52d86f0ac8398bce9acf3e87c 100644 (file)
@@ -6,7 +6,7 @@ contrib/example_module.c, this document simply describes which hooks are
 available.
 
 There are various hook structures available that may be passed to hooks:
-hook_data              - struct Client *client; const void *arg1; 
+hook_data              - struct Client *client; const void *arg1;
                          const void *arg2;
 hook_data_int          - struct Client *client; const void *arg1; int arg2;
 hook_data_client       - struct Client *client; struct Client *target;
@@ -114,7 +114,24 @@ The following hooks are called during various events related to clients.
                          oldsnomask = new snomask field
 
 
-The following are for debugging and take struct hook_io_data for arguments. 
+Channel Hooks
+-------------
+
+"can_invite"             - Called before deciding whether to allow the
+                            /invite command
+                            hdata->chptr = channel being invited to
+                            hdata->msptr = membership of inviter
+                            hdata->client = inviter
+                            hdata->target = invite target
+                            hdata->approved = zero to allow
+                            hdata->error = NULL, or error message
+                              if non-null, `approved` is the numeric
+"invite"                 - Called just before effecting an invite on the
+                            target's server
+                            hdata = as above
+
+
+The following are for debugging and take struct hook_io_data for arguments.
 These can be used for a variety of purposes, but are aimed at the developer
 community.
 "iosend"