Author: Isomer <isomer@coders.net>
[ircu2.10.12-pk.git] / ChangeLog
index 79e9a38544c1fc2e438031dbc10a2995b9cdb932..1f0909d5009c6d010a87af57fc2582bf8283a89f 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,234 @@
+2000-12-16  Isomer <Isomer@coders.net>
+       * ircd/parse.c: detect if the prefix is missing and try and recover
+       instead of coring.
+
+2000-12-15  Kevin L. Mitchell  <klmitch@mit.edu>
+
+       * ircd/ircd_log.c: found and fixed some bugs in the debug logging
+       code that would sometimes result in the log file not being
+       reopened--which meant that a user could connect and get the
+       logging output--oops
+
+       * ircd/Makefile.in: run make depend...
+
+       * ircd/s_stats.c: get rid of report_feature_list()
+
+       * ircd/s_err.c: add the 'bad value' error message, shift error
+       messages over somewhat
+
+       * ircd/s_debug.c (debug_init): call log_debug_init with the
+       use_tty flag
+
+       * ircd/s_conf.c (read_configuration_file): unmark features before
+       reading the config file, then reset unmarked features after
+       reading the config file
+
+       * ircd/m_stats.c: use feature_report() instead of
+       report_feature_list()
+
+       * ircd/ircd_log.c: fix log_debug_file (bogus assertion); add
+       special 'mark' flags and use them; add the stuff needed by the
+       features API
+
+       * ircd/ircd_features.c: rework the features API and add gobs of
+       comments to try to explain what some of these complex functions
+       are actually doing
+
+       * include/s_stats.h: get rid of report_feature_list(); use
+       feature_report() instead
+
+       * include/numeric.h: added a new error message and shifted old
+       values over some--this is, after all, an alpha
+
+       * include/ircd_log.h: log_debug_init now takes an integer to tell
+       it if it should be using the tty; added a couple of functions
+       required by the features API
+
+       * include/ircd_features.h: add an enum and some more functions to
+       flesh out the feature API--it should now be possible to put all
+       those compile-time constants in the config file!
+
+       * ircd/send.c: got the direction of the assert incorrect...
+
+       * ircd/send.c: implement the efficiency of flush_connections by
+       creating a linked list of struct Connection's with queued data;
+       also get rid of flush_sendq_except and make sure to yank
+       connections out of the list when their sendQs become empty (notice
+       the assertion in flush_connections!)
+
+       * ircd/s_bsd.c (close_connection): must yank the Connection out of
+       the sendq list
+
+       * ircd/list.c (dealloc_connection): must yank the Connection out
+       of the sendq list
+
+       * ircd/dbuf.c (dbuf_put): call flush_connections instead of the
+       deprecated flush_sendq_except
+
+       * ircd/client.c: define a couple new helper functions for sendq
+       threading--this will make the flush_connections function in send.c
+       considerably more efficient by creating a linked list of
+       Connections that have queued data to send
+
+       * include/send.h: remove flush_sendq_except, as it's not used
+       anymore
+
+       * include/client.h: declare a couple new helper functions for the
+       sendq threading system
+
+2000-12-14  Kevin L. Mitchell  <klmitch@mit.edu>
+
+       * ircd/m_ison.c (m_ison): Apply Diane Bruce's patch to make ISON
+       parse all arguments
+
+       * ircd/s_debug.c (count_memory): modify to report for clients and
+       connections, not local clients and remote clients
+
+       * ircd/list.c: fiddle with the client-fiddling functions to take
+       into account the divorce of struct Connection from struct Client
+
+       * ircd/ircd.c: define a struct Connection for me, initialize it,
+       and link it into the right place (ewww, globals!)
+
+       * include/client.h: remove CLIENT_{LOCAL,REMOTE}_SIZE; split
+       struct Client into struct Client and struct Connection; redefine
+       local-portion accessor macros to go through struct Client to the
+       struct Connection; define struct Connection accessor macros
+
+2000-12-13  Kevin L. Mitchell  <klmitch@mit.edu>
+
+       * ircd/whowas.c: missed a couple of accesses to a struct Client
+
+       * ircd/uping.c: missed a couple of accesses to a struct Client
+
+       * ircd/send.c: missed a couple of accesses to a struct Client
+
+       * ircd/s_user.c: missed a couple of accesses to a struct Client
+
+       * ircd/s_misc.c: missed a couple of accesses to a struct Client
+
+       * ircd/s_conf.c: missed a couple of accesses to a struct Client
+
+       * ircd/s_bsd.c: missed a couple of accesses to a struct Client
+
+       * ircd/s_auth.c: missed a couple of accesses to a struct Client
+
+       * ircd/res.c: missed a couple of accesses to a struct Client
+
+       * ircd/parse.c: missed a couple of accesses to a struct Client
+
+       * ircd/m_whois.c: use new accessor macros for struct Client
+
+       * ircd/m_who.c: use new accessor macros for struct Client
+
+       * ircd/m_wallchops.c: use new accessor macros for struct Client
+
+       * ircd/m_version.c: use new accessor macros for struct Client
+
+       * ircd/m_userip.c: use new accessor macros for struct Client
+
+       * ircd/m_userhost.c: use new accessor macros for struct Client
+
+       * ircd/m_user.c: use new accessor macros for struct Client
+
+       * ircd/m_uping.c: use new accessor macros for struct Client
+
+       * ircd/m_trace.c: use new accessor macros for struct Client
+
+       * ircd/m_topic.c: use new accessor macros for struct Client
+
+       * ircd/m_time.c: use new accessor macros for struct Client
+
+       * ircd/m_stats.c: use new accessor macros for struct Client
+
+       * ircd/m_squit.c: use new accessor macros for struct Client
+
+       * ircd/m_silence.c: use new accessor macros for struct Client
+
+       * ircd/m_server.c: use new accessor macros for struct Client;
+       remove dead code
+
+       * ircd/m_rpong.c: use new accessor macros for struct Client
+
+       * ircd/m_rping.c: use new accessor macros for struct Client
+
+       * ircd/m_quit.c: use new accessor macros for struct Client
+
+       * ircd/m_privmsg.c: use new accessor macros for struct Client
+
+       * ircd/m_pong.c: use new accessor macros for struct Client; remove
+       dead code
+
+       * ircd/m_ping.c: use new accessor macros for struct Client
+
+       * ircd/m_pass.c: use new accessor macros for struct Client
+
+       * ircd/m_part.c: use new accessor macros for struct Client
+
+       * ircd/m_oper.c: use new accessor macros for struct Client
+
+       * ircd/m_notice.c: use new accessor macros for struct Client
+
+       * ircd/m_nick.c: use new accessor macros for struct Client
+
+       * ircd/m_names.c: use new accessor macros for struct Client
+
+       * ircd/m_mode.c: use new accessor macros for struct Client
+
+       * ircd/m_map.c: use new accessor macros for struct Client
+
+       * ircd/m_list.c: use new accessor macros for struct Client
+
+       * ircd/m_links.c: use new accessor macros for struct Client;
+       remove some dead code
+
+       * ircd/m_kill.c: use new accessor macros for struct Client; remove
+       some dead code
+
+       * ircd/m_kick.c: use new accessor macros for struct Client
+
+       * ircd/m_join.c: use new accessor macros for struct Client; remove
+       some dead code
+
+       * ircd/m_ison.c: use new accessor macros for struct Client
+
+       * ircd/m_invite.c: use new accessor macros for struct Client
+
+       * ircd/m_info.c: use new accessor macros for struct Client
+
+       * ircd/m_gline.c: use new accessor macros for struct Client
+
+       * ircd/m_error.c: use new accessor macros for struct Client
+
+       * ircd/m_create.c: use new accessor macros for struct Client
+
+       * ircd/m_connect.c: use new accessor macros for struct Client;
+       removed some dead code
+
+       * ircd/m_burst.c: use new accessor macros for struct Client
+
+       * ircd/m_away.c: use new accessor macros for struct Client
+
+       * ircd/m_admin.c: use new accessor macros for struct Client
+
+       * ircd/hash.c: missed a couple of accesses to a struct Client
+
+       * ircd/gline.c: missed a couple of accesses to a struct Client
+
+       * ircd/crule.c: missed a couple of accesses to a struct Client
+
+       * ircd/class.c: missed an access to a struct Client
+
+       * ircd/channel.c: missed a couple of accesses to a struct Client
+
+       * ircd/IPcheck.c: missed an access to a struct Client
+
+       * include/querycmds.h: fix a couple of stats macros to use
+       structure accessor macros
+
+       * include/client.h: change structure member names to highlight any
+       places in the code I've missed
+
 2000-12-12  Kevin L. Mitchell  <klmitch@mit.edu>
 
        * ircd/whowas.c: use new struct Client accessor macros