ViewVC Help
View File | Revision Log | Show Annotations | View Changeset | Root Listing
root/svn/vendor/ircservices-5.1.24/docs/Changes
Revision: 3389
Committed: Fri Apr 25 14:12:15 2014 UTC (11 years, 4 months ago) by michael
File size: 121553 byte(s)
Log Message:
- Imported ircservices-5.1.24

File Contents

# User Rev Content
1 michael 3389 Version 5.1
2     -----------
3     2011/04/05 .24 End-of-life release. No functional changes.
4     2010/06/08 .23 Fixed a truck-sized security hole allowing any user to
5     read any other user's memos. Reported by Charalampos
6     Pournaris <charpour@gmail.com>
7     2010/05/21 .22 Fixed potential crash in MemoServ FORWARD. Reported by
8     Charalampos Pournaris <charpour@gmail.com>
9     2010/01/01 .21 Updated documentation to reflect end-of-life status.
10     2009/11/10 Fixed a few bugs in importing XML data, and removed empty
11     channel access list entries from exported XML data.
12     Reported by Charalampos Pournaris <charpour@gmail.com>
13     2009/11/07 Fixed minor memory leak and failure to apply CSAutokickMax
14     setting in ChanServ AKICK ADD. Reported by Charalampos
15     Pournaris <charpour@gmail.com>
16     2009/11/07 Fixed cosmetic bugs in some LIST commands and potential
17     leakage of memory contents to database files. Reported
18     by Charalampos Pournaris <charpour@gmail.com>
19     2009/08/09 .20 Fixed compilation error with glibc 2.10 (Gentoo bug #273938).
20     2009/07/31 .19 Fixed failure to properly guard against users registering
21     or linking the HelpServ nickname. Reported by
22     2009/07/27 Fixed various bugs with the StatServ SERVERS command, and
23     implemented the missing COPY and RENAME subcommands.
24     Reported by Charalampos Pournaris <charpour@gmail.com>
25     2009/07/27 Fixed some memory management issues, including a potential
26     crash when using the -log command-line option.
27     Reported by Charalampos Pournaris <charpour@gmail.com>
28     2009/07/13 Fixed another harmless "BUG" message.
29     2009/07/12 Fixed a harmless "BUG" log message resulting from use of
30     the MemoServ INFO command with no parameters. Reported
31     by Charalampos Pournaris <charpour@gmail.com>
32     2009/07/11 .18 Fixed a harmless bug in some protocol modules causing
33     unnecessary warnings to be logged at shutdown/restart.
34     Reported by Charalampos Pournaris <charpour@gmail.com>
35     2009/07/11 Implemented the OperServ EXCEPTION CLEAR subcommand, which
36     was previously missing. Reported by Charalampos
37     Pournaris <charpour@gmail.com>
38     2009/07/11 Fixed improper behavior and potential crash resulting from
39     OperServ EXCEPTION MOVE. Reported by Charalampos
40     Pournaris <charpour@gmail.com>
41     2009/06/18 Fixed bug causing "*@*.*" to be improperly allowed as an
42     autokill mask. Reported by Charalampos Pournaris
43     <charpour@gmail.com>
44     2009/06/17 Minor documentation cleanup.
45     2009/06/17 NickServ IDENTIFY no longer writes a log message when a
46     user identifies for a nickname they have already
47     identified for previously. Suggested by Charalampos
48     Pournaris <charpour@gmail.com>
49     2009/06/16 Added support for the +S user and channel modes in the
50     Bahamut protocol module. Suggested by Charalampos
51     Pournaris <charpour@gmail.com>
52     2009/06/14 Fixed typos in a couple of pseudoclient responses.
53     Reported by Charalampos Pournaris <charpour@gmail.com>
54     2009/05/31 .17 Added safety checks to avoid crashing on certain (different)
55     types of database corruption. Reported by Ian Justman
56     <ianj@esper.net>
57     2009/05/09 Added safety checks to avoid crashing on certain types of
58     database corruption. Reported by Andries Burger
59     <adb@speedfreaks.co.za>
60     2009/05/07 .16 Added NoAdminPasswordCheck configuration option to work
61     around extraneous global messages reported by
62     Dionisios K. <vonitsa_net@yahoo.gr>
63     2009/05/07 Changed NickServ SUSPEND command to honor NSSecureAdmins
64     option. Reported by Dionisios K. <vonitsa_net@yahoo.gr>
65     2009/03/31 .15 Fixed bugs causing potential crashes when connecting to
66     InspIRCd or Unreal servers.
67     2009/03/31 Fixed bug causing an improper notification to be sent when
68     a Services admin uses UNSET on their own nickname.
69     Reported by Dionisios K. <vonitsa_net@yahoo.gr>
70     2008/12/07 .14 Fixed potential infinite loop on detecting a fatal error.
71     Reported by Jille Timmermans <jille@quis.cx>
72     2008/12/07 Fixed race condition in which Services might fail to send
73     its initial data to the server if the connection took
74     too long. Reported by Alexander Barton <alex@barton.de>
75     2008/12/07 Fixed bug causing incorrect #defines to be written to
76     config.h in non-English locales. Reported by Alexander
77     Barton <alex@barton.de>
78     2008/12/07 Fixed bug causing nickname enforcers to remain online
79     indefinitely if the associated nickname was dropped
80     before the enforcer was removed. Reported by Jille
81     Timmermans <jille@quis.cx>
82     2008/12/07 Fixed bug causing channel ban lists to get desynchronized,
83     leading to failure to add bans when autokicking users.
84     Reported (and fix suggested) by Aragon Gouveia
85     <aragon@phat.za.net>
86     2008/11/08 .13 Fixed bug preventing remote users from being recognized by
87     the rfc1459 protocol module. Reported by Alexander
88     Barton <alex@barton.de>
89     2008/08/22 .12 Added set_password() interface function for use by modules.
90     2008/02/15 Fixed bug causing ChanServ to improperly deop users on
91     SECUREOPS channels under certain conditions. Reported
92     by Timothy C. McGrath <tmhikaru@gmail.com>
93     2008/01/03 .11 Fixed bug allowing users to crash Services through improper
94     use of the ChanServ LISTLEVEL command. Reported by
95     Daniel Lindbeck <dajmon@lindnet.se>
96     2007/12/31 Fixed bug causing ChanServ to reverse mode +o sent by the
97     server for an IRC operator joining a channel. Reported
98     by Marco Wepfer <kampfteufel@hotmail.com>
99     2007/12/22 Added note to section 3-3-1 of the manual pointing out that
100     memo limits are ignored for memos from Services admins.
101     2007/12/09 .10 Fixed bug preventing ircservices-chk from detecting the PID
102     file properly. Reported by <chiappa@webinfo.fi>
103     2007/12/09 Fixed cosmetic bug causing "internal error" messages to be
104     emitted when sending memos to users with forwarding
105     enabled. Reported by Casey <caseyclaydon@fastmail.com.au>
106     2007/11/21 Fixed bug causing compilation to fail on certain platforms.
107     Reported by Jarrod Frates <jfrates@gmail.com>
108     2007/11/21 .9 Fixed security bug unintentionally introduced in 5.1.8.
109     2007/11/21 .8 Corrected half-implemented fix in previous version.
110     2007/11/21 .7 Fixed crash on certain uses of very long passwords.
111     Reported by <loverboy@irc.doruk.net.tr>
112     2007/10/30 Fixed bug preventing channels already registered at startup
113     from appearing in their respective founders' LISTCHANS
114     output. Reported by <loverboy@irc.doruk.net.tr>
115     2007/10/30 .6 Fixed crash on database save under certain conditions.
116     Reported by Aaron Eldridge <drefsab_zn@hotmail.com>
117     2007/10/29 .5 Fixed failure to import some XML data correctly. Reported
118     by Tim Owen <timowen@internode.on.net>
119     2007/10/25 .4 Added workaround for recent Unreal servers that send
120     unsourced SQUIT messages. Reported by Bill Kramme
121     <bk@slashnet.org>
122     2007/10/23 .3 Reviewed the Services codebase, fixing several more bugs
123     that could lead to crashes in certain circumstances.
124     2007/10/20 .2 Fixed bug allowing users with sufficient channel privileges to
125     crash Services. Reported by Ali Sor <alisor@soronline.net>
126     2007/10/20 Added extra tests to the configure script to ensure that
127     dynamically-loaded modules can be used correctly, to
128     work around a problem reported by <iamentity@gmail.com>
129     2007/10/14 Added support to convert-db for encrypted passwords in
130     Anope 1.7.18 and later. Reported by Pierre Fagrell
131     <pierre@fagrell.net>
132     2007/10/12 .1 Fixed bug preventing encrypted passwords from being
133     imported from Epona/Anope databases. Reported by
134     Pierre Fagrell <pierre@fagrell.net>
135     2007/10/10 .0 Version 5.1.0 released.
136     2007/10/10 Updated Cygnus, Epona/Anope, HybServ, and
137     SirvNET/Auspice/Bolivia importers to convert NOOP
138     settings properly. Also updated the SirvNET/etc.
139     importer to convert channel memo level settings.
140     2007/10/10 Memos can now be disabled for a channel by disabling the
141     MEMO privilege level.
142     2007/10/06 Added workaround for a rare problem with InspIRCd 1.1.13
143     and earlier causing the server to be disconnected on a
144     nickname collision or autokill. Reported by Casey
145     <caseyclaydon@fastmail.com.au>; solution suggested by
146     Craig Edwards <brain@winbot.co.uk>
147     2007/09/29 Removed the obsolete "-no-dir-check" option from the
148     configure -help output.
149     2007/09/29 Changed semantics of NickServ NOOP to allow users with NOOP
150     set to be added to channel access lists at negative
151     values (such as the NOP list). Suggested by Trevor
152     Talbot <quension@mac.com>
153     2007/09/16 pre9 Fixed bug causing channels with multiple users not to be
154     recognized on startup when using InspIRCd. Reported by
155     Casey <caseyclaydon@fastmail.com.au>
156     2007/09/13 pre8 Fixed crash in MemoServ INFO. Reported by Casey
157     <caseyclaydon@fastmail.com.au>
158     2007/09/11 pre7 Fixed various problems with the InspIRCd protocol module.
159     Reported by Casey <caseyclaydon@fastmail.com.au> and
160     Robin Burchell <surreal.w00t@gmail.com>
161     2007/09/10 pre6 Added NSRegDenyIfSuspended configuration option. Suggested
162     by Aragon Gouveia <aragon@phat.za.net>
163     2007/09/03 Updated InspIRCd module to work with InspIRCD 1.1.x (tested
164     with 1.1.12).
165     2007/08/23 pre5 Added NOOP nickname option. Suggested by Casey
166     <caseyclaydon@fastmail.com.au>
167     2007/08/23 Added MEMO-RESTRICTED channel option. Suggested by Casey
168     <caseyclaydon@fastmail.com.au>
169     2007/08/23 Turned warning messages for nonexistent nicknames/channels
170     into debug messages.
171     2007/08/23 Fixed crash introduced in pre4 when a second server is
172     added to the network. Reported by Torbjorn Svensson
173     <azoff@se.linux.org>
174     2007/08/23 Added a missing unregister_callback() to the NickServ module.
175     2007/08/06 pre4 Added "set identified" NickServ callback for actions to be
176     taken when a user is marked identified (whether from
177     the IDENTIFY command or automatic identification).
178     Also renamed "cancel_user" callback to "cancel user".
179     2007/08/05 Updated ratbox protocol module for recent versions of the
180     ircd-ratbox server. Patch provided by ongeboren
181     <xxx.coder@gmail.com>
182     2007/08/05 Added -program option to the configure script, allowing the
183     Services executable name (and the names of related files)
184     to be changed. Suggested by Tim Retout <tim@retout.co.uk>
185     2007/07/30 Fixed potential display bugs in some log messages.
186     Reported by Tim Retout <tim@retout.co.uk>
187     2007/07/27 Services can now be installed under an alternate root by
188     setting the INSTALL_PREFIX make variable. Suggested by
189     Tim Retout <tim@retout.co.uk>
190     2007/07/27 Fixed a bug causing some erroneous server messages to not
191     processed properly.
192     2007/06/11 Dropped some old debugging code.
193     2007/06/10 pre3 Fixed bug allowing guest nicknames to be linked. Reported
194     by Robin Burchell <surreal.w00t@gmail.com> and
195     DeadNotBuried <dnb@majestic-liaisons.com>
196     2007/05/19 pre2 Updated the Turkish language file, courtesy of Basar U.
197     Sezer <srcmaster@crypthon.com>
198     2007/05/17 The database/version4 module now observes the -forceload
199     option when loading the nickname database.
200     2007/05/17 Replaced RSA's MD5 implementation with one licensed under
201     more lenient terms. Suggested by Tim Retout
202     <tim@retout.co.uk>
203     2007/05/14 pre1 Fixed a bug in XML import that caused channel mode locks to
204     be lost. Reported by <loverboy@irc.doruk.net.tr>
205     2007/05/14 Fixed Services being unable to start if both the compatibility
206     strdup() function and memory checking were enabled.
207     2007/05/14 Fixed a potential crash with corrupt databases.
208     2007/05/06 pre0 Added CSSkipModeRCheck option to disable kickbanning of
209     unregistered nicks from +R-locked channels. Suggested
210     by <nim@shadowfire.org>
211     2007/05/06 Changed LISTLINKS for other users from admin-only to
212     oper-only, and documented that LISTEMAIL can be used to
213     the same effect by ordinary users. Suggested by Robin
214     Burchell <surreal.w00t@gmail.com>
215     2007/04/27 Fixed minor bugs in the built-in [v]snprintf().
216     2007/03/31 Moved change logs to docs/ directory.
217     2007/03/24 a13 Changed ChanServ SET PASSWORD to remove founder privileges
218     from any users who had previously identified for the
219     channel. Reported by ongeboren <xxx.coder@gmail.com>
220     2007/02/16 a12 Fixed possibly incorrect handling by convert-db of nonstandard
221     channel fields FREASON and FTIME in HybServ databases.
222     2007/02/16 Fixed result message for SET TIMEZONE by a Services
223     administrator whose timezone is set to the default.
224     2007/02/16 Fixed a duplicate WALLOPS for NickServ SET PASSWORD by
225     Services administrators.
226     2007/02/16 Removed all support for "modeless" channels (+name).
227     2007/02/16 Fixed httpd/redirect handling of nicknames and channel
228     names containing slashes. (As a side effect, URLs with
229     trailing slashes are no longer accepted.)
230     2007/02/16 The httpd/top-page module now only responds to requests for
231     the top page, rather than for any URL.
232     2007/02/16 The built-in HTTP server now reports an error on overlength
233     HTTP request lines rather than silently splitting them.
234     2007/02/16 Added password obscurity check to ChanServ REGISTER and SET
235     PASSWORD. Suggested by Dionisios K. <vonitsa_net@yahoo.gr>
236     2007/02/16 Changed NSRejectEmail configuration directive to RejectEmail,
237     and added rejection checks to NickServ/ChanServ SET EMAIL.
238     2007/02/16 Changed MD_EXCLUSION constant name to MD_EXCLUDE to match
239     the OperServ command name.
240     2007/02/16 Add get/put-field wrapper routines to database code to
241     remove unnecessary complexity from database modules.
242     2007/02/16 Fixed bug causing PID file to not be removed on exit.
243     2007/01/14 Fixed bug in configure type definitions. Reported by
244     <tigra.ru@gmail.com>
245     2006/12/08 a11 Merged section 6 of the user's manual (on adding features
246     to Services) into the technical manual.
247     2006/12/08 Removed unused read/write macros from
248     modules/database/fileutil.h.
249     2006/12/08 Fixed bug causing the "shutdown" parameter to modules'
250     cleanup functions to always be nonzero.
251     2006/12/06 Removed all remaining "press Enter" warning prompts from
252     configure, making it fully automated.
253     2006/12/06 Clarified that missing system functions (strtok(), etc.)
254     detected by configure do not prevent Services from
255     being compiled and run. Also updated the warning for
256     a missing gethostbyname().
257     2006/11/09 The httpd/top-page module now explicitly returns an error
258     if the specified file cannot be read, rather than
259     deferring to a subsequent handler.
260     2006/11/03 Added workaround for NULL masks in autokick lists. Reported
261     by Gabriel Baez <gabriel.baez@solid-ircd.com>
262     2006/10/29 Fixed the encryption/unix-crypt module to allow crypt()
263     results longer than 13 characters and to not truncate
264     the final character of a PASSMAX-length password.
265     2006/10/01 ChanServ OP/VOICE/etc. now check that the target user is on
266     the channel before performing privilege checks; PROTECT
267     is now disallowed on auto-deop users.
268     2006/09/26 Merged modules/chanserv/autokick.c back into main.c.
269     2006/08/16 Updated documentation to reflect new domain name.
270     2006/08/06 a10 Added preliminary support for the solid-ircd IRC server.
271     2006/06/22 a9 Fixed bug in configuration file handling causing
272     function-processed directives like LoadModule to break.
273     2006/06/22 Added int64 and uint64 types, and added a check to
274     configure to find appropriate system types for them.
275     2006/06/22 Added robustness to socket code in out-of-memory conditions.
276     2006/06/22 Changed select() call to not assume that the timeval struct
277     is valid after the call.
278     2006/06/22 Changed the socket code to use recv() and send() on sockets
279     instead of read() and write().
280     2006/06/22 Fixed potential bug causing accepted sockets' mute status
281     to get out of sync with internal tables.
282     2006/06/22 Corrected handling of nested socket callbacks.
283     2006/06/22 Renamed NET_MIN_BUFSIZE constant to SOCK_MIN_BUFSIZE, and
284     moved it from defs.h to sockets.h.
285     2006/06/19 Fixed a typo in the OperServ AKILL/SLINE CLEAR syntax
286     message. Reported by <RealCFC@chatfirst.com>
287     2006/06/06 a8 Hungarian language file updated for 5.1.
288     2006/06/06 Added message source parameter to "channel KICK" callback.
289     Suggested by Jason Farklem <farklem@gmail.com>
290     2006/06/03 a7 Fixed handling of language strings added by modules in
291     external language files.
292     2006/06/02 Fixed a rare case in which a timed event could fail to be
293     executed, and ensure that extremely long timeouts
294     (>25 days) are not called immediately.
295     2006/06/01 Added robustness to mode character/flag conversion functions.
296     2006/05/31 Fixed infinite loop in ignore code when a single command
297     takes longer to execute than the time specified in the
298     IgnoreDecay configuration directive.
299     2006/05/31 Fixed bug that could potentially cause the log file to be
300     rotated in the middle of writing a log message.
301     2006/05/31 Cleaned up restart handling.
302     2006/05/31 Fixed bug causing missing parameters in a configuration
303     directive to get zeroed rather than keeping their
304     previous values.
305     2006/05/31 Fixed cosmetic bug causing "BUG" message to be logged when
306     deprecated configuration directives are used.
307     2006/04/14 Fixed bug allowing infinite join/kick loops on autokick
308     when Unreal extended bantypes are in use.
309     2006/04/14 Fixed bug causing Services to split from InspIRCd servers
310     without the m_globops.so module loaded. Reported by
311     <techie101@gmail.com>
312     2006/03/22 Logging initialization moved earlier, to catch any
313     unexpected log messages before the log file is opened.
314     2006/03/22 Fixed a critical error in the supplied [v]snprintf() which
315     allowed the output to exceed the specified maximum
316     length.
317     2006/03/20 Corrected a design defect in the hash table implementation
318     creating the potential for entries to get lost after
319     irc_lowertable[] modifications.
320     2006/01/26 a6 Added command aliases for NickServ, ChanServ, and MemoServ
321     via the NSAlias, CSAlias, and MSAlias configuration
322     directives.
323     2006/01/26 Added support for 2-byte characters in valid_nick() and
324     valid_chan().
325     2006/01/26 Added support for the Unreal NICKCHARS protocol setting.
326     2006/01/26 Fixed nickname and channel name validity checking (which
327     was broken for a few protocols).
328     2006/01/26 valid_nick() now defaults to the reference ircd's rules for
329     nickname grammar rather than RFC 1459.
330     2006/01/26 Fixed bug causing databases with load-only fields to be
331     written incorrectly.
332     2006/01/26 Invalid channel names are now automatically removed from
333     the autojoin list on identify.
334     2006/01/26 Fixed memory leak on corrupt channel autokick database.
335     2006/01/26 Fixed bug in Hybrid and Ratbox protocol modules causing
336     forced nickname changing to break.
337     2006/01/25 Moved the contents of the TODO file into section 11 of the
338     technical reference manual.
339     2006/01/25 Fixed bug causing nick authentication reason to get lost on
340     XML import and export.
341     2006/01/25 Eliminated SuspendInfo structure (fields flattened into
342     NickGroupInfo and ChannelInfo).
343     2006/01/25 Fixed bug causing database/standard load routine to break
344     on out-of-order fields.
345     2006/01/24 Fixed minor bug in handling of InspIRCd SETNAME.
346     2006/01/24 a5 Fixed bug causing ChanServ SET MLOCK with extra parameters
347     (like +l NNN) to return a syntax error.
348     2006/01/23 Added experimental support for the InspIRCd IRC server.
349     Suggested by Craig Edwards <brain@winbot.co.uk>
350     2006/01/23 Removed misc.c's dependencies on other core symbols, and
351     changed convert-db to link misc.o in rather than
352     redefine strscpy().
353     2006/01/23 Fixed ChanServ DROP crash. Reported by Vitaliy Ovsyannikov
354     <V.Ovsyannikov@kr.ru>
355     2006/01/22 a4 Added experimental support for the ircd-ratbox IRC server.
356     2006/01/22 Fixed crash on NickServ SET/UNSET from unregistered nicks.
357     Reported by Vitaliy Ovsyannikov <V.Ovsyannikov@kr.ru>
358     2006/01/22 Fixed bug causing Services operators in Sirv databases to
359     be imported with Services administrator privileges.
360     2006/01/22 Overlong IRCS channel names are now handled more robustly
361     in convert-db.
362     2006/01/22 Added support to the PTlink database importer for SQline
363     and SXline databases.
364     2006/01/21 The PTlink database importer now imports temporary
365     (unauthenticated) E-mail addresses.
366     2006/01/21 Updated HybServ database importer for more recent versions
367     of HybServ.
368     2006/01/20 Fixed bugs in importing channel greetings and the VOPALL
369     setting from Cygnus databases.
370     2006/01/20 The Cygnus database importer now imports temporary
371     (unauthenticated) E-mail addresses and channel memo
372     levels.
373     2006/01/18 Moved the contents of the KnownBugs file into the user's
374     manual as Appendix D.
375     2006/01/18 Removed the (now meaningless) -no-dir-check option to the
376     configure script.
377     2006/01/17 Fixed a bug in loading the nickgroup database using the
378     database/standard module. Reported by Vitaliy
379     Ovsyannikov <V.Ovsyannikov@kr.ru>
380     2006/01/17 a3 Fixed a bug in importing channel data when using the
381     database/standard module. Reported by Vitaliy
382     Ovsyannikov <V.Ovsyannikov@kr.ru>
383     2006/01/17 The language and data file installation procedure no longer
384     sets the installed files' modes to owner-access-only;
385     the default file mode (as set with umask) is used.
386     2006/01/15 a2 Fixed a bug in loading the ChanServ database in the
387     database/version4 module.
388     2006/01/15 The misc/xml-import module now allows news items to be
389     imported via the ImportNews configuration directive.
390     Suggested by Kieron Thwaites <ron2k.za@gmail.com>
391     2006/01/15 MemoServ IGNORE now ignores memos from nicknames linked to
392     nickname (but not wildcard) entries on the ignore list.
393     Suggested by Robin Burchell <surreal.w00t@gmail.com>
394     2006/01/15 Renamed ChannelInfo CI_* flags to CF_* for consistency with
395     other structures' flags.
396     2006/01/09 Moved the access, autojoin, memo, and ignore databases to
397     their respective modules, and changed the database
398     names to "nick-access", "nick-autojoin", "memo", and
399     "memo-ignore" respectively.
400     2006/01/09 Changed DBTable.insert() to not return a value.
401     2006/01/09 a1 Finished implementing the database/standard module, and
402     made it the default in the example configuration file.
403     2006/01/08 Removed no-longer-needed new_suspendinfo() and
404     free_suspendinfo() functions.
405     2006/01/08 Moved SuspendInfo structure directly into NickGroupInfo and
406     ChannelInfo structures rather than using pointers.
407     2006/01/07 Added ACCLEV_MAX and ACCLEV_MIN constants to explicitly
408     define ChanServ access levels, rather than relying on
409     ACCLEV_FOUNDER and ACCLEV_INVALID.
410     2006/01/04 Fixed a bug in writing generic database tables.
411     2006/01/04 Fixed a bug in the Unreal protocol module causing user
412     fakehost masks to get set to the user's mode string.
413     2005/11/23 Added support for writing generic tables (using the new
414     database format) in the database/version4 module.
415     2005/11/23 a0 Converted tabs to spaces in all source files.
416     2005/11/22 Added IncludeFile configuration directive to allow
417     configuration directives to be split up into multiple
418     files. Suggested by Yusuf Iskenderoglu
419     <uhc0@stud.uni-karlsruhe.de>
420     2005/11/22 Logon news items are no longer sent to users who rejoin the
421     network after a netsplit (for protocols which include
422     Services stamps). Suggested by <v13@it.teithe.gr>
423     2005/11/22 Added CSDefModeLock configuration directive to set the
424     default mode lock for newly registered channels.
425     Suggested by <us44ever@hotmail.com>
426     2005/11/22 Moved database name configuration directives (NickServDB,
427     etc.) to database/version4 module section.
428     2005/11/22 Fixed a bug causing leading newlines in help messages to be
429     stripped.
430     2005/11/22 Added NSSetEmailDelay configuration directive to limit the
431     frequency with which users can use the NickServ SET
432     EMAIL command (and thus cause mail authentication
433     messages to be sent).
434     2005/11/22 Added OperServ GETKEY command to retrieve the key of a +k
435     channel (limited to Services operators). Suggested by
436     Dennis Sela <Schutzgeist@uni.de>
437     2005/11/22 NickServ INFO now indicates when a nickname's user is using
438     a different (linked) nick, provided the nick's PRIVATE
439     option is not set. Suggested by Craig McLure
440     <Craig@chatspike.net>
441     2005/11/22 Merged several redundant AKILL/SLINE-related language strings.
442     2005/11/22 Added CLEAR subcommand to OperServ AKILL and related commands.
443     2005/11/21 Added NSRejectEmail configuration directive for disallowing
444     certain E-mail addresses or address masks from being
445     used in registration.
446     2005/11/21 Autokill expiration WALLOPS messages are now rate-limited
447     to prevent floods.
448     2005/11/21 Added forbidden/suspended/etc. indicators to HTTP server
449     nickname and channel lists.
450     2005/11/21 Added a new configuration directive, WallAdminPrivs
451     (replacing WallGetpass and WallSetpass), to send out a
452     WALLOPS or GLOBOPS on all Services administrator actions.
453     Suggested by Dionisios K. <vonitsa_net@yahoo.gr>
454     2005/11/21 The Services root nickname will no longer expire, and may
455     no longer be dropped by Services admins. Suggested by
456     Dionisios K. <vonitsa_net@yahoo.gr>
457     2005/11/21 Added lookup_language(), lookup_string(), setstring(), and
458     addstring() functions to language subsystem, to allow
459     third-party modules to take advantage of multilingual
460     support.
461     2005/11/21 Renamed setstring() function to mapstring().
462     2005/11/20 NickServ IDENTIFY and SET, ChanServ SET, and OperServ SU and
463     SET now give syntax errors if too many parameters are
464     given.
465     2005/11/20 unload_module() now warns on callbacks added to other modules
466     that are not removed by the module's exit routine.
467     2005/11/20 Services now uses the <stdint.h> include file and its sized
468     integer types where possible.
469     2005/11/20 Finished initial implementation of new database module
470     design. Data access functions (get_XXX() and the like)
471     are now defined in their respective pseudoclient
472     modules rather than in the database module.
473     2005/08/17 Removed StatServ SERVERS COPY and RENAME subcommands.
474     2005/08/17 Redesigned database get/put functions to avoid potential
475     expiration of in-use records.
476     2005/08/17 ChanServ OP/VOICE/etc. now accept multiple nicknames.
477     Suggested by Anton Wolkov (phan70m@gmail.com)
478     2005/08/17 Added the ability to load language files on the fly
479     (LoadLanguageText configuration directive).
480     2005/04/03 Removed support for Unreal 3.1 and earlier.
481     2005/02/24 SQlines are no longer applied to opers on startup for
482     protocols that send user modes in the NICK message
483     (bahamut, hybrid, monkey, ptlink, trircd, unreal).
484     2005/02/24 Added initial user modes to the list of parameters for the
485     "user create" callback.
486     2005/02/23 SIGHUP now saves the databases before rehashing the
487     configuration files. Suggested by Torbjorn Svensson
488     <azoff@se.linux.org>
489     2005/02/23 Added OperServ debug command MONITOR-IGNORE to monitor the
490     ignore level of a particular user.
491     2005/02/23 Redesigned ignore system.
492     2005/02/22 NickServ SET/UNSET for other nicknames (by Services admins)
493     is now done by including a "!" before the nickname.
494     2005/02/22 Added atolsafe() function for more robust string-to-integer
495     conversion.
496     2005/02/22 Added ChanServ ACCESS LISTLEVEL subcommand.
497     2005/01/23 Command-line options can now be specified with two dashes,
498     a la GNU (one dash still works as well).
499     2005/01/23 Added -encrypt-all command-line option.
500     2005/01/23 "make install" will now create directories as needed, rather
501     than configure.
502     2005/01/23 The configure script is now entirely non-interactive;
503     installation directories must be specified on the
504     command line, and configure will not abort if the
505     directories do not exist.
506     2005/01/07 Added "+N" parameter to ChanServ ACCESS/XOP/AKICK LIST.
507     2004/12/28 Added Content-Type header with character set information to
508     mail messages.
509     2004/12/14 Don't apply unauthed expiration time to SETAUTH'd nicks.
510     2004/12/14 Removed NickServ and ChanServ SENDPASS.
511     2004/12/14 Added REAUTH command to nickserv/mail-auth module.
512     2004/12/14 Added encryption/unix-crypt module.
513     2004/12/14 PTlink database encryption types are now imported correctly.
514     2004/12/14 Redesigned encryption system. Encryption cipher is now
515     stored with passwords; "cipher" attribute added to XML
516     <pass>/<founderpass>/<supass> tags.
517     2004/12/13 Added [module_]log[_perror]_debug() functions, and changed
518     module name prefix in log messages ("name:" -> "(name)").
519     2004/12/13 Removed workaround for old versions of GCC.
520     2004/10/25 "Holes" are no longer left in internal channel autokick
521     lists after deleting entries.
522     2004/10/25 Entry numbering removed from ChanServ ACCESS, XOP, and
523     AKICK commands.
524     2004/09/03 MemoServ SET NOTIFY now correctly displays the current
525     NickServ nickname instead of always "NickServ".
526     2004/09/03 Fixed a memory leak in the httpd/auth-ip module.
527     2004/09/03 Removed deprecated nickserv/oldlink module.
528     2004/09/03 Added MemoServ RENUMBER command.
529     2004/09/02 Added "opers only" message to end of NickServ LISTEMAIL
530     help when appropriate.
531     2004/09/02 Fixed bug resolving symbols when using static modules.
532     2004/09/02 Added "end of list" messages for OperServ AKILL/etc LIST/VIEW.
533     2004/09/02 Added "+N" parameter to set list starting point for
534     NickServ/ChanServ LIST and OperServ AKILL/etc LIST/VIEW.
535     Suggested by Michael D. Smith <msmith@acmecorp.org>
536     2004/08/27 Clarified OperServ CLEARMODE response messages.
537     2004/08/27 Removed reference to ACCESS in ChanServ REGISTER help to
538     avoid confusing users when only the XOP commands are
539     available.
540     2004/08/27 Changed the compatibility strsignal() to use the more
541     common names for SIGSTOP/SIGTSTP.
542     2004/08/27 Added strbcpy() function (macro) for improved robustness.
543     2004/08/27 Revised message-handling code to optimize lookups of
544     frequently-seen messages.
545     2004/08/27 Removed ChanServ module dependency from XML import module.
546     2004/08/26 Finished redesign of module system internals. Modules now
547     have a THIS_MODULE macro which automagically points to
548     the module's data structure; THIS_MODULE made implicit
549     in relevant modules.c function calls.
550     2004/08/13 Channel mode locks are now stored as strings rather than
551     bitmasks in the on-disk database.
552     2004/08/12 NickServ LIST/LISTEMAIL and ChanServ LIST now display "no
553     matches" instead of "0/0 matches shown" if no matches.
554     2004/08/12 Fixed failure to abort in-transit mail messages on mail
555     module removal (potentially resulting in crashes).
556     2004/08/12 Removed MaxSockets (mail/smtp) directive since MaxMessages
557     now performs the same function.
558     2004/08/12 Added MaxMessages configuration directive to mail/main module.
559     2004/08/12 Disabled swritemap() in new sockets code to avoid
560     dependence on munmap().
561     2004/08/10 MemoServ FORWARD now forwards all selected memos in a
562     single mail message.
563     2004/08/10 Fixed minor memory leak in sending mail.
564     2004/08/10 Fixed bug in mail/smtp module causing blank lines to be
565     removed from message bodies.
566     2004/08/10 Removed MSNotifyAll configuration directive; MemoServ will
567     now always send notices to all online nicks.
568     2004/08/10 Added MSExpireDelay and removed MSExpireUnread configuration
569     directives.
570     2004/08/10 Redesigned channel memo system to send memos to individual
571     users instead of storing them separately with the channel.
572     2004/08/05 DevNull and HelpServ no longer allow their nicknames to be
573     registered or linked.
574     2004/08/05 Add note about increasing stack size on AmigaOS. Reported
575     by Michael Trebilcock <trebs@ihug.com.au>
576     2004/08/04 Added NickServ RESTOREMAIL command, which allows a user to
577     restore their nickname's last authenticated E-mail
578     address after an (unauthenticated) change. The calling
579     format of the NickServ SET EMAIL callback has also been
580     changed.
581     2004/08/04 nickserv/mail-auth module no longer changes default
582     nickname flags on registration.
583     2004/08/04 Added notices for delayed errors on mail authentication
584     message sending.
585     2004/08/03 Added support for importing VOPALL channel setting in Cygnus.
586     2004/08/03 Fixed bug in configure script which left its temporary
587     directory sitting around when run with -check.
588     2004/08/03 Added ACCLEV_DEFAULT constant and use instead of allocating
589     and freeing ci->levels to indicate defaults. Changes
590     to the default level values will now be reflected
591     immediately in channels which have not changed that
592     particular level.
593     2004/08/03 Added IP address check to match_usermask(), and removed
594     special cases scattered throughout the code. As a
595     result, memo ignore and autokick now also work with IP
596     addresses.
597     2004/07/29 MODE -o+v from a user on themselves no longer causes
598     ChanServ to remove the +v. Reported by
599     <chat@discoware.com>
600     2004/07/28 NSRequireEmail is now enabled by default.
601     2004/07/28 Fixed rare bug causing +r (registered) mode to get left on
602     dropped channels.
603     2004/07/28 ChanServ now requires the channel password in the DROP
604     command; dropping by Services administrators is now
605     done with the DROPCHAN command.
606     2004/07/28 The configure script now checks that pointers have a sane size.
607     2004/07/28 Pseudoclients are no longer set +o on servers where they
608     don't need oper privileges. Suggested by Ben Goldstein
609     <beng@nc.rr.com>
610     2004/07/28 Clarified OperServ CLEARMODES help.
611     2004/07/28 Changed out-of-date "expires at next database update"
612     message to "expired".
613     2004/07/28 Added EXCEPTION COUNT command.
614     2004/07/27 Removed CSAutokickReason configuration directive (obsoleted
615     by "AKICK by <nick>" reason prefix).
616     2004/07/27 Added CHECK subcommand for OperServ AKILL/EXCLUDE/SxLINE/
617     EXCEPTION.
618     2004/07/27 Added unsorted hash mode (configure -no-sorted-list).
619     2004/07/24 Removed support for the "channel owner" mode present in some
620     IRC servers.
621     2004/07/15 Added SendTimeout configuration directive for mail timeouts.
622     2004/07/14 RPM/Debian packages now install into /opt/ircservices and
623     /var/opt/ircservices instead of under /usr.
624     2004/07/13 Memory-checking code (configure -memchecks) now fills
625     memory with arbitrary values to catch misuse of
626     uninitialized or freed memory.
627     2004/07/13 Added ChanServ NOP (never-op list) command. Suggested by
628     Kieron Thwaites <ron2k@webmail.co.za>
629     2004/07/13 Removed Italian and Portuguese language files, which were
630     hopelessly out of date.
631     2004/07/13 Rewrote socket-handling code.
632     2004/07/02 Moved channel mode lock data to its own structure.
633     2004/07/02 Merged NSListMax and CSListMax configuration options into
634     ListMax, and applied ListMax to OperServ as well.
635     2004/06/30 Code base split off from version 5.0.33.
636    
637     Version 5.0
638     -----------
639     2009/07/31 .64 ChanServ DEPROTECT no longer removes channel owner mode, to
640     prevent abuse by rogue users. Reported by Kieron
641     Thwaites <ron2k.za@gmail.com>
642     2007/11/21 .63 Backported security-related fixes from 5.1.
643     2007/06/10 .62 Backported 5.1 fix for a bug allowing guest nicknames to be
644     linked.
645     2007/03/30 .61 Fixed crash on x86-64 systems under certain circumstances.
646     Reported by Andrey V. Elsukov <bu7cher@yandex.ru>
647     2007/03/24 .60 Changed ChanServ SET PASSWORD to remove founder privileges
648     from any users who had previously identified for the
649     channel (backported from 5.1a13). Reported by
650     ongeboren <xxx.coder@gmail.com>
651     2006/10/01 .59 Added support to convert-db for versions of PTlink Services
652     through 2.26-eol.1.
653     2006/08/16 Updated documentation to reflect new domain name.
654     2006/06/22 .58 Added workaround to support the broken MD5 encryption used
655     in Epona/Anope (through at least version 1.7.14),
656     enabled by the EnableAnopeWorkaround option for the
657     encryption/md5 module in modules.conf. Reported by
658     Gabriel Baez <gabriel.baez@solid-ircd.com>
659     2006/06/22 configure -check (run by the Makefile) no longer leaves a
660     conf-tmp directory lying around.
661     2006/06/21 Fixed error when compiling with recent versions of GNU make.
662     2006/06/20 Fixed crash when importing some Anope databases. Reported
663     by Gabriel Baez <gabriel.baez@solid-ircd.com>
664     2006/01/20 Added support to convert-db for recent versions of Epona.
665     2006/01/20 .57 Fixed conversion of Anope 1.7 OperServ databases. Reported
666     by Matt Smith <ratman6@charter.net>
667     2006/01/20 ChanServ SET SECUREOPS now prevents unprivileged users from
668     gaining channel protect (+a) status as well. Reported
669     by A.S. <loverboy@irc.doruk.net.tr>
670     2006/01/20 Fixed a bug in the Cygnus database converter causing
671     autokills with invalid expiration data to expire
672     immediately rather than remain with no expiration time.
673     2006/01/07 Fixed a cosmetic bug in ChanServ LIST causing the no-expire
674     flag "!" to not be shown for suspended channels.
675     2005/11/20 .56 Fixed a bug in StatServ that could cause a crash if
676     StatServ was unloaded with a rehash while Services
677     was running.
678     2005/11/07 Changed NickServ and ChanServ SET PASSWORD to prevent the
679     use of spaces in passwords.
680     2005/11/07 The NickServ commands DROP, RECOVER, RELEASE, and GHOST now
681     report a syntax error rather than "password incorrect"
682     when too many parameters are given. (As a result,
683     passwords containing spaces can no longer be used with
684     these commands. Use IDENTIFY followed by SET PASSWORD
685     to set a new password without spaces.)
686     2005/10/26 Fixed incorrect end-of-/WHOIS responses for several
687     pseudoclients. Reported by Robin Burchell
688     <surreal.w00t@gmail.com>
689     2005/09/26 .55 Added documentation on CSSetChannelTime configuration option.
690     2005/08/25 Fixed rare bug allowing users to gain voice status
691     improperly. Reported by Anton Wolkov <phan70m@gmail.com>
692     2005/08/23 Added "authed" callback for newly-authorized nicknames.
693     Suggested by Robin Burchell <surreal.w00t@gmail.com>
694     2005/08/16 .54 The ChanServ check_kick callback now passes the channel
695     name as a string instead of the Channel structure, so
696     the channel name can be known even if the channel is
697     empty. Reported by Olly <olly@avansys.co.uk>
698     2005/08/13 The S-line commands (SGLINE, SQLINE, and SZLINE) now check
699     that "*" or similarly overbroad masks are not used.
700     Suggested by Dionisios K. <vonitsa_net@yahoo.gr>
701     2005/08/13 Fixed minor bugs in the code to check whether a new
702     autokill is too broad (such as "*").
703     2005/08/13 Fixed a compilation error (and many warnings) when
704     compiling with GCC 4.
705     2005/08/13 Added UNSET callbacks for NickServ and ChanServ. Suggested
706     by Craig McLure <Craig@chatspike.net>
707     2005/05/12 .53 Fixed bug causing server connection to fail.
708     2005/05/12 .52 Fixed occasional corruption of the NickServ REGISTER syntax
709     string upon reconfiguration (OperServ REHASH).
710     Reported by <alm@woodnet.ru>
711     2005/05/06 Fixed attempts to send PING messages before connecting to
712     the server. Reported by Craig McLure
713     <Craig@chatspike.net>
714     2005/04/02 .51 convert-db now checks for more potential problems with the
715     imported databases before writing out the XML data.
716     2005/04/02 Fixed bugs when converting databases from old versions of
717     PTlink Services.
718     2005/04/01 Fixed handling of links to forbidden nicks when converting
719     Auspice databases.
720     2005/03/31 ChanServ KICK no longer allows Services opers to be kicked.
721     2005/03/31 Ensured that usermode +r is cleared from nicks which lose
722     their identification status (e.g. from FORBID/SUSPEND).
723     2005/03/31 NickServ SUSPEND now forces the user of the suspended
724     nick to change nicknames, as FORBID does. Reported by
725     Dionisios K. <vonitsa_net@yahoo.gr>
726     2005/03/31 ChanServ now stops non-identified users from joining
727     channels with mode +R locked on. Suggested by
728     Dionisios K. <vonitsa_net@yahoo.gr>
729     2005/03/29 .50 Fixed security hole in NickServ LISTLINKS allowing any user
730     to view a nick's links. Reported by
731     <katarn@shadowfire.org>
732     2005/03/06 .49 Added Russian language file, courtesy of Alexander Zverev
733     <tty@inbox.ru>
734     2005/03/05 Services will now accept multiple PROTOCTL messages from
735     the Unreal ircd (as implemented in Unreal CVS).
736     2005/03/04 Added support for +I/+j channel modes in Unreal 3.2.3.
737     Reported by Kieron Thwaites <ron2k@webmail.co.za>
738     2005/02/23 .48 Fix careless bug leading to possible crash on exit or rehash.
739     2005/02/23 .47 Channels no longer expire while an auto-op user is in the
740     channel; expiration is delayed until the time specified
741     by CSExpire after the last such user leaves the channel.
742     Reported by Anton Wolkov <phan70m@gmail.com>
743     2005/02/23 Added user IP addresses to the OperServ LISTUSER debug
744     command as well.
745     2005/02/21 .46 Fixed some warnings during compilation.
746     2005/02/21 Fixed bug causing modified files to not be recompiled
747     properly when compiling with GNU make 3.79.
748     2005/02/20 The OperServ debug command LISTUSERS now includes the IP
749     address for each user before the user's mode string.
750     2005/02/19 Added workaround for GCC bugs on PowerPC systems.
751     2005/01/27 Fixed careless error in "make distclean". Reported by
752     Stanislav Zahariev <sofit@evronet.tv>
753     2005/01/21 .45 Added HybServ support to convert-db. Suggested by
754     Stanislav Zahariev <sofit@evronet.tv>
755     2005/01/21 convert-db is now recompiled properly if the compilation
756     options passed to the configure script are changed.
757     2005/01/13 IRC operators are now properly shown the operator version
758     of ChanServ HELP LIST. Reported by Kieron Thwaites
759     <ron2k@webmail.co.za>
760     2004/12/13 .44 Fixed a careless error in the va_copy workaround.
761     2004/12/02 .43 Added workaround for va_copy with obsolete compilers.
762     Reported by <us44ever@hotmail.com>
763     2004/12/02 Added support for SGlines on Unreal. Reported by Dionisios
764     K. <vonitsa_net@yahoo.gr>
765     2004/12/02 Fixed "unknown message" on Unreal SWHOIS. Reported by
766     Anton Wolkov <phan70m@gmail.com>
767     2004/11/22 Fixed URLs in the documentation to point to the new website.
768     2004/11/22 .42 The mail/smtp module now allows multiple RelayHost
769     configuration directives for backup relay servers.
770     Suggested by Torbjorn Svensson <azoff@se.linux.org>
771     2004/11/22 Fixed extraneous "Unknown message" log messages on Unreal.
772     Reported by Ali Sor <alisor@softhome.net>
773     2004/10/29 Clarified "please change your nick" message text.
774     Suggested by Dylan v.d Merwe <dylanvdm@icon.co.za>
775     2004/10/25 Fixed crash when using the Japanese language file with the
776     OperServ SLINE COUNT command.
777     2004/10/19 Fixed bug allowing StatServ and global noticer nicknames to
778     be registered/linked. Reported by M. van Cuijk
779     <mark@phedny.net>
780     2004/10/14 Fixed various bugs and warnings when compiling on x86-64.
781     Reported by <liverbugg@rinux.org>
782     2004/10/14 Added workaround for GNU coreutils (>=5.2) brokenness.
783     2004/10/13 SET MLOCK no longer allows locking +K without +i on Unreal.
784     Reported by <help@thaiirc.in.th>
785     2004/10/13 Fixed cosmetic bug in MemoServ IGNORE. Reported by
786     <saman@ttnet.net.tr>
787     2004/10/11 Fixed disconnect on incoming data flood. Reported by
788     <ballsy@mystical.net>
789     2004/10/03 Updated the README file for the current manual structure.
790     2004/10/03 .41 Fixed SQUIT of juped servers on Bahamut. Reported by Pasi
791     Hirvonen <psh@iki.fi>
792     2004/10/03 Fixed cosmetic bug in NickServ SUSPEND help. Reported by
793     Craig McLure <Craig@chatspike.net>
794     2004/10/02 Fixed bug causing endless log messages on full network
795     buffer. Reported by <ballsy@mystical.net>
796     2004/10/02 OperServ AKILLCHAN now honors the WallOSAkill setting.
797     Reported by Pasi Hirvonen <psh@iki.fi>
798     2004/09/19 Fixed missing object file in Hybrid module compilation.
799     Reported by Jon Christopherson <jon@layertek.com>
800     2004/09/05 .40 Fixed careless bug in autojoin module.
801     2004/09/05 .39 Fixed bug allowing some NickServ/ChanServ commands to be
802     used even in read-only mode. Reported by Craig McLure
803     <Craig@chatspike.net>
804     2004/09/02 Fixed minor formatting errors in language files.
805     2004/09/02 Fixed bugs in SMTP handling. Reported by Gregg Conklin
806     <greco@gate.net>
807     2004/08/24 Fixed a trivial error in the modules/protocol Makefile.
808     2004/08/15 .38 Services now checks channel joins against the channel's
809     current modes as well as mode locks, to prevent users
810     from "riding" netsplits into privileged channels.
811     Reported by Craig McLure <Craig@chatspike.net>
812     2004/07/27 .37 Autokicks now prefix the kick reason with "AKICK by <nick>"
813     to avoid misleading kick messages. Suggested by Bergee
814     <lordbergee@comcast.net>
815     2004/07/26 Fixed potential crashes in NickServ UNSUSPEND, DROP, and
816     LINK (from the nickserv/oldlink module only). Reported
817     by Tom McIntyre <chawmp@cyberarmy.net>
818     2004/07/15 Fixed cosmetic bug in MemoServ INFO display. Reported by
819     Bergee <lordbergee@comcast.net>
820     2004/07/14 Fixed potential crash on exit when freeing language data.
821     2004/07/14 Fixed bug causing nickname enforcers to not be removed when
822     a nickname was deleted. Reported by Bergee
823     <lordbergee@comcast.net>
824     2004/07/09 .36 Removed log message on socket buffer size misbehavior.
825     2004/07/09 Fixed potential crash on SQUIT. Reported by Tom McIntyre
826     <chawmp@cyberarmy.net>
827     2004/07/08 .35 Fixed memory leak in httpd/auth-password module when
828     reconfiguring.
829     2004/07/08 Fixed bug causing HTTP password authorization to fail.
830     Reported by Martin Pels <martinpels@hotmail.com>
831     2004/07/07 Added support for invite masks to Hybrid protocol.
832     Suggested by Jon Christopherson <jon@jons.org>
833     2004/07/05 .34 configure now properly detects the GCC version in use when
834     running under Debian Linux.
835     2004/07/02 Fixed bugs in handling MLOCK +/-j on Bahamut.
836     2004/07/02 Fixed tiny potential memory leak on failed SET MLOCK.
837     2004/06/29 .33 Fixed child process handling bug in mail/sendmail module.
838     Reported by Ali Sor <alisor@softhome.net>
839     2004/06/29 ChanServ STATUS now displays the SOP/AOP/VOP level when the
840     chanserv/access-xop module is loaded. Suggested by
841     Kieron Thwaites <ron2k@webmail.co.za>
842     2004/06/29 For Bahamut, SGLINE/SQLINE commands for masks not in the
843     appropriate list are now reversed by Services (to
844     prevent "revival" of deleted masks by split servers).
845     This applies to operator-issued SGLINE/SQLINEs as well.
846     2004/06/17 The configure script now checks for two bugs in GCC (fixed
847     in GCC 3.4.0) which cause Services to crash.
848     2004/06/07 .32 Updated Unreal protocol module for Unreal 3.2.1.
849     2004/05/24 get_access() (which returns a user's access level on a
850     channel) is now exported by the chanserv/main module.
851     2004/05/18 -z (insecure) users can no longer enter channels locked to
852     +z on Unreal. Reported by Dionisios K.
853     <vonitsa_net@yahoo.gr>
854     2004/05/14 Fixed failure to clear ban exceptions on autokick.
855     Reported by Eric Murphy <emurphy@sporked.us>
856     2004/05/12 Updated Bahamut protocol module for Bahamut 1.8.0. Support
857     for 1.4.x has been removed.
858     2004/05/07 Fixed errors in OperServ SESSIONS and EXCEPTIONS help text.
859     Reported by Elijah <admin@nevernet.net>
860     2004/05/04 Fixed harmless compilation warning in database/version4
861     module. Reported by Craig McLure <Craig@chatspike.net>
862     2004/04/29 .31 Fixed crash with MLOCK +J when using trircd protocol.
863     Reported by <irc@teknet.com.tr>
864     2004/04/28 Added stricter checks on module loading order.
865     2004/04/09 .30 Added logic to configure script to avoid the use of the
866     -fstack-protector option if doing so would trigger a
867     compiler bug. Reported by Torbjorn Svensson
868     <azoff@se.linux.org>
869     2004/04/06 ChanServ no longer requires an explicit IDENTIFY to use INFO
870     ALL. Reported by Wolfgang Urban <ircservices@tou.de>
871     2004/04/06 NickServ LISTCHANS now properly aborts when a non-servadmin
872     uses the nickname form of the command. Reported by
873     Elijah <admin@nevernet.net>
874     2004/04/04 The ChanServ DEPROTECT command now clears channel-owner
875     status on those IRC servers that support such a mode.
876     Suggested by <freakycomputer@global.co.za>
877     2004/04/02 Fixed additional bug causing autokill exclusions to not
878     function properly in some cases.
879     2004/04/02 Fixed bug causing autokill exclusions to not function under
880     Unreal. Reported by Eric Murphy <emurphy@sporked.us>
881     2004/03/31 Fixed bug allowing users to improperly be identified for
882     newly-registered nicknames awaiting authentication.
883     Reported by <cyberdems@cyberdems.za.net>
884     2004/03/30 Added workaround for Unreal SQLINE "bouncing" issue.
885     Reported by Craig Edwards <brain@winbot.co.uk>
886     2004/03/30 ChanServ SET RESTRICTED no longer modifies the internal
887     NOJOIN level.
888     2004/03/30 Fixed failure to reset internal-use AUTODEOP and NOJOIN
889     channel levels when loading databases from version 4.5
890     and earlier. Reported by Wolfgang Urban
891     <ircservices-coding@tou.de>
892     2004/03/24 .29 Added support for extended ban types, new channel mode +f
893     format, and other feeping creaturism in Unreal 3.2.
894     2004/03/24 Fixed PTlink channel database reading, and added workaround
895     for PTlink bug causing inconsistent data to be stored.
896     Reported by <dux@fbnet.org>
897     2004/03/17 Added experimental support for Hybrid 7 servers. Thanks to
898     Jon Christopherson <jon@jons.org> for assistance.
899     2004/03/06 Updated tr-ircd protocol module to support version 5.7.
900     Support for versions before 5.5 has been dropped at the
901     tr-ircd author's request.
902     2004/02/05 .28 The OperServ AKILL/EXCLUDE/EXCEPTION/SLINE LIST and VIEW
903     commands now only display the first 50 entries matching
904     the given mask. Note that no notice is given if the
905     list is cut off; this will be remedied, and the limit
906     (50) made configurable, in a future release.
907     2004/02/02 Fixed a cosmetic bug in ChanServ SET SECURE help. Reported
908     by Andrew Kempe.
909     2004/01/22 Fixed a bug causing the ChanServ XOP DEL commands to delete
910     the wrong access entries. Reported by <profound@eyerc.net>
911     2004/01/05 + in channel names no longer confuses the httpd/dbaccess
912     module. Reported by <phantom@phntm.nix.org.il>
913     2004/01/05 Channel entry messages are now prefixed with the channel
914     name. Suggested by Medice.
915     2004/01/05 Fixed a bug in calculating session memory usage for OperServ
916     STATS ALL. Reported by Ali Sor <alisor@softhome.net>
917     2003/12/09 Added slightly more verbose logging when a fatal signal is
918     received.
919     2003/12/03 .27 Fixed a stupid bug in the AKILLCHAN command causing corrupted
920     autokills. Reported by <freakycomputer@global.co.za>
921     2003/12/03 Various code cleanups and memory leak fixes.
922     2003/12/02 Fixed security loophole allowing users to obtain channel
923     privileges with a nickname awaiting authentication
924     after a SET EMAIL command.
925     2003/12/02 MEMCHECKS/SHOWALLOCS log messages now show the full path of
926     the calling file.
927     2003/12/02 Implemented "overwrite" option for XML import.
928     2003/12/01 Services no longer logs errors when receiving SZLINE
929     messages (using the Bahamut protocol). Reported by
930     <ballsy@mystical.net>
931     2003/11/30 Fixed crash on exit in FreeBSD. Reported by Chris Riley
932     <dooley@risanet.com>
933     2003/11/30 Fixed memory corruption when unable to open initial log file.
934     2003/11/28 Fixed crash on long channel mode commands. Reported by
935     <diego@redesul.net>
936     2003/11/26 .26 Some configuration settings (such as FromAddress in mail/main)
937     which were only checked for validity at startup are now
938     also checked when rehashing the configuration files.
939     2003/11/26 Fixed failure to recognize changes in the MSAllowForward
940     configuration directive (for the memoserv/forward module).
941     2003/11/26 Improved internal storage format for nickname authentication
942     codes (the reason for setting the code is now stored
943     separately from the code itself). As a result, Cygnus
944     codes are now imported without any changes.
945     2003/11/26 Fixed infinite-loop bug in Magick database importer.
946     Reported by <freakycomputer@global.co.za>
947     2003/11/25 Fixed potential desynchronization bug with channel MODE -e.
948     2003/11/25 The registration delay functionality (NSRegDelay and
949     NSInitialRegDelay) now shows the remaining amount of
950     time the user needs to wait rather than the full delay
951     length.
952     2003/11/25 Added NSInitialRegDelay configuration option. Suggested by
953     Mark Hetherington <mark@ctcp.net>
954     2003/11/25 Documented the workings of hash.h.
955     2003/11/25 Fixed more memory leaks, and did minor code cleanups.
956     2003/11/20 Fixed a cosmetic bug in OperServ HELP AKILLCHAN. Reported
957     by <ballsy@mystical.net>
958     2003/11/18 .25 Fixed potential crashes when importing or exporting data
959     via the command line.
960     2003/11/18 Fixed various memory leaks.
961     2003/11/17 When SHOWALLOCS is enabled, the file and line at which
962     memory was allocated or freed is now logged.
963     2003/11/15 Fixed bugs in the configure script when using a deprecated
964     version of GCC. Reported by Matthew Hodgson
965     <arathorn@theonering.net>
966     2003/11/13 Added AKILLCHAN command to operserv/akill module.
967     Suggested by <us44ever@hotmail.com> and others. As a
968     result, the operserv/akill module now requires a new
969     configuration directive, AkillChanExpiry, to be set in
970     modules.conf.
971     2003/11/13 OperServ will now issue a warning if EnableExclude is used
972     with an IRC server type that does not support autokill
973     exclusions (thus preventing autokills from being sent).
974     2003/11/13 The program name "anope" can now be used with convert-db
975     for Anope databases. ("epona" will still work as well.)
976     2003/11/12 Added support to convert-db for PTlink 2.22.0 and later.
977     2003/11/11 .24 Fixed a warning in convert-db compilation.
978     2003/11/11 Fixed bugs in convert-db causing some nickname and channel
979     settings (timezone, language, channel and memo limits)
980     to not be initialized properly.
981     2003/11/11 Added -tzfile, -no-timezones, and -reset-memo-limits
982     options to the Cygnus database converter in convert-db.
983     2003/11/05 Databases can now be exported in XML from the command line
984     (-export option).
985     2003/11/05 GCC versions earlier than 3.2 (except 2.95.3) are now
986     deprecated. Variadic macros workaround added for
987     problem reported by Ali Sor <alisor@softhome.net>
988     2003/11/05 Channel last-used time is now updated properly for the
989     first user to enter the channel if the user has auto-op
990     privileges. Reported by <saman@alkol.org>
991     2003/11/01 .23 Fixed bug causing database contents to get lost for small
992     databases on full filesystems. Reported by
993     <us44ever@hotmail.com>
994     2003/10/29 Fixed minor bugs in convert-db, and added checks to the
995     data before it is output. (As a result, convert-db
996     will take somewhat longer to process the same data.)
997     2003/10/27 Added support to convert-db for converting Cygnus databases.
998     Suggested by Jamie Penman-Smithson <jamie@chatnplay.net>
999     2003/10/27 Modified default channel level definitions to use ACCLEV_*
1000     constants from chanserv.h. If you change the constants
1001     (not recommended for compatibility reasons), the
1002     default channel levels will now change with them.
1003     2003/10/24 Added note to ListenTo directive documentation concerning
1004     the usage of low port numbers.
1005     2003/10/18 Added FAQ F.10 regarding the ImmediatelySendAutokill option
1006     to help people who have trouble reading documentation.
1007     2003/10/17 Fixed a cosmetic bug when giving forbidden nicknames to the
1008     AUTH-related commands. Reported by <us44ever@hotmail.com>
1009     2003/10/14 Fixed a typo in the ChanServ SET help text. Reported by
1010     playa <playa6@sbcglobal.net>
1011     2003/09/09 .22 The SHOWALLOCS compilation option can now be set from the
1012     configure script instead of editing memory.c directly.
1013     2003/09/09 Fixed bug causing blank lines in help messages to not be
1014     sent in rare cases.
1015     2003/09/09 Clarified NickServ AJOIN help with regard to +k and similar
1016     channels.
1017     2003/08/31 NickServ now displays the proper LIST help text for IRC
1018     operators. Reported by <saturn@jetirc.net>
1019     2003/08/31 Disabling the AUTOPROTECT channel level now disables
1020     automatic channel founder (Unreal, etc.) as well.
1021     2003/08/31 ChanServ LEVELS DISABLE AUTOOP (and AUTOVOICE, etc.) now
1022     properly affects the founder as well. Reported by
1023     Shaun Guth <l8nite@l8nite.net>
1024     2003/08/31 Fixed desynch on MODE -b with differing upper/lower case
1025     from the actual ban. Reported by Jeffrey Kam
1026     <jskam@shaw.ca>
1027     2003/08/31 Fixed potential crash on attempted DROP of a forbidden
1028     channel. Reported by Marc-Andre A. Fuentes
1029     <nothing@psychopat.org>
1030     2003/08/30 Add syntax reminder for users that get E-mail address and
1031     password backwards in NickServ REGISTER. Suggested by
1032     Craig McLure <Craig@chatspike.net>
1033     2003/08/30 Fixed desynch occurring with MergeChannelModes when a user
1034     joined an empty channel and quickly changed nicknames.
1035     2003/08/30 NickServ SET EMAIL now logs the previous E-mail address as
1036     well as the new one. Suggested by
1037     <RealCFC@chatfirst.com>. As a result, the log message
1038     now has a slightly different format.
1039     2003/08/30 Fixed bug causing some ChanServ mode changes to get lost.
1040     Reported by Craig McLure <Craig@chatspike.net>
1041     2003/08/30 ChanServ no longer attempts to restore the topic on a
1042     channel if no topic has been recorded.
1043     2003/08/30 Added NickServ DROPEMAIL command.
1044     2003/08/30 ChanServ SET FOUNDER and SET SUCCESSOR now log the previous
1045     founder/successor as well as the new one. Suggested by
1046     <RealCFC@chatfirst.com>. As a result, the log messages
1047     now have a slightly different format.
1048     2003/08/29 Channel mode and topic changes (except for mode changes
1049     caused by CSSetChannelTime) now always use a consistent
1050     source name: ChanServ, OperServ, or the server name,
1051     depending on whether the respective modules are loaded.
1052     2003/07/27 Added FAQ Z.3.5 regarding backtraces.
1053     2003/07/16 Added explanation of reasoning behind choice of license
1054     terms. Suggested by Richard Stallman <rms@gnu.org>
1055     2003/07/09 .21 Fixed type-related warnings in some environments.
1056     2003/07/09 Fixed errors when compiling in parallel (make -jN).
1057     2003/07/04 Fixed warnings about builtin function name clash with GCC.
1058     Reported by Craig McLure <Craig@chatspike.net>
1059     2003/06/28 Fixed crash on abnormal disconnection from server.
1060     Reported by Jeffrey A. Kent <jeff.kent@myrealbox.com>
1061     2003/06/25 Fixed compilation failure on OpenBSD. Reported by
1062     <obi_wan@no.script-irc.de>
1063     2003/06/21 .20 Fixed a minor memory leak in the socket handling code.
1064     2003/06/17 Minor tweaks to various Makefiles.
1065     2003/06/16 Fixed bug causing data in socket write buffers to get
1066     corrupted.
1067     2003/06/11 Added workaround for GCC bug on SPARC systems. Reported by
1068     Kevin Kane <kane@firelion.org>
1069     2003/06/09 Fixed compilation problems on Solaris. Reported by Kevin
1070     Kane <kane@firelion.org>
1071     2003/06/09 NickServ autojoin no longer auto-invites users into +i
1072     channels when the user doesn't have INVITE privileges.
1073     Reported by Martin Pels <martinpels@hotmail.com>
1074     2003/06/05 Fixed bug causing ChanServ to inappropriately remove some
1075     users' channel modes. Reported by Yusuf Iskenderoglu
1076     <uhc0@stud.uni-karlsruhe.de>
1077     2003/06/05 Changed handling of inappropriate channel user mode changes
1078     (e.g. entering a registered channel and setting +v on
1079     oneself before Services' -o comes through) to remove
1080     only the added modes, not all of them.
1081     2003/06/02 Corrected various errors and inconsistencies in the language
1082     files, and brought section 4 of the manual up to date.
1083     2003/06/02 Added FORCE option to OperServ UPDATE command.
1084     2003/06/02 OperServ UPDATE now sends a notice after saving the
1085     databases indicating whether the operation succeeded.
1086     2003/06/02 Fixed bug causing some callback functions to not be called
1087     if a callback function removed itself from the callback
1088     list. (Note that this situation does not occur in any
1089     previous versions of Services.)
1090     2003/05/28 Reworded NickServ replies and documentation for the
1091     mail-auth module to replace "authorize" by the more
1092     accurate "authenticate".
1093     2003/05/28 .19 Fake hostnames are now handled correctly by the PTlink
1094     protocol module.
1095     2003/05/28 Services now checks in advance whether a protocol module
1096     has been loaded, and aborts with an error message if
1097     not. Suggested by Mark Hetherington <mark@ctcp.net>
1098     2003/05/28 Updated FAQ C.1 and added FAQ C.1.5 regarding errors which
1099     can occur when saving the databases to disk.
1100     2003/05/28 The ExpireTimeout configuration directive has been
1101     deprecated, as it is no longer used. This directive
1102     will be removed entirely in the next version of Services.
1103     2003/05/28 Added documentation to section 6 of the manual on how to
1104     process messages received from the IRC network.
1105     2003/05/28 The program name used in the /VERSION reply ("ircservices")
1106     is now defined in version.sh for easier changing in
1107     derivative programs.
1108     2003/05/06 Clarified reasoning behind transfer-of-rights requirement
1109     for submission of code or other changes.
1110     2003/04/30 Fixed bug in OperServ JUPE command causing Services to be
1111     disconnected from the network when juping an existing
1112     server. Reported by George Stamatiou <master@xchat.gr>
1113     2003/04/30 Added CSRegisteredOnly configuration directive. Suggested
1114     by Stefan Hudson <hudson@mbay.net>
1115     2003/04/30 Fixed (lack of) interaction between NickServ autojoin and
1116     +i channels causing "cannot join channel" errors on
1117     IDENTIFY. Reported by Christopher Wilson <owner@candt.net>
1118     2003/04/28 .18 Fixed bug causing chunks of output to get lost in the middle
1119     of HTTP server responses. Reported by several people.
1120     2003/04/28 Fixed cosmetic bug in error message for colliding nicknames.
1121     2003/04/28 Fixed bug preventing forbidden nicknames from being imported.
1122     2003/04/28 Added a workaround to convert-db for an apparent bug in
1123     Auspice Services causing CR characters to appear in
1124     mode locks.
1125     2003/04/23 Fixed bug causing NickServ LIST to not return matches to
1126     Services admins for a pattern matching real hostnames
1127     but not fake ones. Reported by Craig Edwards
1128     <brain@winbot.co.uk>
1129     2003/04/22 Fixed bug processing %hd and missing my_snprintf() in
1130     vsnprintf.c.
1131     2003/04/20 .17 Fixed crash when using UNLINK FORCE with non-linked nicks.
1132     Reported by Matthew Hodgson <arathorn@theonering.net>
1133     2003/04/15 The configure script now uses "conf-tmp" instead of "tmp"
1134     as its temporary directory name, to avoid potential
1135     clashes with pre-existing directories.
1136     2003/04/12 Precompiled binaries should now work with Linux kernel 2.2.x.
1137     Reported by <jay@hyperion.sleepygeek.org>
1138     2003/04/10 .16 Fixed crash on some systems when giving only spaces to
1139     certain commands. Reported by Joao Luis Marques Pinto
1140     <Lamego@PTlink.net>
1141     2003/04/08 .15 Support for trircd 4.x removed, and for 5.1 added, on
1142     recommendation from Yusuf Iskenderoglu
1143     <uhc0@stud.uni-karlsruhe.de>
1144     2003/03/06 Fixed typo in English language file. Reported by
1145     <monolith@orblivion.com>
1146     2003/03/04 .14 Fixed compilation error on some systems.
1147     2003/03/03 .13 Build number is no longer updated if no files have changed
1148     (this avoids "make ; make install" incrementing the value
1149     twice). Reported by Craig McLure <Craig@chatspike.net>
1150     2003/03/03 Users are no longer collided if they have identified but
1151     need to set an E-mail address. Reported by Andrew Kempe.
1152     2003/03/03 Nicknames awaiting E-mail authorization now always use the
1153     regular 60-second timeout regardless of the KILL
1154     setting. Suggested by Andrew Kempe.
1155     2003/03/03 Added new section (3-1-2) on netsplit recovery to the manual.
1156     2003/03/03 Added workaround for broken browsers that don't handle
1157     backslashes properly. Reported by <thebeast@xs4all.nl>
1158     2003/02/26 Outgoing mail now includes a Date: header, to avoid some
1159     MTAs inserting a date of 1970/1/1. Reported by Mattias
1160     Karlsson <mattias.karlsson@nocom.se>
1161     2003/02/26 Added support for channel mode +M in Unreal (3.2 beta).
1162     2003/02/26 MemoServ SEND now requires identification for the nickname
1163     instead of just an access list match. Reported by
1164     Rafael Stuhr <rafaelstuhr@gmx.de>
1165     2003/02/25 .12 ChanServ no longer gives +o to random users in channels on
1166     startup. Reported by Matthew Hodgson
1167     <arathorn@theonering.net>
1168     2003/02/25 Core "channel create" callback modified for above fix to send
1169     the user's channel user modes to the called function.
1170     2003/02/25 NickServ now accepts a command-line option,
1171     "-clear-nick-email", to clear the E-mail addresses of
1172     all registered nicknames. Suggested by Marc-Andre A.
1173     Fuentes <nothing@psychopat.org>
1174     2003/02/25 The convert-db program now compiles correctly under Cygwin.
1175     Reported by Mark Hetherington <mark@ctcp.net>
1176     2003/02/25 Pseudoclients are now properly introduced and removed when
1177     modules are loaded or unloaded at runtime. Reported by
1178     Georges Berscheid <georges@berscheid.lu>
1179     2003/02/24 Fixed CSSetChannelTimes under Bahamut. Reported by JT
1180     <jtraub+irc@dragoncat.net>
1181     2003/02/24 Fixed validity check on nickname language setting. Reported
1182     by George Stamatiou <webmaster@xchat.gr>
1183     2003/02/24 Fixed dangling data directory lock on uplink server death.
1184     Reported by Aragon Gouveia <aragon@phat.za.net>
1185     2003/02/23 If an unsuspend grace period is set for nickname suspensions
1186     and the mail-auth module is in use, nicknames not yet
1187     authorized will have the delay before expiration of
1188     unauthorized nicks reset to the time of unsuspension.
1189     2003/02/23 Fixed problem in langcomp when .l files have CRs in them.
1190     2003/02/20 .11 Fixed 2002/10/24 compilation problem fix (modules/Makefile
1191     was missing the fix).
1192     2003/02/20 Fixed bugs in the trircd protocol module. Reported by
1193     Yusuf Iskenderoglu <uhc0@stud.uni-karlsruhe.de>
1194     2003/02/19 .10 Fixed bug causing Services to terminate with a fatal error
1195     on receiving multiple KILL messages in quick succession.
1196     Reported by Andrew Kempe.
1197     2003/02/17 SMTP traffic is now logged at debug level 1 instead of level 2.
1198     2003/02/17 Added more debug log messages to the Unreal protocol module.
1199     2003/02/14 Fixed bug causing Services to hang if disconnected from the
1200     remote server. Reported by several people.
1201     2003/02/14 Added checks to avoid "sockprintf() with NULL socket" errors
1202     appearing in the logfile.
1203     2003/02/14 Fixed trivial bug in calculating socket read timeout.
1204     2003/02/01 .9 Fixed a bug leading to desynchs.
1205     2003/01/31 .8 Fixed a number of compilation warnings.
1206     2003/01/31 Fixed typo and thinko causing crashes on channel mode changes.
1207     2003/01/30 .7 Fixed crash when opening a corrupt StatServ database.
1208     Reported by Rob van Eijk <rob4@home.nl>
1209     2003/01/30 Added robustness in clearing mode +r from users after
1210     nickname changes.
1211     2003/01/30 Users now properly get mode +r upon successful AUTH after
1212     registering a nick. Reported by <RealCFC@chatfirst.com>
1213     2003/01/23 SZlines are now properly added on startup when using
1214     Unreal. Reported by Aragon Gouveia <aragon@phat.za.net>
1215     2003/01/23 Save database changes if the uplink server disconnects us.
1216     Reported by Aragon Gouveia <aragon@phat.za.net>
1217     2003/01/22 OperServ KILLCLONES no longer adds a new autokill if an
1218     existing autokill matches the clones' user@host mask.
1219     Reported by Alexander Janssens <alex@cyga.net>
1220     2003/01/16 Bahamut protocol support cut off for version 1.4.34+ due to
1221     bugs in the Bahamut ircd.
1222     2003/01/07 Experimental PTlink IRC server support added.
1223     2003/01/06 Fixed bug causing -remote command-line option to not be
1224     recognized.
1225     2003/01/06 Fixed Unreal support (Unreal does not support dynamic
1226     autokill exceptions). Reported by <ron885@bloodheart.com>
1227     2003/01/06 The wallops warning for repeated bad passwords on a channel
1228     now includes the nickname of the user who sent the last
1229     bad password. Suggested by <cyberdems@wwirc.za.org>
1230     2003/01/02 Incorporated fixes for Chunky Monkey IRCD support from
1231     Chris Plant <chris@monkeyircd.org>
1232     2003/01/01 Fixed bug causing "AKILL has expired" messages to be sent
1233     multiple times. Reported by <prince@zirc.org>
1234     2002/12/13 Clarified that "transfer rights" in section 6-3 of the
1235     manual refers only to rights under copyright law.
1236     2002/12/03 Added documentation on mail modules to section 3 of the
1237     manual. Reported by Neal Kirby <Nealster02@hotmail.com>
1238     2002/11/25 .6 Fixed bug causing ChanServ commands to stop working on some
1239     channels. Reported by <MrBOFH@lomag.net> and others.
1240     2002/11/23 Added documentation on how to compile modules into Services
1241     (section 6-1-6).
1242     2002/11/21 .5 The XML import module no longer prints strange error
1243     messages for unknown command-line options.
1244     2002/11/21 NickServ ACCESS ADD now warns of inappropriate syntax for
1245     masks which contain "!". Suggested by Panagiotis
1246     Kefalidis <gizm0@ad2u.gr>
1247     2002/11/19 The configure script now correctly creates parent
1248     directories for the data directory if it does not exist.
1249     2002/11/19 Fixed configure check for socklen_t on FreeBSD. Repoted by
1250     Sean Kelly <smkelly@zombie.org>
1251     2002/11/18 .4 The Makefile now checks that the results of `configure' are
1252     up to date before compiling. This solves a compilation
1253     problem reported by several people in version 5.0.3.
1254     2002/11/16 .3 Fixed case-sensitivity bug with channel bans. Reported by
1255     Alexander Janssens <alex@cyga.net>
1256     2002/11/16 Fixed topic time setting on Unreal. Reported by
1257     <cyberdems@wwirc.za.org>
1258     2002/11/16 Added support for Intel's Linux/x86 compiler (icc) with
1259     optimization disabled. "./configure -cc icc" to use it.
1260     2002/11/16 Fixed missing list terminators in several modules
1261     potentially causing crashes on startup or rehash.
1262     2002/11/13 Fixed a bug causing the contents of the cache to not be
1263     properly read in when using bash 2.05b.
1264     2002/10/29 Fixed cosmetic bugs when using NickServ IDENTIFY and GETPASS
1265     with forbidden nicknames. Reported by <cc@omega.org.za>
1266     2002/10/25 Autokills, session exceptions, and S-lines are now checked
1267     for expiration at each database update. Reported by
1268     Ali Sor <alisor@softhome.net>
1269     2002/10/24 Fixed compilation problem on Solaris reported by Geoff
1270     Byers <geoff@systemred.net>
1271     2002/10/24 Fixed string-constant-related warnings.
1272     2002/10/22 .2 Clarified bug-reporting instructions.
1273     2002/10/21 Fixed bug in recording channel topic setters in nick!user@host
1274     format. Reported by Marcin Wolniewicz <marcin@di.pl>
1275     2002/10/20 Fixed bug with ChanServ FORBID #. Reported by
1276     <toxic@linuxmail.gr>
1277     2002/10/18 .1 Fixed convert-db bugs with linked nicks (Auspice 2.7) and
1278     channel access lists (all programs). Reported by
1279     <irc@kgn.ru>
1280     2002/10/17 NickServ LINK and UNLINK are now disabled in read-only mode.
1281     Reported by Dennis Sela <Schutzgeist@uni.de>
1282     2002/10/11 Fixed several compiler warnings.
1283     2002/10/11 Cosmetic fixes to debug log messages.
1284     2002/10/10 Fixed bug causing ChanServ CLEAR BANS to only clear one ban
1285     at a time. Reported by Ali Sor <alisor@softhome.net>
1286     2002/10/10 Corrected a cosmetic bug in configure script and a compiler
1287     error when compiling static modules, both on Solaris.
1288     Reported by <oleg_orlov@inbox.ru>
1289     2002/10/06 Disabled -dumpcore by default in the configure script (to
1290     match help text).
1291     2002/10/06 .0 Version 5.0.0 released.
1292     2002/10/02 p15 Removed AKILL option for OperServ STATS command.
1293     2002/10/02 Fixed bug in checking protocol features from core code.
1294     2002/09/30 ACC-CHANGE channel privilege is now checked properly.
1295     Reported by Dylan v.d Merwe <dylanvdm@icon.co.za>
1296     2002/09/29 Added support for Bolivia IRC Services (version 1.2.0)
1297     databases to convert-db. Suggested by Peter
1298     Samuelsson <psadi4@swipnet.se>
1299     2002/09/29 Sirv/Auspice database conversion now properly sets the
1300     SECURE option on imported channels.
1301     2002/09/25 p14 Fixed XML import bug causing channel access lists to get
1302     discarded.
1303     2002/09/25 Added workaround for GCC 3.x bug (GNATS PR#8028).
1304     2002/09/24 Fixed errors when channels expired during import.
1305     2002/09/23 Added SQlineKill configuration directive (operserv/sline).
1306     Suggested by John Edrington <john@cosmicfire.net>
1307     2002/09/23 p13 Fixed false out-of-memory error in socket handling code.
1308     Reported by <mazta@illlab.ee>
1309     2002/09/23 Unauthorized E-mail addresses can no longer be used in
1310     NickServ REGISTER or SET EMAIL commands for other
1311     nicknames, to prevent spamming of arbitrary addresses.
1312     2002/09/22 Fixed bugs in socket buffer memory tracking.
1313     2002/09/22 Added NetBufferLimit configuration directive and OperServ
1314     STATS NETWORK command.
1315     2002/09/18 French langauge file added, courtesy of Elijah
1316     <admin@nevernet.net> and Maxime <maxime_imbeau@hotmail.com>
1317     2002/09/15 -fno-strict-aliasing is now added to the compilation
1318     options for GCC to avoid overaggressive optimization.
1319     2002/09/15 configure can now be forced to use GCC 2.96, though this is
1320     still not supported. It will also now look for gcc3 as
1321     an alternative before giving up.
1322     2002/09/14 p12 "convert-db -h" now lists supported program types in
1323     alphabetical order.
1324     2002/09/14 Removed unneded ALL parameter from LISTLINKS in
1325     nickserv/oldlink module.
1326     2002/09/14 Fixed bug in NickServ ACCESS ADD. Reported by
1327     <Brain@chatspike.net>
1328     2002/09/04 Fixed bug in handling Auspice databases in convert-db, and
1329     added support for Auspice 2.7. Reported by <irc@kgn.ru>
1330     2002/09/04 convert-db now converts nickname notes in Auspice databases
1331     to memos.
1332     2002/09/01 Removed stray .o file left around in previous releases.
1333     2002/08/30 configure now detects GCC 2.96 and refuses to use it.
1334     2002/08/28 p11 Fixed bug in importing nickgroups with IDs >2147483647.
1335     Reported by Martin Pels <martinpels@hotmail.com>
1336     2002/08/27 Users can no longer LINK pseudoclient nicknames, for real
1337     this time. Reported by <RealCFC@chatfirst.com>
1338     2002/08/26 p10 Fixed potential bugs when removing modules with REHASH.
1339     2002/08/26 Users can no longer LINK pseudoclient nicknames. Reported
1340     by <RealCFC@chatfirst.com>
1341     2002/08/26 Reduced memory usage in number-list processing by 56k.
1342     Suggested by Bryce Simonds <kelmar@esper.net>
1343     2002/08/26 Services now handles TOPIC messages with nick!user@host
1344     properly. Reported by Carsten Munk <stskeeps@tspre.org>
1345     2002/08/25 Added Hungarian language file, courtesy of Janos Kapitany
1346     <kapitany.janos@gmail.com>
1347     2002/08/23 Fixed various bugs in help/error messages, and removed
1348     unused messages from language files.
1349     2002/08/23 Memos can no longer be sent while in read-only mode.
1350     2002/08/23 Fixed bug causing desyncs on Bahamut with CSSetChannelTime.
1351     Reported by Russ Garrett <russ@garrett.co.uk>
1352     2002/08/22 Corrected errors in the language files. Helpful script
1353     provided by Jacek Margos <jacek.margos@freenet-ag.de>
1354     2002/08/15 Disallowed links to suspended nicknames in the
1355     nickserv/oldlink module. Suggested by Holger Baust
1356     <holger.baust@freenet.de>
1357     2002/08/15 pre9 Removed AUTODEOP and NOJOIN channel levels.
1358     2002/08/15 Fixed crash on OperServ SQLINE COUNT. Reported by
1359     <teoman@anet.net.tr>
1360     2002/08/15 Fixed cosmetic bug when changing the language for another
1361     nickname. Reported by <Coolkill121@aol.com>
1362     2002/08/15 Fixed a trivial cosmetic error in NickServ IDENTIFY.
1363     2002/08/14 A missing newline at the end of a configuration file no
1364     longer causes an error. Reported by Yaniv Gamzo
1365     <Yaniv@icq.com>
1366     2002/08/13 pre8 Finished HTML documentation.
1367     2002/08/13 Renamed httpd/redirect NickPrefix directive to NicknamePrefix.
1368     2002/08/12 Fixed bug causing autokill exclusions to not work on Unreal
1369     3.1. Reported by <RealCFC@chatfirst.com>
1370     2002/08/11 Fixed crash on database update with forbidden nicknames.
1371     Reported by Craig McLure <Craig@chatspike.net>
1372     2002/08/10 pre7 Brought the example HelpServ help text (data/helpfiles/help)
1373     slightly more up to date.
1374     2002/08/10 Added SQlineIgnoreOpers directive. Suggested by Ekim Engin
1375     <eengin@talesoft.de>
1376     2002/08/10 Fixed delay in expiring unauthorized nicknames with
1377     NSNoAuthExpire set. Reported by David Orman
1378     <monolith@orblivion.com>
1379     2002/08/09 Fixed crash on importing nicks with invalid nick groups.
1380     Reported by <saturn@jetirc.net>
1381     2002/08/09 Added DefTimeZone configuration directive. Suggested by
1382     George Stamatiou <master@xchat.gr>
1383     2002/08/09 Added workaround for double-mode (+oqoq, +kk) bug.
1384     2002/08/09 Added SETCMODE debug command to OperServ.
1385     2002/08/09 Updated trircd protocol module from suggestions by Yusuf
1386     Iskenderoglu <uhc0@stud.uni-karlsruhe.de>
1387     2002/07/29 Halfops can now set -h and +/-v on themselves. Reported by
1388     Dennis Sela <Schutzgeist@uni.de>
1389     2002/07/28 pre6 Nicknames linked to the Services super-user nickname now
1390     get super-user privileges as well. Suggested by Shaun
1391     Guth <l8nite@l8nite.net>
1392     2002/07/28 Log messages are no longer output for SILENCE messages.
1393     Suggested by Marc-Andre A. Fuentes <nothing@psychopat.org>
1394     2002/07/28 Fixed junk data getting output in Sirv database conversion.
1395     2002/07/28 Fixed off-by-one bug in Epona support in convert-db.
1396     2002/07/28 Added support for Sirv 2.9.0 databases to convert-db.
1397     Suggested by Gorkem Ogut <gorkemogut@hotmail.com>
1398     2002/07/23 The # character can now be used inside quoted strings in
1399     configuration files.
1400     2002/07/22 Fixed crash when sending memos to offline users with
1401     MSNotifyAll disabled. Reported by <ran@fistuk.com>
1402     2002/07/20 Fixed bugs involving passwords with spaces in them.
1403     Reported by <RealCFC@chatfirst.com>
1404     2002/07/20 Databases are now properly written to disk after an import.
1405     2002/07/20 Fixed bug causing data importing to fail. Reported by
1406     Yusuf Iskenderoglu <uhc0@stud.uni-karlsruhe.de>
1407     2002/07/18 GLINEs not set by Services are no longer cleared. (Unreal)
1408     2002/07/18 Fixed bug causing debugging to always get disabled on startup.
1409     2002/07/17 Corrected ChanServ AKICK documentation. Reported by Aragon
1410     Gouveia <aragon@phat.za.net>
1411     2002/07/17 AJOIN and Unreal's MLOCK +L now check validity of channel
1412     name parameters. Reported by Aragon Gouveia
1413     <aragon@phat.za.net>
1414     2002/07/17 An error message is now sent if modes +b/+e are used with
1415     MLOCK. Reported by <RealCFC@chatfirst.com>
1416     2002/06/24 pre5 Applied fix to format-string bug from version 4.5.41.
1417     2002/06/23 pre4 Fixed infinite loop on non-Unreal servers. Reported by
1418     George Stamatiou <master@xchat.gr>
1419     2002/06/21 pre3 Fixed bug preventing memo notification on IDENTIFY.
1420     Reported by <Ganja51@earthlink.net> and others.
1421     2002/06/21 Modified configure to work on OSF/1. Reported by Yusuf
1422     Iskenderoglu <uhc0@stud.uni-karlsruhe.de>
1423     2002/06/19 Added support for autokill exceptions in Unreal. Suggested
1424     by <RealCFC@chatfirst.com>
1425     2002/06/19 Fixed bug allowing unidentified users to use INFO ALL on
1426     the nickname they are using.
1427     2002/06/19 Unverified E-mail addresses are no longer shown except to
1428     the user and Services administrators, and are indicated
1429     unverified. Suggested by Ben Goldstein <beng@nc.rr.com>
1430     2002/06/19 Fixed two sneaky logic bugs causing crashes in rare cases.
1431     Reported by Sean Kelly <smkelly@slashnet.org>
1432     2002/06/19 Fixed a typo in ircservices-chk.
1433     2002/06/19 The initial access list entry for newly-registered nicks can
1434     now be disabled in modules.conf (NSFirstAccessEnable).
1435     Suggested by <RealCFC@chatfirst.com>
1436     2002/06/19 Fixed bug causing SECUREOPS to not work on servers without
1437     halfops support. Reported by George Stamatiou
1438     <master@xchat.gr>
1439     2002/06/19 Added TMODE and +L (server language) support to trircd
1440     protocol module. Suggested by Yusuf Iskenderoglu
1441     <uhc0@stud.uni-karlsruhe.de>
1442     2002/06/18 Fixed "invalid nickname" errors on valid nicknames for many
1443     IRC daemons. Reported by Romek Krisztian
1444     <r-krisztian@softhome.net>
1445     2002/06/18 Fixed crash in NickServ SENDPASS and AJOIN on unregistered
1446     nicks. Reported by <RealCFC@chatfirst.com>
1447     2002/06/17 pre2 XML importing is now done via the -import command-line option.
1448     2002/06/16 Command-line options now take an "=" instead of a space
1449     between option name and value.
1450     2002/06/14 The NickServ LINK command no longer accepts invalid nicks.
1451     Reported by <terminator@koekjes.net>
1452     2002/06/13 Documentation fixed to conform to HTML 4.01 Transitional.
1453     2002/06/13 Added a HELP COMMANDS topic to StatServ to match the other
1454     pseudoclients' help systems.
1455     2002/06/11 Mode lock +L on Unreal now requires +l to be set as well,
1456     to match the IRC server's behavior. Reported by Aragon
1457     Gouveia <aragon@phat.za.net>
1458     2002/06/11 AJOIN now prevents "channel" names not beginning in "#"
1459     from being added. Reported by Aragon Gouveia
1460     <aragon@phat.za.net>
1461     2002/06/11 Fixed cosmetic bugs in some NickServ syntax error messages.
1462     2002/06/11 Fixed bugs reported by Romek Krisztian
1463     <r-krisztian@softhome.net>:
1464     - Extra spaces no longer cause problems with some commands.
1465     - Spaces can now be used in passwords.
1466     - Port numbers no longer cause URLs to be rejected.
1467     - NickServ SET TIMEZONE parameter is now checked more
1468     carefully.
1469     - NickServ/ChanServ LIST and NickServ LISTEMAIL now
1470     check for bad Services admin parameters.
1471     2002/06/09 In-use nicknames can no longer be linked. Suggested by
1472     Dennis Sela <Schutzgeist@uni.de>
1473     2002/06/08 Fixed improper expiration when -noexpire option given.
1474     2002/06/01 pre1 Fixed crash when using RunGroup configuration directive.
1475     Reported by Kieran <daffy@daffy.za.net>
1476     2002/06/01 NickServ SENDPASS can now be used on any nick, and no
1477     longer shows the E-mail address to avoid spam
1478     collection. Reported by Ben Goldstein <beng@nc.rr.com>
1479     2002/06/01 Fixed improper removal of SHUNs in Unreal.
1480     2002/06/01 Fixed cosmetic bug in NickServ SETAUTH. Reported by Ben
1481     Goldstein <beng@nc.rr.com>
1482     2002/05/30 Fixed bug in MemoServ SAVE causing crashes. Reported by
1483     <saturn@jetirc.net>
1484     2002/05/26 pre0 Fixed bugs in HTTP utility routines. Reported by Romek
1485     Krisztian <r-krisztian@softhome.net>
1486     2002/05/24 a35 Fixed crash on use of unregistered nicks.
1487     2002/05/23 Fixed OperServ SU password not being saved. Reported by
1488     <brtb@unirc.net>
1489     2002/05/23 a34 Fixed crash caused by trying to use forbidden nicks.
1490     Reported by <brtb@unirc.net>
1491     2002/05/23 Fixed spurious log warnings on forbidding in-use nicknames.
1492     2002/05/22 Fixed bug allowing all users to use the ChanServ TOPIC
1493     command. Reported by Mark Hetherington <mark@ctcp.net>
1494     2002/05/17 Users are now no longer auto-joined to channels they are
1495     already in when identifying for their nick.
1496     2002/05/15 Fixed bugs in OperServ EXCEPTION MOVE.
1497     2002/05/15 Fixed bug causing NickServ LIST to not return any results.
1498     Reported by Romek Krisztian <r-krisztian@softhome.net>
1499     2002/05/14 Services admins can now modify channel access lists without
1500     identifying for the channel. Suggested by Panagiotis
1501     Kefalidis <gizm0@ad2u.gr>
1502     2002/05/14 Rewrote database saving routines to avoid data loss.
1503     2002/05/14 a33 Log filename may now contain %y, %m, or %d (replaced by the
1504     current year, month, or day) for automatic log rotation.
1505     2002/05/14 Renamed default log, PID, and MOTD files to "ircservices.*"
1506     instead of "services.*".
1507     2002/05/13 Added crontab script (ircservices-chk) to restart Services
1508     as needed. Suggested by <manual3000@hotmail.com>
1509     2002/05/13 Added NickServ LISTEMAIL command. Suggested by Finny
1510     Merrill <griever@t2n.org>
1511     2002/05/13 Services admins can now exceed nickname and channel
1512     registration limits.
1513     2002/05/13 Added NSRegEmailMax configuration directive for limiting
1514     the number of nicknames registered per address.
1515     Suggested by Finny Merrill <griever@t2n.org>
1516     2002/05/13 Fixed a bug causing failed connections to not be detected
1517     when Services is not running in debug mode.
1518     2002/05/13 Failed connections are now logged normally instead of as
1519     debug messages.
1520     2002/05/13 Socket connections should now work properly on FreeBSD
1521     instead of failing most of the time. Reported by Ben
1522     Goldstein <beng@nc.rr.com>
1523     2002/05/13 SMTP mail module now checks for " in From: names to avoid
1524     malformed headers.
1525     2002/05/13 a32 ChanServ no longer removes chanops from IRC operators who
1526     give themselves or others +o via an ircd feature.
1527     Reported by Romek Krisztian <r-krisztian@softhome.net>
1528     2002/05/13 Added StatServ support to httpd/dbaccess module.
1529     2002/05/12 Changed the default required access level for the ChanServ
1530     CLEAR command from founder-only to 100 (SOP).
1531     2002/05/12 The ChanServ LEVELS help no longer mentions the SOP/AOP/etc.
1532     commands if the access-xop module is not loaded.
1533     2002/05/12 Fixed a bug causing ChanServ LEVELS DESC help to be displayed
1534     for all LEVELS help queries _except_ LEVELS DESC.
1535     2002/05/10 Fixed failure to recognize protocol features when using
1536     static modules, and added extra checks to ensure
1537     variables are set up correctly.
1538     2002/05/09 Improved dynamic module usability check in configure script
1539     to handle OpenBSD correctly. Suggested by Chris Plant
1540     <chris@monkeyircd.org>
1541     2002/05/08 Changed init.c to avoid a compilation warning under GCC 3.
1542     Reported by Craig McLure <Craig@chatspike.net>
1543     2002/05/07 StatServ SERVERS DELETE and other root-only commands now
1544     say "permission denied" instead of "syntax error" when
1545     used by a non-root IRC operator.
1546     2002/05/07 Fixed cosmetic bug in AJOIN list-full error message.
1547     Reported by Romek Krisztian <r-krisztian@softhome.net>
1548     2002/05/03 a31 Channel user modes are now rechecked when a user identifies
1549     for their nickname.
1550     2002/05/02 Added appropriate error messages for temporary sendmail()
1551     failures.
1552     2002/05/02 Fixed minor bug causing ChanServ to try to enter the same
1553     channel twice on autokicks.
1554     2002/05/01 Fixed a race condition allowing the first user on a channel
1555     to give themselves +v before Services deopped them.
1556     2002/05/01 Added httpd/top-page module.
1557     2002/05/01 Added Chunky Monkey IRCD protocol module (protocol/monkey),
1558     courtesy of Chris Plant <chris@monkeyircd.org>
1559     2002/05/01 Channel mode changes are now sent by the server rather than
1560     ChanServ for Bahamut, to avoid a problem with setting +r.
1561     2002/05/01 a30 Renamed nick-authorization checking macros (nickserv.h,
1562     nick_* -> user_*).
1563     2002/05/01 Unified %d/%u/%ld/%lu usage in *printf() calls.
1564     2002/04/30 Fixed spurious WALLOPS messages when server socket is closed.
1565     2002/04/30 Merged common code for akills/etc in httpd/dbaccess module.
1566     2002/04/30 Fixed incorrect nick-kill warning messages with forced nick
1567     changing. Reported by Panagiotis Kefalidis <gizm0@ad2u.gr>
1568     2002/04/24 Fixed failure to set user mode +a for Services admins on
1569     Bahamut and trircd. Reported by Panagiotis Kefalidis
1570     <gizm0@ad2u.gr>
1571     2002/04/24 Added back missing NetworkDomain directive to modules.conf.
1572     Reported by Yusuf Iskenderoglu <uhc0@stud.uni-karlsruhe.de>
1573     2002/04/24 Removed EsperNet protocol module as development on that
1574     server has stopped.
1575     2002/04/24 Fixed bug causing crashes on NickServ SET with no parameters.
1576     Reported by Panagiotis Kefalidis <gizm0@ad2u.gr>
1577     2002/04/17 a29 Fixed a warning in modules/nickserv/main.c.
1578     2002/04/17 NickServ AUTH now keeps track of bad authorization codes,
1579     and kills users for multiple attempts as with passwords.
1580     2002/04/17 SQlines are now checked after nickname changes.
1581     2002/04/17 Fixed cosmetic bug with EXCEPTION LIST on an empty list.
1582     2002/04/17 Fixed security hole with guest nicks allowing users to
1583     evade Services' notice; the guest nick number is now
1584     re-randomized if the next nick to be assigned is in use.
1585     2002/04/17 Added autokill exclusion support to xml-import.
1586     2002/04/14 Fixed a cosmetic bug in the configure script.
1587     2002/04/12 Newly-registered nicks no longer have kill protection set
1588     when not authorized (when the mail-auth module is in
1589     use). Reported by Ben Goldstein <beng@nc.rr.com>
1590     2002/04/12 Fixed bug in NickServ AUTH replies.
1591     2002/04/12 Fixed improper warning when loading channel database.
1592     Reported by Mark Hetherington <mark@ctcp.net>
1593     2002/04/10 Fixed bugs in trircd-services database conversion support.
1594     Reported by Yusuf Iskenderoglu <uhc0@stud.uni-karlsruhe.de>
1595     2002/04/09 a28 Added support for autokill exclusions. Suggested by Yusuf
1596     Iskenderoglu <uhc0@stud.uni-karlsruhe.de>
1597     2002/04/09 Fixed bug causing NickServ SET INFO to ignore all words
1598     given after the first one. Reported by Romek Krisztian
1599     <r-krisztian@softhome.net>
1600     2002/04/09 Fixed bug causing xml-import to ignore all channels.
1601     Reported by Adrian Cantrill
1602     <adrian.cantrill@dial.pipex.com>
1603     2002/04/08 Autokills are now sent after wallops when the
1604     ImmediatelySendAkill option is set.
1605     2002/04/08 Improved trircd IRC server support and trircd-services
1606     database conversion support, thanks to Yusuf
1607     Iskenderoglu <uhc0@stud.uni-karlsruhe.de>
1608     2002/04/08 Reworked memo expiration logic as below.
1609     2002/04/05 a27 Reworked expiration logic to avoid long blocks checking for
1610     expired data and missed expirations.
1611     2002/04/05 Fixed improper aborts when reading in corrupted databases.
1612     2002/04/01 Fixed crash when certain commands did not receive enough
1613     parameters. Reported by several people.
1614     2002/03/30 a26 Fixed potential buffer overflow in HTTP daemon.
1615     2002/03/27 Fixed bug processing commands with extra spaces in them.
1616     2002/03/26 Fixed bug causing nickname password to be sent for ChanServ
1617     SENDPASS. Reported by George Stamatiou <master@xchat.gr>
1618     2002/03/26 Fixed compilation warnings in modules/chanserv/check.c.
1619     2002/03/26 Fixes and changes suggested by Mark Hetherington
1620     <mark@ctcp.net>:
1621     - Changed "akill" to "autokill" in configuration options.
1622     - Fixed bug allowing guest nicks to be registered/linked.
1623     2002/03/19 Fixed "ban not found" message when removing an autokick ban.
1624     Reported by Mark Hetherington <mark@ctcp.net>
1625     2002/03/19 a25 Fixed a bug in socket write buffer handling causing data to
1626     be lost. Reported by Mark Hetherington <mark@ctcp.net>
1627     2002/03/14 Fixed a bug causing crashes with a corrupt database.
1628     2002/03/13 Fixes and changes suggested by Mark Hetherington
1629     <mark@ctcp.net>:
1630     - Fixed bug causing nick groups with ID 0 to be created.
1631     - Fixed cosmetic bug with NickServ UNLINK FORCE.
1632     - Fixed bug in bugfix for linking of guest nicks.
1633     - Added support for SVSMODE on Dreamforge/Bahamut/Unreal.
1634     2002/03/11 a24 Fixed bug in LINK allowing guest nicks to be registered.
1635     Reported by Mark Hetherington <mark@ctcp.net>
1636     2002/03/01 Fixed crash with Unreal and +S clients. Reported by Mark
1637     Hetherington <mark@ctcp.net>
1638     2002/02/28 Added AllowRaw configuration directive (disabled by default).
1639     2002/02/28 Optimized processing for MSNotifyAll with MemoServ SEND.
1640     2002/02/28 The main OperServ module can no longer be unloaded via the
1641     OperServ REHASH command (doing so would cause a crash).
1642     2002/02/28 Fixed a potential crash if databases got corrupted.
1643     2002/02/28 Fixed CSRestrictDelay option (finally!) to not give free
1644     rides to users who would be unprivileged anyway, and
1645     enabled it by default (with a timeout of 15 seconds).
1646     2002/02/28 a23 Added SETAUTH command to nickserv/mail-auth module.
1647     Suggested by Mark Hetherington <mark@ctcp.net>
1648     2002/02/28 Fixed security hole allowing users to be considered
1649     "identified" for nicks with an authorization code set.
1650     2002/02/27 Added options to NickServ LIST and httpd/dbaccess to filter
1651     by and display nickname authorization codes. Suggested
1652     by Mark Hetherington <mark@ctcp.net>
1653     2002/02/27 Added options to nickname/channel lists (httpd/dbaccess) to
1654     display only forbidden, suspended, or non-expiring items.
1655     2002/02/27 Added support for GET query strings in HTTP server.
1656     2002/02/26 Fixed bug resulting in "not identified" after nickname
1657     registration. Reported by Ben Goldstein <beng@nc.rr.com>
1658     2002/02/26 Prevent use of the NickServ UNLINK command on self.
1659     2002/02/26 Fixed bug causing autokick masks to get corrupted on add.
1660     Reported by Mark Hetherington <mark@ctcp.net>
1661     2002/02/26 Fixed bug causing database load errors on certain types of
1662     bad data. Reported by Mark Hetherington <mark@ctcp.net>
1663     2002/02/22 a22 2002/2/22 22:22:22 commemorative release.
1664     2002/02/16 Fixed bug causing guested nicks to keep getting guested and
1665     noexpire/forbidden flags to disappear from nicks.
1666     Reported by Mark Hetherington <mark@ctcp.net>
1667     2002/02/15 a21 Fixes and changes suggested by Mark Hetherington
1668     <mark@ctcp.net>:
1669     - The httpd/dbaccess module now displays suspension
1670     information for suspended nicks and channels.
1671     - NickServ HELP REGISTER now emphasizes that a _valid_
1672     E-mail address is required with mail-auth.
1673     - Clients with the Unreal +S (service pseudoclient)
1674     mode are no longer affected by channel settings.
1675     - Forbidden nicks can now be dropped with DROPNICK.
1676     2002/02/12 Added NSFirstAccessWild configuration directive.
1677     2002/02/12 Fixed bug loading databases with a "#" channel registered.
1678     2002/02/12 Fixed crash in ChanServ INFO for no-expire channels.
1679     Reported by Mark Hetherington <mark@ctcp.net>
1680     2002/02/11 Fixed bug in handling of failed socket connections.
1681     Reported by Ben Goldstein <beng@nc.rr.com>
1682     2002/02/09 Fixed help messages relating to channel access levels to
1683     reflect the updated levels. Reported by Martin Pels
1684     <martinpels@hotmail.com>
1685     2002/02/09 Added TOPIC access level for ChanServ TOPIC command.
1686     2002/02/09 Changed AUTODEOP and NOJOIN access levels to -1 and -100.
1687     2002/02/08 a20 Mode changes from a single event are now merged into a
1688     single mode message even if MergeChannelModes isn't set.
1689     2002/02/08 Made ChanServ STATUS command available to normal users.
1690     2002/02/08 Rescaled access levels to make better use of the available
1691     range (itself reduced to -999..999).
1692     2002/02/08 Fixed bug causing modes for one channel to get sent to a
1693     different one in certain cases.
1694     2002/02/08 EnableGetpass, NSEnableRegister, and CSEnableRegister
1695     options are now properly handled on reconfigure.
1696     2002/02/07 Marked the mail/sendmail module as DISCOURAGED in
1697     example-ircservices.conf.
1698     2002/02/07 Prevent registration of channel names not starting with "#"
1699     to avoid problems with ircds with other channel types.
1700     2002/02/07 Fixes and changes suggested by Mark Hetherington
1701     <mark@ctcp.net>:
1702     - GETPASS was not actually disabled if !EnableGetpass.
1703     - Cosmetic fix to ChanServ HELP COMMANDS for IRCops.
1704     - More robust checking on autokick masks.
1705     - The channel "#" can no longer be registered or forbidden.
1706     - Fixed crash on ChanServ AKICK from unregistered nick.
1707     - Services admins no longer duplicated in operator list.
1708     2002/02/06 Fixed crash in SENDPASS command. Reported by SiliconAI
1709     <siliconai@aus3d.net>
1710     2002/02/06 Fixed bug causing confirmation messages for MemoServ SEND to
1711     not be sent. Reported by Mark Hetherington <mark@ctcp.net>
1712     2002/02/05 a19 Fixed corrupted messages after REHASH. Reported by Mark
1713     Hetherington <mark@ctcp.net> and others.
1714     2002/02/05 Added wallops on OperServ REHASH or SIGHUP. Suggested by
1715     Mark Hetherington <mark@ctcp.net>
1716     2002/02/05 Fixed unregistered nicks getting a STATUS of 1. Reported
1717     by Mark Hetherington <mark@ctcp.net>
1718     2002/02/05 Fixed crash with ChanServ SET RESTRICTED on new channels.
1719     Reported by Russ Garrett <russ@garrett.co.uk>
1720     2002/02/04 Fixes and changes suggested by Mark Hetherington
1721     <mark@ctcp.net>:
1722     - LIST command no longer shown to non-opers if
1723     ListOpersOnly enabled.
1724     - GETPASS can now be disabled.
1725     - HELP messages on Unreal no longer cause errors.
1726     - Signals no longer cause select() messages in log.
1727     - Fixed bug causing oper.db to grow relentlessly.
1728     - Fixed bug in reading/writing exception.db.
1729     2002/02/03 Renamed ChanServ SET TOPIC command to TOPIC. Suggested by
1730     Jollino <jollino@sogno.net>
1731     2002/02/03 Fixed bug causing autovoice to break on servers without
1732     halfops. Reported by Russ Garrett <russ@garrett.co.uk>
1733     2002/02/03 Updated numerous help messages.
1734     2002/02/03 a18 Fixed bug causing channel levels to get reset on a LEVELS
1735     DISABLE. Reported by Russ Garrett <russ@garrett.co.uk>
1736     2002/02/02 Fixed bug where founder-only channel levels would show up
1737     as "10000" in ChanServ LEVELS LIST.
1738     2002/02/02 Added command reference and configuration file documentation.
1739     2002/02/02 Fixed typos/formatting in language files (no content changes).
1740     2002/02/01 Fixed bugs in news module causing ADD to use bad item
1741     numbers and DEL to not work at all. Reported by Kevin
1742     <Kevc@gmx.co.uk>
1743     2002/02/01 Fixed minor typos reported by Russ Garrett <russ@garrett.co.uk>
1744     2002/01/29 Fixed bug causing access levels for ChanServ commands to be
1745     incorrectly checked. Reported by Todd Punderson
1746     <todd@doonga.net>
1747     2002/01/29 Added URL and E-mail fields to httpd/dbaccess channel
1748     information display.
1749     2002/01/29 Fixed cosmetic bugs in NickServ DROPNICK output and
1750     httpd/dbaccess nickname information display. Reported
1751     by Martin Pels <martinpels@hotmail.com>
1752     2002/01/28 Fixed crash in nickserv/oldlink LISTLINKS command.
1753     2002/01/28 a17 Fixed BUG message occurring when a nick with registered
1754     channels was dropped. Reported by Martin Pels
1755     <martinpels@hotmail.com>
1756     2002/01/28 Fixed potential crash when dropping in-use channels.
1757     2002/01/28 Fixed crash when expiring nicks with registered channels.
1758     Reported by Martin Pels <martinpels@hotmail.com>
1759     2002/01/28 Fixed bug causing oper help for NickServ SET to not be
1760     shown. Reported by Martin Pels <martinpels@hotmail.com>
1761     2002/01/28 Fixed bug in MemoServ SET LIMIT where DEFAULT was
1762     interpreted as 0 and anything else as DEFAULT.
1763     Reported by Martin Pels <martinpels@hotmail.com>
1764     2002/01/28 Removed IrcIIHelp pseudoclient and ircII help files.
1765     2002/01/24 Fixed bug in configure that caused the data directory to be
1766     asked for on the first run even if -defaults was given.
1767     2002/01/24 Added the OperServ SERVERMAP command.
1768     2002/01/24 a16 MemoServ no longer requires ChanServ to load.
1769     2002/01/24 Sessions module (operserv/sessions) no longer requires
1770     autokill module in order to load.
1771     2002/01/24 Got OperServ LISTSERVERS debug command working.
1772     2002/01/24 Fixed bug causing time of maximum user count to be set to
1773     maximum user count.
1774     2002/01/24 Fixed a cosmetic bug in OperServ STATS uptime display.
1775     2002/01/24 Fixed up OperServ STATS ALL processing.
1776     2002/01/24 Channel last-used time properly set again on auto-op.
1777     2002/01/23 Fixed several bugs in channel auto-mode handling.
1778     2002/01/23 Fixed GLINE (autokill) handling on ircu 2.9.32.
1779     2002/01/23 Main nick now indicated by "*" in NickServ LISTLINKS.
1780     2002/01/23 NickServ UNLINK now sets main nick to current nick when
1781     unlinking main nick.
1782     2002/01/23 Fixed bug causing main nick to change on UNLINK.
1783     2002/01/23 Fixed memory leak with -log command-line option.
1784     2002/01/23 Fixed handling of overlong mode parameters in set_cmode().
1785     2002/01/22 Made pack_ip() syntax check more robust.
1786     2002/01/22 username@[IP-address] E-mail addresses are now permitted.
1787     2002/01/22 Added checks on configuration parameter values for systems
1788     with a 64-bit `long' type.
1789     2002/01/22 Users who get changed to guest nicks will no longer be
1790     affected by SQlines on guest nicks.
1791     2002/01/22 If a client matches an SQline (and no SGline or SZline) and
1792     the IRC server supports forced nick changes, the client
1793     will be sent a 432 (invalid nickname) reply and have
1794     its nick changed instead of being killed.
1795     2002/01/22 A 433 (nick in use) reply is no longer sent as soon as a
1796     client connects with a registered nickname.
1797     2002/01/21 a15 Added preliminary Win32 support via Cygnus. Assistance
1798     from Andre Arruda <unblessed@ircd.com.br>
1799     2002/01/21 Changed hostmask creation code to only mask off the last
1800     part of an IP address, even for (former) class A/B
1801     addresses. Suggested by Sly.
1802     2002/01/21 Fixed bug parsing incomplete user@host masks. Reported by Sly.
1803     2002/01/21 convert-db is now installed in data directory by make install.
1804     2002/01/21 Renamed executable file from "services" to "ircservices",
1805     and main configuration file to "ircservices.conf".
1806     2002/01/21 "make spotless" target may now also be called as "distclean".
1807     2002/01/21 Fixed cosmetic bug in "configuration file not found" error.
1808     2002/01/21 Removed dependency on Perl for static compilation.
1809     2002/01/20 Fixed bug in usage of `tar' program.
1810     2002/01/19 Added NOQUIT support to trircd protocol module. Suggested
1811     by Yusuf Iskenderoglu <uhc0@stud.uni-karlsruhe.de>
1812     2002/01/19 Renamed import-db to convert-db.
1813     2002/01/18 Made PTlink database importing more robust.
1814     2002/01/18 Fixed bug causing import-db to fail with trircd databases.
1815     Reported by Yusuf Iskenderoglu <uhc0@stud.uni-karlsruhe.de>
1816     2002/01/18 a14 Fixed lots of errors in import-db.
1817     2002/01/17 Added trircd handler to import-db.
1818     2002/01/17 import-db no longer imports channel access levels (LEVELS
1819     command settings); all channels are reset to default.
1820     2002/01/16 Changed default access level for ACC-CHANGE to 4 to match
1821     behavior for *OP (HOP users allowed to add VOPs).
1822     2002/01/16 Removed unneeded code in ChanServ do_opvoice().
1823     2002/01/16 Added ChanServ KICK command. Suggested by Yusuf
1824     Iskenderoglu <uhc0@stud.uni-karlsruhe.de>
1825     2002/01/16 ChanServ REGISTER now requires identification, not just
1826     recognition, for the registering user's nick.
1827     Suggested by Hans v Steenbergen <thebeast@xs4all.nl>
1828     2002/01/16 Fixed bug causing module symbols to not resolve under FreeBSD.
1829     Reported by Todd Punderson <todd@doonga.net>
1830     2002/01/15 Added quote parsing to allow SGLINEs with spaces in them.
1831     Reported by Yusuf Iskenderoglu <uhc0@stud.uni-karlsruhe.de>
1832     2002/01/14 a13 The Services stamp of the last user to identify for a nick
1833     is now stored in the permanent database; new user
1834     handling modified to distinguish between users with and
1835     without Services stamps on supported IRC servers.
1836     Suggested by Finny Merrill <griever@t2n.org>
1837     2002/01/14 Fixed bug causing crashes when saving databases with expired
1838     nicknames. Reported by Todd Punderson <todd@doonga.net>
1839     2002/01/14 a12 Services will now try to remove or raise the core dump size
1840     limit when configured with -dumpcore.
1841     2002/01/14 Fixed bug causing -log command-line option to not work.
1842     2002/01/14 Moved LogMaxUsers, WallGetpass, and WallSetpass to
1843     services.conf (where they belong).
1844     2002/01/14 Made OperServ RESTART work correctly again.
1845     2002/01/14 Fixed crash on REHASH when StatServ is in use. Reported by
1846     Martin Pels <martinpels@hotmail.com>
1847     2002/01/14 Fixed broken-connection log message to be slightly more useful.
1848     2002/01/14 Fixed crash on remote SQUIT. Reported by Martin Pels
1849     <martinpels@hotmail.com>
1850     2002/01/13 Ignored data elements no longer cause XML importing to
1851     abort immediately.
1852     2002/01/13 Fixed bug in XML import causing crashes when called twice.
1853     2002/01/13 Removed trailing null bytes from passwords in XML export.
1854     2002/01/13 Fixed bug in XML export causing crashes when OperServ SU
1855     password is not set.
1856     2002/01/13 Rewrote import-db for 5.0; new database is now output as XML.
1857     2002/01/11 Mode locks are now saved as character strings in XML export.
1858     2002/01/08 a11 Added XML import module (xml-import) and dbaccess link.
1859     2002/01/07 Added automatic parsing of form variables to HTTP server.
1860     2002/01/06 Fixed memory leak (forgetting to free nickgroup ignore list).
1861     2002/01/04 Fixed MemoServ bugs occurring with default memo limits.
1862     2002/01/03 Removed duplicate "flags" line in NickGroupInfo XML output.
1863     2002/01/02 Modified XML export format to make it easier to parse.
1864     2002/01/01 Added AJOIN command to NickServ HELP COMMANDS. Reported by
1865     Russ Garrett <russ@garrett.co.uk>
1866     2002/01/01 Fixed bugs with MemoServ SET FORWARD and memo forwarding.
1867     Reported by Russ Garrett <russ@garrett.co.uk>
1868     2001/12/26 a10 Fixed bug causing strange channel user modes to be auto-set.
1869     Reported by Russ Garrett <russ@garrett.co.uk>
1870     2001/12/26 Added access levels link to ChanServ information page
1871     (httpd/dbaccess). Suggested by Russ Garrett
1872     <russ@garrett.co.uk>
1873     2001/12/26 Fixed bug in auth-password module causing Protect lines to be
1874     ignored. Reported by Russ Garrett <russ@garrett.co.uk>
1875     2001/12/26 Fixed bug in news database writing causing corruption.
1876     2001/12/26 Fixed missing slash on closing <nickinfo> tag in XML export
1877     module. Reported by Russ Garrett <russ@garrett.co.uk>
1878     2001/12/26 Fixed callback ordering bug causing S-line kills to leave
1879     "ghost" users in the session count. Reported by
1880     <ron885@linuxfreemail.com>
1881     2001/12/26 Fixed off-by-one bug causing corrupted output in XML export
1882     module. Reported by Russ Garrett <russ@garrett.co.uk>
1883     2001/12/25 a9 Rewrote move_exception() for modules.
1884     2001/12/24 Fixed off-by-one error in OperServ EXCEPTION MOVE.
1885     Reported by <v13@priest.com>
1886     2001/12/22 Fixed crash using LEVELS SET on a newly-registered channel.
1887     Reported by <v13@priest.com>
1888     2001/12/22 configure script now checks for presence of hstrerror().
1889     Reported by Michael Trebilcock <trebs@ihug.com.au>
1890     2001/12/22 Added news display to httpd/dbaccess module.
1891     2001/12/21 Protocol modules now clean up after themselves on exit.
1892     2001/12/21 Added support for tokens with Unreal. Suggested by Yusuf
1893     Iskenderoglu <uhc0@stud.uni-karlsruhe.de>
1894     2001/12/21 ChanServ OP/VOICE/etc. no longer set redundant modes.
1895     Suggested by <fabulous@t7ds.com.br>
1896     2001/12/20 Fixed various bugs with clearing channel modes.
1897     2001/12/20 Added support for Unreal UMODE2 message. Suggested by
1898     codemastr <codemstr@ptd.net>
1899     2001/12/20 a8 SIGHUP now re-reads the configuration files instead of
1900     restarting.
1901     2001/12/20 SIGUSR2 no longer opens log file if it was closed before.
1902     2001/12/20 Added reconfiguration support for modules.
1903     2001/12/20 Renamed AkillReason config directive to AutokillReason.
1904     2001/12/19 Fixed crash when unloading modules on exit.
1905     2001/12/17 Fixed infinite loop on signal. Reported by Georges
1906     Berscheid <Georges@Berscheid.lu>
1907     2001/12/14 Fixed various problems caused by signal timing.
1908     2001/12/14 Fixed compile error on FreeBSD. Reported by Ben Goldstein
1909     <beng@nc.rr.com>
1910     2001/12/13 a7 Added ability to re-read configuration files.
1911     2001/12/13 Fixed infinite loop in channel mode checking.
1912     2001/12/13 Fixed bug in mode merging where mode letters and parameters
1913     got out of sync with large number of modes at once.
1914     2001/12/13 Cleaned up configuration file handling.
1915     2001/12/11 Converted module documentation to HTML.
1916     2001/12/09 Converted FAQ to HTML.
1917     2001/12/07 Added xml-export module.
1918     2001/12/05 Added "list is empty" replies for NickServ ACCESS LIST.
1919     2001/12/05 Fixed error messages for forbidden nicks when used with
1920     NS AJOIN LIST <nick> or MS IGNORE LIST <nick>.
1921     2001/12/04 Fixed CSEnableRegister directive not being recognized.
1922     2001/12/04 a6 Added ChanServ SET HIDE. Patch provided by Yusuf
1923     Iskenderoglu <uhc0@stud.uni-karlsruhe.de>
1924     2001/12/04 Added NickServ autojoin module, provided by Yusuf
1925     Iskenderoglu <uhc0@stud.uni-karlsruhe.de>
1926     2001/12/04 Added MemoServ IGNORE module, provided by Yusuf
1927     Iskenderoglu <uhc0@stud.uni-karlsruhe.de>
1928     2001/12/04 Fixed bug in httpd/auth-password module causing crashes on
1929     malformed HTTP requests.
1930     2001/12/01 Added locking for data directory.
1931     2001/12/01 Changed XYZFile configuration directives to XYZFilename.
1932     2001/12/01 Renamed KillClonesAkillExpire directive (operserv/main) to
1933     KillClonesAkill and made it optional.
1934     2001/12/01 Merged SessionLimitAkill and SessionLimitAkillReason
1935     configuration directives (operserv/sessions).
1936     2001/11/26 Added NOQUIT support (for Bahamut/Unreal), based on code
1937     from Yusuf Iskenderoglu <uhc0@stud.uni-karlsruhe.de>
1938     2001/11/26 Fixed bug allowing old (incompatible) modules to be loaded.
1939     2001/11/26 Fixed stupid bugs in httpd/auth-password and operserv/news
1940     modules. Reported by Finny Merrill <griever@t2n.org>
1941     2001/11/26 Fixed bug in configure causing -dumpcore etc. to not work.
1942     2001/11/25 a5 Nick and channel expire times may now be set < 1 day.
1943     2001/11/25 Fixed misleading note about autokill reasons "not being
1944     displayed to the user" in OperServ AKILL help text.
1945     Reported by Elijah <nevernet@cfl.rr.com>
1946     2001/11/25 Removed BadPassSuspend configuration directive.
1947     2001/11/25 A warning is now sent when a user will be disconnected
1948     after one more bad password.
1949     2001/11/25 +a is no longer set for Services admins when they are not
1950     opered. Suggested by Yusuf Iskenderoglu
1951     <uhc0@stud.uni-karlsruhe.de>
1952     2001/11/25 config.h and Makefile.inc are no longer modified if their
1953     contents are unchanged, to avoid unneeded recompilation.
1954     2001/11/25 Added -defaults, -bindest, -datdest options to configure.
1955     2001/11/25 Moved CDEFS compilation options from Makefile to configure.
1956     2001/11/25 Added memo expiration capability. Suggested by Mauritz
1957     Antunes <mauritz@americasnet.com.br>
1958     2001/11/25 Fixed socket buffering bug causing all sorts of weirdness.
1959     2001/11/25 Version information moved to version.c (instead of .h).
1960     2001/11/25 Fixed infinite loop bug in ChanServ SET MLOCK.
1961     2001/11/25 Added support for Unreal +f/+L channel modes.
1962     2001/11/24 Fixed bug in Japanese EUC->SJIS code conversion.
1963     2001/11/24 Initial access mask is no longer displayed in NickServ
1964     REGISTER response when access masks are in use.
1965     2001/11/24 Nickname parameter for ChanServ OP/VOICE/etc. now defaults
1966     to the user sending the command if not given.
1967     2001/11/24 Fix really stupid bug making everyone always identified
1968     for their nick.
1969     2001/11/24 The build number in version.h is now updated every build
1970     instead of just when a main source file changes.
1971     2001/11/24 Added httpd/dbaccess module and removed obsolete
1972     listnicks/listchans handling.
1973     2001/11/24 Added httpd/auth-ip module.
1974     2001/11/24 Added SET TIMEZONE to NickServ.
1975     2001/11/24 Fixed stray s_NickServs in ChanServ HELP responses.
1976     2001/11/24 Autokick set and last-used times are now recorded.
1977     2001/11/24 Added NSEnableRegister and CSEnableRegister directives.
1978     2001/11/23 a4 Added support for differing channel owner modes (+q in
1979     Unreal, +u in trircd).
1980     2001/11/23 Added httpd/auth-password module.
1981     2001/11/23 Properly abort loading if protocol_nickmax+1 > NICKMAX.
1982     2001/11/23 Added trircd4 protocol module, courtesy of Yusuf
1983     Iskenderoglu <uhc0@stud.uni-karlsruhe.de>
1984     2001/11/23 SENDPASS modules now properly check for trapdoor encryption.
1985     2001/11/22 Added SMTP mail sending module.
1986     2001/11/22 Added MemoServ FORWARD module.
1987     2001/11/21 Fixed bug with SENDAUTH command response. Reported by
1988     Andrew Kempe.
1989     2001/11/21 Fixed crash when an unregistered nick enters a channel.
1990     2001/11/21 Added OperMaxExpiry directive to autokill module.
1991     Suggested by Finny Merrill <griever@t2n.org>
1992     2001/11/19 a3 Moved `authstat' field from NickGroupInfo to NickInfo (to
1993     stop people from stealing privs off an identified nick).
1994     2001/11/19 Fixed bug in alpha 2 preventing compilation.
1995     2001/11/17 a2 Fixed bug preventing unregistered nicks from getting
1996     channel founder privileges with IDENTIFY.
1997     2001/11/17 Reverse mode changes by users who will be deopped after
1998     channel mode merging (prevents stealing +v with server
1999     ops). Reported by Ali Sor <alisor@softhome.net>
2000     2001/11/17 Fixed infinite loop (stack overflow) bug with MLOCK -k.
2001     2001/11/14 Fixed bug in data/Makefile causing make install to crash.
2002     Last 2 reported by Martin Pels <martinpels@hotmail.com>
2003     2001/11/14 Fixed nick getting linked to itself by NickServ LINK.
2004     Reported by Finny Merrill <griever@t2n.org>
2005     2001/11/14 Fixed bugs loading linked and forbidden nicks.
2006     2001/11/14 Backup database files are no longer overwritten on update.
2007     2001/11/12 OperServ SU can now be used by any IRC operator if NickServ
2008     is not loaded.
2009     2001/11/11 Fixed bug causing NickServ submodules to not release main
2010     NickServ module on exit.
2011     2001/11/11 Added more error checking to [un]use_module().
2012     2001/11/11 Fixed failure to unload some modules.
2013     2001/11/11 Fixed bug recording real name for NickServ INFO command.
2014     Last 2 reported by Finny Merrill <griever@t2n.org>
2015     2001/11/10 a1 Moved README and README-5.0 content to docs/ directory (new
2016     HTML manual, incomplete).
2017     2001/11/08 Several outdated command-line options removed.
2018     2001/11/08 Select new data directory when executable directory is
2019     changed in configure.
2020     2001/11/08 Fixed potential invalid pointer bug with unloading modules.
2021     2001/11/08 Unload modules on exit. Fixes RESTART bug reported by
2022     Finny Merrill <griever@t2n.org>
2023     2001/11/07 Added database module support for StatServ.
2024     2001/11/07 Eliminated warnings from malloc(0) and calloc(0).
2025     2001/11/07 Added support for SQLINE on Unreal servers.
2026     2001/11/07 Fixed bug loading nicknames registered in version 5.0 (as
2027     opposed to imported).
2028     2001/11/07 Fixed crash when using HELP command with no parameters.
2029     2001/11/07 Fixed failure to start up when databases did not exist.
2030     Last 3 reported by Finny Merrill <griever@t2n.org>
2031     2001/11/07 Fixed compilation problem on FreeBSD. Reported by Andrew
2032     Kempe.
2033     2001/11/07 Changed configure's default data directory selection to be
2034     slightly more intelligent, and fixed a bug with spaces
2035     in target directory names.
2036     2001/11/05 a0 Redesigned channel access level system.
2037     2001/11/05 Added EsperNet protocol module, courtesy of Bryce Simonds
2038     <kelmar@esper.net>
2039     2001/11/04 Added HTTP nick/channel redirect module (httpd/redirect).
2040     2001/11/04 Added SENDPASS modules for NickServ and ChanServ.
2041     2001/11/03 Added HTTP server module (httpd/main).
2042     2001/11/02 Added checks for pathologically long configuration files.
2043     2001/11/02 SZLINE-equivalent support added for Unreal protocol.
2044     2001/11/02 Autokills and S-lines are now sent on startup if the
2045     relevant ImmediatelySend... option (modules.conf) is set.
2046     2001/11/01 NickServ/ChanServ no longer allow suspended nicks/channels
2047     to be dropped (which would cancel the suspension).
2048     Reported by Michael Haisley <eternal@unrealircd.org>
2049     2001/11/01 NickServ DROP now drops all linked nicks at once; DROPNICK
2050     command added for Services admins to drop other nicks.
2051     DROP now requires a password to avoid accidents.
2052     2001/10/31 NickServ now records nicks which a user has identified for
2053     as long as the user remains online (and not split).
2054     2001/10/31 OperServ now writes a log message whenever a non-oper sends
2055     a command to it.
2056     2001/10/31 Added NickServ SET MAINNICK command.
2057     2001/10/29 Added DEFAULT option to MemoServ SET LIMIT (admin version).
2058     2001/10/29 Completed initial version of new nick link system.
2059     2001/10/28 OperServ RAW is now limited to the Services super-user.
2060     2001/10/01 The default options for new channels can now be set in the
2061     configuration file (CSDef...).
2062     2001/10/01 Make sure server names to JUPE are valid (contain a period).
2063     2001/10/01 OperServ no longer allows the same server to be juped twice.
2064     2001/10/01 Fixed "no such server" error when SQUITting a juped server.
2065     Reported by codemastr <codemstr@ptd.net>
2066     2001/09/30 user@host of command sender is now logged as well as nick
2067     for FORBID/SUSPEND of both nicks and channels.
2068     2001/09/30 Added CSSetChannelTime configuration directive. Suggested
2069     by Finny Merrill <griever@t2n.org>
2070     2001/09/30 NS/CS SET PASSWORD now obeys ShowPassword config setting.
2071     2001/09/30 Added ability to compile modules statically; configure will
2072     select static/shared depending on the system.
2073     2001/09/29 Added support for S-lines (SGLINE/SQLINE/SZLINE).
2074     2001/09/29 Renamed "StaticAkillReason" configuration directive
2075     (operserv/akill module) to "AkillReason"; the reason
2076     in the autokill can be inserted with "%s".
2077     2001/09/28 Added support for nickname IP address when using Bahamut.
2078     Suggested by Yusuf Iskenderoglu
2079     <uhc0@stud.uni-karlsruhe.de>
2080     2001/09/28 KILLCLONES no longer says "AKILL added" when the autokill
2081     module is not in use.
2082     2001/08/22 Added SetServerTimes configuration option for Unreal.
2083     Suggested by Finny Merrill <griever@t2n.org>
2084     2001/08/10 Nickname passwords, URLs, and E-mail addresses are now
2085     shared among all linked nicks in a group.
2086     2001/08/10 Services root privilege obtained with SU now remains
2087     effective as long as the user is connected.
2088     2001/08/06 Added NickServ AUTH module to allow for verification of
2089     E-mail addresses.
2090     2001/08/06 NickServ REGISTER no longer displays the user@host mask in
2091     its response if access lists are not in use.
2092     2001/08/06 NickServ RECOVER/RELEASE/GHOST no longer check the access
2093     list for the target nickname; the correct password must
2094     be given in order to use the command.
2095     2001/08/06 Made nickname access list support optional and moved it to
2096     a separate module.
2097     2001/08/03 Added initial mail-sending support.
2098     2001/07/06 Modified configure to accept GNU-style "--option[=value]"
2099     options.
2100     2001/07/06 Moved DUMPCORE option from configure script to Makefile.
2101     2001/07/06 Added "-prefix" option to configure script.
2102     2001/07/06 Moved Services log filename from config.h to services.conf.
2103     2001/07/06 Moved group to run as and file umask from configure script
2104     to services.conf.
2105     2001/07/05 Configure script now derives default data directory from
2106     program directory path.
2107     2001/07/05 Modularized encryption code.
2108     2001/07/05 Added rule to lang/Makefile to create `index' from en_us.l.
2109     2001/06/28 Removed workaround for broken encrypted passwords.
2110     2001/06/28 Moved network domain name setting from configure script to
2111     module configuration file.
2112     2001/06/18 NSDefNone configuration directive removed (the default is
2113     now no options set).
2114     2001/06/13 OperServ *NEWS LIST now lists in newest-first order.
2115     2001/06/13 The last time of use is now recorded for each autokill and
2116     can be seen with the AKILL VIEW command.
2117     2001/06/10 Changes to channel successors are now logged.
2118     2001/06/10 Removed registered nick matching from autokicks.
2119     2001/06/09 Last seen user@host is now shown to nick owner and Services
2120     admins in NickServ INFO even if ALL is not given.
2121     2001/06/09 Newly registered nicks now use a "use default language"
2122     setting which obeys changes in DEF_LANGUAGE. Suggested
2123     by Jacek Margos <jacek.margos@freenet-ag.de>
2124     2001/06/09 Completed redesign of nick linking system.
2125     2001/06/08 ChanServ INFO ALL will now show the last topic and setter
2126     regardless of channel modes.
2127     2001/06/08 Don't show nick E-mail addresses in ChanServ INFO or
2128     ACCESS/AKICK LIST.
2129     2001/05/23 Don't allow servadmin ACCESS LIST on forbidden nicks.
2130     2001/05/21 Last seen time is now set when changing nicks.
2131     2001/04/24 Initial Guest nick number (for NSForceNickChange) now random.
2132     2001/04/24 Fixed potential bugs in JOIN/PART handling and +v checks.
2133     2001/04/23 langcomp now removes output file on errors.
2134     2001/03/21 Only set umode +a on identify if the user is opered.
2135     2001/03/18 Services admin/etc. help messages are now visible to all
2136     (and only) IRCops.
2137     2001/03/18 Removed old clone checking code (CheckClones).
2138     2001/03/18 Fixed bug setting NSEnforcerUser when it contains an "@".
2139     2001/03/11 Added support for configuration directives for modules.
2140     2001/03/11 Fixed buggy /whois replies.
2141     2001/03/10 Initial module support completed. Idea initially suggested
2142     by <dnar@terrax.net>
2143     2001/03/10 Code base split off from version 4.5.8.
2144    
2145     *** Change log for version 4.5 and earlier versions is in Changes.old ***