]> jfr.im git - irc/evilnet/x3.git/blob - src/globtest.c
Couple of srvx updates.
[irc/evilnet/x3.git] / src / globtest.c
1 #include "hash.h"
2 #include "log.h"
3 #include "helpfile.h"
4
5 struct glob_test {
6 const char *glob;
7 const char *texts[8];
8 };
9
10 struct glob_test glob_yes[] = {
11 { "*Zoot*!*@*.org", { "Zoot!Zoot@services.org",
12 "zoot!bleh@j00.are.r00t3d.org",
13 0 } },
14 { "*!*@*", { "DK-Entrope!entrope@clan-dk.dyndns.org",
15 0 } },
16 { "*", { "anything at all!",
17 0 } },
18 { 0, { 0 } }
19 };
20
21 struct glob_test glob_no[] = {
22 { "*Zoot*!*@*.org", { "Zoot!Zoot@services.net",
23 0 } },
24 { "*!*@*", { "luser@host.com",
25 0 } },
26 { 0, { 0 } }
27 };
28
29 struct glob_test glob_globs[] = {
30 { "*@foo", { "foo@bar",
31 "bar@foo",
32 0 } },
33 { "foo@bar", { "*@foo",
34 "bar@foo",
35 "foo@bar",
36 0 } },
37 { 0, { 0 } }
38 };
39
40 int
41 main(UNUSED_ARG(int argc), UNUSED_ARG(char *argv[]))
42 {
43 int i, j;
44
45 tools_init();
46 for (i = 0; glob_yes[i].glob; i++) {
47 for (j=0; glob_yes[i].texts[j]; j++) {
48 if (!match_ircglob(glob_yes[i].texts[j], glob_yes[i].glob)) {
49 fprintf(stderr, "%s did not match glob %s!\n",
50 glob_yes[i].texts[j], glob_yes[i].glob);
51 }
52 }
53 }
54
55 for (i = 0; glob_no[i].glob; i++) {
56 for (j=0; glob_no[i].texts[j]; j++) {
57 if (match_ircglob(glob_no[i].texts[j], glob_no[i].glob)) {
58 fprintf(stderr, "%s matched glob %s!\n",
59 glob_no[i].texts[j], glob_no[i].glob);
60 }
61 }
62 }
63
64 for (i=0; glob_globs[i].glob; i++) {
65 for (j=0; glob_globs[i].texts[j]; j++) {
66 fprintf(stdout, "match_ircglobs(\"%s\", \"%s\") -> %d\n",
67 glob_globs[i].glob, glob_globs[i].texts[j],
68 match_ircglobs(glob_globs[i].glob, glob_globs[i].texts[j]));
69 }
70 }
71
72 return 0;
73 }
74
75 /* because tools.c likes to log stuff.. */
76 void
77 log_module(UNUSED_ARG(struct log_type *type), UNUSED_ARG(enum log_severity sev), const char *format, ...)
78 {
79 va_list va;
80 va_start(va, format);
81 vfprintf(stderr, format, va);
82 va_end(va);
83 }
84
85 const char *
86 language_find_message(UNUSED_ARG(struct language *lang), UNUSED_ARG(const char *msgid))
87 {
88 return "Stub -- Not implemented.";
89 }
90
91 struct language *lang_C = NULL;
92 struct log_type *MAIN_LOG = NULL;
93 const char *hidden_host_suffix;