]> jfr.im git - irc/freenode/solanum.git/commitdiff
Add a sendq_cleared hook
authorEd Kellett <redacted>
Thu, 4 Jun 2020 01:22:46 +0000 (02:22 +0100)
committerEd Kellett <redacted>
Sat, 17 Oct 2020 16:56:04 +0000 (17:56 +0100)
include/hook.h
ircd/hook.c
ircd/send.c

index 8874281cd16c5af5061f1654dd66830e40190fae..1dbfabf067e4c151784f2e32acf1d042ebc1070b 100644 (file)
@@ -46,6 +46,7 @@ extern int h_conf_read_end;
 extern int h_outbound_msgbuf;
 extern int h_rehash;
 extern int h_cap_change;
+extern int h_sendq_cleared;
 
 void init_hook(void);
 int register_hook(const char *name);
index 2a6adaf5d9094409486d47042332bcb5ca7f1bcb..619cd246c713626e475bca7f88f8e3f3c093e09d 100644 (file)
@@ -72,6 +72,7 @@ int h_conf_read_end;
 int h_outbound_msgbuf;
 int h_rehash;
 int h_cap_change;
+int h_sendq_cleared;
 
 void
 init_hook(void)
@@ -97,6 +98,7 @@ init_hook(void)
        h_outbound_msgbuf = register_hook("outbound_msgbuf");
        h_rehash = register_hook("rehash");
        h_cap_change = register_hook("cap_change");
+       h_sendq_cleared = register_hook("sendq_cleared");
 }
 
 /* grow_hooktable()
index 4205276c74ae4fdfea369814ecf3fb229a8e7277..b6d751d373bf63401d1661c0e36f4d94ddfbfa2d 100644 (file)
@@ -182,7 +182,12 @@ send_queued(struct Client *to)
                               send_queued_write, to);
        }
        else
+       {
+               hook_data_client hdata;
+               hdata.client = to;
                ClearFlush(to);
+               call_hook(h_sendq_cleared, &hdata);
+       }
 }
 
 void