]>
jfr.im git - solanum.git/blob - extensions/extb_oper.c
2 * Oper extban type: matches opers
10 #include "s_newconf.h"
13 static int _modinit(void);
14 static void _moddeinit(void);
15 static int eb_oper(const char *data
, struct Client
*client_p
, struct Channel
*chptr
, long mode_type
);
17 DECLARE_MODULE_AV1(extb_oper
, _modinit
, _moddeinit
, NULL
, NULL
, NULL
, "$Revision: 1299 $");
22 extban_table
['o'] = eb_oper
;
30 extban_table
['o'] = NULL
;
33 static int eb_oper(const char *data
, struct Client
*client_p
,
34 struct Channel
*chptr
, long mode_type
)
42 struct PrivilegeSet
*set
= privilegeset_get(data
);
43 if (set
!= NULL
&& client_p
->localClient
->privset
== set
)
46 /* $o:admin or whatever */
47 return HasPrivilege(client_p
, data
) ? EXTBAN_MATCH
: EXTBAN_NOMATCH
;
50 return IsOper(client_p
) ? EXTBAN_MATCH
: EXTBAN_NOMATCH
;