X-Git-Url: https://jfr.im/git/solanum.git/blobdiff_plain/212380e3f42f585dc1ea927402252eb943f91f7b..bd0d352f12ee12bbe14b43c4eed9fbc74c51ac00:/extensions/extb_oper.c diff --git a/extensions/extb_oper.c b/extensions/extb_oper.c index e34d0221..4554b724 100644 --- a/extensions/extb_oper.c +++ b/extensions/extb_oper.c @@ -8,6 +8,8 @@ #include "stdinc.h" #include "modules.h" #include "client.h" +#include "privilege.h" +#include "s_newconf.h" #include "ircd.h" static int _modinit(void); @@ -35,8 +37,11 @@ static int eb_oper(const char *data, struct Client *client_p, { (void)chptr; - (void)data; (void)mode_type; - /* perhaps use data somehow? (opernick/flags?) */ + + if (data != NULL) + /* $o:admin or whatever */ + return HasPrivilege(client_p, data) ? EXTBAN_MATCH : EXTBAN_NOMATCH; + return IsOper(client_p) ? EXTBAN_MATCH : EXTBAN_NOMATCH; }