+2000-03-30 Perry Lorier <isomer@coders.net>
+ * ircd/parse.c: fixed mystifying ping bug thats been plaguing us
+ for so long. Remember: m_ping MUST be in the parse array. :)
+
+2000-03-30 Perry Lorier <isomer@coders.net>
+ * ircd/ircd.c: test in check_pings was wrong. I move that we
+ disallow cvs commit after 10pm localtime....
+
+2000-03-30 Perry Lorier <isomer@coders.net>
+ * ircd/m_pong.c: Fix it for servers too.
+
+2000-03-30 Perry Lorier <isomer@coders.net>
+ * ircd/m_pong.c: Fix ping timeout bugs
+
+2000-03-30 Perry Lorier <isomer@coders.net>
+ * ircd/channel.c: Bans had CurrentTime in their when field instead
+ of TStime()
+
+2000-03-31 Thomas Helvey <tomh@ixpress.net>
+ * ircd/numnicks.c (SetXYYCapacity): fix for extended
+ numerics.
+
+2000-03-30 Perry Lorier <isomer@coders.net>
+ * ircd/m_nick.c: send kills both ways so when we add nick change
+ on collision we don't desync the network.
+
+ * ircd/map.c: Fixup the map a bit more.
+
+2000-03-31 Kevin L. Mitchell <klmitch@mit.edu>
+
+ * ircd/m_clearmode.c (do_clearmode): Log the CLEARMODE to OPATH
+
+ * ircd/m_opmode.c: Log the mode changes to OPATH
+
+ * ircd/channel.c (modebuf_flush_int): Log the mode changes to
+ OPATH
+
+ * include/channel.h (MODEBUF_DEST_LOG): Log the mode changes to
+ OPATH
+
+ * doc/Configure.help: help text for CONFIG_LOG_OPMODE / OPATH
+
+ * config/config-sh.in: added OPATH for opmode log file
+
+ * ircd/m_clearmode.c (do_clearmode): updated uses of
+ modebuf_mode_string() for the new usage
+
+ * ircd/channel.c: added flag MODE_FREE and an int argument to
+ modebuf_mode_string() to indicate that the string must be free'd;
+ updated calls to modebuf_mode_string() for the new usage; called
+ collapse(pretty_mask()) on the ban string and use allocated memory
+ for it; added ban list length accounting; fixed a number of small
+ bugs in ban processing
+
+ * include/channel.h: added flag MODE_FREE and an int argument to
+ modebuf_mode_string() to indicate that the string must be free'd
+
+ * ircd/m_clearmode.c (do_clearmode): made sure clearmode removed
+ keys and limits that are set
+
+2000-03-30 Perry Lorier <isomer@coders.net>
+ * ircd/ircd.c: rewrote check_pings() for maintainability
+ and speed. Also changed quit msg's so they don't have
+ redundant nick[host] info in them.
+
+ * ircd/send.c: Changed write errors to report what error
+ occured (if possible).
+
+ * ircd/gline.c: added gline comment to the quit.
+
+ * ircd/m_server.c: Added suggestions to server quits mentioning
+ what went wrong so the admin can fix it earlier instead of asking
+ questions...
+
+ * ircd/map.c: Changed m_map() to hide numerics, show a * beside
+ servers that aren't fully burst yet. And show '(--s)' for servers
+ where its not sure.
+
+ * doc/example.conf: Fixed wrapped U:
+
+2000-03-30 Kevin L. Mitchell <klmitch@mit.edu>
+
+ * ircd/m_mode.c (ms_mode): implemented a new m_mode in terms of
+ mode_parse() (version selectable at compile time)
+
+ * ircd/m_clearmode.c (mo_clearmode): clean_channelname(parv[1])
+
+ * ircd/m_opmode.c (mo_opmode): clean_channelname(parv[1])
+
+ * config/config-sh.in: add new config option to enable new m_mode
+ implementation
+
+ * doc/Configure.help: add documentation for new config option
+ CONFIG_NEW_MODE
+
+ * ircd/channel.c (mode_parse_client): /opmode #foobar -o -- 461
+ MODE -v : Not enough parameters
+
+ * ircd/m_clearmode.c (do_clearmode): do_clearmode() would remove
+ +k and +l even if they weren't set...
+
+ * ircd/m_opmode.c: implement the OPMODE command using mode_parse()
+
+ * ircd/channel.c: make mode_process_clients() clear the DEOPPED
+ flag; fix +s+p exclusivity; add MODE_ADD/MODE_DEL to flag list
+ for; test the 0-th member, not the i-th member, of the client
+ change state stuff
+
+ * ircd/m_clearmode.c (do_clearmode): use the new
+ mode_invite_clear() function
+
+ * ircd/channel.c: cleared up all the compile-time warnings and
+ errors
+
+ * include/channel.h: added declarations for mode_ban_invalidate()
+ and mode_invite_clear()
+
+ * ircd/channel.c: finished mode_parse(), then broke it up into a
+ dozen or so helper functions to make the code easier to read
+
+2000-03-29 Thomas Helvey <tomh@inxpress.net>
+ * ircd/ircd.c: refactor server initialization a bit, use
+ getopt for parsing command line, refactor init_sys, main,
+ and other bits.
+
+ * ircd/s_bsd.c: add functions for initialization to clean
+ up logic a bit and remove duplicated code.
+
+ * include/ircd.h: add struct for server process related
+ variables.
+
+2000-03-29 Kevin L. Mitchell <klmitch@mit.edu>
+
+ * ircd/channel.c: initial definition of mode_parse(); flags to
+ prevent doing the same thing multiple times; helper method
+ send_notoper() to send a "Not oper"/"Not on channel" notice
+
+ * include/channel.h: declare mode_parse() and helper flags
+
+ * ircd/channel.c (modebuf_flush_int): fiddled with timestamp
+ sending to match the current action of set_mode() closely enough
+ that hopefully there won't be major conflicts
+
+ * ircd/channel.c (modebuf_flush_int): consolidated the mode string
+ building logic, reversed the order of the arguments to mode
+ commands to have '-' preceed '+'
+
+2000-03-29 Thomas Helvey <tomh@inxpress.net>
+ * ircd/s_bsd.c (add_connection): don't disable socket options
+ let OS tune itself and allow important performance tweaks to
+ work.
+
+2000-03-28 Kevin L. Mitchell <klmitch@mit.edu>
+
+ * ircd/channel.c (modebuf_flush_int): use %d, not %-15d; I got
+ confused by set_mode, which is doing some really weird logic;
+ guess what I'm going to rewrite next? ;)
+
+2000-03-28 Kevin L. Mitchell <klmitch@emc.com>
+
+ * include/channel.h: added MODE_SAVE for the bounds checking stuff
+ in modebuf_flush
+
+ * ircd/channel.c: make modebuf_flush into modebuf_flush_int and
+ make it do bounds checking on the buffer; all modes are sent only
+ if the all parameter is 1; modebuf_flush is the exported wrapper
+
+ * include/channel.h: add BOUNCE, renumber flags to get a little
+ more space
+
+ * ircd/channel.c (modebuf_flush): don't overload HACK2, add
+ BOUNCE; send DESYNCH message
+
+2000-03-27 Kevin L. Mitchell <klmitch@emc.com>
+
+ * ircd/m_clearmode.c (do_clearmode): only mark the modes the
+ channel actually has in effect for deletion
+
+ * ircd/channel.c: added explanatory comments to all added
+ functions; made flushing take place at the correct place even if
+ the MODEBUF_DEST_DEOP flag is set; rewrote build_string() helper
+ to bash some stupid bugs; made modebuf_flush() return if ModeBuf
+ is empty, fixed the apparent source, removed some bogus string
+ termination code, properly terminate the mode strings, add support
+ for HACK2 and HACK3, made limit strings not be sent if the limit
+ is being removed, changed where '+' and '-' come from in sent
+ strings, added support for DEOP flag, set up bouncing code for
+ HACK2
+
+ * ircd/Makefile.in: ran make depend
+
+ * include/channel.h: added new defines for future functionality,
+ made modebuf_flush() return int so I can use tail recursion
+
+ * ircd/m_clearmode.c: add msg.h to includes; other misc cleanups
+ to make it all compile
+
+ * ircd/m_opmode.c: add msg.h to includes...
+
+ * ircd/m_clearmode.c: implemented mo_clearchan()/ms_clearchan()
+
+ * ircd/channel.c (modebuf_flush): realized I forgot to
+ nul-terminate addbuf/rembuf properly...
+
+ * ircd/m_clearmode.c (do_clearmode): wrote do_clearmode()...
+
+ * ircd/channel.c (modebuf_flush): correct sendto_server_butone to
+ sendto_serv_butone--blah^2
+
+ * ircd/send.c (sendto_serv_butone): stupid comments confused me
+
+ * ircd/channel.c (modebuf_flush): if there are no mode changes to
+ propagate, we're done...
+
+ * ircd/channel.c (modebuf_flush): duh; it's sendto_server_butone,
+ not sendto_all_butone
+
+ * ircd/m_clearmode.c: define skeleton for m{o,s}_clearmode
+
+ * ircd/m_opmode.c: define skeleton for m{o,s}_opmode
+
+ * ircd/Makefile.in (SRC): added m_opmode() and m_clearmode() to
+ the list
+
+ * ircd/parse.c: added messages for opmode and clearmode
+
+ * include/handlers.h: added declarations for mo_opmode(),
+ ms_opmode(), mo_clearmode(), and ms_clearmode()
+
+ * include/msg.h: define MSG_OPMODE, TOK_OPMODE, MSG_CLEARMODE, and
+ TOK_CLEARMODE
+
+ * include/channel.h (MODEBUF_DEST_OPMODE): Define the
+ MODEBUF_DEST_OPMODE flag
+
+ * ircd/channel.c (modebuf_flush): added new flag,
+ MODEBUF_DEST_OPMODE; causes channel MODE/HACK(4) notice to appear
+ to originate from source's server (or source itself, if
+ IsServer(source)); also causes a server-level MODE to be sent as
+ OPMODE instead
+
+ * include/channel.h: defined MODEBUF_DEST_SERVER,
+ MODEBUF_DEST_HACK4
+
+ * ircd/channel.c: Add another argument to build_string() to handle
+ numeric nicks; implemented MODEBUF_DEST_SERVER to send MODEs to
+ servers; implemented MODEBUF_DEST_HACK4 to cause HACK(4) notices
+ to be sent out
+
2000-03-27 Perry Lorier <isomer@coders.net>
* ircd/s_bsd.c: fixed missing 'u' typo.
* include/channel.h: added definition of ModeBuf, modebuf_*
manipulation functions, and a couple of helper macros
-#
-# ChangeLog for ircu2.10.11
-#
-# $Id: ChangeLog,v 1.24 2000-03-27 06:19:37 isomer Exp $
-#
-# Insert new changes at beginning of the change list.
-#
-#-----------------------------------------------------------------------------
2000-03-24 Thomas Helvey <tomh@inxpress.net>
* numicks.c: convert extended numerics to use original mask version
* numnicks.h: ""
* Merge in u2_10_10_beta07 changes --Bleep
* Merge in u2_10_10_beta06 changes --Bleep
* Start ircu2.10.11 development, beta branch u2_10_10 --Bleep
+#-----------------------------------------------------------------------------
+#
+# ChangeLog for ircu2.10.11
+#
+# $Id: ChangeLog,v 1.56 2000-04-01 08:54:11 isomer Exp $
+#
+# Insert new changes at beginning of the change list.
+#