Update .cvsignore files.
[ircu2.10.12-pk.git] / ChangeLog
index 6913b1ca839a69931ba69792cc0753aeb0311805..4b1d04def9eac030b4d99cd1e20c75e0891cad6f 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,4 +1,934 @@
-n2005-08-09  Michael Poole <mdpoole@troilus.org>
+2005-10-30  Michael Poole <mdpoole@troilus.org>
+
+       * .cvsignore: Add autom4te.cache.
+
+       * ircd/.cvsignore: Add convert-conf.
+
+       * ircd/test/.cvsignore: Add ircd_match_t.
+
+       * patches/.cvsignore: Add marks.
+
+2005-10-28  Alex Badea  <vamposdecampos@gmail.com>
+
+       * ircd/m_kick.c (ms_kick): Fix format string typo (bug #1339538)
+
+2005-10-17  Diane Bruce  <db@db.net>
+
+       * ircd/ircd_res.c: Don't send retries if the client did
+       not resolve (SERVFAIL); this fixes a bug causing a flurry
+       of retries in this case
+
+2005-10-14  Michael Poole <mdpoole@troilus.org>
+
+       * include/patchlevel.h (PATCHLEVEL): Update to pre02.
+
+2005-10-14  Michael Poole <mdpoole@troilus.org>
+
+       * doc/readme.cvs: Document tag name consistently with the release
+       name.
+
+       * include/patchlevel.h (PATCHLEVEL): Bump patchlevel for release
+       of 2.10.12.01.
+
+2005-10-12  Michael Poole <mdpoole@troilus.org>
+
+       * doc/example.conf: Update documentation to match this change.
+
+       * ircd/client.c (client_set_privs): Make default global oper
+       privileges match what was in 2.10.11.
+
+2005-10-11  Michael Poole <mdpoole@troilus.org>
+
+       * ircd/os_generic.c (os_get_rusage): Make conditional on DEBUGMODE
+       to mitigate bug #1313429.
+
+2005-10-12  Perry Lorier <isomer@undernet.org>
+
+       * include/s_stats.h: Add new "Local" only flag to /stats.
+
+       * ircd/m_stats.c: Consult it.
+
+       * ircd/s_stats.c: Use the flag.
+
+2004-01-04  Kevin L Mitchell  <klmitch@mit.edu>
+
+       * ircd/s_numeric.c (do_numeric): fix a crash when a numeric is
+       sent to a channel...
+
+2005-10-06  Michael Poole <mdpoole@troilus.org>
+
+       * ircd/m_join.c (m_join): Report too-long channel names as
+       non-existent.
+
+2005-10-05  Michael Poole <mdpoole@troilus.org>
+
+       * ircd/m_names.c (m_names): Fix format string when forwarding
+       /names -D to other servers.
+       (ms_names): Likewise.  Add support for remote /names -D.
+
+2005-10-05  Michael Poole <mdpoole@troilus.org>
+
+       * ircd/class.c (do_find_class): Fix bug from previous commit.
+
+       * ircd/ircd_parser.y (clientblock): Allow setting Client port.
+
+       * ircd/s_conf.c (check_limit_and_attach): Merge into attach_iline.
+       (attach_iline): Only set FLAG_DOID when we are sure we will attach
+       this Client block to the client. [Credit: Jukka Ollila and others]
+
+2005-10-04  Michael Poole <mdpoole@troilus.org>
+       [Based on a patch by Jukka Ollila]
+
+       * include/class.h (find_class): Rename to do_find_class().
+
+       * ircd/class.c (class_delete_marked): Keep invalid classes in list
+       until next rehash.
+       (add_class): Use new parameter to do_find_class() to allow a class
+       to be "resurrected".
+       (find_class): Rename.
+       (report_classes): Use 'y' instead of 'Y' when reporting invalid
+       classes.
+
+2005-10-01  Michael Poole <mdpoole@troilus.org>
+
+       * ircd/m_kick.c (ms_kick): If the kick target is join-delayed,
+       only send the KICK to the kicker.  Spotted by Cesar_.
+
+2005-10-01  Michael Poole <mdpoole@troilus.org>
+
+       * include/patchlevel.h (PATCHLEVEL): Update to pre1.
+
+       * ircd/class.c (init_class): Only set default class's ->next
+       pointer when first allocating it.
+
+2005-09-30  Michael Poole <mdpoole@troilus.org>
+
+       * ircd/m_who.c (m_who): Handle matchsel & WHO_FIELD_ACC when
+       matching users.
+
+2005-09-30  Michael Poole <mdpoole@troilus.org>
+
+       * include/patchlevel.h: Update for release.
+
+2005-09-28  Michael Poole <mdpoole@troilus.org>
+
+       * ircd/m_kick.c (ms_kick): Use correct oplevel when bouncing a
+       chanop being kicked.
+
+2005-09-26  Michael Poole <mdpoole@troilus.org>
+
+       * ircd/whocmds.c (do_who): Fix uninitialized variable warning
+       about 'chan'.
+
+2005-09-26  Michael Poole <mdpoole@troilus.org>
+
+       * ircd/parse.c (del_msg_element): Only delete empty subtrees, and
+       leave subtrees that may still contain data.
+
+2005-09-26  Michael Poole <mdpoole@troilus.org>
+
+       * include/channel.h (struct ModeBuf): Add mbm_oplevel to args
+       array.
+       (MB_OPLEVEL): New corresponding macro.
+       (modebuf_mode_client): Add corresponding argument.
+
+       * ircd/channel.c (modebuf_flush_int): Adjust worst-case buffer
+       usage to include :999 suffix.  Change format for oplevel passing.
+       (modebuf_mode_client): Set oplevel field in mbuf args array.
+       (struct ParseState): Add oplevel field to cli_change array.
+       (mode_parse_client): Accept and record oplevel suffix from
+       servers; fix it up if we're bouncing a deop.
+       (mode_process_clients): If a valid oplevel was parsed, use it.
+
+       * ircd/m_burst.c (ms_burst): Pass oplevel to modebuf_mode_client().
+
+       * ircd/m_clearmode.c (do_clearmode): Likewise.
+
+       * ircd/m_create.c (ms_create): Likewise.
+
+       * ircd/m_kick.c (ms_kick): Likewise.
+
+2005-09-23  Michael Poole <mdpoole@troilus.org>
+
+       * include/whocmds.h (WHOSELECT_DELAY): Define new constant.
+
+       * ircd/m_who.c (m_who): Accept 'd'/'D' as a way to set
+       WHOSELECT_DELAY, just like 'o' for WHOSELECT_OPER.  Do not skip
+       join-delayed users if WHOSELECT_DELAY is set.
+
+       * ircd/whocmds.c (do_who): Remember membership for shared channel
+       if one exists.  Use it when displaying flags, adding '<' for
+       join-delayed users.
+
+2005-09-22  Michael Poole <mdpoole@troilus.org>
+
+       * ircd/channel.c (mode_parse_key): Only accept the new key when
+       the current one is empty or "greater" than the new one.
+       (mode_parse_upass): Likewise, for upass.
+       (mode_parse_apass): Likewise, for apass.
+
+2005-09-22  Michael Poole <mdpoole@troilus.org>
+
+       * ircd/gline.c (gline_checkmask): Add missing digit in mask length
+       check.
+
+2005-09-21  Michael Poole <mdpoole@troilus.org>
+
+       * doc/example.conf: Remove confused and outdated references to
+       Martians.
+
+2005-09-20  Michael Poole <mdpoole@troilus.org>
+
+       * ircd/Makefile.in: Regenerate "make depend" dependencies.
+
+       * ircd/test/Makefile.in: Likewise.
+
+2005-09-16  Kevin L. Mitchell  <klmitch@mit.edu>
+
+       * ircd/m_join.c (last0): fix problem leading to protocol
+       violations on certain combinations of /join 0 from remote servers
+       (probably from local users, too) [bug #1291029]; remove redundant
+       !IsChannelChar() check
+
+2005-09-14  Michael Poole <mdpoole@troilus.org>
+
+       * doc/readme.cvs: Document the branching scheme for 2.10.12.
+
+2005-09-14  Michael Poole <mdpoole@troilus.org>
+
+       * include/patchlevel.h (PATCHLEVEL): Increment to reflect the
+       pre-release code freeze.
+
+2005-09-14  Michael Poole <mdpoole@troilus.org>
+
+       * ircd/channel.c (find_ban): Fix the sense of another check.
+
+2005-09-13  Michael Poole <mdpoole@troilus.org>
+
+       * include/channel.h (clean_channelname): Remove prototype.
+
+       * ircd/m_invite.c (m_invite): Do not clean channel name; just
+       reject invalid channel names.
+
+       * ircd/m_join.c (m_join): Likewise.
+
+       * ircd/m_mode.c (m_mode): Do not clean channel name.
+
+       * ircd/m_names.c (m_names): Likewise.
+
+       * ircd/m_opmode.c (mo_opmode): Likewise.
+
+2005-09-13  Michael Poole <mdpoole@troilus.org>
+
+       * ircd/channel.c (find_ban): Revert to older style of comparison,
+       fixing the sense of one check.  Spotted by Alex Badea.
+
+2005-09-13  Alex Badea <vamposdecampos@gmail.com>
+
+       * ircd/ircd.c (try_connections): modify autoreconnect logic to
+       allow FEAT_CONNECTFREQUENCY to be smaller than Class connectfreq
+
+2005-09-13  Alex Badea <vamposdecampos@gmail.com>
+
+       * ircd/s_conf.c (close_mappings): NULL out GlobalServiceMapList,
+       otherwise the linked list has an invalid ending sentinel on rehash
+
+2005-09-12  Michael Poole <mdpoole@troilus.org>
+
+       * ircd/channel.c (find_ban): Compare ban mask against hostname
+       even when it looks like an IP, to match things like *!*@1.* when
+       users have a hostname like 1.2.3.example.com.
+
+2005-09-12  Michael Poole <mdpoole@troilus.org>
+
+       * RELEASE.NOTES: Note the resolution of ambiguous ipmasks.
+
+       * ircd/ircd_string.c (ipmask_parse): Implement it.
+
+2005-09-12  Michael Poole <mdpoole@troilus.org>
+
+       * ircd/m_join.c (m_join): If we find an empty key, null out the
+       key pointer.
+
+2005-09-11  Michael Poole <mdpoole@troilus.org>
+
+       * RELEASE.NOTES: Mention the side benefits of this change.
+
+       * include/ircd_string.h (ipmask_parse): Declare function here.
+       (ircd_aton): Becomes a special case of ipmask_parse().
+
+       * include/match.h (check_if_ipmask): Undeclare function.
+       (ipmask_parse): Remove function prototype from this file.
+
+       * ircd/ircd_string.c (ircd_aton_ip4): Add nullable pbits parameter
+       to accept ipmask length.  Rework to fill that in.
+       (ircd_aton): Rework into...
+       (ipmask_parse): this function, which knows how to fill in its own
+       pbits parameter.
+
+       * ircd/m_burst.c (ms_burst): Rely on make_ban() to set the ban
+       flags correctly, to avoid call to check_if_ipmask().
+
+       * ircd/match.c (ipmask_parse_ipv4): Delete function.
+       (check_if_ipmask): Likewise.
+       (ipmask_parse): Delete this version in favor of ircd_string.c's.
+
+       * ircd/test/ircd_in_addr_t.c (ipmask_test): New struct type.
+       (test_masks): New array of ipmask_test.
+       (test_ipmask): Function to run one of those tests.
+       (main): Call test_ipmask().
+
+2005-09-11  Alex Badea <vamposdecampos@gmail.com>
+
+       * ircd/m_ping.c (ms_ping, mo_ping): misplaced chunk of code
+       (probably during the forward port) which broke AsLL; fixed.
+
+2005-09-01  Michael Poole <mdpoole@troilus.org>
+
+       * ircd/gline.c (make_gline): Remove debug output from when IPv6
+       support was being debugged.
+       (do_gline): Likewise.
+       (gline_lookup): Likewise, plus remove redundant code.
+
+2005-09-01  Michael Poole <mdpoole@troilus.org>
+
+       * ircd/channel.c (joinbuf_join): Ignore joinbuf type when joining
+       0, since no other call passes a null channel.
+
+       * ircd/m_join.c: Remove comment discussing argument meanings.
+       (last0): Make this also handle the JOIN 0 logic, doxyfy.
+       (join0): Merge into last0.
+       (m_join): Doxygenate.  Remove check for join0.  Further
+       reorganize, so new versus old channel handling are moved to just
+       one place each within this function.
+       (ms_join): Doxygenate.  Remove check for join0.
+
+2005-09-01  Michael Poole <mdpoole@troilus.org>
+
+       * RELEASE.NOTES: Bump revision date and highlight this change.
+
+       * include/channel.h (MAGIC_OPER_OVERRIDE): Remove.
+       (can_join): Remove declaration.
+
+       * ircd/channel.c (compall): Remove.
+       (can_join): Remove.
+
+       * ircd/m_join.c (m_join): Remove redundant check for control
+       characters (clean_channelname() will get them). Reorganize initial
+       flags calculation.  Accept channel keys like RFC 1459 says; this
+       requires the old compall()/can_join() logic to modify 'keys', so
+       inline the code and reorganize it.
+
+2005-08-30  Michael Poole <mdpoole@troilus.org>
+
+       * include/channel.h (PASSLEN): Remove; use KEYLEN instead.
+
+       * ircd/channel.c (mode_parse_upass): Likewise.
+       (mode_parse_apass): Likewise.
+       The inconsistency (in clean_key()) was reported by Reed.
+
+2005-08-30  Michael Poole <mdpoole@troilus.org>
+
+       * RELEASE.NOTES: Document +D and +d channel modes.
+
+2005-08-29  Michael Poole <mdpoole@troilus.org>
+
+       * include/numeric.h (ERR_NOMANAGER_LONG): Undefine.
+       (ERR_NOMANAGER_SHORT): Rename to ERR_NOMANAGER.
+
+       * ircd/s_err.c (replyTable): Change to reflect that.
+
+       * ircd/channel.c (clean_key): New function.
+       (mode_parse_key): Use it, and check that keys do not start with :.
+       (mode_parse_upass): Likewise, and adjust for ERR_NOMANAGER.
+       (mode_parse_apass): Likewise.
+       The key and password changes fix bugs reported by coekie.
+
+2005-08-27  Michael Poole <mdpoole@troilus.org>
+
+       * ircd/channel.c (add_user_to_channel): Use SetOpLevel() instead
+       of assigning directly to member->oplevel.
+       (mode_parse_apass): Likewise.
+       (mode_process_clients): Users opped by outsiders should get
+       oplevel 1, since they are not channel managers.
+
+       * ircd/m_burst.c (ms_burst): Use SetOpLevel() instead of assigning
+       directly to member->oplevel.
+
+2005-08-25  Michael Poole <mdpoole@troilus.org>
+
+       * ircd/channel.c (member_can_send_to_channel): At coekie's
+       suggestion, disallow channel manager talking after Apass is set,
+       so they set and use Upass sooner.
+
+       * ircd/class.c (init_class): Default class should have 1 link.
+       (report_classes): Return links count minus one to match old output.
+
+       * ircd/m_trace.c (do_trace): Fix links count here, too (spotted by
+       Reed).
+
+2005-08-25  Michael Poole <mdpoole@troilus.org>
+
+       * ircd/channel.c (mode_parse): Accept +A/+U from servers
+       regardless of FEAT_OPLEVELS.
+
+2005-08-24  Michael Poole <mdpoole@troilus.org>
+
+       * ircd/ircd.c (parse_command_line): Mention epoll engine when run
+       with -v.
+
+2005-08-24  Michael Poole <mdpoole@troilus.org>
+
+       * include/patchlevel.h (PATCHLEVEL): Increment.
+
+       * ircd/channel.c (joinbuf_join): Double check that oplevel is 0 or
+       1 when propagating JOIN <level>:#channel, to avoid PV on receiver.
+
+       * ircd/engine_epoll.c: Add system call numbers for more CPU types.
+
+       * ircd/ircd_log.c (log_open): Remove NFS-oriented alarm() calls;
+       anyone who writes logs over NFS is mental.  (Thanks to D. Bruce.)
+
+2005-08-21  Michael Poole <mdpoole@troilus.org>
+
+       * include/s_conf.h (free_mapping): Declare new function.
+
+       * ircd/ircd_parser.y (pseudoblock): Use it.
+
+       * ircd/s_conf.c (free_mapping): Define it.
+       (close_mappings): New function.
+       (rehash): Call close_mappings() before reading file.
+
+       * ircd/m_kill.c (do_kill): Revert 2005-08-18 change.
+
+2005-08-19  Michael Poole <mdpoole@troilus.org>
+
+       * ircd/parse.c (tok_tree): Re-add token tree structure.
+       (initmsgtree): Populate it.
+       (parse_server): Prefer it to full message tree.
+
+2005-08-18  Michael Poole <mdpoole@troilus.org>
+
+       * ircd/m_kill.c (do_kill): When FEAT_HIS_KILLWHO, change apparent
+       source of KILLs to &his instead of &me.
+
+2005-08-16  Michael Poole <mdpoole@troilus.org>
+
+       * ircd/channel.c (mode_parse_ban): Avoid overwriting part of
+       newban->banstr[] when the source is a server.  (Spotted by jcq.)
+
+2005-08-16  Michael Poole <mdpoole@troilus.org>
+
+       * ircd/channel.c (joinbuf_join): Switch to &his instead of &me for
+       announcements to local users in a channel.
+
+       * ircd/m_burst.c (ms_burst): Likewise.
+
+       * ircd/m_invite.c (m_invite): Likewise.
+       (ms_invite): Likewise.
+
+       * ircd/m_kick.c (ms_kick): Likewise.
+
+       * ircd/m_topic.c (do_settopic): Another &me -> &his change for
+       HIS, and use that apparent source for the channel localcast.
+
+2005-08-16  Jukka Ollila <jaollila@niksula.hut.fi>
+
+       * ircd/s_user.c (hide_hostmask): Use HIS_SERVERNAME instead of the
+       real thing for the post-mode-x rejoin.
+
+2005-08-15  Michael Poole <mdpoole@troilus.org>
+
+       * include/supported.h (FEATURESVALUES2): Add +d channel mode.
+
+       * ircd/IPcheck.c (ip_registry_new_entry): Clarify that this is not
+       a varadic function.  (Suggested by Ian Kumlien.)
+
+       * ircd/convert-conf.c (finish_operators): Likewise.
+
+       * ircd/listener.c (close_listeners): Likewise.
+
+       * ircd/channel.c (CheckDelayedJoins): Use HIS server name to
+       remove channel mode +d.
+
+2005-08-12  Michael Poole <mdpoole@troilus.org>
+
+       * ircd/channel.c (pretty_mask): Recognize ':' as unique to the
+       host part of a ban mask.
+
+2005-08-03  Jan Krueger <jast@heapsort.de>
+
+       * ircd/m_kick.c (m_kick): Send JOIN prior to confirming KICK on
+       invisible member.
+
+2005-08-08  Michael Poole <mdpoole@troilus.org>
+
+       * ircd/channel.c (find_ban): For non-IPmask bans, match the ban
+       string against the string form of the client's IP address.
+
+2005-07-16  Michael Poole <mdpoole@troilus.org>
+
+       * configure.in: Apply a test for socklen_t that Reed found.
+
+       * configure: Regenerate.
+
+2005-07-16  Michael Poole <mdpoole@troilus.org>
+
+       * RELEASE.NOTES: Mention that 2.10.11 does not support oplevels.
+
+       * README.FreeBSD: Remove (merged into README).
+
+       * README.Solaris: Remove (merged into README).
+
+       * README: Merge in the above; also update for 2.10.12.
+
+       * doc/example.conf: Change mention of K-lines to say Kill blocks
+       instead.
+
+       * doc/iauth.txt: Remove (out of date).
+
+       * doc/readme.features: Update to reflect that 2.10.11 is not the
+       current release.  Change mention of various config lines to use
+       the equivalent config entries or blocks instead.
+
+       * doc/readme.log: Likewise.
+
+       * doc/api/features.txt: Change F-line mentions to say Feature
+       entry instead.
+
+       * doc/api/modebuf.txt: Change U-line mention to say Uworld entry.
+
+       * doc/api/motd.txt: Change T-line mentions to say Motd entry.
+
+2005-07-15  Michael Poole <mdpoole@troilus.org>
+
+       * ircd/ircd_features.c (feature_init): Always call
+       feature_notify_server*() so that 'his' is initialized.
+
+       * ircd/m_whois.c (do_whois): Unswap sense of comparison to choose
+       between user->server and &his.
+
+2005-07-14  Michael Poole <mdpoole@troilus.org>
+
+       * ircd/channel.c (mode_parse_apass): Update oplevels when setting
+       or removing the +A password.  Partial credit goes to Reed Loden.
+
+2005-07-14  Michael Poole <mdpoole@troilus.org>
+
+       * include/ircd_features.h: Declare new "his" pseudo-server to hold
+       FEAT_HIS_SERVERNAME and FEAT_HIS_SERVERINFO in a convenient place.
+
+       * ircd/ircd_features.c: Initialize and update it.
+
+       * ircd/channel.c (modebuf_flush_int): Use it as the apparent
+       source for opmodes and server mode changes (also when the source
+       is me).
+
+       * ircd/m_burst.c (ms_burst): Use it as the apparent source for net
+       rider kicks.
+
+       * ircd/m_whois.c (do_whois): Use it to simplify code here.
+
+       * ircd/s_misc.c (exit_client): Use it as the apparent killer.
+
+2005-07-14  Michael Poole <mdpoole@troilus.org>
+
+       * doc/example.conf (General): Update comment about vhost to match
+       the code change below.
+
+       * ircd/ircd_parser.y (generalvhost): Accept vhost="*"; as a
+       synonym for the default behavior (for backwards compatibility).
+       Spotted by Kev.
+
+       * ircd/channel.c (sub1_from_channel): Remove stale code and
+       comment, replacing with an up-to-date comment.  Spotted by skx.
+
+2005-07-11  Michael Poole <mdpoole@troilus.org>
+
+       * ircd/engine_select.c: Remove outdated comment about USE_POLL.
+
+       * ircd/parse.c (msgtab): #if out CAP handler until we have caps.
+
+       * RELEASE.NOTES: Remove mention of capabilities for now.
+
+2005-07-11  Stephan Peijnik <speijnik@gmail.com>
+
+       * ircd/gline.c (gline_add): It's only a protocol violation when a
+       server issues a "whacky" gline.  If it's an oper, only tell opers
+       with SNO_GLINE.
+
+       * ircd/ircd_auth.c (iauth_protocol_violation): Likewise, the whole
+       network is not likely to care about IAuth PVs, so only tell opers
+       with SNO_CONNEXIT.
+
+2005-07-11  Michael Poole <mdpoole@troilus.org>
+
+       * doc/readme.features: Document FEAT_CHANNELLEN.
+
+       * doc/example.conf: Give an example of it.
+
+       * ircd/m_join.c (ms_join): Do not clean channel names from remote
+       servers, to avoid desynchs.
+
+       * ircd/m_names.c (ms_names): Likewise.
+
+2005-07-11  Stephan Peijnik <speijnik@gmail.com>
+
+       * include/ircd_features.h: Declare new FEAT_CHANNELLEN.
+
+       * include/supported.h: Add it to the ISUPPORT display.
+
+       * ircd/channel.c (clean_channelname): Impose the lower limit
+       between FEAT_CHANNELLEN and CHANNELLEN.
+
+       * ircd/ircd_features.c: Define FEAT_CHANNELLEN.
+
+2005-07-11  Reed Loden <reed@reedloden.com>
+
+       * include/sys.h: Move FD_SETSIZE redefinition to engine_select.c.
+
+       * ircd/s_bsd.c: Move FD_SETSIZE sanity check to engine_select.c
+       Remove unused #include <sys/poll.h>.
+
+       * ircd/engine_select.c: Put FD_SETSIZE redefinition and sanity
+       checks here, since they are not used elsewhere in the daemon.
+       [Order slightly changed by Michael Poole to compile.]
+
+2005-07-03  Michael Poole <mdpoole@troilus.org>
+
+       * ircd/convert-conf.c: New file.
+
+       * ircd/Makefile: Compile it.
+
+2005-06-27  Michael Poole <mdpoole@troilus.org>
+
+       * ircd/s_bsd.c (add_connection): Split logic for server versus
+       client listeners; only do IPcheck for client connections.
+
+       * ircd/s_serv.c (server_estab): There is no longer a need to
+       remove IPcheck reference, so don't.
+
+2005-06-27  Michael Poole <mdpoole@troilus.org>
+
+       * include/client.h (struct Connection): Remove con_dns_reply (and
+       associated macros).
+
+       * include/res.h (gethost_byname): Change calling signature to
+       clarify memory ownership.
+       (gethost_byaddr): Likewise.
+
+       * include/s_bsd.h (release_dns_reply): Remove function.
+
+       * ircd/hash.c: #include "match.h" to quash warning.
+
+       * ircd/ircd_auth.c (struct IAuth): Remove i_query field.
+       (iauth_dns_callback): Adjust for new gethost_byname signature.
+       (iauth_reconnect): Likewise.
+
+       * ircd/ircd_res.c (struct reslist): Make elements of query field
+       inline rather than in a contained structure.
+       (make_request): Reflect removal of DNSQuery.
+       (do_query_name): Likewise.
+       (do_query_number): Likewise.
+       (make_dnsreply): Remove now-unused function.
+       (timeout_resolver): Adjust to new callback signature.
+       (delete_resolver_queries): Reflect removal of DNSQuery.
+       (gethost_byname): Update to new signature.
+       (gethost_byaddr): Likewise.
+       (res_readreply): Reflect removal of DNSReply.
+
+       * ircd/list.c (dealloc_connection): con_dns_reply no longer
+       exists, so do not free it.
+
+       * ircd/s_auth.c (auth_verify_hostname): constify.
+       (auth_dns_callback): Adjust to new callback signature.
+       (start_auth): Adjust to new gethost_byaddr() signature.
+
+       * ircd/s_bsd.c (connect_dns_callback): Adjust to new callback
+       signature.
+       (release_dns_reply): Remove unused function.
+       (connect_server): Adjust to new gethost_byname() signature.
+
+       * ircd/s_conf.c (conf_dns_callback): Adjust to new callback
+       signature.
+       (conf_dns_lookup): Adjust to new gethost_byname() signature.
+       (attach_iline): Use cli_sockhost() instead of DNS reply.
+       (conf_check_server): Simplify use of DNS results.
+
+       * ircd/s_serv.c (server_estab): Remove call to removed function.
+
+       * ircd/s_user.c (register_user): Remove call to removed function.
+
+2005-06-27  Michael Poole <mdpoole@troilus.org>
+
+       * include/s_misc.h (get_sockhost): Remove the unused (and
+       deceptively named) get_sockhost().
+
+       * ircd/s_misc.c (get_sockhost): Likewise.
+
+2005-06-25  Andrew Miller  <a1kmm@amxl.com>
+
+       * ircd/ircd_crypt.c (ircd_crypt): strdup is not allowed, change to
+       DupStr so memdebug works.
+
+       * doc/debug_memleak_gc.patch : Update to gc6.5
+       
+2005-06-24  Andrew Miller  <a1kmm@amxl.com>
+       * ircd/m_invite.c (m_invite): Don't propagate invites to local channels.
+       
+2005-06-21  Andrew Miller  <a1kmm@amxl.com>
+
+       * ircd/m_list.c (param_parse): Add support for channel wildcards.
+       * ircd/m_list.c (show_usage): Document the new format.
+       * ircd/hash.c (list_next_channels): Check channel wildcard in list.
+       * include/channel.h (ListingArgs): Add the wildcard member.
+
+2005-06-19  Andrew Miller  <a1kmm@amxl.com>
+
+       * ircd/ircd_res.c (proc_answer): Deal with unexpected record types more
+       gracefully.
+
+       * ircd/ircd_res.c (res_readreply): Check res_ourserver before walking
+       the pending request list, to make DoS attacks harder.
+
+       * ircd/m_invite.c (m_invite): Give no such channel rather than not on
+       channel when the channel being invited to does not exist.
+       
+2005-06-18  Michael Poole <mdpoole@troilus.org>
+
+       * ircd/s_debug.c (count_memory): Consolidate several lines; make
+       initial letter capitalization consistent.
+
+2005-06-19  Andrew Miller  <a1kmm@amxl.com>
+
+       * ircd/s_stats.c: Remove the "debug only" label on memusage stats,
+       since it no longer applies.
+
+2005-05-16  Michael Poole <mdpoole@troilus.org>
+
+       * include/channel.h (struct Ban): Make 'who' and 'banstr' direct
+       arrays, rather than pointers.
+
+       * ircd/channel.c (bans_alloc): New variable to count number of ban
+       structures allocated.
+       (bans_inuse): New variable to count number of ban structures
+       currently in use.
+       (set_banmask): Adapt to changes in struct Ban.
+       (make_ban): Likewise, and update ban counts.
+       (free_ban): Likewise.
+       (bans_send_meminfo): New function.
+       (apply_ban): Adapt to changes in struct Ban.
+       (mode_parse_ban): Likewise.
+       (mode_process_bans): Likewise.
+       (mode_parse): Likewise.
+       (RevealDelayedJoin): Fix brace placement.
+       (CheckDelayedJoins): Fix brace placement and whitespace.
+
+       * ircd/list.c (struct liststats): Add new fields to eliminate the
+       separate count variables.
+       (init_list): Adapt to those changes.
+       (alloc_client): Likewise.
+       (dealloc_client): Likewise.
+       (alloc_connection): Likewise.
+       (dealloc_connection): Likewise.
+       (make_server): Likewise.
+       (remove_client_from_list): Likewise.
+       (verify_client_list): Likewise.
+       (make_link): Likewise.
+       (free_link): Likewise.
+       (send_liststats): New function.
+       (send_listinfo): Rewrite to use new struct liststats layout.
+
+       * ircd/m_burst.c (ms_burst): Adapt to changes in struct Ban.
+
+       * ircd/m_clearmode.c (do_clearmode): Adapt to changes in struct
+       Ban.
+
+       * ircd/s_stats.c (stats_meminfo): Define unconditionally and call
+       bans_send_meminfo().
+       (statsinfo): Always give access to stats_meminfo.
+
+2005-06-16  Michael Poole <mdpoole@troilus.org>
+
+       * include/ircd_string.h: Include necessary <string.h> header.
+
+       * ircd/test/.cvsignore: Ignore log output files.
+
+       * ircd/test/Makefile.in: Remove log output files.
+
+       * ircd/test/kill-block-1.cmd: Add sleeps to try to trigger Kills.
+
+       * ircd/test/run-tests.sh: Switch sense of argument.  Send an IRC
+       debug dump to log files.
+
+2005-06-13  Michael Poole <mdpoole@troilus.org>
+
+       * ircd/s_user.c (make_user): Unconditionally increment userCount.
+       (free_user): Unconditionally decrement it here.
+
+       * ircd/s_conf.c (make_conf): Unconditionally increment
+       GlobalConfCount.
+       (free_conf): Unconditionally decrement it here.
+
+       * ircd/s_debug.c (count_memory): Fix termination condition for
+       ban-walking loop.  Add missing "e" to "members".
+
+
+2005-06-10  Michael Poole <mdpoole@troilus.org>
+
+       * ircd/match.c (check_if_ipmask): Strings that contain '?' cannot
+       be true IP masks.
+
+2005-05-30  Michael Poole <mdpoole@troilus.org>
+
+       * ircd/test/Makefile.in: Add LDFLAGS variable for profiling purposes.
+
+       * ircd/test/ircd_match_t.c: Test recovery from backtracking.
+
+       * ircd/test/channel-1.cmd: Modify to improve code coverage.
+
+       * ircd/test/client-1.cmd: Likewise.
+
+       * ircd/test/gline-1.cmd: Likewise.
+
+       * ircd/test/ircd-t1.conf: Likewise.
+
+       * ircd/test/stats-1.cmd: Likewise.
+
+       * ircd/test/run-tests.sh: Explicitly start ircds.  Add new test scripts.
+
+       * ircd/test/test-driver.pl: Silently handle more signals from IRC.
+
+       * ircd/test/commands-1.cmd: New test script.
+
+       * ircd/test/feature-1.cmd: New test script.
+
+       * ircd/test/jupe-1.cmd: New test script.
+
+       * ircd/test/kill-block-1.cmd: New test script.
+
+       * ircd/test/ircd-t1-2.conf: New configuration file for test scripts.
+
+       * ircd/test/ircd-t2.conf: Likewise.
+
+2005-05-30  Michael Poole <mdpoole@troilus.org>
+
+       * ircd/s_debug.c (count_memory): Use count_listener_memory() to
+       report memory used by listener structures.
+
+2005-05-30  Michael Poole <mdpoole@troilus.org>
+
+       * include/class.h (get_con_freq): Remove unused function.
+
+       * include/list.h (find_user_link): Remove unused function.
+
+       * include/class.c (get_con_freq): Remove.
+
+       * ircd/list.c (find_user_link): Remove.
+
+       * include/string.h (string_is_hostname, string_is_address,
+       strnChattr): Remove unused functions.
+       (init_string): Remove function that becomes a noop.
+
+       * ircd/string.h (init_string): Remove.
+       (string_is_hostname, string_is_address, strnChattr): Likewise.
+
+       * ircd/ircd.c (main): Remove call to init_string().
+
+2005-05-30  Michael Poole <mdpoole@troilus.org>
+
+       * include/numeric.h (RPL_TRACELOG, RPL_MYPORTIS,
+       RPL_NOTOPERANYMORE): Undefine unused numeric replies.
+
+       * ircd/s_err.c (replyTable): Fix format fields for certain numeric
+       arguments.  Remove some unused entries.
+
+       * ircd/s_stats.c (stats_configured_links): Move invariant
+       parameters to message format string.
+
+2005-05-30  Michael Poole <mdpoole@troilus.org>
+
+       * ircd/client.c (privtab): Add missing LIST_CHAN privilege, move
+       WIDE_GLINE to reflect its enumerated value.
+
+       * ircd/s_debug.c (count_memory): Use user_count_memory() function
+       to count User structs in-use.
+
+       * ircd/m_server.c (mr_server): Change "C:line" to "Connect block".
+
+       * ircd/s_bsd.c (connect_server): Likewise.
+
+       * ircd/s_conf.c (conf_check_server): Likewise.
+
+       * ircd/s_err.c (replyTable): Change "O-lines" to "Operator block".
+
+2005-05-30  Michael Poole <mdpoole@troilus.org>
+
+       * ircd/match.c (match): Rewrite to handle globs that end in an
+       escaped wildcard (and hopefully clarify the code).
+
+       * ircd/test/Makefile.in: Add new ircd_match_t test program.
+
+       * ircd/test/ircd_match_t.c: New file.
+
+       * ircd/test/test_stub.c: Emite newlines after log and debug
+       messages.
+
+2005-05-25  Reed Loden <reed@reedloden.com>
+
+       * ircd/s_err.c (replyTable): Allow for the specification of 'O' or
+       'o' in RPL_STATSOLINE.
+
+       * ircd/s_stats.c (stats_configured_links): In /stats o/O, display
+       'O' if either the oper block or the connection class has
+       PRIV_PROPAGATE (global oper) and 'o' if neither has PRIV_PROPAGATE
+       (local oper).
+
+2005-05-30  Michael Poole <mdpoole@troilus.org>
+
+       * ircd/IPcheck.c: Add Debug()s to try to track why the connected
+       count underflows.
+
+       * ircd/m_endburst.c (ms_endofburst): Avoid dereferencing 'chan'
+       after it may be freed (in sub1_from_channel).
+
+       * ircd/s_user.c (register_user): Rearrange code to reduce number
+       of "if (MyConnect(sptr))" checks.
+
+2005-05-12  Michael Poole <mdpoole@troilus.org>
+
+       * configure.in: Do not try to outsmart the default CFLAGS.
+       Simply add parameters explicitly requested by the user.
+
+       * configure: Regenerate.
+
+       * ircd/ircd_crypt_native.c: Use _XOPEN_SOURCE 600 (which is
+       used in os_generic.c) to get crypt() on NetBSD.
+
+2005-05-11  Kevin L. Mitchell  <klmitch@mit.edu>
+
+       * ircd/ircd.c: if debugging is enabled (both DEBUGMODE defined and
+       -x given), reserve fd 2 for the use of the debugging log;
+       otherwise, some engines may attempt to use fd 2, which would end
+       up getting closed by debug_init() (actually, by
+       log_debug_reopen(), called by log_debug_init(), called by
+       debug_init())
+
+2005-08-10  Michael Poole <mdpoole@troilus.org>
+
+       * ircd/channel.c (joinbuf_join): Do not send a MODE +o when a
+       local user creates a channel.
+
+       * ircd/umkpasswd.c (crypt_pass): Allocate the proper amount of
+       memory for the tagged output string.
+
+       * ircd/test/test-driver.pl: Add -vhost=... option.
+
+       * ircd/test/ircd-t1.conf: Add new Operator blocks.
+
+       * ircd/test/*.cmd: Rearrange and add more coverage tests.
+
+2005-08-09  Michael Poole <mdpoole@troilus.org>
 
        * ircd/ircd_parser.y: Move error tokens to top level of parse, and
        make ';' a synchronizing token for them.  This avoids crashes in