summaryrefslogtreecommitdiff
path: root/src/wildcard.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/wildcard.cpp')
-rw-r--r--src/wildcard.cpp72
1 files changed, 0 insertions, 72 deletions
diff --git a/src/wildcard.cpp b/src/wildcard.cpp
deleted file mode 100644
index c6883a4bc..000000000
--- a/src/wildcard.cpp
+++ /dev/null
@@ -1,72 +0,0 @@
-#include "services.h"
-
-bool Anope::Match(const Anope::string &str, const Anope::string &mask, bool case_sensitive)
-{
- size_t s = 0, m = 0, str_len = str.length(), mask_len = mask.length();
-
- while (s < str_len && m < mask_len && mask[m] != '*')
- {
- char string = str[s], wild = mask[m];
- if (case_sensitive)
- {
- if (wild != string && wild != '?')
- return false;
- }
- else
- {
- if (tolower(wild) != tolower(string) && wild != '?')
- return false;
- }
-
- ++m;
- ++s;
- }
-
- size_t sp = 0, mp = 0;
- while (s < str_len)
- {
- char string = str[s], wild = mask[m];
- if (wild == '*')
- {
- if (++m == mask_len)
- return 1;
-
- mp = m;
- sp = s + 1;
- }
- else
- {
- if (case_sensitive)
- {
- if (wild == string || wild == '?')
- {
- ++m;
- ++s;
- }
- else
- {
- m = mp;
- s = sp++;
- }
- }
- else
- {
- if (tolower(wild) == tolower(string) || wild == '?')
- {
- ++m;
- ++s;
- }
- else
- {
- m = mp;
- s = sp++;
- }
- }
- }
- }
-
- if (mask[m] == '*')
- ++m;
-
- return m == mask_len;
-}