extb_ssl extension - ssl extban
This commit is contained in:
parent
ee9335d13f
commit
0e51998bf8
2 changed files with 40 additions and 0 deletions
|
@ -35,6 +35,7 @@ SRCS = \
|
||||||
extb_channel.c \
|
extb_channel.c \
|
||||||
extb_oper.c \
|
extb_oper.c \
|
||||||
extb_server.c \
|
extb_server.c \
|
||||||
|
extb_ssl.c \
|
||||||
extb_realname.c \
|
extb_realname.c \
|
||||||
extb_extgecos.c \
|
extb_extgecos.c \
|
||||||
force_user_invis.c \
|
force_user_invis.c \
|
||||||
|
|
39
extensions/extb_ssl.c
Normal file
39
extensions/extb_ssl.c
Normal file
|
@ -0,0 +1,39 @@
|
||||||
|
/* Oper extban type: matches ssl users */
|
||||||
|
|
||||||
|
#include "stdinc.h"
|
||||||
|
#include "modules.h"
|
||||||
|
#include "client.h"
|
||||||
|
#include "ircd.h"
|
||||||
|
|
||||||
|
static int _modinit(void);
|
||||||
|
static void _moddeinit(void);
|
||||||
|
static int eb_ssl(const char *data, struct Client *client_p, struct Channel *chptr, long mode_type);
|
||||||
|
|
||||||
|
DECLARE_MODULE_AV1(extb_ssl, _modinit, _moddeinit, NULL, NULL, NULL, "$Revision$");
|
||||||
|
|
||||||
|
static int
|
||||||
|
_modinit(void)
|
||||||
|
{
|
||||||
|
extban_table['z'] = eb_ssl;
|
||||||
|
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
static void
|
||||||
|
_moddeinit(void)
|
||||||
|
{
|
||||||
|
extban_table['z'] = NULL;
|
||||||
|
}
|
||||||
|
|
||||||
|
static int eb_ssl(const char *data, struct Client *client_p,
|
||||||
|
struct Channel *chptr, long mode_type)
|
||||||
|
{
|
||||||
|
|
||||||
|
(void)chptr;
|
||||||
|
(void)mode_type;
|
||||||
|
/* perhaps use data somehow? (opernick/flags?) */
|
||||||
|
/* so deny any bans with data for now */
|
||||||
|
if (data != NULL)
|
||||||
|
return EXTBAN_INVALID;
|
||||||
|
return IsSSLClient(client_p) ? EXTBAN_MATCH : EXTBAN_NOMATCH;
|
||||||
|
}
|
Loading…
Reference in a new issue