Author: Kev <klmitch@mit.edu>
[ircu2.10.12-pk.git] / ChangeLog
index e5bc07c2a5873e11b410e746c0dffc18744cc0ee..97d34c7155798b08713ecb1550aabf03c9e4c1b2 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,587 @@
+2003-01-07  Kevin L Mitchell  <klmitch@mit.edu>
+
+       * BUGS: removed from distribution
+
+       * ChangeLog.07: moved into doc/history
+
+       * ChangeLog.10: moved into doc/history
+
+       * INSTALL: pulled up from u2.10.11.04
+
+       * README: pulled up from u2.10.11.04
+
+       * README.FreeBSD: pulled up from u2.10.11.04
+
+       * README.Solaris: pulled up from u2.10.11.04
+
+       * RELEASE.NOTES: add sysctl note from u2.10.11.04
+
+       * TODO: removed from distribution
+
+       * configure.in: add extra check for res_mkquery; remove
+       --disable-headinsand since it no longer has any effect; pull up
+       "Enable" vs. "Disable" changes from u2.10.11.04
+
+       * doc/readme.asll: pulled up from u2.10.11.04
+
+       * doc/readme.features: pull up missing documentation, including a
+       couple of corrections
+
+       * doc/readme.log: correct text to read FACILITY instead of SYSLOG
+       in the documentation for configuring syslog facility
+
+       * include/channel.h: declare IsInvited()
+
+       * include/handlers.h: do some minor reorderings
+
+       * include/ircd_defs.h: remove deprecated NETWORK and URL_CLIENTS
+       #define's
+
+       * include/ircd_policy.h: removed from the distribution
+
+       * include/jupe.h: declare jupe_memory_count()
+
+       * include/msgq.h: remove MsgCounts structure
+
+       * include/numeric.h: add a blank line after RPL_STATSQLINE; add
+       RPL_HOSTHIDDEN
+
+       * include/s_stats.h: include ircd_features.h for definition of the
+       enum; remove extraneous declarations
+
+       * ircd/Makefile.in: add LDFLAGS to table_gen
+
+       * ircd/engine_poll.c: remove commented-out assertion
+
+       * ircd/ircd.c: include s_stats.h and call stats_init()
+
+       * ircd/ircd_features.c: feature names have to be case-sensitive
+       because of some of the HIS features
+
+       * ircd/ircd_relay.c: reorder includes
+
+       * ircd/m_account.c: include string.h for strlen()
+
+       * ircd/m_clearmode.c: remove extraneous clean_channelname(); make
+       sure to refer to chname, not parv[1]
+
+       * ircd/m_create.c: remove the broken code that squits servers that
+       are >5 minutes fast; fix "badop || CHFL_CHANOP" bug that caused op
+       desyncs
+
+       * ircd/m_gline.c: if it's a server, force the gline; don't
+       gline_find() before determining if the oper had the privilege
+
+       * ircd/m_kick.c: kicks by servers should appear to be from the
+       local server thanks to HIS
+
+       * ircd/m_lusers.c: needs ircd_features.h, not ircd_policy.h
+
+       * ircd/m_map.c: needs ircd_features.h, not ircd_policy.h
+
+       * ircd/m_nick.c: added an assertion and some explanatory comments
+       pulled up from u2.10.11.04
+
+       * ircd/m_opmode.c: no longer requiring oper to be on the channel;
+       search for quarantines before allowing ops
+
+       * ircd/m_privmsg.c: one character typo that probably means nothing
+
+       * ircd/m_settime.c: add back comments I left in the code
+
+       * ircd/m_squit.c: remove protocol_violation() notices
+
+       * ircd/m_userhost.c: return realhost if user is an oper
+
+       * ircd/m_wallvoices.c: only m_wallvoices() should add a +
+
+       * ircd/m_who.c: add handling for the 'a' field
+
+       * ircd/m_whois.c: correct a typo of FEAT_HIS_SERVERNAME for
+       FEAT_HIS_SERVERINFO
+
+       * ircd/s_bsd.c: close file descriptors 0, 1, and 2; pull up some
+       ancient bug fixes from the u2.10.11 branch
+
+       * ircd/s_debug.c: include gline.h, jupe.h, motd.h, and s_stats.h;
+       call motd_memory_count(), gline_memory_count(), and
+       jupe_memory_count() when reporting memory usage; add back a
+       comment regarding "DBuf caveats"
+
+       * ircd/s_err.c: add RPL_STATSQLINE, RPL_HOSTHIDDEN, and pull up
+       change to ERR_NOPRIVILEGES wording
+
+       * ircd/s_misc.c: include ircd_features.h and not ircd_policy.h
+
+       * ircd/s_stats.c: count from 0 and not 1 when initializing the
+       stats
+
+       * ircd/s_user.c: comment out assertion; remove extraneous
+       definition of FLAGS_HOST_HIDDEN; add in hikari's "your host is now
+       hidden" reply; don't detach oper confs unless sptr is not an oper
+
+       * ircd/table_gen.c: pull up change to NTL_CHPFX (removing +);
+       change channel name character range to be from '\041' (!) to
+       UCHAR_MAX
+
+       * ircd/whocmds.c: pull up fix to /who idle time from u2.10.11.04
+
+       * tools/linesync/linesync.conf: pull up from u2.10.11.04
+
+       * tools/linesync/linesync.sh: pull up from u2.10.11.04
+
+2003-01-07 Andrew Miller <a1kmm@mware.virtualave.net>
+       * almost everything: Forward ported numerous changes from .11 to .12
+       
+2002-07-05 Andrew Miller <a1kmm@mware.virtualave.net>
+       * ircd/packet.c(connect_dopacket): Pass the job on to server_dopacket
+       when they become a server.
+       * ircd/s_bsd.c(read_packet): Check they are now a server *after* the
+       packet is sent.
+       * ircd/class.c(make_class): Fixed an assert to be more useful.
+       
+2002-07-05 Andrew Miller <a1kmm@mware.virtualave.net>
+       * ircd/packet.c
+       * ircd/packet.h: (connect_dopacket): Made a dopacket function for
+       connecting links which sends the messages through the correct message
+       handler.
+       * ircd/s_bsd.c(read_packet): Put packets through the correct handler
+       for connecting links. Properly handle unknown links becoming
+       connecting or servers.
+
+2002-07-01 Andrew Miller <a1kmm@mware.virtualave.net>
+       * include/ircd_alloc.h (MyFree): Accept NULL pointers to do nothing
+       with, this is used quite a lot.
+       * ircd/class.c (make_class): Initialise the ref_count to 1 so that
+       we don't leak.
+       * ircd/class.c (add_class): When updating a class, free the old name
+       first to prevent leakage.
+       * ircd/class.c (class_delete_marked): Decrement the ref_count for the
+       class after it is removed from the linked list.
+       * ircd/ircd_parser.y: Changed a free to MyFree().
+       * ircd/ircd_parser.y: Removed a few debugging messages.
+
+2002-07-01 Andrew Miller <a1kmm@mware.virtualave.net>
+       * s_bsd.c (read_packet): Our daily addition to the list of entities to
+       treat as servers - Connecting servers.
+       
+2002-07-01 Andrew Miller <a1kmm@mware.virtualave.net>
+       * doc/debug_memleak_gc.patch,
+       * include/ircd_ircd_alloc.h,
+       * include/memdebug.h,
+       * configure.in,
+       * ircd/Makefile.in,
+       * ircd/memdebug.c: added a Boehm's gc based leak detector to find leaks
+       and notify the operators.
+       
+2002-06-29  Andrew Miller <a1kmm@mware.virtualave.net>
+
+       * ircd/s_bsd.c (read_packet): don't make handshaking servers go through
+       the dbufs.
+       
+2002-06-18  Andrew Miller <a1kmm@mware.virtualave.net>
+
+       * ircd/s_bsd.c (read_packet): don't allow unregistered clients to flood
+       the server.
+       
+2002-06-18  Alex Badea  <vampire@p16.pub.ro>
+
+       * ircd/m_burst.c (ms_burst): kick local members if the channel
+       has a larger local TS and it's +i or +k remotely (anti net.ride)
+
+       * ircd/ircd_parser.y: fixed a bug that broke IP-based C:lines
+
+       * ircd/s_err.c: connection classes are now strings (RPL_STATSCLINE)
+
+       * include/s_conf.h: externalized lookup_confhost
+
+       * adns/Makefile.in: compilation-outside-source-tree fix
+
+2002-06-17  Alex Badea  <vampire@p16.pub.ro>
+
+       * adns/*: added a slightly hacked copy of adns
+
+       * configure.in: added a --disable-adns switch if you want
+       to use the old libresolv res.c
+
+       * configure: ran autoconf
+
+       * ircd/res_libresolv.c: renamed from res.c
+
+       * ircd/res_adns.c: added adns resolver
+
+2002-06-17  Alex Badea  <vampire@p16.pub.ro>
+
+       * ircd/ircd_parser.y: fixed 'Connect' block processing so now
+       you can actually connect to other servers
+
+2002-06-04  Alex Badea  <vampire@p16.pub.ro>
+
+       * ircd/m_stats.c (report_servers_verbose): oops, fixed it so
+       it displays all servers, not just local connects
+
+2002-05-30  Jean-Edouard Babin  <Jeb@jeb.com.fr>
+
+       * ircd/m_server.c (mr_server): fixed core bug on insufficient
+       arguments
+
+2002-05-26  Jeekay  <jeekay@irc.planetarion.com>
+       
+       * ircd/m_join.c (HasControlChars): fixed unsigned vs signed
+
+2002-05-26  Jeekay  <jeekay@irc.planetarion.com>
+       * ircd/m_join.c (m_join,HasControlChars): check if a channel
+       name has any control chars (<=32) in it before allowing a
+       local user to join.
+2002-21-05 Andrew Miller <a1kmm@mware.virtualave.net>
+       * ircd/ircd_relay.c: stop an information leak about the
+       the network topography from relayed messages.
+
+2002-04-19  Alex Badea  <vampire@p16.pub.ro>
+
+       * ircd/m_who.c (m_who): disallow non-opers to /who server.name
+
+2002-04-18  Alex Badea  <vampire@p16.pub.ro>
+
+       * ircd/s_err.c (RPL_STATSILINE): connection classes are now
+       strings
+
+2002-04-17  beware <steendijk@tomaatnet.nl>
+
+       * m_whois.c (m_whois): disallow remote queries for non-existent
+       local users when originated by a non-oper
+
+2002-04-16  Alex Badea  <vampire@p16.pub.ro>
+
+       * ircd/s_user.c (hunt_server_cmd): also send a "no such server"
+       reply if the servername contains a '*' and it doesn't exist
+
+       * include/patchlevel.h (PATCHLEVEL): bump patchlevel
+
+2002-04-16  beware <steendijk@tomaatnet.nl>
+
+       * ircd/m_whois.c: the previous patch broke whois, fixed it
+       another way
+
+       * ircd/m_admin.c: cleaned up m_admin too while we're here,
+       hunt_server_cmd can do all the work for us
+
+2002-04-15  Alex Badea  <vampire@p16.pub.ro>
+
+       * ircd/m_stats.c: added verbose server reporting (/stats v
+       or /stats V for machine-readable format) (bugzilla bug 52)
+
+       * include/numeric.h: added RPL_STATSVERBOSE 236
+
+       * ircd/s_err.c: added RPL_STATSVERBOSE
+
+       * ircd/s_stats.c: added help for stats 'v'
+
+2002-04-15  Alex Badea  <vampire@p16.pub.ro>
+
+       * ircd/class.c (get_client_class): fixed typo which caused
+       /trace (and perhaps motd) to core
+
+2002-04-15  beware <steendijk@tomaatnet.nl>
+
+       * ircd/m_whois.c: Fixed /whois servermask nomatch bug
+       where normal users could use the function to discover servers,
+       also the NOSUCHSERVER check code was missing.
+
+2002-04-14  Alex Badea  <vampire@p16.pub.ro>
+
+       * ircd/ircd_parser.y: fixed cli_info(&me) not being set
+       from 'description' conf
+
+2002-04-13  Stephane Thiell <mbuna@undernet.org>
+
+       * ircd/m_whois.c: removed FindUser() in ms_whois to fix
+       remote whois relaying.
+
+       * ircd/class.c: removed unused (and duplicated) code
+       get_client_ping().
+       
+       * include/class.h: removed unused function prototype.
+       
+       * config.guess: upgraded with latest
+       
+       * config.sub: upgraded with latest
+
+2002-04-12  Alex Badea  <vampire@p16.pub.ro>
+
+       * ircd-patch: report which files failed the dry run (so the
+       user may force the patch if the rejects are in less-than-vital
+       files, such as ChangeLog or documentation)
+
+2002-04-12  Alex Badea  <vampire@p16.pub.ro>
+
+       * ircd/m_invite.c: don't propagate invites for local channels
+
+       * include/patchlevel.h (PATCHLEVEL): bump patchlevel
+
+2002-04-10 Joseph Bongaarts <foxxe@wtfs.net>
+
+       * ircd/ircd.c: The last fix broke autoconnects completely.
+       Fixed it another way.
+       
+2002-04-09  Brian Cline  <clineb@cs.winthrop.edu>
+
+        * ircd/ircd.c (try_connections): To avoid problems with infinite event
+        loops, don't try connecting to servers whose connect frequency is 0.
+       
+2002-04-10  Alex Badea  <vampire@p16.pub.ro>
+
+       * ircd/ircd_parser.y: fixed a "features" block parse bug
+
+       * tools/convert-conf.py: added a configuration file converter
+       from 2.10.11 to 2.10.12 format
+
+       * ircd-patch: added GPL information to top of file
+
+2002-04-09  Alex Badea  <vampire@p16.pub.ro>
+
+       * configure.in: added a human-readable report of configured
+       options at the end of the configure process
+
+       * configure: regenerated with autoconf
+
+2002-04-08  Gavin Grieve  <ggrieve@ihug.co.nz>
+
+       * include/supported.h: change CHARSET to CASEMAPPING after
+       discussions as to what would be the preferred name.
+
+2002-04-05 Andrew Miller <a1kmm@mware.virtualave.net>
+       * ircd/s_conf.c, ircd_parser.y, ircd_lexer.l: Add privilege
+       specification.
+        * Fix a minor parser bug that meant rehash didn't always
+       work correctly.
+
+2002-04-03  Alex Badea  <vampire@p16.pub.ro>
+
+       * include/channel.h: fix compiler warnings (paratheses around &&)
+
+       * ircd/channel.c (modebuf_extract): fix compiler warnings
+       (uninitialized variables)
+
+       * ircd/Makefile.in: make ircd properly compile outside the
+       source tree
+
+2002-04-03  Alex Badea  <vampire@p16.pub.ro>
+
+       * include/s_user.h: added a sptr parameter to InfoFormatter
+       function type
+
+       * ircd/m_who.c: don't match IPs for clients which have a hidden host,
+       except when the inquiring user is an oper
+
+       * ircd/whocmds.c: show the fake IP from FEAT_HIDDEN_IP if the
+       target has a hidden host, but show real IP to opers
+
+       * ircd/m_userip.c (userip_formatter): add sptr parameter; show the
+       fake IP from FEAT_HIDDEN_IP if the target has a hidden host, but
+       show real IP to opers
+
+       * ircd/m_userhost.c (userhost_formatter): add (unused) sptr parameter
+
+       * ircd/s_user.c (send_user_info): pass sptr to the formatting function
+
+       * include/ircd_features.h: new feature FEAT_HIDDEN_IP (stores which
+       fake IP to show for clients with a hidden host)
+
+       * ircd/ircd_features.c: new feature FEAT_HIDDEN_IP
+
+       * doc/example.conf: default value for FEAT_HIDDEN_IP
+
+       * doc/readme.features: documented FEAT_HIDDEN_IP
+
+2002-04-03 Andrew Miller <a1kmm@mware.virtualave.net>
+       * doc/example.conf: Cleaned up some comments that ended up in
+         strange places due to problems in the merge process.
+       * ircd/m_nick.c: Cleaned up ms_nick, and fixed a bug that
+         probably dates back to Jarkko code.
+
+2002-04-02  Kevin L Mitchell  <klmitch@mit.edu>
+
+       * ircd/m_kill.c: let ms_kill() and mo_kill() seperate the message
+       from the path before calling do_kill(); add a msg argument to
+       do_kill() and use it in preference to comment; remove all that old
+       code that fiddled with the buf and the comment
+
+       * ircd/ircd_log.c (log_write_kill): add a seperate msg argument
+
+       * include/ircd_log.h: add a seperate msg argument to
+       log_write_kill()
+
+       * ircd/ircd.c: display event engine and MAXCONNECTIONS information
+2002-04-02  Alex Badea <vampire@p16.pub.ro>
+
+       * ircd-patch: Automatically generate a version string from patches
+
+2002-04-02  Alex Badea <vampire@p16.pub.ro>
+       
+       * ircd-patch: Test before doing anything dangerous, provide -f to
+               to it anyway.  exit levels for easy scripting.
+
+2002-04-01  Kevin L Mitchell  <klmitch@mit.edu>
+
+       * ircd/channel.c (joinbuf_join): don't add a channel to the list
+       in the joinbuf unless when we flush it, we empty the list
+
+2002-04-02 Andrew Miller <a1kmm@mware.virtualave.net>
+       * ircd/ircd_parser.y: Added ircd parser, lexer, to replace the
+          old configuration file format.
+       * ircd/ircd_lexer.l
+       * ircd/s_conf.c
+       * doc/example.conf
+
+2002-03-23 Bert Faes <bert.faes@pandora.be>
+
+       * s_misc.c made /trace reply always show the username
+       
+2002-03-28  Kevin L Mitchell  <klmitch@mit.edu>
+
+       * configure.in: use AC_CHECK_FUNCS to define HAVE_* macros; test
+       for setrlimit, getrusage, and times
+
+       * configure: rerun auto-conf
+
+       * config.h.in: rerun autoheader
+
+2002-03-27  Kevin L Mitchell  <klmitch@mit.edu>
+
+       * ircd/m_burst.c (ms_burst): use MODEBUF_DEST_NOKEY to suppress
+       sending of the key to the channel
+
+       * ircd/channel.c (modebuf_flush_int): when processing keys, only
+       include the actual key in the mode sent to the channel if
+       MODEBUF_DEST_NOKEY is not set
+
+       * include/channel.h: needed more bits for MODEBUF_DEST_*,
+       especially when adding MODEBUF_DEST_NOKEY to force keys in the
+       BURST to be reported as "*" to the channel
+
+       * ircd/m_oper.c (m_oper): clear the new oper's sendq so it gets
+       inherited from the class associated with the O-line
+
+2002-03-25  Kevin L Mitchell  <klmitch@mit.edu>
+
+       * ircd/s_user.c (set_nick_name): invalidate all ban valid caching
+       when a user changes his nickname so we can catch if he now matches
+       a ban
+
+2002-03-20 Reed Loden <reed@redmagnet.com>
+       * doc/example.conf: Added OPER_LIST_CHAN and LOCOP_LIST_CHAN.
+
+       * doc/readme.features: Added OPER_LIST_CHAN and LOCOP_LIST_CHAN.
+
+2002-03-20 LordLuke <lordluke@undernet.org>
+       * ircd/client.c: Add LOCOP_LIST_CHAN feature.
+
+       * ircd/ircd_features.h: Add LOCOP_LIST_CHAN feature.
+
+2002-03-19 Joseph Bongaarts <foxxe@wtfs.net>
+
+       * ircd/m_links.c: Make /links behave like /map for head_in_sand.
+       cleaned up excess code.
+
+       * ircd/map.c: Added map_dump_links_head_in_sand() Made changes in
+       map_add() and map_update() for links changes.
+
+       * include/map.h: Added info and prot to struct Map
+
+       * include/ircd_defs.h: Added MAP_CACHE_TIME for length of time
+       servers are cached in MapList
+
+       * ircd/s_misc.c: changed #ifdef for map_update()
+
+       * ircd/m_server.c: changed #ifdef for map_update()
+
+       * include/ircd_policy.h: added NO_HEAD_IN_SAND for easier removal of
+       hiding features.
+
+       * configure.in: add --disable-headinsand
+
+       * configure: Ran autoconf
+
+       * ircd/m_stats.c: Fixed a bug in /stats i and made /stats i show 
+       connect limits
+
+       * ircd/s_stats.c: Made /stats i report connect limits
+
+       * ircd/s_err.c: Modified RPL_STATSILINE to use %s instead of 
+       "*" for the password field.
+       
+2002-03-19 LordLuke <lordluke@undernet.org>
+
+       * include/channel.h: Allow opers to view +s channels in /list
+
+       * include/client.h: Add "PRIV_LIST_CHAN" oper privilege
+
+       * include/ircd_features.h: added "LIST_CHAN" feature
+
+       * ircd/channel.c: Allow opers to view +s channels in /list
+
+       * ircd/client.c: Add "PRIV_LIST_CHAN"
+
+       * ircd/ircd_features.c: Add "LIST_CHAN" feature
+
+2002-03-13 Joseph Bongaarts <foxxe@wtfs.net>
+
+       * ircd/m_kill.c: Last of the last of the bug fixes (Thanks Spike).
+       Must be more careful when forward porting by hand...
+       
+2002-03-13  Carlo Wood  <run@alinoe.com>
+
+       * include/channel.h: CHFL_CHANNEL_MANAGER, new local
+       channel flag set when someone creates a channel or joins
+       using the Apass.  IsChannelManager(), SetChannelManager():
+       macros to manipulate new channel flag.
+       channel_modes: Added new argument to avoid calling
+       find_member_link more often than needed.
+
+       * include/numeric.h: RPL_APASSWARN, ERR_NOTLOWEROPLEVEL,
+       ERR_NOTMANAGER, ERR_CHANSECURED, ERR_UPASSSET,
+       ERR_UPASSNOTSET: new numeric replies.
+
+       * ircd/channel.c: is_level0_op: removed.
+       member_can_send_to_channel: disallow channel manager
+       to talk.  channel_modes: show upass to level0 ops.
+       mode_parse_upass: Only the channel manager is allowed
+       to change the upass.  Only allow to set upass when apass
+       is also set.  mode_parse_apass: Don't allow to change the
+       Apass if the channel is older than 48 hours.  Only allow
+       to remove the apass when upass is not set.  Send clear
+       warnings regarding the importance of apass.
+       mode_process_clients: Don't change the oplevel of an opped
+       member in a channel where upass is not set.
+
+       * ircd/destruct_event.c: exec_expired_destruct_events:
+       Bug fix: send DESTRUCT message when destructing a channel.
+
+       * ircd/m_destruct.c: ms_destruct: Bug fix: use self as
+       prefix for DESTRUCT message.
+
+       * ircd/m_join.c: m_join: Handle apass and upass.
+
+       * ircd/m_kick.c: m_kick: Don't allow to kick member with
+       a higher or equal op-level.
+
+       * ircd/m_mode.c: m_mode: Now pass member to channel_modes.
+       ms_mode: Allow server to do modes on channels with apass
+       set.
+
+       * ircd/s_err.c: RPL_APASSWARN, ERR_NOTLOWEROPLEVEL,
+       ERR_NOTMANAGER, ERR_CHANSECURED, ERR_UPASSSET,
+       ERR_UPASSNOTSET: new numeric replies.
+
+
 2002-03-10 Joseph Bongaarts <foxxe@wtfs.net>
 
+       * ircd/m_kill.c: Last of the bug fixes for do_kill()
+
        * ircd/list.c: Don't remove clients from the linked list
        that aren't actually in the list.