fix possible crash on user deletion
[srvx.git] / tests / coverage-2.cmd
1 define srv1 irc.clan-dk.org:7701
2 define srv1name irc.clan-dk.org
3 define srv2 irc.clan-dk.org:7711
4 define srv2name irc2.clan-dk.org
5 define srvx srvx.clan-dk.org
6 define domain troilus.org
7 define chanserv AlphaIRC
8 define global AlphaIRC
9 define memoserv AlphaIRC
10 define nickserv AlphaIRC
11 define opserv AlphaIRC
12 define helpserv CoverageServ
13 define helpserv2 C0v3r4g3S3rv
14 define opernick test_oper
15 define operpass i_r_teh_0p3r
16 define testchan #testchan
17
18 # Connect, join testing channel, oper up, log in
19 connect cl1 test1 test1 %srv1% :Test Bot 1
20 :cl1 join %testchan%1
21 :cl1 raw :OPER %opernick% %operpass%
22 :cl1 privmsg %nickserv% :ACCOUNTINFO
23 :cl1 privmsg %nickserv%@%srvx% :AUTH
24 :cl1 privmsg %nickserv%@%srvx% :AUTH bogus bogus
25 :cl1 privmsg %nickserv%@%srvx% :AUTH testest
26 :cl1 privmsg %nickserv% :OSET test1 EPITHET some damn test bot
27 :cl1 privmsg %nickserv% :ACCOUNTINFO
28
29 # Test common infrastructure things
30 :cl1 nick test1_new
31 :cl1 nick test1
32 :cl1 privmsg %opserv% :REHASH
33 :cl1 privmsg %opserv% :REOPEN
34 :cl1 privmsg %opserv% :QUERY
35 :cl1 privmsg %opserv% :LOG LIMIT 30
36 :cl1 privmsg %opserv% :RECONNECT
37 :cl1 privmsg %opserv% :HELP WRITE
38 :cl1 privmsg %opserv% :WRITE MONDO
39 :cl1 privmsg %opserv% :WRITEALL
40 :cl1 privmsg %opserv% :STATS DATABASES
41
42 # Test global's functionality
43 :cl1 privmsg %global% :NOTICE users Hello world!
44 :cl1 privmsg %global% :MESSAGE TARGET users DURATION 1h TEXT Hello world (short duration)!
45 connect cl2 test2 test2 %srv1% :Test Bot 2
46 connect cl3 test3 test3 %srv1% :Test Bot 3
47 :cl2 join %testchan%1
48 :cl2 privmsg %nickserv%@%srvx% :REGISTER test2 testest
49 :cl2 privmsg %global% :LIST
50 :cl3 join %testchan%1
51 :cl3 privmsg %global% :MESSAGES
52 :cl3 privmsg %global% :VERSION
53 :cl1 wait cl2,cl3
54 :cl1 privmsg %global% :REMOVE 1
55 :cl1 privmsg %global% :MESSAGE SOURCELESS pizza TARGET all TARGET helpers TARGET opers TARGET staff TARGET channels DURATION 5s TEXT Hollow world (very short duration).
56 :cl1 privmsg %global% :MESSAGE TARGET all
57 :cl1 privmsg %global% :NOTICE ANNOUNCEMENT test of announcement code
58 :cl1 privmsg %global% :NOTICE CHANNELS test of channel spamming code (sorry! :)
59 :cl1 privmsg %global% :NOTICE BOGUS
60 :cl1 privmsg %global% :NOTICE DIFFERENTLY BOGUS
61 :cl1 privmsg %global% :LIST
62 :cl1 privmsg %global% :REMOVE 30
63 :cl1 privmsg %global% :MESSAGES
64
65 # Test ChanServ functions
66 :cl1 privmsg %chanserv% :HELP
67 :cl1 privmsg %chanserv% :HELP commands
68 :cl1 privmsg %chanserv% :HELP note types
69 :cl1 privmsg %chanserv% :VERSION ARCH
70 :cl1 privmsg %chanserv% :NETINFO
71 :cl1 privmsg %chanserv% :STAFF
72 :cl1 privmsg %chanserv% :GOD ON
73 :cl1 privmsg %chanserv% :REGISTER %testchan%1
74 :cl1 privmsg %chanserv% :REGISTER %testchan%2 test2
75 :cl1 privmsg %chanserv% :GOD OFF
76 :cl1 privmsg %chanserv% :ADDUSER %testchan%1 OP test2
77 :cl1 privmsg %chanserv% :GOD ON
78 :cl1 privmsg %testchan%1 :\ 1PING\ 1
79 :cl1 privmsg %chanserv% :CREATENOTE url setter all 400
80 :cl1 privmsg %chanserv% :%testchan%1 NOTE url http://www.srvx.net/index.php
81 :cl1 privmsg %chanserv% :CREATENOTE url privileged 1 privileged 20
82 :cl1 privmsg %chanserv% :CREATENOTE url channel owner channel_users 20
83 :cl1 privmsg %chanserv% :CREATENOTE url bogus all 20
84 :cl1 privmsg %chanserv% :%testchan%1 NOTE
85 :cl1 privmsg %chanserv% :REMOVENOTE url
86 :cl2 wait cl1
87 :cl2 privmsg %chanserv% :%testchan%1 NOTE
88 :cl1 privmsg %chanserv% :REMOVENOTE bogus
89 :cl1 privmsg %chanserv% :%testchan%1 DELNOTE bogus
90 :cl1 privmsg %chanserv% :%testchan%1 DELNOTE url
91 :cl1 privmsg %chanserv% :%testchan%1 NOTE url http://www.srvx.net/
92 :cl1 wait cl2
93 :cl1 privmsg %chanserv% :REMOVENOTE url FORCE
94 :cl1 privmsg %chanserv% :%testchan%1 ADDUSER OP test2
95 :cl1 privmsg %chanserv% :%testchan%1 OP test2
96 :cl1 privmsg %chanserv% :%testchan%1 OP test3
97 :cl2 wait cl1
98 :cl2 mode %testchan%1 -clo test3
99 :cl1 privmsg %chanserv% :%testchan%1 SET MODES +sntlrcCDk 500 bah
100 :cl1 privmsg %chanserv% :%testchan%1 SET MODES -lk
101 :cl1 privmsg %chanserv% :%testchan%1 SET ENFMODES 4
102 :cl1 privmsg %chanserv% :%testchan%1 SET PROTECT 0
103 :cl2 wait cl1
104 :cl2 mode %testchan%1 +l 600
105 :cl1 wait cl2
106 :cl1 privmsg %chanserv% :%testchan%1 SET CTCPUSERS 6
107 :cl3 wait cl1
108 :cl3 privmsg %testchan%1 :\ 1TIME\ 1
109 :cl1 privmsg %chanserv% :EXPIRE
110 :cl2 privmsg %chanserv% :%testchan%1 DELETEME a5bfa227
111 :cl1 privmsg %chanserv% :NOREGISTER *test2 USUX
112 :cl1 privmsg %chanserv% :NOREGISTER %testchan%3 USUX2
113 :cl1 privmsg %chanserv% :NOREGISTER #*tch* USUX3
114 :cl1 privmsg %chanserv% :NOREGISTER %testchan%3
115 :cl1 privmsg %chanserv% :NOREGISTER *test2
116 :cl1 privmsg %chanserv% :NOREGISTER *test194
117 :cl1 privmsg %chanserv% :NOREGISTER
118 :cl1 privmsg %chanserv% :REGISTER %testchan%3 test2
119 :cl1 privmsg %chanserv% :ALLOWREGISTER
120 :cl1 privmsg %chanserv% :ALLOWREGISTER *test2
121 :cl1 privmsg %chanserv% :REGISTER %testchan%3 test2
122 :cl1 privmsg %chanserv% :ALLOWREGISTER %testchan%3
123 :cl1 privmsg %chanserv% :REGISTER %testchan%3 test2
124 :cl1 privmsg %chanserv% :ALLOWREGISTER #*tch*
125 :cl1 join %testchan%3
126 :cl1 privmsg %opserv% :ADDBAD %testchan%3
127 :cl1 privmsg %chanserv% :REGISTER %testchan%3 test2
128 :cl1 privmsg %opserv% :CHANINFO %testchan%3
129 :cl1 privmsg %chanserv% :%testchan%1 MOVE %testchan%3
130 :cl1 join %testchan%3
131 :cl1 privmsg %opserv% :DELBAD %testchan%3
132 :cl1 privmsg %opserv% :ADDBAD %testchan%4
133 :cl1 privmsg %chanserv% :REGISTER %testchan%4 test2
134 :cl1 privmsg %chanserv% :%testchan%1 MOVE %testchan%4
135 :cl1 privmsg %opserv% :DELBAD %testchan%4
136 :cl1 privmsg %chanserv% :REGISTER %testchan%3 test2
137 :cl1 privmsg %chanserv% :ALLOWREGISTER #pizza
138 :cl2 wait cl1
139 :cl2 privmsg %chanserv% :%testchan%3 OPCHAN
140 :cl1 wait cl2
141 :cl1 privmsg %chanserv% :%testchan%3 CSUSPEND 1m H8!
142 :cl2 wait cl1
143 :cl2 privmsg %chanserv% :%testchan%3 UNREGISTER 1234a2ec
144 :cl2 privmsg %chanserv% :%testchan%3 OPCHAN
145 :cl2 privmsg %chanserv% :%testchan%1 UNREGISTER
146 :cl1 wait cl2
147 :cl1 privmsg %chanserv% :%testchan%3 CUNSUSPEND
148 :cl2 wait cl1
149 :cl2 privmsg %chanserv% :%testchan%3 UNREGISTER
150 :cl2 privmsg %chanserv% :%testchan%3 OPCHAN
151 :cl2 privmsg %chanserv% :%testchan%3 UNREGISTER 1234a2ec
152 :cl1 join %testchan%4
153 :cl1 privmsg %chanserv% :%testchan%4 UNREGISTER
154 :cl1 privmsg %chanserv% :%testchan%2 MOVE %testchan%4
155 :cl1 privmsg %chanserv% :%testchan%4 MERGE %testchan%1
156 :cl1 privmsg %chanserv% :%testchan%1 OPCHAN
157 :cl1 privmsg %chanserv% :%testchan%1 CLVL test2 bogus
158 :cl1 privmsg %chanserv% :%testchan%1 CLVL test2 COOWNER
159 :cl1 privmsg %chanserv% :%testchan%1 DELUSER COOWNER test2
160 :cl1 privmsg %chanserv% :%testchan%1 MDELOP *
161 :cl1 privmsg %chanserv% :%testchan%1 TRIM BANS 1w
162 :cl1 privmsg %chanserv% :%testchan%1 TRIM USERS 1w
163 :cl1 privmsg %chanserv% :%testchan%1 DOWN
164 :cl1 privmsg %chanserv% :%testchan%1 UP
165 :cl1 privmsg %chanserv% :UPALL
166 :cl1 privmsg %chanserv% :DOWNALL
167 :cl1 privmsg %chanserv% :%testchan%1 OP test1
168 :cl1 privmsg %chanserv% :%testchan%1 OP test2
169 :cl1 privmsg %chanserv% :%testchan%1 DEOP test2
170 :cl1 privmsg %chanserv% :%testchan%1 VOICE test2
171 :cl1 privmsg %chanserv% :%testchan%1 DEVOICE test2
172 :cl1 privmsg %chanserv% :%testchan%1 ADDTIMEDBAN test2 30s WEH8U
173 :cl1 privmsg %chanserv% :%testchan%1 BANS
174 :cl1 privmsg %chanserv% :%testchan%1 UNBAN test3
175 :cl1 privmsg %chanserv% :%testchan%1 DELBAN test2
176 :cl1 mode %testchan%1 +bbb abcdef!ghijkl@123456789012345678901234567890mnopqr.stuvwx.yz ghijkl!mnopqr@123456789012345678901234567890stuvwx.yzabcd.ef mnopqr!stuvwx@123456789012345678901234567890yzabcd.efghij.kl
177 :cl1 mode %testchan%1 +bbb stuvwx!yzabcd@123456789012345678901234567890efghij.klmnop.qr yzabcd!efghij@123456789012345678901234567890klmnop.qrstuv.wx efghij!klmnop@123456789012345678901234567890qrstuv.wxyzab.cd
178 :cl1 mode %testchan%1 +bbb klmnop!qrstuv@123456789012345678901234567890wxyzab.cdefgh.ij qrstuv!wxyzab@123456789012345678901234567890cdefgh.ijklmn.op wxyzab!cdefgh@123456789012345678901234567890ijklmn.opqrst.uv
179 :cl1 privmsg %chanserv% :%testchan%1 ADDTIMEDBAN a!b@c.om 15s
180 :cl1 privmsg %chanserv% :%testchan%1 UNBANALL
181 :cl1 privmsg %chanserv% :%testchan%1 OPEN
182 :cl1 privmsg %chanserv% :%testchan%1 ACCESS test2
183 :cl1 privmsg %chanserv% :%testchan%1 ACCESS test1
184 :cl1 privmsg %chanserv% :%testchan%1 USERS
185 :cl1 privmsg %chanserv% :%testchan%1 CSUSPEND 1w WEH8URCHAN
186 :cl1 privmsg %chanserv% :%testchan%1 INFO
187 :cl1 privmsg %chanserv% :%testchan%1 CUNSUSPEND
188 :cl1 privmsg %chanserv% :%testchan%1 PEEK
189 :cl1 privmsg %chanserv% :%testchan%1 SETINFO Wraa!
190 :cl1 privmsg %chanserv% :%testchan%1 ADDUSER MASTER test2
191 :cl2 wait cl1
192 :cl2 privmsg %chanserv% :%testchan%1 SETINFO Arrr!
193 :cl1 privmsg %chanserv% :%testchan%1 WIPEINFO test2
194 :cl1 privmsg %chanserv% :%testchan%1 SEEN test2
195 :cl2 privmsg %chanserv% :%testchan%1 NAMES
196 :cl1 privmsg %chanserv% :%testchan%1 EVENTS
197 :cl1 privmsg %chanserv% :%testchan%1 SAY Hi
198 :cl1 privmsg %chanserv% :%testchan%1 EMOTE burps.
199 :cl1 privmsg %chanserv% :CSEARCH PRINT LIMIT 20
200 :cl1 privmsg %chanserv% :UNVISITED
201 :cl1 privmsg %chanserv% :%testchan%1 SET DEFAULTTOPIC foo bar baz
202 :cl1 privmsg %chanserv% :%testchan%1 SET TOPICMASK foo * baz
203 :cl1 privmsg %chanserv% :%testchan%1 SET ENFTOPIC 5
204 :cl1 privmsg %chanserv% :%testchan%1 SET GREETING Hello non-user!
205 :cl1 privmsg %chanserv% :%testchan%1 SET USERGREETING Hello user!
206 :cl1 privmsg %chanserv% :%testchan%1 SET PUBCMD 6
207 :cl1 privmsg %chanserv% :%testchan%1 SET STRICTOP 5
208 :cl1 privmsg %chanserv% :%testchan%1 SET AUTOOP 4
209 :cl1 privmsg %chanserv% :%testchan%1 SET PROTECT 0
210 :cl1 privmsg %chanserv% :%testchan%1 SET TOYS 0
211 :cl1 privmsg %chanserv% :%testchan%1 SET SETTERS 2
212 :cl1 privmsg %chanserv% :%testchan%1 SET TOPICREFRESH 1
213 :cl1 privmsg %chanserv% :%testchan%1 SET VOICE OFF
214 :cl1 privmsg %chanserv% :%testchan%1 SET USERINFO ON
215 :cl1 privmsg %chanserv% :%testchan%1 SET DYNLIMIT ON
216 :cl1 privmsg %chanserv% :%testchan%1 SET TOPICSNARF OFF
217 :cl1 privmsg %chanserv% :%testchan%1 SET PEONINVITE OFF
218 :cl1 privmsg %chanserv% :%testchan%1 SET NODELETE ON
219 :cl1 privmsg %chanserv% :%testchan%1 SET DYNLIMIT OFF
220 :cl1 privmsg %chanserv% :%testchan%1 SET MODES +nt
221 :cl1 raw :MODE %testchan%1 +bb abc!def@ghi.com foo!bar@baz.com
222 :cl1 raw :MODE %testchan%1 -plkb 500 bah foo!bar@baz.com
223 :cl1 raw :MODE %testchan%1 +plkntDrcC 500 bah
224 :cl1 raw :CLEARMODE %testchan%1
225 :cl1 raw :OPMODE %testchan%1 +oo %chanserv% test1
226 :cl1 raw :GLINE +foo@example.com * 3600 :We don't like Examplians.
227 :cl1 raw :GLINE -foo@example.com * 3600 :We like you again
228 :cl1 privmsg %chanserv% :%testchan%1 UNREGISTER
229 :cl1 privmsg %chanserv% :%testchan%1 TOPIC blah blah blah
230 :cl1 privmsg %chanserv% :%testchan%1 DEOP %chanserv%
231 :cl1 raw :KICK %testchan%1 test2
232 :cl1 raw :TOPIC %testchan%1 :Topic set by test1
233 :cl1 privmsg %testchan%1 :goodbye
234
235 # Test raw protocol functionality
236 :cl1 raw :STATS u %srvx%
237 :cl1 raw :STATS c %srvx%
238 :cl1 raw :VERSION %srvx%
239 :cl1 raw :ADMIN %srvx%
240 :cl1 raw :WHOIS %nickserv% %nickserv%
241 :cl1 join 0
242 :cl1 raw :AWAY :doing stuff
243 :cl1 raw :AWAY
244 :cl1 raw :MODE test1 +iwsdh
245 :cl1 raw :KILL test3 :die, foo
246 :cl1 raw :MODE test1 -oiwsdh
247
248 # Test gline functions
249 :cl1 raw :OPER %opernick% %operpass%
250 :cl1 privmsg %opserv% :gline a@b.com 1h Test gline 1
251 :cl1 privmsg %opserv% :gline b@c.com 1m Test gline 2
252 :cl1 privmsg %opserv% :gline b@c.com 1h Test gline 2 (updated)
253 :cl1 privmsg %opserv% :gline a@a.com 10 Very short gline
254 :cl1 privmsg %opserv% :refreshg %srv1name%
255 :cl1 privmsg %opserv% :refreshg
256 :cl1 privmsg %opserv% :stats glines
257 :cl1 privmsg %opserv% :gtrace print mask *@* limit 5 issuer test1 reason *
258 :cl1 privmsg %opserv% :gtrace count mask *@* limit 5 issuer test1 reason *
259 :cl1 privmsg %opserv% :gtrace ungline mask *@b.com
260 :cl1 privmsg %opserv% :gtrace break mask *@b.com
261 :cl1 privmsg %opserv% :trace print ip 66.0.0.0/8 mask *!*@* limit 5
262 :cl1 privmsg %opserv% :trace print ip 66.*
263 :cl1 mode %testchan%1 +b abc!def@ghi.com
264 :cl1 privmsg %opserv% :%testchan%1 BAN def
265 :cl1 privmsg %opserv% :%testchan%1 BAN *!*@def.ghi.com
266
267 # Test modcmd functions
268 :cl1 privmsg %chanserv% :%testchan%1
269 :cl1 privmsg %opserv% :TIMECMD BIND %opserv% gumbo *modcmd.bind %opserv% $1- $$
270 :cl1 privmsg %opserv% :HELP gumbo
271 :cl1 privmsg %opserv% :gumbo gumbo gumbo
272 :cl1 privmsg %opserv% :MODCMD gumbo FLAGS gumbo
273 :cl1 privmsg %opserv% :MODCMD gumbo FLAGS +gumbo
274 :cl1 privmsg %opserv% :MODCMD gumbo FLAGS +disabled,-oper CHANNEL_LEVEL none
275 :cl1 privmsg %opserv% :MODCMD gumbo OPER_LEVEL 1001
276 :cl1 privmsg %opserv% :MODCMD gumbo ACCOUNT_FLAGS +g WEIGHT 0
277 :cl1 privmsg %opserv% :MODCMD gumbo bogus options
278 :cl1 privmsg %opserv% :UNBIND %opserv% gumbo
279 :cl1 privmsg %opserv% :TIMECMD BIND %opserv% gumbo %opserv%.bind %opserv% $1-
280 :cl1 privmsg %opserv% :UNBIND %opserv% gumbo
281 :cl1 privmsg %opserv% :STATS
282 :cl1 privmsg %opserv% :STATS MODULES
283 :cl1 privmsg %opserv% :STATS MODULES MODCMD
284 :cl1 privmsg %opserv% :STATS SERVICES
285 :cl1 privmsg %opserv% :STATS SERVICES %opserv%
286 :cl1 privmsg %opserv% :READHELP OpServ
287 :cl1 privmsg %opserv% :SHOWCOMMANDS
288 :cl1 privmsg %opserv% :HELPFILES %opserv%
289 :cl1 privmsg %chanserv% :COMMAND REGISTER
290
291 # Test HelpServ functions
292 connect cl3 test3 test3 %srv1% :Test Bot 3
293 :cl1 privmsg %opserv% :HELPSERV REGISTER %helpserv% %testchan%1 test1
294 :cl1 privmsg %helpserv% :huh?
295 :cl1 privmsg %helpserv% :ADDHELPER test2
296 :cl1 privmsg %helpserv% :CLVL test2 pizzaboy
297 :cl1 privmsg %helpserv% :DELUSER test2
298 :cl1 privmsg %helpserv% :DELUSER testy
299 :cl1 privmsg %helpserv% :SET PAGETARGET %testchan%1
300 :cl1 privmsg %helpserv% :SET PAGETYPE NOTICE
301 :cl1 privmsg %helpserv% :SET ALERTPAGETARGET %testchan%1
302 :cl1 privmsg %helpserv% :SET ALERTPAGETYPE PRIVMSG
303 :cl1 privmsg %helpserv% :SET STATUSPAGETARGET %testchan%1
304 :cl1 privmsg %helpserv% :SET STATUSPAGETYPE ONOTICE
305 :cl1 privmsg %helpserv% :SET GREETING Hello Earthling!  Please talk to me!
306 :cl1 privmsg %helpserv% :SET REQOPENED Your request has been accepted!
307 :cl1 privmsg %helpserv% :SET REQASSIGNED Your request has been assigned to a helper!
308 :cl1 privmsg %helpserv% :SET REQCLOSED Goodbye and leave us alone next time!
309 :cl1 privmsg %helpserv% :SET IDLEDELAY 5m
310 :cl1 privmsg %helpserv% :SET WHINEDELAY 3m
311 :cl1 privmsg %helpserv% :SET WHINEINTERVAL 3m
312 :cl1 privmsg %helpserv% :SET EMPTYINTERVAL 3m
313 :cl1 privmsg %helpserv% :SET STALEDELAY 5m
314 :cl1 privmsg %helpserv% :SET REQPERSIST PART
315 :cl1 privmsg %helpserv% :SET HELPERPERSIST CLOSE
316 :cl1 privmsg %helpserv% :SET NOTIFICATION ACCOUNTCHANGES
317 :cl1 privmsg %helpserv% :SET REQMAXLEN 5
318 :cl1 privmsg %helpserv% :SET IDWRAP 10
319 :cl1 privmsg %helpserv% :SET REQONJOIN ON
320 :cl1 privmsg %helpserv% :SET AUTOVOICE ON
321 :cl1 privmsg %helpserv% :SET AUTODEVOICE ON
322 :cl1 privmsg %helpserv% :SET
323 :cl1 privmsg %helpserv% :LIST ALL
324 :cl3 wait cl1
325 :cl3 join %testchan%1
326 :cl3 privmsg %helpserv% :eye kant auth 2 my acount test2 plz 2 help!
327 :cl1 wait cl3
328 :cl1 privmsg %helpserv% :LIST
329 :cl1 privmsg %helpserv% :LIST ASSIGNED
330 :cl1 privmsg %helpserv% :STATS
331 :cl1 privmsg %helpserv% :STATS test1
332 :cl1 privmsg %helpserv% :NEXT
333 :cl1 privmsg %helpserv% :NEXT
334 :cl1 privmsg %helpserv% :PICKUP test3
335 :cl1 privmsg %helpserv% :LIST ASSIGNED
336 :cl1 privmsg %helpserv% :LIST UNASSIGNED
337 :cl1 privmsg %helpserv% :LIST ALL
338 :cl1 privmsg %helpserv% :LIST PIZZA
339 :cl1 privmsg %nickserv% :ALLOWAUTH test3 test5
340 :cl1 privmsg %nickserv% :ALLOWAUTH test3 test2
341 :cl1 privmsg %nickserv% :ALLOWAUTH test3
342 :cl1 privmsg %nickserv% :ALLOWAUTH test3 test2
343 :cl3 wait cl1
344 :cl3 nick test4
345 :cl3 privmsg %nickserv%@%srvx% :AUTH test2 tested
346 :cl3 nick test3
347 :cl1 wait cl3
348 :cl1 privmsg %nickserv% :ALLOWAUTH test3 test2
349 :cl1 privmsg %helpserv% :REASSIGN test3 test1
350 :cl3 wait cl1
351 :cl3 privmsg %nickserv%@%srvx% :AUTH test2 testest
352 :cl3 privmsg %helpserv% :THX IT WORX NOW!!
353 :cl1 wait cl3
354 :cl1 privmsg %helpserv% :LIST ME
355 :cl1 privmsg %helpserv% :ADDNOTE george this guy is a tool
356 :cl1 privmsg %helpserv% :ADDNOTE test2 this should be the first note that works
357 :cl1 privmsg %helpserv% :ADDNOTE *test2 this guy is a tool
358 :cl1 privmsg %helpserv% :CLOSE 2
359 :cl1 privmsg %helpserv% :SHOW 1
360 :cl1 privmsg %helpserv% :CLOSE test3
361 :cl1 privmsg %opserv% :RECONNECT
362 :cl1 sleep 20
363 :cl1 privmsg %helpserv% :HELP
364 :cl1 privmsg %helpserv% :HELP COMMANDS
365 :cl1 privmsg %helpserv% :HELP BOTS
366 :cl1 privmsg %helpserv% :BOTS
367 :cl1 privmsg %nickserv% :SET BOGUS
368 :cl1 privmsg %nickserv% :SET STYLE DEF
369 :cl1 privmsg %helpserv% :HELPERS
370 :cl1 privmsg %nickserv% :SET STYLE ZOOT
371 :cl1 privmsg %helpserv% :HELPERS
372 :cl1 privmsg %helpserv% :VERSION CVS
373 :cl1 privmsg %helpserv% :PAGE and i-----i'm calling all you angels
374 :cl1 privmsg %helpserv% :STATSREPORT
375 :cl1 part %testchan%1
376 :cl1 privmsg %opserv% :HELPSERV
377 :cl1 privmsg %opserv% :HELPSERV BOGUS
378 :cl1 privmsg %opserv% :HELPSERV PICKUP
379 :cl1 privmsg %opserv% :HELPSERV READHELP
380 :cl1 privmsg %opserv% :HELPSERV BOTS
381 :cl1 privmsg %opserv% :HELPSERV STATS %helpserv%
382 :cl1 privmsg %opserv% :HELPSERV STATS %helpserv% test1
383 :cl1 privmsg %opserv% :HELPSERV MOVE %helpserv% %helpserv2%
384 :cl1 privmsg %opserv% :HELPSERV UNREGISTER %helpserv2%
385
386 # Test NickServ functions
387 :cl1 privmsg %nickserv% :STATUS
388 :cl1 privmsg %nickserv% :VERSION
389 :cl1 privmsg %nickserv% :HELP COMMANDS
390 :cl1 privmsg %nickserv% :ADDMASK
391 :cl1 privmsg %nickserv% :ADDMASK *!**foo@**.bar.com
392 :cl1 privmsg %nickserv% :ADDMASK **foo@**.bar.com
393 :cl1 privmsg %nickserv% :OADDMASK test1 *!**foo@**.bar.com
394 :cl1 privmsg %nickserv% :ODELMASK test1 *!**foo@**.bar.com
395 :cl1 privmsg %nickserv% :DELMASK **foo@**.bar.com
396 :cl1 privmsg %nickserv% :DELMASK *@*.%domain%
397 :cl1 privmsg %nickserv% :SEARCH PRINT HOSTMASK
398 :cl1 privmsg %nickserv% :SEARCH PRINT HOSTMASK EXACT *foo@*.bar.com LIMIT 5 REGISTERED >=1m
399 # cannot test with email since it breaks profiling.. argh
400 :cl3 privmsg %nickserv%@%srvx% :REGISTER test3 bleh
401 :cl1 wait cl3
402 :cl1 privmsg %nickserv% :OUNREGISTER *bleh
403 :cl1 privmsg %nickserv%@%srvx% :OREGISTER test4 bleh *@* test3
404 :cl1 privmsg %nickserv%@%srvx% :OREGISTER test4 bleh test3@bar
405 :cl1 privmsg %nickserv% :ACCOUNTINFO test3
406 :cl1 privmsg %nickserv% :ACCOUNTINFO test3bcd
407 :cl1 privmsg %nickserv% :USERINFO test3
408 :cl1 privmsg %nickserv% :NICKINFO test3
409 :cl1 privmsg %nickserv% :OSET test3
410 :cl1 privmsg %nickserv% :OSET jobaba
411 :cl1 privmsg %nickserv% :OSET test3 BOGUS
412 :cl1 privmsg %nickserv% :OSET test3 FLAGS +f
413 :cl1 privmsg %nickserv% :RENAME test4 test3
414 :cl3 wait cl1
415 :cl3 privmsg %nickserv%@%srvx% :REGISTER test3 bleh
416 :cl3 privmsg %nickserv%@%srvx% :AUTH bleh
417 :cl1 wait cl3
418 :cl1 privmsg %nickserv% :ALLOWAUTH test3 test2
419 :cl3 wait cl1
420 :cl3 nick test4
421 :cl3 privmsg %nickserv% :REGNICK
422 :cl3 nick test3
423 :cl3 privmsg %nickserv%@%srvx% :REGISTER test3 bleh
424 :cl3 privmsg %nickserv%@%srvx% :AUTH bleh
425 :cl3 privmsg %nickserv%@%srvx% :PASS bleh blargh
426 :cl3 privmsg %nickserv%@%srvx% :ADDMASK *@foo.%domain%
427 :cl3 privmsg %nickserv%@%srvx% :DELMASK *@foo.%domain%
428 :cl3 privmsg %nickserv%@%srvx% :SET
429 :cl3 privmsg %nickserv%@%srvx% :SET MAXLOGINS 1
430 :cl3 privmsg %nickserv%@%srvx% :RECLAIM test3
431 :cl3 privmsg %nickserv%@%srvx% :UNREGNICK test3
432 :cl3 privmsg %nickserv%@%srvx% :UNREGISTER bleach
433 :cl1 wait cl3
434 :cl3 quit
435 :cl1 sleep 5
436 :cl1 privmsg %nickserv% :RENAME *test4 test3
437 :cl1 privmsg %nickserv% :OSET *test3 INFO hi hi hi!
438 :cl1 privmsg %nickserv% :OSET *test3 WIDTH 1
439 :cl1 privmsg %nickserv% :OSET *test3 WIDTH 80
440 :cl1 privmsg %nickserv% :OSET *test3 WIDTH 1000
441 :cl1 privmsg %nickserv% :OSET *test3 TABLEWIDTH 1
442 :cl1 privmsg %nickserv% :OSET *test3 TABLEWIDTH 80
443 :cl1 privmsg %nickserv% :OSET *test3 TABLEWIDTH 1000
444 :cl1 privmsg %nickserv% :OSET *test3 COLOR OFF
445 :cl1 privmsg %nickserv% :OSET *test3 COLOR ON
446 :cl1 privmsg %nickserv% :OSET *test3 COLOR TV
447 :cl1 privmsg %nickserv% :OSET *test3 PRIVMSG ON
448 :cl1 privmsg %nickserv% :OSET *test3 PRIVMSG OFF
449 :cl1 privmsg %nickserv% :OSET *test3 PRIVMSG IGNORED
450 :cl1 privmsg %nickserv% :OSET *test3 ANNOUNCEMENTS ON
451 :cl1 privmsg %nickserv% :OSET *test3 ANNOUNCEMENTS OFF
452 :cl1 privmsg %nickserv% :OSET *test3 ANNOUNCEMENTS ?
453 :cl1 privmsg %nickserv% :OSET *test3 ANNOUNCEMENTS ARE NOT SPAM
454 :cl1 privmsg %nickserv% :OSET *test3 PASSWORD whocares?
455 :cl1 privmsg %nickserv% :ACCOUNTINFO *test3
456 :cl1 privmsg %nickserv% :OSET *test3 INFO *
457 :cl1 privmsg %nickserv% :OREGISTER test4 bleh *@*
458 :cl1 privmsg %nickserv% :OREGISTER test4@bogus bleh *@*
459 :cl1 privmsg %nickserv% :OREGNICK *test3 test3a
460 :cl1 privmsg %nickserv% :OREGNICK *test3 test3b
461 :cl1 privmsg %nickserv% :OREGNICK *test3 test3c
462 :cl1 privmsg %nickserv% :OUNREGNICK test3c
463 :cl1 privmsg %nickserv% :OUNREGNICK test3b
464 :cl1 privmsg %nickserv% :OUNREGNICK test3a
465 :cl1 privmsg %chanserv% :REGISTER %testchan%2 *test2
466 :cl1 privmsg %chanserv% :REGISTER %testchan%3 *test3
467 :cl1 privmsg %chanserv% :%testchan%2 ADDUSER COOWNER *test3
468 :cl1 privmsg %chanserv% :%testchan%3 ADDUSER COOWNER *test2
469 :cl1 privmsg %chanserv% :%testchan%1 ADDUSER COOWNER *test3
470 :cl1 privmsg %chanserv% :%testchan%1 ADDUSER COOWNER *test2
471 :cl1 privmsg %nickserv% :MERGE *test3 *test2
472 :cl1 privmsg %nickserv% :SET STYLE DEF
473 :cl1 privmsg %chanserv% :%testchan%1 USERS
474 :cl1 privmsg %chanserv% :%testchan%2 USERS
475 :cl1 privmsg %chanserv% :%testchan%3 USERS
476 :cl1 privmsg %nickserv% :ACCOUNTINFO *test2
477 :cl1 privmsg %nickserv% :OSET *test2 MAXLOGINS 100
478 :cl1 privmsg %nickserv% :OSET *test2 MAXLOGINS 1
479 :cl1 privmsg %nickserv% :OSET *test2 LEVEL 999
480 :cl1 privmsg %nickserv% :OSET *test2 LEVEL 998
481 connect cl3 test3 test3 %srv1% :Test Bot 3
482 :cl1 sleep 6
483 :cl3 wait cl1
484 :cl3 privmsg %nickserv%@%srvx% :AUTH test2 testest
485 :cl3 privmsg %nickserv% :VACATION
486 :cl2 wait cl3
487 :cl2 privmsg %nickserv% :GHOST test3
488 :cl3 sleep 3
489 :cl3 quit
490
491 # Test OpServ functions
492 :cl1 privmsg %opserv% :ACCESS
493 :cl1 privmsg %opserv% :ACCESS *
494 :cl1 privmsg %opserv% :CHANINFO %testchan%1
495 :cl1 privmsg %opserv% :WHOIS test1
496 :cl1 privmsg %opserv% :INVITEME
497 :cl1 privmsg %opserv% :JOIN %testchan%1
498 :cl1 privmsg %opserv% :PART %testchan%1
499 :cl1 privmsg %opserv% :STATS BAD
500 :cl1 privmsg %opserv% :STATS GLINES
501 :cl1 privmsg %opserv% :STATS LINKS
502 :cl1 privmsg %opserv% :STATS MAX
503 :cl1 privmsg %opserv% :STATS NETWORK
504 :cl1 privmsg %opserv% :STATS NETWORK2
505 :cl1 privmsg %opserv% :STATS RESERVED
506 :cl1 privmsg %opserv% :STATS TRUSTED
507 :cl1 privmsg %opserv% :STATS UPLINK
508 :cl1 privmsg %opserv% :STATS UPTIME
509 :cl1 privmsg %opserv% :STATS ALERTS
510 :cl1 privmsg %opserv% :STATS GAGS
511 :cl1 privmsg %opserv% :STATS TIMEQ
512 :cl1 privmsg %opserv% :STATS WARN
513 :cl1 privmsg %opserv% :VERSION
514 :cl1 privmsg %opserv% :HELP COMMANDS
515 :cl1 privmsg %opserv% :HELP USER
516 :cl1 privmsg %opserv% :TRACE DOMAINS DEPTH 2
517 :cl1 privmsg %opserv% :TRACE COUNT LIMIT 3
518 :cl1 privmsg %opserv% :TRACE HULA-HOOP LIMIT 3
519 :cl1 privmsg %opserv% :CSEARCH PRINT NAME * TOPIC * USERS <3 TIMESTAMP >0 LIMIT 5
520 :cl1 privmsg %opserv% :CSEARCH COUNT NAME * TOPIC * USERS <3 TIMESTAMP >0 LIMIT 5
521 :cl1 privmsg %opserv% :WARN %testchan%4 quiche eaters live here
522 :cl1 privmsg %opserv% :STATS WARN
523 :cl1 join %testchan%4
524 :cl1 privmsg %opserv% :UNWARN %testchan%4
525 :cl1 mode %testchan%4 +bbbsnt a!b@c.com b!c@a.org c!a.b.net
526 :cl1 privmsg %opserv% :CLEARBANS %testchan%4
527 :cl1 privmsg %opserv% :CLEARMODES %testchan%4
528 :cl1 privmsg %opserv% :DEOP %testchan%4 test1
529 :cl1 privmsg %opserv% :OP %testchan%4 test1
530 :cl1 privmsg %opserv% :DEOPALL %testchan%4
531 :cl1 privmsg %opserv% :VOICEALL %testchan%4
532 :cl1 privmsg %opserv% :OPALL %testchan%4
533 :cl1 privmsg %opserv% :JUPE crap.tacular.net 4095 Craptacular Jupe Server
534 :cl1 privmsg %opserv% :UNJUPE crap.tacular.net
535 :cl1 privmsg %opserv% :JUMP clan-dk
536 :cl1 privmsg %opserv% :GLINE pizza 1y Pizza is not allowed on this network
537 :cl1 privmsg %opserv% :GLINE *@* 1w GO AWAY I HATE THE WORLD
538 :cl1 privmsg %opserv% :GLINE pizza@thehut.com 0 Fat-laden freak
539 :cl1 privmsg %opserv% :GLINE foo@bar.com 1m Testing G-line removal
540 :cl1 privmsg %opserv% :UNGLINE foo@bar.com 1m Testing G-line removal
541 :cl1 privmsg %opserv% :UNGLINE foo@bar.com 1m Testing G-line removal
542 :cl1 privmsg %opserv% :REFRESHG pizza.thehut.com
543 :cl1 privmsg %opserv% :GSYNC %srv1name%.illegal
544 :cl1 privmsg %opserv% :GSYNC
545 :cl1 privmsg %opserv% :WHOIS test1
546 :cl1 privmsg %opserv% :JOIN pizza.thehut.com
547 :cl1 privmsg %opserv% :JOIN %testchan%4
548 :cl1 privmsg %opserv% :JOIN %testchan%4
549 :cl1 privmsg %opserv% :KICK %testchan%4 test1
550 :cl1 join %testchan%4
551 :cl1 privmsg %opserv% :KICKALL %testchan%4
552 :cl1 join %testchan%4
553 :cl1 privmsg %opserv% :KICKBAN %testchan%4 test1
554 :cl1 privmsg %opserv% :PART %testchan%4 hahah u r banned
555 :cl1 join %testchan%4
556 :cl1 privmsg %opserv% :MODE %testchan%4 +snti
557 :cl1 privmsg %opserv% :NICKBAN %testchan%4 test1
558 :cl1 privmsg %opserv% :UNBAN %testchan%4 *!*@*.%domain%
559 :cl1 privmsg %opserv% :KICKBANALL %testchan%4
560 :cl1 part %testchan%4
561 :cl1 privmsg %opserv% :COLLIDE test3 foo bar.com nick jupe
562 :cl1 privmsg %opserv% :UNRESERVE test3
563 :cl1 privmsg %opserv% :RESERVE test3 foo bar.com nick jupe 2
564 :cl1 privmsg %opserv% :UNRESERVE test3
565 :cl1 privmsg %opserv% :ADDBAD %testchan%4abc
566 :cl1 privmsg %opserv% :ADDBAD %testchan%4
567 :cl1 privmsg %opserv% :ADDBAD %testchan%4abc EXCEPT
568 :cl1 privmsg %opserv% :ADDBAD %testchan%4abc EXCEPT %testchan%4ab
569 :cl1 privmsg %opserv% :ADDEXEMPT %testchan%4ab
570 :cl1 privmsg %opserv% :DELEXEMPT %testchan%4ab
571 :cl1 privmsg %opserv% :ADDTRUST 1.2.3.4 0 1w We like incrementing numbers
572 :cl1 privmsg %opserv% :ADDTRUST foo@1.2.3.4 0 1w We like incrementing numbers
573 :cl1 privmsg %opserv% :ADDTRUST 1.2.3.4 0 1w We like incrementing numbers
574 :cl1 privmsg %opserv% :DELTRUST 1.2.3.4
575 :cl1 privmsg %opserv% :CLONE ADD test3 joe.bar.com nick jupe 3
576 :cl1 privmsg %opserv% :CLONE ADD test3 joe@bar.com nick jupe 3
577 :cl1 privmsg %opserv% :CLONE REMOVE gobbledygook
578 :cl1 privmsg %opserv% :CLONE REMOVE %chanserv%
579 :cl1 privmsg %opserv% :CLONE bogus test3
580 :cl1 privmsg %opserv% :CLONE JOIN test3 %testchan%1
581 :cl1 privmsg %opserv% :CLONE OP test3 %testchan%1
582 :cl1 privmsg %opserv% :CLONE SAY test3 %testchan%1
583 :cl1 privmsg %opserv% :CLONE SAY test3 %testchan%1 HAHA H4X
584 :cl1 privmsg %opserv% :CLONE JOIN test3 %testchan%1abc
585 :cl1 privmsg %opserv% :CLONE PART test3 %testchan%1
586 :cl1 privmsg %opserv% :CLONE REMOVE test3
587 :cl1 privmsg %opserv% :GAG test3!*@*.%domain% 1w Clones sux
588 connect cl3 test3 test3 %srv2% :Test Bot 3
589 :cl1 wait cl3
590 :cl1 privmsg %opserv% :ADDALERT test3 kill NICK test3
591 :cl1 privmsg %opserv% :DELALERT test3 kill NICK test3
592 :cl3 privmsg %nickserv% :HELP
593 :cl3 nick test4
594 :cl3 privmsg %nickserv% :HELP
595 :cl3 nick test3
596 :cl3 privmsg %nickserv% :HELP
597 :cl1 privmsg %opserv% :UNGAG test3!*@*.%domain%
598 :cl1 privmsg %opserv% :SET server/max_users 128
599 :cl1 privmsg %opserv% :SETTIME *
600
601 # Test MemoServ functions
602 :cl1 privmsg %memoserv% :SEND gobble,dy HELLO?
603 :cl1 privmsg %memoserv% :SEND test2 HELLO?
604 :cl1 privmsg %memoserv% :SET NOTIFY ON
605 :cl1 privmsg %memoserv% :SET AUTHNOTIFY ON
606 :cl2 wait cl1
607 :cl2 privmsg %memoserv% :SET NOTIFY OFF
608 :cl2 privmsg %memoserv% :SET AUTHNOTIFY OFF
609 :cl2 privmsg %memoserv% :LIST
610 :cl2 privmsg %memoserv% :SEND test1 HELLO!
611 :cl2 privmsg %memoserv% :DELETE 0
612 :cl1 wait cl2
613 :cl1 privmsg %memoserv% :SET PRIVATE ON
614 :cl2 wait cl1
615 :cl2 privmsg %memoserv% :SEND test1 DO YOU STILL LIKE ME?
616 :cl1 wait cl2
617 :cl1 privmsg %chanserv% :%testchan%1 DELUSER test2
618 :cl1 privmsg %nickserv% :RENAME test2 testy
619 :cl2 wait cl1
620 :cl2 privmsg %memoserv% :SEND test1 DO YOU STILL LIKE ME?
621 :cl1 privmsg %memoserv% :LIST
622 :cl1 privmsg %memoserv% :READ 1
623 :cl1 privmsg %memoserv% :READ 10
624 :cl1 privmsg %memoserv% :DELETE 10
625 :cl1 privmsg %memoserv% :DELETE ALL
626 :cl1 privmsg %memoserv% :DELETE ALL CONFIRM
627 :cl1 privmsg %memoserv% :EXPIRE
628 :cl1 privmsg %memoserv% :EXPIRY
629 :cl1 privmsg %memoserv% :VERSION
630 :cl1 privmsg %memoserv% :STATUS
631
632 # Test ServerSpy functions
633 :cl1 privmsg %opserv% :DISCONNECT
634 :cl1 privmsg %opserv% :DISCONNECT
635 :cl1 privmsg %opserv% :STATS SERVERSPY
636 :cl1 privmsg %opserv% :CONNECT
637 :cl1 privmsg %opserv% :CONNECT
638 :cl1 privmsg %opserv% :DELMOD hl bogus
639 :cl1 privmsg %opserv% :DELMOD hl cstrike
640 :cl1 privmsg %opserv% :DELMOD bogus cstrike
641 :cl1 privmsg %opserv% :DELGAME hl
642 :cl1 privmsg %opserv% :DELGAME hl
643 :cl1 privmsg %opserv% :ADDGAME hl Half Life
644 :cl1 privmsg %opserv% :ADDGAME hl Half Life
645 :cl1 privmsg %opserv% :ADDMOD hl cstrike Counter-Strike
646 :cl1 privmsg %opserv% :ADDMOD hl cstrike Counter-Strike
647 :cl1 privmsg %opserv% :ADDMOD bogus cstrike Counter-Strike
648 :cl1 privmsg %chanserv% :HELP SERVERSPY
649 :cl1 privmsg %chanserv% :SERVERSPY GAME hl
650 :cl1 privmsg %chanserv% :SERVERSPY NAME Jose
651 :cl1 privmsg %chanserv% :SERVERSPY NAME Jose GAME bogus
652 :cl1 privmsg %chanserv% :SERVERSPY NAME Jose GAME hl MOD bogus
653 :cl1 privmsg %chanserv% :SERVERSPY NAME Jose GAME hl MOD cstrike
654 :cl1 privmsg %chanserv% :SERVERSPY NAME *p* GAME hl MOD cstrike
655 :cl1 privmsg %chanserv% :SERVERSPY SERVER *?p* GAME hl MOD cstrike
656 :cl1 privmsg %chanserv% :%testchan%1 SET GAME
657 :cl1 privmsg %chanserv% :%testchan%1 SET GAME bogus
658 :cl1 privmsg %chanserv% :%testchan%1 SET GAME hl
659 :cl1 privmsg %chanserv% :%testchan%1 SET GAME
660 :cl1 privmsg %chanserv% :%testchan%1 SET MOD
661 :cl1 privmsg %chanserv% :%testchan%1 SET MOD bogus
662 :cl1 privmsg %chanserv% :%testchan%1 SET MOD cstrike
663 :cl1 privmsg %chanserv% :%testchan%1 SET MOD
664 :cl1 privmsg %chanserv% :%testchan%1 SET CLANTAG [D]
665 :cl1 privmsg %chanserv% :%testchan%1 SET CLANTAG [D*
666 :cl1 privmsg %chanserv% :%testchan%1 SET CLANTAG
667 :cl1 privmsg %chanserv% :%testchan%1 SET SERVERTAG [D]
668 :cl1 privmsg %chanserv% :%testchan%1 SET SERVERTAG [D*
669 :cl1 privmsg %chanserv% :%testchan%1 SET SERVERTAG
670 :cl1 privmsg %chanserv% :%testchan%1 SERVERSPY NAME *p*
671 :cl1 privmsg %chanserv% :%testchan%1 LOCATECLAN
672 :cl1 privmsg %chanserv% :%testchan%1 LOCATESERVER
673 :cl1 privmsg %opserv% :STATS SERVERSPY
674
675 # Test proxy checker code
676 :cl1 privmsg %opserv% :HOSTSCAN 62.255.216.72
677 :cl1 sleep 10
678 :cl1 privmsg %opserv% :CLEARHOST 62.255.216.72
679
680 # Clean up test channel
681 :cl1 privmsg %chanserv% :%testchan%1 SET NODELETE OFF
682 :cl1 privmsg %chanserv% :%testchan%1 UNREGISTER
683
684 # exit all clients
685 :cl2 wait cl1
686 :cl2 privmsg %nickserv%@%srvx% :UNREGISTER MY SHIZNIT
687 :cl2 privmsg %nickserv%@%srvx% :UNREGISTER testest
688 :cl1 wait cl2
689 :cl1 quit
690 :cl2 quit
691 :cl3 quit
692
693 # THINGS NOT HIT YET:
694 # announcing user modes +w, +s, +d, +g, +h, +x
695 # sending bursts with:
696 #  user list wrapping to a new line
697 #  voiced users on srvx's side
698 #  ban list wrapping to a new line (on first ban or on later bans)
699 #  sending ERROR
700 #  KILL from a real user
701 #  sending SVSNICK
702 #  sending PART with no reason (not just an empty reason)
703 #  sending raw text
704 #  calling change_nicklen()
705 #  receiving numerics 331, 432 from uplink
706 #  receiving AC from uplink
707 #  receiving FA from uplink
708 #  .. or any other fake host support
709 #  receiving voiced users in burst
710 #  receiving a burst where remote channel is younger
711 #  receiving a KILL from uplink
712 #  receiving a SQUIT from uplink
713 #  receiving a NOTICE from uplink
714 #  receiving a GLINE from uplink
715 #  receiving a MODE <nick> change for: +s, +h, +f
716 #  receiving a MODE <#channel> change for: +p, -k, -b
717 #  receiving a ERROR from uplink
718 #  clearing modes for a channel with modes: +t, +n, +D, +r, +c, +C, +b
719 #  removing a ban from a channel where an earlier ban doesn't match
720 #  mod_chanmode() with MC_NOTIFY flag
721 #  various hostmask generation options