* Canjoin extban type: matches users who are or are not banned from a
* specified channel.
* -- nenolod/jilles
- *
- * $Id: extb_canjoin.c 1841 2006-08-22 17:30:03Z jilles $
*/
#include "stdinc.h"
#include "hash.h"
#include "ircd.h"
+static const char extb_desc[] = "Can join ($j) extban type - matches users who are or are not banned from a specified channel";
+
static int _modinit(void);
static void _moddeinit(void);
static int eb_canjoin(const char *data, struct Client *client_p, struct Channel *chptr, long mode_type);
-DECLARE_MODULE_AV1(extb_canjoin, _modinit, _moddeinit, NULL, NULL, NULL, "$Revision: 1841 $");
+DECLARE_MODULE_AV2(extb_canjoin, _modinit, _moddeinit, NULL, NULL, NULL, NULL, NULL, extb_desc);
static int
_modinit(void)
return EXTBAN_INVALID;
if (data == NULL)
return EXTBAN_INVALID;
+ if (mode_type == CHFL_EXCEPTION)
+ return EXTBAN_INVALID;
chptr2 = find_channel(data);
/* must exist, and no point doing this with the same channel */
if (chptr2 == NULL || chptr2 == chptr)
return EXTBAN_INVALID;
#endif
recurse = 1;
- ret = is_banned(chptr2, client_p, NULL, NULL, NULL, NULL) == CHFL_BAN ? EXTBAN_MATCH : EXTBAN_NOMATCH;
+ ret = is_banned(chptr2, client_p, NULL, NULL, NULL) == CHFL_BAN ? EXTBAN_MATCH : EXTBAN_NOMATCH;
recurse = 0;
return ret;
}