+2000-10-30 Isomer <isomer@coders.net>
+ * ircd/m_oper.c: Fixed warning
+
+2000-10-30 Isomer <isomer@coders.net>
+ * ircd/m_oper.c: Fixed over agressive cut and no paste
+
+2000-10-30 Isomer <isomer@coders.net>
+
+ * ircd/m_topic.c: Restructured, fixed bug where topics on local
+ channels are propergated (I forget who pointed this out to me, but
+ thanks anyway). Also to save bandwidth don't send the topic to
+ users if the topic is already the same on the server (but still
+ propergate to other servers). X/W's "autotopic" feature must
+ chew a lot of bandwidth, hopefully this will help reduce this.
+
+ * doc/rfc1459.rfc: Updated documentation on /topic.
+
+ * ircd/listener.c: snotice warnings about failed accept()'s
+ potentially warning admins that they're running out of fd's.
+
+ * ircd/stats.c, ircd/class.c: Removed /stats v, added number of
+ people in a class in /stats y
+
+ * ircd/m_create.c: Checks for timewarp hacking and squit's
+ evil servers. (currently disabled)
+
+
+2000-10-30 net <simms@lucida.qc.ca>
+
+ * ircd/gline.c: Fixed various bugs Isomer left behind.
+
+2000-10-26 Kevin L. Mitchell <klmitch@mit.edu>
+
+ * ircd/m_join.c (m_join): reply on attempt to join a BADCHANed
+ channel is now ERR_BANNEDFROMCHAN instead of ERR_BADCHANNAME
+
+2000-10-24 Kevin L. Mitchell <klmitch@mit.edu>
+
+ * ircd/channel.c: ok, now last mode rules; mode +ps will always
+ result in +s (and won't send a mode if the channel is already +s);
+ mode +sp will always result in +p; -n+n on a +n channel results in
+ no mode change; -n+n on a -n channel results in a +n mode change;
+ etc.
+
+2000-10-23 Kevin L. Mitchell <klmitch@mit.edu>
+
+ * ircd/channel.c: add "add" and "del" elements to ParseState to
+ avoid not-too-pretty -p+s when +s is sufficient; fix a bug in
+ mode_parse_limit that caused it to clear all channel modes
+ prematurely; restructure mode_parse_mode to avoid calling
+ modebuf_mode too early (ties in with first mentioned change);
+ better logic for +p/+s mutual exclusivity; initialize "add" and
+ "del" elements in mode_parse; send simple modes down to
+ modebuf_mode after the loop in mode_parse
+
+2000-09-28 Greg Sikorski <gte@atomicrevs.demon.co.uk>
+ * ircd/m_names.c: Fixed a non-lethal logic error that
+ triggers an assert() in find_member_link while debugging.
+ (Spotted by Maniac-).
+2000-09-19 Thomas Helvey <helveytw@home.com>
+ * ircd/s_conf.c: move K:lines to their own list and data
+ structures, add supporting code.
+ * ircd/m_stats.c: cleanup stats processing a bit move
+ kline listing code to a new function, haven't figured
+ out where it goes yet tho'
+ * ircd/s_stats.c: added K:line bulk lister
+ * include/s_conf.h: added new DenyConf struct
+ * *[ch]: fixeup code that depended on changes
+
+2000-09-17 Thomas Helvey <helveytw@home.com>
+ * ircd/class.c: encapsulate class list
+ * include/class.h: clean up classes
+ * * fixup code that depended on changes
+
+2000-09-17 Thomas Helvey <helveytw@home.com>
+ * ircd/s_conf.c: add me to local conf
+ * include/s_conf.h: move CONF_ME macro to chkconf.c
+ * ircd/s_bsd.c: cleanup initialization, allow virtual host
+ to be changed by rehash
+
+2000-09-17 Thomas Helvey <helveytw@home.com>
+ * include/class.h: add missing prototype
+ * ircd/class.c: make argument to get_conf_class const
+
+2000-09-17 Thomas Helvey <helveytw@home.com>
+ * ircd/*.c: merged in changes from 2.10.10.pl12, cleanup
+ merge conflicts.
+ * ircd/*.h: merged in changes from 2.10.10.pl12, cleanup
+ merge conflicts
+
+2000-09-16 Thomas Helvey <helveytw@home.com>
+ * ircd/s_conf.c: add code for server struct
+ * ircd/client.c: copy of class.c sort of, new file for client
+ specific operations, will move things here as appropriate,
+ currently only one function is exported from here.
+ * ircd/*.c: general logic cleanups, convert negatives to
+ positives in places.
+
+2000-09-16 Thomas Helvey <helveytw@home.com>
+ * ircd/s_conf.c: add code for new crule data structs, strip quotes
+ * ircd/crule.c: clean up scary casting a bit, type safety stuff
+ * include/s_conf.h: add CRuleConf struct and support, remove
+ unused constants
+ * include/crule.h: type safety cleanups
+ * ircd/*.c: fixup code that depended on stuff I changed
+
+2000-09-15 Thomas Helvey <helveytw@home.com>
+ * ircd/s_conf.c: start adding code for new conf data structs, changed
+ listeners, admin line, motd lines, class lines. Move validate_hostent
+ to resolver. General mayhem.
+ * include/s_conf.h: new data structs and accessors
+ * ircd/res.c: move validate_hostent here, rewrite, use regular
+ expression for validation.
+ * doc/example.conf: update docs for port
+
+2000-09-14 Thomas Helvey <helveytw@home.com>
+ * ircd/s_conf.c (conf_init): rewrite conf file parser, start to break
+ up conf_init into managable chunks.
+ * ircd/listener.c (set_listener_mask): fix logic bug core dump.
+ * include/s_conf.h: add new data struct for local info (unwinding the mess).
+
+2000-09-13 Thomas Helvey <helveytw@home.com>
+ * ircd/list.c: put Clients in free lists, pre-allocate MAXCONNECTIONS
+ local clients.
+ * ircd/list.c: put SLinks in free lists
+ * ircd/channel.c: put Memberships in free lists
+ * ircd/ircd.c: rearrange initializations a bit in main
+ Note: With these changes, ircd NEVER frees Clients, SLinks or
+ Memberships. It will also rarely need to allocate new
+ ones during net bursts and other disruptions. This should
+ cut down on memory fragmentation a bit as well.
+
+2000-08-30 Kevin L. Mitchell <klmitch@mit.edu>
+
+ * ircd/m_names.c (do_names): pull-up from do_names fix in
+ u2.10.10.pl11
+
+2000-07-15 Perry Lorier <Isomer@coders.net>
+ * various: IP only k:'s and G:'s now do bit tests instead of two(!)
+ match()'s. Major Major cpu savings. Also speed up the
+ other case slightly. As a side effect you can now
+ k/Gline *@10.0.0.0/8. I'll do bans tomorrow, it's nearing
+ 3am.
+
+2000-07-15 Perry Lorier <Isomer@coders.net>
+ * various: Fixed warnings after compiling on an alpha.
+2000-07-09 Perry Lorier <Isomer@coders.net>
+ * doc/ircd.8: Applied grammitical changes by Liandrin, applied
+ changes suggested by various other people.
+ * ircd/IPcheck.c: More bug fixes. Current problem appears to be
+ that it gets a corrupt entry somehow.
+2000-07-09 Greg Sikorski <gte@atomicrevs.demon.co.uk>
+ * ircd/m_oper.c: Clean up compiler warning.
+
+2000-07-08 Perry Lorier <Isomer@coders.net>
+ * doc/ircd.8: Updated the documentation, it was slightly out of date
+ being updated around 1989.
+ * ircd/m_whois.c: Rewrote for clarity, and probably a bit more speed.
+ fixed a few minor glitches.
+ * doc/rfc1459.unet: Updated.
+ * ircd/IPcheck.c: Fixed more bugs.
+ * ircd/s_bsd.c: We now keep track of servers we've conected.
+
+2000-07-02 Perry Lorier <Isomer@coders.net>
+ * ircd/s_misc.c: Fixed remote IPcheck bug. Ok, I'm a moron, so sue
+ me. Thanks to Hektik, thanks thanks thanks thanks
+ thanks thanks thanks thanks thank thanks thank thanks
+
+2000-07-01 Perry Lorier <Isomer@coders.net>
+ * ircd/s_conf.c: "Fixed" the "bug" where people would "evade" K:'s.
+ * ircd/s_conf.c, include/IPcheck.h: Fixed compile warnings.
+
+2000-06-22 Perry Lorier <Isomer@coders.net>
+ * ircd/IPcheck.c: Large chunks redone.
+ * ircd/s_conf.c: Changes due to IPcheck - ONE nolonger supported,
+ single AND double digit limits are allowed now.
+ * misc other: Changes to IPcheck.
+
+2000-06-30 Perry Lorier <Isomer@coders.net>
+ * ircd/ircd.c: Fix command line parameter bugs.
+
+2000-06-30 Perry Lorier <Isomer@coders.net>
+ * ircd/m_kill.c: Fixed bug with LOCAL_KILL_ONLY
+ * ircd/m_nick.c: Tidied things up.
+
+2000-06-12 Joseph Bongaarts <foxxe@trms.com>
+ * ircd/m_stats.c: Iso forgot mo_stats when he added /stats v
+
+2000-05-29 Perry Lorier <Isomer@coders.net>
+ * ircd/m_stats.c: add /stats v to do only the last part of the /trace
+ * ircd/IPcheck.c: Cosmetic change, if we meddle with it enough do
+ you think it'll get bored and fix itself?
+
+2000-06-09 Greg Sikorski <gte@atomicrevs.demon.co.uk>
+
+ * ircd/m_names.c: Clean up compiler warnings.
+
+2000-06-09 Kevin L. Mitchell <klmitch@mit.edu>
+
+ * ircd/channel.c (mode_parse_client): don't send warning if
+ there's not enough arguments for a +/-o/v; means the habit of
+ doing "/mode #channel +oooooo bob" doesn't result in a bunch of
+ error messages
+
+2000-06-04 Greg Sikorski <gte@atomicrevs.demon.co.uk>
+
+ * ircd/m_names.c: Re-factor code to remove unneccessary
+ GlobalChannelList iteration every time someone joins a channel.
+
+2000-06-02 Kevin L. Mitchell <klmitch@mit.edu>
+
+ * ircd/s_user.c: add struct Gline * argument to register_user;
+ look up global glines and repropagate them if necessary; send
+ acknowledgement of gline to remote servers when registering users
+
+ * ircd/s_serv.c (server_estab): don't send acknowledgement of
+ local glines to remote servers; do send gline acknowledgement of
+ bursted users
+
+ * ircd/m_user.c (m_user): pass new struct Gline * argument to
+ register_user
+
+ * ircd/m_pong.c: pass new struct Gline * argument to register_user
+
+ * ircd/m_nick.c (ms_nick): document protocol change
+
+ * ircd/gline.c: support GLINE_LASTMOD
+
+ * include/s_user.h: add struct Gline * argument to register_user
+
+ * include/gline.h: add GLINE_LASTMOD to look up non-zero lastmods
+
+ * ircd/s_conf.c (find_kill): add unsigned int argument to
+ gline_lookup()
+
+ * ircd/gline.c: add GLINE_GLOBAL to lookup or find only global
+ glines; add unsigned int argument to gline_lookup()
+
+ * include/gline.h: add GLINE_GLOBAL flag; add unsigned int
+ argument to gline_lookup()
+
+ * ircd/m_server.c: Resend jupe only when there is no %<lastmod>
+ parameter, or when it falls out of bounds: see comments prior to
+ call to jupe_resend(); call server_estab with struct Jupe
+ parameter, so that we place the appropriate %<lastmod> in the
+ appropriate place.
+
+ * ircd/s_serv.c (server_estab): send %<lastmod> for introduced
+ server, as well as for servers when we're sending the BURST
+
+ * include/s_serv.h: add a struct Jupe * to the arguments for
+ server_estab() so that we can send the appropriate lastmod
+ parameter
+
+ * ircd/m_gline.c (ms_gline): actually, this should be the
+ slightest bit more efficient...
+
+ * ircd/m_jupe.c (ms_jupe): actually, this should be the slightest
+ bit more efficient...
+
+ * ircd/m_gline.c (ms_gline): inhibit GLINE processing resends
+ during netburst
+
+ * ircd/m_jupe.c (ms_jupe): inhibit JUPE processing resends during
+ netburst
+
+ * ircd/channel.c (joinbuf_join): really remove user from local
+ channels
+
+2000-05-29 Perry Lorier <Isomer@coders.net>
+ * ircd/m_names.c: Removed redundant space.
+ * ircd/s_bsd.c: Fixed incorrect syntax on ERROR line.
+
+2000-05-18 Kevin L. Mitchell <klmitch@mit.edu>
+
+ * ircd/m_burst.c (ms_burst): er...that should have been a ",", not
+ a " "
+
+2000-05-04 Kevin L. Mitchell <klmitch@mit.edu>
+
+ * ircd/channel.c: replace bogus assertions with returns, which is
+ logically correct; only wipe out limit/key if they were originally
+ set in the first place; remove user from channel when doing a
+ PARTALL; only send MODE +o for user CREATEing channel if user is
+ not MyUser--CREATE will only be used if the channel did not
+ originally exist, therefore we can assume no one local is on the
+ channel anyway, and we don't exactly need for the user to see an
+ explicit +o for themselves
+
+ * doc/readme.gline: describe the syntax of the GLINE command
+
+ * doc/readme.jupe: update to reflect a couple of changes to JUPE
+
+ * ircd/gline.c: don't propagate local changes
+
+ * ircd/jupe.c: don't propagate local changes
+
+ * ircd/m_gline.c (mo_gline): force local flag when deactivating
+ glines with 0 lastmod
+
+ * ircd/gline.c (gline_deactivate): G-lines with zero lastmod time
+ are now removed instead of being deactivated
+
+ * ircd/m_gline.c (ms_gline): make G-lines of the form "GLINE *
+ -<mask>" be accepted
+
+ * ircd/channel.c (send_channel_modes): deal with one of the last
+ vestiges of sendbuf
+
+ * ircd/m_burst.c (ms_burst): debugged ban processing; removed
+ debugging hooks
+
+ * ircd/channel.c (modebuf_extract): remove debugging
+ sendto_opmask_butone calls
+
+2000-05-03 Kevin L. Mitchell <klmitch@mit.edu>
+
+ * ircd/channel.c: support a couple of new flags to support using
+ mode_parse; fix some bugs with 0 struct ModeBuf *; implementation
+ of modebuf_extract to extract added flags for use by ms_burst
+
+ * include/channel.h: a couple of new flags to support using
+ mode_parse inside ms_burst
+
+ * ircd/m_burst.c (ms_burst): brand new implementation of BURST
+
+ * ircd/m_endburst.c: add loop to processing of end_of_burst to
+ free empty channels after the BURST is over.
+
+ * ircd/m_server.c: convert to use new send.c functions--I wanted
+ to rewrite it from scratch, but the logic's pretty complex; I may
+ still rewrite it, though...
+
+2000-05-02 Thomas Helvey <tomh@inxpress.net>
+
+ * ircd/ircd.c: fix broken header include ordering
+
+2000-05-02 Thomas Helvey <tomh@inxpress.net>
+
+ * ircd/IPcheck.c: cleanups for ZenShadow's cleanups
+ review emailed privately
+
+ * include/IPcheck.h: removed unneeded include
+
+2000-05-02 Kevin L. Mitchell <klmitch@mit.edu>
+
+ * ircd/s_user.c (hunt_server): throw in a comment so I know what
+ the sendto_one is for
+
+ * include/querycmds.h (Count_unknownbecomesclient): convert to
+ sendto_opmask_butone
+
+ * ircd/send.c: start removing dead code
+
+ * include/send.h: start removing dead code
+
+ * ircd/m_rping.c: convert to sendcmdto_one / send_reply /
+ hunt_server_cmd
+
+ * ircd/m_rpong.c: convert to sendcmdto_one / send_reply
+
+2000-05-01 Kevin L. Mitchell <klmitch@mit.edu>
+
+ * ircd/m_stats.c: convert to sendcmdto_one / send_reply
+
+ * ircd/m_kick.c: Completely reimplement m_kick
+
+ * ircd/channel.c: send_user_joins removed; it was dead code,
+ anyway...
+
+2000-05-01 Perry Lorier <isomer@coders.net>
+ * ircd/m_invite.c: Fix for the rest of m_invite.c, and again.
+ * ircd/channels.c: My fix for the part problem. Untested, probably
+ won't work. Can't be much worse than the current problem.
+ it'll either work or core, take your pick.
+
+
+2000-04-30 Perry Lorier <isomer@coders.net>
+ * config/config-sh.in: Fix for CONNEXIT
+ * ircd/s_{user,misc}.c: Fix for CONNEXIT
+ * ircd/m_invite.c: Fix for incorrectly numnickified invite.
+ (Kev: Want to come talk to me about this?)
+
+2000-04-30 Steven M. Doyle <steven@doyle.net>
+ * ircd/ircd.c
+ - general cleanups and readability enhancements
+ - rewrite of setuid/chroot code.
+ - server will no longer run as root
+ - -DPROFIL compile option removed
+ - Fixed IPcheck API calls
+
+ * config/config-sh.in
+ - Fixed up chroot compile options
+ - Added options for debug and profile compiles
+
+ * config/gen.ircd.Makefile
+ - Support for new debug/profile options
+
+ * ircd/Makefile.in
+ - Support for new debug/profile options
+
+ * ircd/ircd_signal.c
+ - Removed -DPROFIL
+
+ * include/IPcheck.h
+ - Removed old API prototypes, added new ones
+
+ * ircd/IPcheck.c
+ - Readability cleanups (well, I -think-...)
+ - Changed IPRegistryEntry.last_connect to a time_t. The previously
+ used unsigned short was probably causing interesting things after
+ a client had been connected longer than about 65,535 seconds...
+ - Removed old API functions.
+
+ * ircd/whocmds.c
+ - Removed IPcheck.h include
+
+ * Additionally modified IPcheck API calls in:
+ - ircd/m_nick.c
+ - ircd/m_auth.c
+ - ircd/s_bsd.c
+ - ircd/s_conf.c
+ - ircd/s_misc.c
+ - ircd/s_serv.c
+ - ircd/s_user.c
+
+
+2000-04-30 Perry Lorier <isomer@coders.net>
+ * ircd/s_bsd.c: Sigh. :)
+ * ircd/m_mode.c: fix for modeless channels by poptix.
+
+2000-04-29 Kevin L. Mitchell <klmitch@mit.edu>
+
+ * ircd/m_join.c: reimplement JOIN in terms of struct JoinBuf
+
+ * ircd/channel.c (clean_channelname): make clean_channelname also
+ truncate long channel names
+
+2000-04-28 Kevin L. Mitchell <klmitch@mit.edu>
+
+ * ircd/m_create.c: reimplement CREATE in terms of struct JoinBuf
+
+ * ircd/channel.c: implemented joinbuf_init, joinbuf_join,
+ joinbuf_flush
+
+ * include/channel.h: definitions and declarations for the struct
+ JoinBuf abstraction
+
+2000-04-29 Perry Lorier <isomer@coders.net>
+ * ircd/s_bsd.c: Ok, so I thought I compiled and tested this...
+
+2000-04-29 Perry Lorier <isomer@coders.net>
+ * ircd/s_bsd.c: Add debugging code to IPcheck
+
+2000-04-28 Kevin L. Mitchell <klmitch@mit.edu>
+
+ * include/ircd_reply.h (SND_EXPLICIT): use instead of RPL_EXPLICIT
+
+ * ircd/ircd_reply.c (send_reply): use SND_EXPLICIT instead of
+ RPL_EXPLICIT
+
+ * ircd/m_userhost.c (m_userhost): add a dead code comment
+
+ * ircd/m_desynch.c: forgot one...
+
+ * ircd/m_rehash.c (mo_rehash): er, duplicates :)
+
+ * ircd/m_proto.c (proto_send_supported): just change a comment so
+ it doesn't show up in my scans
+
+ * ircd/ircd_reply.c (send_reply): fix a slight bug...
+
+ * ircd/s_numeric.c (do_numeric): use new sendcmdto_* functions,
+ kinda hackish...
+
+ * ircd/parse.c (parse_server): argument wrangling to make
+ processing in do_numeric a little easier to deal with
+
+ * ircd/s_serv.c (server_estab): SERVER should come from
+ acptr->serv->up, not &me
+
+ * ircd/m_lusers.c: accidentally left out sptr for a %C
+
+ * ircd/send.c: hack to support doing wallchops...
+
+ * ircd/m_whowas.c: convert to new send functions
+
+ * ircd/m_whois.c: convert to new send functions
+
+ * ircd/m_who.c: convert to new send functions
+
+ * ircd/m_wallops.c: convert to new send functions
+
+ * ircd/m_wallchops.c: convert to new send functions
+
+ * ircd/m_version.c: convert to new send functions
+
+ * ircd/m_userip.c: convert to new send functions
+
+ * ircd/m_userhost.c: convert to new send functions
+
+ * ircd/m_uping.c: convert to new send functions
+
+ * ircd/m_trace.c: convert to new send functions
+
+ * ircd/m_topic.c: convert to new send functions
+
+ * ircd/m_time.c: convert to new send functions
+
+ * ircd/m_squit.c: convert to new send functions
+
+ * ircd/m_silence.c: convert to new send functions
+
+ * ircd/m_settime.c: convert to new send functions
+
+ * ircd/m_restart.c: convert to new send functions
+
+ * ircd/m_rehash.c: convert to new send functions
+
+ * ircd/m_privmsg.c: convert to new send functions
+
+ * ircd/m_pong.c: convert to new send functions
+
+ * ircd/m_ping.c: convert to new send functions
+
+ * ircd/m_pass.c: convert to new send functions
+
+ * ircd/m_opmode.c: convert to new send functions
+
+ * ircd/m_oper.c: convert to new send functions
+
+ * ircd/m_notice.c: convert to new send functions
+
+ * ircd/m_nick.c: convert to new send functions
+
+ * ircd/m_names.c: convert to new send functions
+
+ * ircd/m_motd.c: convert to new send functions
+
+ * ircd/m_mode.c: convert to new send functions
+
+ * ircd/m_map.c: convert to new send functions
+
+ * ircd/m_lusers.c: convert to new send functions
+
+ * ircd/m_list.c: convert to new send functions
+
+ * ircd/m_links.c: convert to new send functions
+
+ * ircd/m_kill.c: convert to new send functions
+
+ * ircd/m_jupe.c: convert to new send functions
+
+ * ircd/m_invite.c: convert to new send functions
+
+ * ircd/m_info.c: convert to new send functions
+
+ * ircd/m_help.c: convert to new send functions
+
+ * ircd/m_gline.c: convert to new send functions
+
+ * ircd/m_error.c: convert to new send functions
+
+ * ircd/m_endburst.c: convert to new send functions
+
+ * ircd/m_die.c: convert to new send functions
+
+ * ircd/m_destruct.c: convert to new send functions
+
+ * ircd/m_defaults.c: convert to new send functions
+
+ * ircd/m_connect.c: convert to new send functions
+
+2000-04-28 Perry Lorier <isomer@coders.net>
+ * RELEASE.NOTES: Describe a few more undocumented features.
+ * config/config-sh.in: change the default paths for logging
+ and the recommended number of channels.
+ * include/supported.h: Rearrange slightly, added CHANTYPE's
+
+2000-04-27 Kevin L. Mitchell <klmitch@mit.edu>
+
+ * ircd/m_close.c: convert to send_reply
+
+ * ircd/m_clearmode.c: convert to send_reply, sendcmdto_serv_butone
+
+ * ircd/m_away.c: convert to send_reply and sendcmdto_serv_butone
+
+ * ircd/m_admin.c: convert to send_reply and hunt_server_cmd
+
+ * ircd/s_user.c (hunt_server_cmd): new hunt_server replacement
+ that takes cmd and tok arguments, etc. NOTE: THIS IMPLEMENTATION
+ HAS A MAJOR HACK!!! The whole hunt_server architecture should be
+ carefully rethought...
+
+ * ircd/s_stats.c (hunt_stats): use new hunt_server_cmd
+
+ * include/s_user.h: hunt_server_cmd -- replacement for hunt_server
+
+ * ircd/s_misc.c: *sigh* 2.10.10 doesn't support squitting by
+ numeric nick; therefore, we have to use the server name
+
+ * ircd/m_squit.c (ms_squit): allow to squit by server numeric nick
+
+ * ircd/send.c: fix minor bugs
+
+ * ircd/s_user.c (check_target_limit): mark dead code so I filter
+ it when I grep
+
+ * ircd/s_serv.c (exit_new_server): mark dead code so I filter it
+ when I grep
+
+ * ircd/parse.c: mark dead code so I filter it when I grep
+
+ * ircd/map.c: mark dead code so I filter it when I grep
+
+ * ircd/ircd.c: mark dead code so I filter it when I grep
+
+ * ircd/ircd_relay.c: convert over to new sendcmdto_*, send_reply
+ functions
+
+ * ircd/channel.c: mark dead code so I filter it when I grep
+
+ * ircd/s_stats.c: use send_reply instead of sendto_one w/rpl_str;
+ hope I'm not stepping on toes...
+
+ * ircd/s_conf.c: more sendto_opmask_butone / send_reply
+ conversions; use ircd_snprintf in a couple of cases to negate the
+ possibility of buffer overflow
+
+2000-04-26 Kevin L. Mitchell <klmitch@mit.edu>
+
+ * ircd/channel.c: convert as much as possible to new send
+ semantics
+
+ * ircd/send.c (sendcmdto_common_channels): fix a subtle bug --
+ test member->user->from->fd, not from->fd
+
+ * ircd/gline.c (gline_add): go ahead and add badchans; we just
+ won't look for them in m_gline; this way, they always work...
+
+ * ircd/jupe.c: use ircd_vsnprintf conversion specifiers
+
+ * ircd/gline.c: since write_log now uses ircd_vsnprintf, use
+ ircd_vsnprintf conversion specifiers
+
+ * ircd/support.c (write_log): use ircd_vsnprintf for write_log, so
+ I have my conversion specifiers
+
+ * ircd/gline.c (do_gline): use send_reply for ERR_YOUREBANNEDCREEP
+
+ * ircd/send.c (sendcmdto_flag_butone): explicitly send WALLOPS to
+ local users
+
+ * ircd/s_serv.c (exit_new_server): rewrite exit_new_server to be a
+ little less brain-dead
+
+ * ircd/s_misc.c: use sendcmdto_one, sendrawto_one, and send_reply
+
+ * ircd/s_debug.c: use send_reply with RPL_EXPLICIT for
+ RPL_STATSDEBUG
+
+ * ircd/res.c (cres_mem): use send_reply with RPL_EXPLICIT for
+ RPL_STATSDEBUG
+
+ * ircd/list.c (send_listinfo): use send_reply with RPL_EXPLICIT
+ for RPL_STATSDEBUG
+
+ * ircd/m_pong.c: use RPL_EXPLICIT for ERR_BADPING
+
+ * ircd/ircd.c: use RPL_EXPLICIT for ERR_BADPING
+
+ * ircd/s_user.c (register_user): use RPL_EXPLICIT for
+ ERR_INVALIDUSERNAME
+
+ * ircd/ircd_reply.c (send_reply): support RPL_EXPLICIT
+
+ * include/ircd_reply.h (RPL_EXPLICIT): somewhat of a hack to mark
+ a numeric as needing to use an explicit pattern, which will be the
+ first argument in the variable argument list
+
+ * ircd/s_user.c: use sendrawto_one instead of sendto_one to send
+ non-prefixed nospoof PING
+
+ * ircd/s_bsd.c: use sendrawto_one instead of sendto_one to send
+ non-prefixed SERVER login
+
+ * ircd/ircd.c (check_pings): fix last sendto_one calls (except for
+ a numeric usage further up)
+
+ * include/send.h: declare sendrawto_one
+
+ * ircd/send.c (sendrawto_one): new function to use ONLY for
+ non-prefixed commands, like PING to client, or PASS/SERVER on
+ server registration
+
+2000-04-25 Kevin L. Mitchell <klmitch@mit.edu>
+
+ * ircd/ircd_snprintf.c (doprintf): implement %H for possible
+ future expansion (channel numerics?)
+
+ * include/ircd_snprintf.h: added documentation to # to explain use
+ with %C; added documentation for : to explain use with %C; added
+ documentation for %H for channels
+
+ * ircd/whocmds.c: use send_reply
+
+ * ircd/userload.c: use sendcmdto_one
+
+ * ircd/uping.c: use sendcmdto_one
+
+ * ircd/send.c: use new flags to %C format string; ':' prefixes
+ client name with a colon for local connects, '#' uses
+ nick!user@host form for local connects
+
+ * ircd/s_user.c: use send_reply, sendto_opmask_butone,
+ sendcmdto_one, sendcmdto_serv_butone, sendcmdto_flag_butone
+
+ * ircd/s_serv.c: use sendcmdto_one, sendto_opmask_butone
+
+ * ircd/s_bsd.c: use sendto_opmask_butone, send_reply,
+ sendcmdto_one
+
+ * ircd/s_auth.c: use sendto_opmask_butone
+
+ * ircd/res.c: use sendcmdto_one
+
+ * ircd/ircd_snprintf.c (doprintf): minor bug fixes and some
+ debugging assertions
+
+2000-04-24 Kevin L. Mitchell <klmitch@mit.edu>
+
+ * ircd/support.c: dumpcore is no longer used, so get rid of it
+
+ * ircd/parse.c: use send_reply, sendcmdto_one
+
+ * ircd/map.c: use send_reply
+
+ * ircd/listener.c: use send_reply
+
+ * ircd/jupe.c: use sendto_opmask_butone, send_reply
+
+ * ircd/ircd_reply.c: use send_reply
+
+ * ircd/ircd.c: use sendto_opmask_butone
+
+ * ircd/gline.c: use sendto_opmask_butone, send_reply
+
+ * ircd/ircd_snprintf.c (doprintf): make it deal with incompletely
+ registered clients; make FLAG_ALT print nick!user@host; make
+ FLAG_COLON print :blah
+
+ * ircd/class.c (report_classes): use send_reply instead of
+ sendto_one
+
+ * ircd/hash.c (m_hash): replace sendto_one with sendcmdto_one
+
+ * ircd/IPcheck.c (ip_registry_connect_succeeded): replace
+ sendto_one with sendcmdto_one
+
+2000-04-21 Kevin L. Mitchell <klmitch@mit.edu>
+
+ * ircd/send.c: clean up logic in sendcmdto_channel_butone; use
+ MyConnect() instead of IsServer() in sendcmdto_flag_butone; define
+ sendcmdto_match_butone
+
+ * include/send.h: declare sendcmdto_match_butone
+
+2000-04-20 Kevin L. Mitchell <klmitch@mit.edu>
+
+ * ircd/jupe.c: update to use send_reply()
+
+ * ircd/gline.c: update to use send_reply()
+
+ * include/ircd_reply.h: declare send_reply
+
+ * ircd/ircd_reply.c (send_reply): send_error_to_client, but for
+ replies; uses ircd_snprintf
+
+ * ircd/send.c: added comments to redirect searchers to appropriate
+ sendcmdto_* function; moved new functions to end of file; added
+ explanatory comments; reordered arguments; defined new functions
+ mentioned below
+
+ * ircd/m_jupe.c: reorder arguments to sendcmdto_* functions
+
+ * ircd/m_gline.c: reorder arguments to sendcmdto_* functions
+
+ * ircd/jupe.c: reorder arguments to sendcmdto_* functions
+
+ * ircd/gline.c: reorder arguments to sendcmdto_* functions
+
+ * include/send.h: reorder arguments, add explanatory comments,
+ declare new functions sendcmdto_flag_butone, sendto_opmask_butone,
+ and vsendto_opmask_butone
+
+2000-04-19 Kevin L. Mitchell <klmitch@mit.edu>
+
+ * ircd/send.c: define sendcmdto_channel_butone, wrote a simplified
+ vsendto_op_mask that uses '*' instead of the receiving client
+ nickname
+
+ * include/send.h: declare sendcmdto_channel_butone; takes a skip
+ argument that allows you to skip (or not to skip) deaf users,
+ users behind bursting servers, and non channel operators
+
+2000-04-17 Kevin L. Mitchell <klmitch@mit.edu>
+
+ * ircd/send.c: new sendcmdto_channel_butserv -- note that old
+ sendto_channel_butserv has a subtle bug; also wrote
+ sendcmdto_common_channels.
+
+ * include/send.h: declare new sendcmdto_* functions
+
+ * ircd/jupe.c: support local deactivations of jupes
+
+ * ircd/gline.c: support local deactivations of glines
+
+ * include/jupe.h: JUPE_LDEACT allows jupes to be locally
+ deactivated; if they aren't locally deactivated, then it slaves to
+ the net-wide activation status; JupeIsRemActive() tests only
+ whether the jupe is active everywhere else
+
+ * include/gline.h: GLINE_LDEACT allows glines to be locally
+ deactivated; if they aren't locally deactivated, then it slaves to
+ the net-wide activation status; GlineIsRemActive() tests only
+ whether the gline is active everywhere else
+
+ * ircd/gline.c: detect overlapping G-lines; if an existing, wider
+ gline expires after the new one will, we drop the new one,
+ otherwise we add the G-line after that one (so the wide one will
+ apply first); if the new one contains an existing G-line and if it
+ will expire after the existing one, we drop the existing one to
+ save memory
+
+ * ircd/m_gline.c (mo_gline): opers could issue remote local
+ glines when CONFIG_OPERCMDS was off; fixed
+
+2000-04-16 Kevin L. Mitchell <klmitch@mit.edu>
+
+ * ircd/m_jupe.c (mo_jupe): allow target argument to be dropped if
+ this is a local JUPE
+
+ * ircd/gline.c: add flags argument to gline_activate and
+ gline_deactivate for future expansion
+
+ * ircd/m_gline.c: pass flags to gline_activate and
+ gline_deactivate
+
+ * include/gline.h: add flags argument to gline_activate and
+ gline_deactivate
+
+ * ircd/jupe.c: add flags argument to jupe_activate and
+ jupe_deactivate for future expansion
+
+ * include/jupe.h: add flags argument to jupe_activate and
+ jupe_deactivate
+
+ * ircd/m_jupe.c: pass a flags argument to jupe_add instead of
+ local, active; pass flags to jupe_activate and jupe_deactivate
+
+ * include/gline.h: remove dead code
+
+ * ircd/gline.c: make gline expire times relative to CurrentTime,
+ since that should be monotonically increasing, instead of
+ TStime(), which can be set backwards, and which can therefore
+ cause an expire time to increase; make local glines be removed
+ instead of just deactivated; don't let gline_find() look for
+ user@host glines if the mask being looked up is a channel mask
+
+ * ircd/send.c (vsendcmdto_one): forgot to account for the case
+ where origin is a server and destination is a user
+
+ * ircd/jupe.c: make jupe expire times relative to CurrentTime,
+ since that should be monotonically increasing, instead of
+ TStime(), which can be set backwards, and which can therefore
+ cause an expire time to increase; make local jupes be removed
+ instead of just deactivated
+
+ * ircd/ircd_snprintf.c: d'oh, thanks for catching that; short for
+ limit is fine. any other warnings I should know about?
+
2000-04-15 Thomas Helvey <tomh@inxpress.net>
* ircd/*.c: const correctness and type safety cleanups to
* 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.89 2000-04-15 04:20:14 bleep Exp $
-#
-# Insert new changes at beginning of the change list.
-#