Do not leak connection class structures after they are removed from ircd.conf.
[ircu2.10.12-pk.git] / ChangeLog
index 50694df5a3fa4c8a615d22f03d250f3ce28b0499..914677fb2966baca88b949253ee0cbb718789335 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,166 @@
+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.