1 /* +------------------------------------+
2 * | Inspire Internet Relay Chat Daemon |
3 * +------------------------------------+
5 * InspIRCd is copyright (C) 2002-2006 ChatSpike-Dev.
7 * <brain@chatspike.net>
8 * <Craig@chatspike.net>
10 * Written by Craig Edwards, Craig McLure, and others.
11 * This program is free but copyrighted software; see
12 * the file COPYING for details.
14 * ---------------------------------------------------
19 #include "inspircd_config.h"
21 #include "configreader.h"
24 #include <sys/errno.h>
25 #include <sys/utsname.h>
28 #include <ext/hash_map>
41 #include "inspstring.h"
43 #include "helperfuncs.h"
46 extern std::vector<Module*> modules;
47 extern std::vector<ircd_module*> factory;
49 extern InspIRCd* ServerInstance;
51 /* verify that a user's ident and nickname is valid */
53 int isident(const char* n)
59 for (char* i = (char*)n; *i; i++)
61 if ((*i >= 'A') && (*i <= '}'))
65 if (((*i >= '0') && (*i <= '9')) || (*i == '-') || (*i == '.'))
75 int isnick(const char* n)
82 for (char* i = (char*)n; *i; i++, p++)
84 /* "A"-"}" can occur anywhere in a nickname */
85 if ((*i >= 'A') && (*i <= '}'))
89 /* "0"-"9", "-" can occur anywhere BUT the first char of a nickname */
90 if ((((*i >= '0') && (*i <= '9')) || (*i == '-')) && (i > n))
94 /* invalid character! abort */
97 return (p < NICKMAX - 1);