X-Git-Url: https://jfr.im/git/solanum.git/blobdiff_plain/11f2e7872746ba994b9e61b5169c020b295ebb25..8f0c3422e75189b7f39a7555ded278ab6027707b:/extensions/extb_usermode.c diff --git a/extensions/extb_usermode.c b/extensions/extb_usermode.c index dabc7fd1..87cba51e 100644 --- a/extensions/extb_usermode.c +++ b/extensions/extb_usermode.c @@ -15,16 +15,18 @@ #include "s_serv.h" #include "numeric.h" +static const char extb_desc[] = "Usermode ($m) extban type"; + static int _modinit(void); static void _moddeinit(void); static int eb_usermode(const char *data, struct Client *client_p, struct Channel *chptr, long mode_type); -DECLARE_MODULE_AV1(extb_account, _modinit, _moddeinit, NULL, NULL, NULL, "$Revision: 1299 $"); +DECLARE_MODULE_AV2(extb_usermode, _modinit, _moddeinit, NULL, NULL, NULL, NULL, NULL, extb_desc); static int _modinit(void) { - extban_table['m'] = eb_usermode; + extban_table['u'] = eb_usermode; return 0; } @@ -32,7 +34,7 @@ _modinit(void) static void _moddeinit(void) { - extban_table['m'] = NULL; + extban_table['u'] = NULL; } static int eb_usermode(const char *data, struct Client *client_p, @@ -73,5 +75,7 @@ static int eb_usermode(const char *data, struct Client *client_p, } } - return ((client_p->umodes & modes_ack) && !(client_p->umodes & modes_nak)) ? EXTBAN_MATCH : EXTBAN_NOMATCH; + return ((client_p->umodes & modes_ack) == modes_ack && + !(client_p->umodes & modes_nak)) ? + EXTBAN_MATCH : EXTBAN_NOMATCH; }