~ubuntu-branches/ubuntu/trusty/charybdis/trusty-proposed

« back to all changes in this revision

Viewing changes to extensions/extb_realname.c

  • Committer: Package Import Robot
  • Author(s): Antoine Beaupré
  • Date: 2011-11-10 23:07:37 UTC
  • Revision ID: package-import@ubuntu.com-20111110230737-kqo6qsglp5oh02hr
Tags: upstream-3.3.0
Import upstream version 3.3.0

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
/*
 
2
 * Realname extban type: bans all users with matching gecos
 
3
 * -- jilles
 
4
 *
 
5
 * $Id: extb_realname.c 1299 2006-05-11 15:43:03Z jilles $
 
6
 */
 
7
 
 
8
#include "stdinc.h"
 
9
#include "modules.h"
 
10
#include "client.h"
 
11
#include "ircd.h"
 
12
 
 
13
static int _modinit(void);
 
14
static void _moddeinit(void);
 
15
static int eb_realname(const char *data, struct Client *client_p, struct Channel *chptr, long mode_type);
 
16
 
 
17
DECLARE_MODULE_AV1(extb_realname, _modinit, _moddeinit, NULL, NULL, NULL, "$Revision: 1299 $");
 
18
 
 
19
static int
 
20
_modinit(void)
 
21
{
 
22
        extban_table['r'] = eb_realname;
 
23
 
 
24
        return 0;
 
25
}
 
26
 
 
27
static void
 
28
_moddeinit(void)
 
29
{
 
30
        extban_table['r'] = NULL;
 
31
}
 
32
 
 
33
static int eb_realname(const char *data, struct Client *client_p,
 
34
                struct Channel *chptr, long mode_type)
 
35
{
 
36
 
 
37
        (void)chptr;
 
38
        /* This type is not safe for exceptions */
 
39
        if (mode_type == CHFL_EXCEPTION || mode_type == CHFL_INVEX)
 
40
                return EXTBAN_INVALID;
 
41
        if (data == NULL)
 
42
                return EXTBAN_INVALID;
 
43
        return match(data, client_p->info) ? EXTBAN_MATCH : EXTBAN_NOMATCH;
 
44
}