1
0
mirror of https://github.com/anope/anope.git synced 2026-07-10 22:03:13 +02:00

Refactor mask/entry code, allow full matching (against users real host/ip) if their displayed host is their real real host. Also match against cloaked host even if full matching is not being done

This commit is contained in:
Adam
2013-03-13 14:40:49 -05:00
parent 1d16629a6d
commit 1ff7a7c1f1
7 changed files with 92 additions and 122 deletions
+3 -17
View File
@@ -393,28 +393,14 @@ class CoreExport ModeManager
static void UpdateDefaultMLock(ServerConfig *config);
};
/** Entry flags
*/
enum EntryType
{
ENTRYTYPE_CIDR,
ENTRYTYPE_NICK_WILD,
ENTRYTYPE_NICK,
ENTRYTYPE_USER_WILD,
ENTRYTYPE_USER,
ENTRYTYPE_HOST_WILD,
ENTRYTYPE_HOST
};
/** Represents a mask set on a channel (b/e/I)
*/
class CoreExport Entry
{
Anope::string name;
public:
std::set<EntryType> types;
unsigned char cidr_len;
Anope::string mask;
public:
unsigned short cidr_len;
Anope::string nick, user, host;
/** Constructor
@@ -426,7 +412,7 @@ class CoreExport Entry
/** Get the banned mask for this entry
* @return The mask
*/
const Anope::string GetMask();
const Anope::string GetMask() const;
/** Check if this entry matches a user
* @param u The user