aboutsummaryrefslogtreecommitdiff
path: root/doc/ChangeLog
diff options
context:
space:
mode:
Diffstat (limited to 'doc/ChangeLog')
-rw-r--r--doc/ChangeLog1956
1 files changed, 1956 insertions, 0 deletions
diff --git a/doc/ChangeLog b/doc/ChangeLog
new file mode 100644
index 0000000..9869542
--- /dev/null
+++ b/doc/ChangeLog
@@ -0,0 +1,1956 @@
+2.10.3
+
+1999-08-13 Christophe Kalt
+
+ * channel.c/match_modeid(): logic fix (reported by Michal Svoboda).
+
+ * os.h: added YET ANOTHER KLUDGE for linux and poll().
+
+ * ircd.c: assume "-s" option in CYGWIN environment.
+
+ * configure.in: update for CYGWIN environment.
+
+1999-08-13 Piotr Kucharski
+
+ * mod_socks.c/socks_read(): allow more methods in socks5 check.
+
+1999-08-01 Piotr Kucharski
+
+ * ircd.c/bad_command(): -d command line option no longer exists,
+ while -s was added.
+
+1999-07-28 Christophe Kalt
+
+ * struct_def.h: IsChannelName() macro cannot use cid_ok() for the
+ client.
+
+ * channel.c/m_njoin(): inverse condition prevented modes from
+ being sent to users and 2.9 servers.
+
+1999-07-27 Piotr Kucharski
+
+ * s_id.c/cid_ok(): quite unfortunate typo which made joining
+ !channels impossible (from Michal Svoboda).
+
+1999-07-25 Christophe Kalt
+
+ * channel.c: sanity checks to drop modes on +channels even when
+ received from servers (from Michal Svoboda).
+
+ * struct_def.h, channel.c, s_id.c: added checks to ensure !name
+ validity (from Michal Svoboda).
+
+1999-07-23 Christophe Kalt
+
+ * s_bsd.c/inetport(): fixed test for IPv6 (from KIKUCHI Takahiro).
+
+ * ircd.c:
+ * better casting for sbrk() for OSF 4.0.
+ * setup_me(): fixed syntax for IPv6.
+
+1999-07-21 Piotr Kucharski
+
+ * channel.c/set_mode(): send ERR_UNKNOWNMODE to 'mode O' issued
+ on non-!channels.
+
+1999-07-21 Christophe Kalt
+
+ * s_misc.c/exit_one_client(): generate fake PARTs for users
+ quitting anonymous channels.
+
+ * send.c/sendto_common_channels(): skip anonymous channels.
+
+ * Makefile.in: ircdwatch needs clsupport.o which needs clmatch.o.
+
+ * channel.c: added notices to warn users about +a channels.
+
+1999-07-20 Kurt Roeckx
+
+ * channel.c:
+ * m_njoin: send +v for uniqops in the right case
+ * send_channel_members: send +v inside njoin for ops too
+ * m_invite: send back numerics if the channel doesn't exist
+
+1999-07-18 Piotr Kucharski
+
+ * channel.c/set_mode(), m_kick(): send ERR_NOTONCHANNEL, not
+ ERR_CHANOPRIVSNEEDED, thus disable stealth secret channel probing;
+ furthermore, use rather sptr->name, not parv[0] in sending errors;
+
+1999-07-17 Christophe Kalt
+
+ * ircd.c/setup_me(), s_bsd.c: fixed that really old bug about the
+ I line format to match connections received on the loopback
+ interface (from Eugene L. Vorokov).
+
+ * configure.in: fixed previous changes about poll() (reported by
+ KIKUCHI Takahiro).
+
+1999-07-17 Kurt Roeckx
+
+ * s_user.c/m_kill(): killer could end up < path
+
+1999-07-14 Christophe Kalt
+
+ * configure.in, os.h: use ncurses.h (from KIKUCHI Takahiro).
+
+ * configure.in: SunOS has poll(), but we don't want to use it
+ (reported by KIKUCHI Takahiro).
+
+ * mod_lhex.c: replaced strtoul() with sscanf().
+
+1999-07-11 Christophe Kalt
+
+ * a_defines.h was missing support_def.h (from KIKUCHI Takahiro).
+
+ * Makefile.in: ircdwatch.c uses strerror(), needs clsupport.o
+ (from KIKUCHI Takahiro).
+
+ * config.h.dist, ircd.c, s_debug.c: renamed CONNECTTIMEOUT to
+ ACCEPTTIMEOUT, and changed from 30 to 90.
+
+1999-07-11 Piotr Kucharski
+
+ * mod_socks.c:
+ * socks_write(): a typo made iauth allow open proxies and
+ caused a lot of BADPROTO warnings (from KIKUCHI Takahiro).
+ * socks_init(): buffer overflow with tmpbuf[] being too
+ small to hold too many iauth options (also from Takahiro).
+
+1999-07-09 Christophe Kalt
+
+ * configure.in, os.h, s_bsd.c: IPv6 updates (from KIKUCHI Takahiro).
+
+1999-07-05 Christophe Kalt
+
+ * s_bsd.c/read_message(): can't use iauth_options when USE_IAUTH
+ is undefined.
+
+1999-07-05 Piotr Kucharski
+
+ * channel.c/m_invite(): invite to :-channels was sometimes
+ lost with no error.
+
+1999-07-04 Christophe Kalt
+
+ * a_conf_def.h, a_conf.c, a_io.c: added the "timeout" option.
+
+ * mod_socks.c: added PROXY_BADPROTO & OPT_PROTOCOL to
+ differentiate between unexpected and bad protocol.
+
+ * s_id.c: fixed alphabet_id[] (noted by Michal Svoboda), and
+ rewrote some code.
+
+1999-07-04 Piotr Kucharski
+
+ * s_user.c/m_nick(): fix performance bug introduced in code
+ preventing insidious collisions
+
+ * mod_socks.c/socks_open_proxy(): now reports in logs versions
+ of open proxies found
+
+1999-07-02 Kurt Roeckx
+
+ * configure.in, Makefile.in: Added -I for inet6.
+
+1999-07-02 Christophe Kalt
+
+ * res.c/proc_answer(): portability fix from hybrid6.
+
+ * send.c/sendto_match_butone(): finally looked closely at why this
+ was sending $*.mask to the wrong servers, fixed.
+
+ * struct_def.h, send.c/sendto_match_butone(), list_ext.h,
+ list.c/make_client(), ircd.c/setup_me(), s_misc.c/exit_client(),
+ s_serv.c, s_service.c/m_service(), s_user.c/m_user(): removed old
+ code conditional to NO_USRTOP being undefined.
+
+ * s_user.c:
+ * m_nick(): new delay on nicks to prevent insidious
+ collisions (from Piotr Kucharski).
+ * m_private(): dropped restrictions on mass msg/notices.
+
+ * s_auth.c/read_authports(): can't call set_clean_username with
+ ->auth pointing to ->username (from Piotr Kucharski).
+
+ * mod_socks.c: couple typos.
+
+ * a_conf.c/conf_read(): ->popt wasn't initialized.
+
+1999-06-27 Christophe Kalt
+
+ * s_misc.c/exit_one_client(): made BETTER_NDELAY a little more
+ friendly (from Piotr Kucharski).
+
+ * a_io.c/sendto_ircd(): added error output in write error notice.
+
+ * hash.c/hash_channel_name(): added shortname parameter to disable
+ guess and fix bug (From Q).
+
+ * channel.c/m_join(): reject local user join for duplicates.
+
+ * mod_socks.c: more options, less bugs (from Piotr Kucharski).
+
+ * s_user.c:
+ * m_nick(): kill nicks introduced by server if parc != 8
+ instead of simply sending a notice.
+ * register_user(): static variable wasn't declared as such.
+
+ * ircd.c, s_serv.c: used mybasename();
+
+ * support_ext.h, support.c: added mybasename();
+
+1999-06-20 Christophe Kalt
+
+ * mod_socks.c: added code to allow checks for v5 as well as v4,
+ depending on configuration (from Piotr Kucharski).
+
+ * configure.in, ircd.c/ircd_writetune(), s_serv.c/m_rehash(): use
+ basename, and check if it needs libgen.
+
+ * channel.c/m_njoin(): simple optimization resulting from change
+ to sendto_match_servs_notv() below.
+
+ * send_ext.h, send.c: sendto_serv_{not,}v and
+ sendto_match_servs_{not,}v now return an integer.
+
+1999-06-16 Christophe Kalt
+
+ * iauth.c/main(): send version to ircd upon startup.
+
+ * mod_rfc931.c/rfc931_work(): removed checks on weird chars, let
+ ircd deal with this.
+
+ * s_auth.c:
+ * start_auth(): abort if getpeername() fails (problem
+ reported by Wolfgang Scherer).
+ * added set_clean_username(), used in read_iauth() and
+ read_authports().
+ * read_iauth(): added o message (a->i).
+ * read_iauth(): added V message (a->i).
+
+ * struct_def.h, s_serv.c: added SV_OLDSQUIT, and made m_squit()
+ smarter (ugh, it's a kludge).
+
+1999-06-07 Christophe Kalt
+
+ * s_user.c:
+ * m_nick(): added notice to warn of NICK messages coming
+ from servers with parc != 8.
+ * register_user(): fixed unaccurate notices about iauth.
+
+ * config.h.dist: increased HANGONRETRYDELAY & HANGONGOODLINK values.
+
+1999-06-06 Christophe Kalt
+
+ * struct_def.h, send.c/sendto_match_butone(), list_ext.h,
+ list.c/make_client(), ircd.c/setup_me(), s_misc.c/exit_client(),
+ s_serv.c, s_service.c/m_service(), s_user.c/m_user(): added
+ reorder_client_list() and NO_USRTOP defines. This reduces memory
+ usage (Original code from Michal Svoboda).
+
+ * channel.c/reop_channel(): desynched could be caused by server
+ reops (channel mode +r) (reported by Thomas Kuiper).
+
+1999-05-01 Christophe Kalt
+
+ * s_conf_ext.h, s_conf.c, s_serv.c: added a new list for K/k lines
+ only as an easy way to improve overall performance.
+
+ * service_def.h: updated SERVICE_MASK_ALL.
+
+1999-04-19 Christophe Kalt
+
+ * channel.c/m_njoin(): need to use sendto_match_servs*(); duh!
+
+ * send_ext.h, send.c: added sendto_match_servs_notv().
+
+ * s_serv.c/m_squit(): fixed logic in previous change.
+
+ * packet.c/dopacket(): fixed uncompression code.
+
+1999-04-15 Christophe Kalt
+
+ * service_def.h, channel.c/m_topic(), s_service.c/m_servset():
+ added SERVICE_WANT_TOPIC.
+
+ * s_serv.c/m_squit(): fixed serious and old bug that caused
+ servers to be removed from memory (but not dependants!!!) while
+ squit is going upstream.
+
+ * s_debug.c/send_usage(): divide by zero bugfix (reported by Aaron
+ Campbell).
+
+ * channel.c/m_njoin(): ignore channels with an invalid mask.
+
+ * common/parse.c: extended MSG_NOU to include services.
+
+1999-04-10 Christophe Kalt
+
+ * Makefile.in, a_conf_def.h, a_externs.h, a_conf.c, mod_lhex_ext.h,
+ mod_lhex.c: New module (from Andrew Snare).
+
+ * s_debug.c: increased size of debugbuf[] to avoid overflows (from
+ Eugene L. Vorokov).
+
+ * send.c/send_message(): catch more unlikely errors (from Eugene
+ L. Vorokov).
+
+ * s_bsd.c/set_sock_opts(): silently ignore errors for SO_SNDLOWAT.
+
+ * common/os.h: FreeBSD portability (from KIKUCHI Takahiro).
+
+ * s_bsd.c/read_message():
+ * debug notice format bugfix (from Q).
+ * INET6 fix (from KIKUCHI Takahiro).
+
+ * s_conf.c:
+ * initconf(): allow service type to be in hex in the
+ configuration (from Thomas Kuiper).
+ * find_conf_flags(): case sensitivity fix (from Q).
+
+1999-03-19 Christophe Kalt
+
+ * mod_socks.c/socks_work(): closed proxies would get rejected on
+ first attempt and accepted later as the "closed" status was in the
+ cache.
+
+ * s_user.c/register_user(): fixed iauth failure notice timing bug.
+
+1999-03-13 Christophe Kalt
+
+ * struct_def.h, ircd.c, s_auth.c, s_bsd.c, s_user_ext.h, s_user.c,
+ a_struct_def.h, iauth.c, a_conf.c, a_io.c: added XOPT_EARLYPARSE,
+ `P' message for iauth, `extinfo' option for iauth.
+
+ * a_io.c/next_io(): if xxx_start() returns 1, count module as left.
+
+1999-03-11 Christophe Kalt
+
+ * chkconf.c:
+ * finally shut off MyFree() redefinition warning.
+ * fixed undefined behaviour with ++ operator (effet de bord).
+
+ * a_io.c/init_io(): bzero bugfix (reported by Tomas Edwardsson).
+
+ * a_conf_def.h, a_conf.c:
+ * conf_err(): send conf errors to ircd as well.
+ * conf_match(): extended iauth.conf syntax for hostname
+ and IP matching.
+ * added conf_ipmask() to allow use of a.b.c.d/z format for IP.
+
+ * configure.in: use "cc -Ae" on HPUX (reported by Jens Riecken).
+
+ * ircd.c/main(): iauth's presence needs to be checked before
+ setting up the signal handlers.
+
+1999-03-09 Christophe Kalt
+
+ * a_struct_def.h, a_conf_ext.h, a_conf_def.h, a_conf.c, a_io.c,
+ mod_pipe.c, mod_rfc931.c, mod_socks.c: rewrote next_io() and
+ conf_match() to use new more flexible logic.
+
+ * os.h, a_conf.c, iauth.c, configure.in, Makefile.in, acconfig.h:
+ added DSM support.
+
+1999-03-08 Christophe Kalt
+
+ * struct_def.h, a_conf.c, a_conf_ext.h, iauth.c, ircd.c, s_auth.c,
+ s_auth_ext.h, s_bsd.c, s_user.c, s_user_exit.c: added
+ XOPT_{REQUIRED,NOTIMEOUT,EXTWAIT}, added iauth_spawn counter;
+ removed iauth_required variable.
+
+ * struct_def.h, s_auth.c, s_user.c: added FLAGS_DONEXAUTH to get
+ rid of the approximation from yesterday.
+
+ * s_bsd.c/read_message(): use CLR_READ_EVENT() before modifying fd.
+
+1999-03-07 Christophe Kalt
+
+ * res_comp.c: added missing prototypes.
+
+ * struct_def.h, a_conf.c, a_conf_ext.h, iauth.c, s_auth_ext.h,
+ s_auth.c, s_user.c: added option to reject new user connections if
+ iauth is dead (approximate!).
+
+ * struct_def.h, ircd.c, res.c, s_auth.c, s_bsd.c: removed all
+ references to {Set,Clear,Do}Access macros (unused for a LONG time).
+
+ * ircd.c:
+ * check_pings(): fixed "immediate ping timeout" bug.
+ * main(): check for iauth's presence after changing [ug]id.
+
+ * s_bsd.c/do_dns_async(): notify iauth when no PTR record is found.
+
+ * Makefile.in: fix for M4 file path (Matthew Sullivan).
+
+1999-03-04 Christophe Kalt
+
+ * ircd.c/io_loop(), s_bsd.c/start_iauth(): keep trying to restart
+ iauth (up to once every 90 seconds) to avoid being iauth-less.
+
+ * struct_def.h, mod_socks.c, s_auth.c, s_user.c: added new message
+ type from iauth to ircd to allow denying connections without any
+ message sent to &AUTH; used by the socks module.
+
+1999-02-22 Christophe Kalt
+
+ * s_err.c: RPL_TRACESERVICE changed to show values in hexadecimal
+ (from Thomas Kuiper).
+
+ * s_service.c/m_service(): fixed error message.
+
+1999-02-20 Christophe Kalt
+
+ * configure, configure.in, Makefile.in, config.h.dist, buildm4,
+ send.c, ircd.c, s_bsd.c, s_conf.c, s_misc.c, s_serv.c, s_user.c,
+ chkconf.c, a_conf.c, a_log.c: paths overhaul.
+
+ * c_msg_ext.h, c_msg.c: fixed m_server() prototype.
+
+1999-02-19 Kurt Roeckx
+
+ * packet.c/dopacket(), s_bsd.c/read_packet(): bugfix.
+
+1999-02-18 Christophe Kalt
+
+ * res.c/proc_answer(): fixed T_PTR processing (problem reported by
+ Michal Svoboda).
+
+ * channel.c:
+ * del_modeid(): bugfix when called with NULL.
+ * can_join(): readability (from Q).
+
+ * s_serv.c/check_version():
+ * removed code about 2.10.0[ab]*.
+ * never used NJOIN with 0209* servers (bugfix).
+
+ * s_err.c: removed extraneous %s in RPL_UNIQOPIS.
+
+1999-02-09 Kurt Roeckx
+
+ * hash.c/hash_find_channels(): cleanup.
+
+ * ircd.c/main(), ircd_ext.h: various cleanups.
+
+ * res_comp_ext.h: added prototype for ircd_getshort().
+
+ * s_bsd.c/read_message(): typo fix (=! -> !=).
+
+ * s_conf.c/attach_conf(): stops detecting listen sockets as
+ clients from same IP address.
+
+ * s_err.c: removed / from replies.
+
+ * s_serv.c/m_links(): removed unused variable.
+
+ * s_user.c/who_channel(): removed unused variables.
+
+1999-02-05 Christophe Kalt
+
+ * match.c/match(): removed predictable if's (from Tero Jänkä).
+
+ * s_serv.c/m_server_estab(): flush_connections() called once
+ during burst.
+
+ * s_debug.c: updated.
+
+ * ircd.c/io_loop(), s_bsd.c/read_message(), s_bsd_ext.h, config.h:
+ new logic inspired from irce, removed PREFER_SERVER.
+
+ * s_bsd.c:
+ * added read_listeners().
+ * set_sock_opts() now sets SO_SNDLOWAT.
+ * add_connection() now sends a message to client being
+ reject by the anti-clone crap.
+
+ * send.c: added flush_fdary() function.
+
+ * common_def.h, config.h, send.c: removed SENDQ_ALWAYS define,
+ simplified code for when it was undefined as it is only used by
+ the client now.
+
+2.10.2
+
+1999-02-03 Christophe Kalt
+
+ * mod_rfc931.c/rfc931_work(): get rid of any \n in replies.
+
+ * a_io.c/parse_ircd(): when receiving a "DNS timeout" message,
+ inform ircd if we're already done (otherwise, it keeps waiting
+ until timeout).
+
+ * s_bsd.c/completed_connection(): tell iauth not to wait for DNS
+ information for servers we connect to.
+
+ * s_auth.c/read_iauth():
+ * fixed "Garbage" notices to &AUTH.
+ * send E message to iauth when parsing garbage.
+
+1999-01-28 Christophe Kalt
+
+ * s_serv.c/m_server_estab(): added notices to &DEBUG.
+
+ * struct_def.h, s_auth.c: renamed MotdItem to LineItem and moved
+ around some defines.
+
+ * s_bsd_ext.h: added missing ';' for utmp_open() definition.
+
+ * channel.c/m_list(): !shortname now reports +p/+s channels (but
+ still hides member count and topic for +s channels).
+
+ * match.c/match(): rearranged if test to suppress harmless read
+ overflow errors (reported by Insure++).
+
+ * s_user.c/m_nick(): lp needs to be initialized (reported by Insure++).
+
+ * hash.c/hash_find_channels(): bugfix (spottoed by Q).
+
+ * mod_rfc931.c/rfc931_init(): fix for a silly bug (from Piotr).
+
+1999-01-19 Christophe Kalt
+
+ * resolv_def.h, res_comp.c, res_init.c: updated (BIND 4.9.7-REL).
+
+ * packet.c/dopacket(): don't call unzip_packet() without data at
+ beginning of connection only! (from Q).
+
+ * numeric_def.h, s_err.c, channel.c: added numerics RPL_UNIQOPIS
+ (325), ERR_BANLISTFULL (478) and ERR_UNIQOPPRIVSNEEDED (485).
+
+ * channel.c:
+ * m_njoin(): missing return value (reported by Insure++).
+ * m_mode(): use ERR_RESTRICTED for restricted clients.
+ * m_join(): it's now possible to create !!#foo if #foo exists.
+ * m_list(): now works for !shortname.
+
+ * hash_ext.h, hash.c: added hash_find_channels().
+
+ * configure.in, os.h:
+ * update for autoconf 2.13.
+ * let's trust autoconf to decide to use poll() or not.
+
+ * s_bsd.c: sendto_flags() doesn't exist, it's sendto_flag().
+
+ * mod_rfc931.c:
+ * stats weren't initialized.
+ * added undocumented "protocol" option (it's boring!).
+
+ * mod_socks.c:
+ * fixed never occuring memory leak.
+ * improved stats (from Piotr Kucharski).
+
+ * s_user_ext.h, s_user.c, s_service.c: added a parameter to
+ do_nick_name() [UID].
+
+1999-01-12 Christophe Kalt
+
+ * a_log_def.h, mod_pipe_ext.h, a_externs.h, mod_pipe.c, a_conf.c:
+ finally wrote the pipe module.
+
+ * struct_def.h, a_conf_def.h, a_io_ext.h, iauth.c, mod_rfc931.c,
+ mod_socks.c, s_auth.c, s_auth_ext.h, s_misc.c: iauth now sends
+ statistics to ircd, shown by /stats t.
+
+ * a_conf_def.h, a_conf.c, a_log_def.h, mod_socks.c: SOCKS module
+ overhaul: added caching, rewrote code to use v4 instead of v5, and
+ to be smarter (Based on work from Piotr Kucharski).
+
+ * s_user.c: do_nick_name() now rejects "anonymous".
+
+ * packet.c/dopacket(): don't call unzip_packet() without data.
+
+ * channel.c: extension to del_modeid() from Kaspar Landsberg.
+
+ * s_bsd.c: don't call dopacket() again for compressed links just
+ because the output buffer was filled up.
+
+1998-12-31 Christophe Kalt
+
+ * ircd.c: removed extraneous flush_connections() call in io_loop().
+
+ * ircd.c, s_bsd.c, list.c, list_ext.h: removed unused 'active' code.
+
+ * struct_def.h, parse.c: removed various unused aClient fields.
+
+1998-12-24 Christophe Kalt
+
+ * s_service.c: using FLAGS_CBURST for services has too many
+ implications; reverted.
+
+ * struct_def.h, s_bsd.c, s_zip.c: removed requirement for
+ inflate() to never fill up the uncompression output buffer, an
+ unlikely situation which is now dealt with. (mostly from Q).
+
+1998-12-21 Christophe Kalt
+
+
+ * s_user.c:
+ * [RFC] suppressed an error reply for notices in m_message().
+ * server notices to +n channels were failing. (Reported by Q).
+
+ * a_defines.h: INET6 fix for OSF (from Roar Thronęs).
+
+ * os.h: INET6 fix for OSF (from Roar Thronęs).
+
+ * channel.c: added check against 'duplicate joins' in m_njoin().
+
+1998-12-14 Christophe Kalt
+
+ * channel.c:
+ * yet another +a/+r fix in set_mode().
+ * send_channel_modes() would occasionnally send duplicate
+ bans. (Reported by Robert Martin-Legene <robert@irc.ircnet.dk>)
+
+ * iauth.c, a_io.c: added nonexistant INET6 code.
+
+ * os.h, nameser_def.h, resolv_def.h: OSF portability fix from Roar
+ Thronęs.
+
+ * s_auth.c: added missing INET6 code. (Roar Thronęs)
+
+1998-09-25 Christophe Kalt
+
+ * configure.in: Check for IPv6 system type and update $LIBS (from
+ KIKUCHI Takahiro <kick@kyoto.wide.ad.jp>)
+
+ * bsd.c, os.h, parse.c, struct_def.h, support.c, support_ext.h,
+ c_bsd.c, c_version.c, c_version_ext.h, irc.c, swear.c, channel.c,
+ chkconf.c, ircd.c, nameser_def.h, res.c, res_def.h, res_init.c,
+ resolv_def.h, s_auth.c, s_bsd.c, s_conf.c, s_debug.c, s_misc.c,
+ s_serv.c, s_user.c, acconfig.h, configure.in: merged 2.9.5+IPv6.
+
+1998-04-12 Christophe Kalt
+
+ * configure.in, s_debug.c: vsyslog() isn't necessarely available
+ even if USE_STDARG is defined. (Digital Unix)
+
+1998-04-04 Christophe Kalt
+
+ * c_version_ext.h, c_version.c, irc.c, swear.c: Digital Unix 4.0B
+ port (Roar Thronęs <roart@nvg.ntnu.no>)
+
+1998-12-12 Christophe Kalt
+
+ * channel.c: +a/+r fix for !channels.
+
+1998-11-20 Christophe Kalt
+
+ * irc.c: allocate me.info (fix by Helmut Franzke <hf@rp-online.de>).
+
+2.10.1
+
+1998-11-12 Christophe Kalt
+
+ * Doc references to @stealth.net changed to @irc.org.
+
+ * s_serv.c: report_ping() now sends some extra info to &DEBUG.
+
+ * s_bsd.c: send_ping() window set to 20 minutes (instead of 10),
+ and never close it.
+
+1998-11-03 Christophe Kalt
+
+ * s_serv.c: changed m_trace() to only show unknowns to opers and
+ local clients.
+
+ * a_io.c: fd remap processing bugfix (from Q@ping.be).
+
+ * s_bsd.c: fixed ircd/iauth problem with servers ircd connects to.
+
+1998-10-31 Christophe Kalt
+
+ * parse.c: reordered msgtab[].
+
+ * s_serv.c: added more restrictions to m_links(), m_stats() [t],
+ m_motd() and m_lusers() for remote clients. (*sigh*)
+
+ * channel.c: fixed count_channels() not to count empty channels.
+
+1998-10-28 Christophe Kalt
+
+ * s_user.c: optimized m_whois() (pointed out by several people).
+
+ * s_user.c, channel.c: channel creator flag is now removed on -o.
+
+ * channel.c:
+ * !channel creation is now done with !! rather than !#.
+ * fixed channel counters (affects /lusers & /stats z).
+ * m_njoin(): simple optimization.
+
+Sat Oct 10 18:55:38 1998 Christophe Kalt <kalt@millennium.stealth.net>
+
+ * a_io.c: don't TST_* if cldata[i].?fd <= 0 in loop_io().
+
+ * ircd.s, s_auth.c, s_bsd.c, s_bsd_ext.h: always attempt to
+ restart iauth in start_iauth() after receiving a SIGUSR1.
+
+ * s_service.c: reverted part of last change.
+
+ * s_user.c: last change introduced a bug. (typo, reported by N. Aust)
+
+ * channel.c: fixed match_modeid() to handle remote clients
+ properly now that it's used from can_send().
+
+Thu Oct 8 18:33:50 1998 Christophe Kalt <kalt@millennium.stealth.net>
+
+ * configure.in: always compile with -g flag, and never strip.
+
+ * channel.c:
+ * renamed sub1_from_channel() to free_channel().
+ * always send modes for empty channels during netjoin.
+ * fixed old (2.9.x) memory leak in collect_channel_garbage().
+
+ * s_id.c:
+ * linked list corruption bugfix in collect_chid().
+ * added logic to avoid excessive caching in cache_chid().
+
+ * s_service.c: stdarg bugfix in check_service_butone (from O.G.).
+
+Sun Sep 27 15:12:53 1998 Christophe Kalt <kalt@millennium.stealth.net>
+
+ * s_user.c: prefix bugfix (reported by mrg).
+
+2.10.0p1
+
+Fri Sep 25 22:21:06 1998 Christophe Kalt <kalt@millennium.stealth.net>
+
+ * channel.c: check for +r mode before calling reop_channel().
+
+2.10.0
+
+Wed Sep 23 19:55:14 1998 Christophe Kalt <kalt@millennium.stealth.net>
+
+ * configure.in, os.h: don't trust poll() to work if it exists.
+
+ * channel.c:
+ * removed FULLV2_10 ifdef's
+ * don't send empty NJOIN in m_njoin() (Reported by Beeth).
+
+ * channel.c, s_debug.c, config.h.dist: removed MIRC_KLUDGE.
+
+ * chkconf.c: added warning about old V line format.
+
+ * config.h.dist: OPER_DIE is now defined by default.
+
+ * s_user.c: reverted last change, and hostnames are now truncated.
+
+ * os.h: preprocessor syntax fix.
+
+ * s_conf.c: stupid typo in match_ipmask().
+
+ * s_auth.c: added a new debugging notice.
+
+ * s_debug.c: flags update.
+
+ * ircd.c:
+ * added some debugging info in restart notice.
+ * changed strdup() in mystrdup() (from Andrew Snare).
+
+Sun Sep 20 15:22:25 1998 Christophe Kalt <kalt@millennium.stealth.net>
+
+ * os.h, configure.in: configure now checks for poll() existence to
+ decide if it should be used.
+
+ * res_init.c, s_conf.c: strncpy() bugfixes (from Q).
+
+ * s_auth.c, mod_rfc931.c: '[' is no longer allowed in ident replies.
+
+ * channel.c: don't let chanops set +a on !channels.
+
+ * a_io.c: (weirdbug)fix.
+
+ * s_err.c: numeric 004 update.
+
+ * s_user.c: connections rejected by iauth are now shown as K-lined
+ in &LOCAL.
+
+ * s_bsd.c: new PASS syntax (Q).
+
+Sun Sep 13 20:32:08 1998 Christophe Kalt <kalt@millennium.stealth.net>
+
+ * config.h.dist, ircd.c: removed MYNAME.
+
+ * Makefile.in, config.h.dist: SPATH/APATH cleanup.
+
+ * parse.c: ABW fix (Leon Brouwers <leonb@sci.kun.nl> and purify).
+
+Sat Sep 12 18:53:39 1998 Christophe Kalt <kalt@millennium.stealth.net>
+
+ * ircd.c, s_bsd.c: SIGCHLD handling code to avoid zombies.
+
+ * s_bsd.c:
+ * udpfd used in place of adfd in in read_message().
+ * silently deal with linux accept() way of life.
+
+ * a_io.c: loop_io() bugfix for select() systems.
+
+ * ircd.c:
+ * me.info from ircd.conf was overridden in setup_me().
+ * server_reboot() created a zombie.
+
+ * s_user.c: allow servers to speak on channels (reported by Q).
+
+ * channel.c:
+ * NJOIN bugfix related to unique ops (reported by Q).
+ * removed old core from msa.
+
+ * various little cleanups.
+
+ * res.c: buffer overflow fix. (thanks to Leon Brouwers
+ <leonb@sci.kun.nl> and purify)
+
+Tue Sep 8 21:23:27 1998 Christophe Kalt <kalt@millennium.stealth.net>
+
+ * s_user.c: user mode +a propagation bugfix.
+
+ * ircd.c: die immediately if no listener exists after reading the conf.
+
+ * send_ext.h, send.c, channel.c: backward compatibility fix for eI
+ channel modes (added sendto_match_servs_v()).
+
+Mon Sep 7 18:03:34 1998 Christophe Kalt <kalt@millennium.stealth.net>
+
+ * s_bsd.c: inversed test for -s in start_iauth().
+
+ * channel.c:
+ * keys starting with ':' don't propagate correctly.
+ * m_njoin() didn't send modes properly to clients.
+
+ * s_serv.c:
+ * slightly changed the PASS syntax again.
+ * 2.10 alphas didn't recognize peers as such (reported by Q).
+
+Sun Aug 23 22:16:40 1998 Christophe Kalt <kalt@millennium.stealth.net>
+
+ * struct_def.h, ircd.c, list.c, list_ext.h, s_conf.c, s_serv.c,
+ s_service.c, s_user.c: aClient's info is now dynamically allocated
+ to overcome server handshake limitations.
+
+Sat Aug 22 15:20:10 1998 Christophe Kalt <kalt@millennium.stealth.net>
+
+ * channel.c: fixed ^G bug (only triggered in channel creation)
+
+ * struct_def.h, channel.c, s_err.c, s_user.c: AWAY is back.
+
+Sun Aug 16 16:01:15 1998 Christophe Kalt <kalt@millennium.stealth.net>
+
+ * ircd.c:, s_bsd.c: added -s switch.
+
+Sat Aug 8 14:21:20 1998 Christophe Kalt <kalt@millennium.stealth.net>
+
+ * s_serv.c: Roger's diff broke compression. (reported by Andre Koopal)
+
+ * Makefile.in: iauth didn't know where to find zlib.h (reported
+ by delta)
+
+ * a_log.c: typos in parameter names (reported by delta).
+
+Fri Aug 7 23:54:10 1998 Christophe Kalt <kalt@millennium.stealth.net>
+
+ * mod_rfc931.c: added sanity check on replies.
+
+Fri Aug 7 00:03:45 1998 Christophe Kalt <kalt@millennium.stealth.net>
+
+ * mod_rfc931.c: read RFC 1413 and fixed the reply parser.
+
+ * numeric_def.h, s_err.c, s_auth_ext.h, s_auth.c, s_serv.c: added
+ /stats a to show iauth's configuation.
+
+ * s_auth.c, a_*.[ch], mod_*.c:
+ * SIGUSR2 will cause iauth to close and reopen log file(s).
+ * worked around delayed messages from the iauth caused by
+ ircd's fd remapping habit.
+ * reduced memory usage by dynamically allocating `inbuffer'.
+ * added G message (a->i).
+ * added E message (i->a) and cleaned up errors messages in
+ parse_ircd().
+ * added a/A messages (a->i) to transmist configuration.
+ * revisited next_io() and hopefully fixed the logic.
+
+ * ircd.c, res.c, s_auth.c, s_auth_ext.h, s_bsd.c, s_user.c:
+ * stdarg'ized sendto_iauth().
+ * iauth is now automatically restarted.
+ * fixed bcopy() length in read_iauth().
+ * added notices to track the "" username bug.
+
+Tue Aug 4 21:43:53 1998 Christophe Kalt <kalt@millennium.stealth.net>
+
+ * a_io.c: numerous bug fixes..
+
+ * mod_rfc931.c: fix to prevent crash when receiving data from
+ broken ident servers.
+
+ * a_conf.c, a_conf_def.h, a_externs.h, a_log_def.h: added module
+ `socks'. (Based on a 2.9.5 diff from Jonathan Chapman)
+
+ * a_log.c: added timestamps to `auth' log.
+
+ * s_misc.c: EXITC_AREF is a special case like EXITC_REF.
+
+ * parse.c: penalty bugfix.
+
+ * ircd.c, s_auth.c, s_bsd.c, s_bsd_ext.h:
+ * cleaned up iauth startup procedure, added start_iauth()
+ which is called upon SIGUSR1.
+ * various fixes in read_iauth().
+
+Sun Aug 2 18:34:20 1998 Christophe Kalt <kalt@millennium.stealth.net>
+
+ * s_mist_ext.h, s_misc.c, support_ext.h, support.c: moved
+ myctime() from s_misc.c to support.c.
+
+ * s_bsd.c, a_io.c: added `R' message from ircd to iauth.
+
+ * s_serv.c: updated check_version() not to use NJOIN with 2.9.5 links.
+
+ * parse.c: restricted SQUERY to users.
+
+ * channel.c:
+ * m_njoin(): conversion bugfix (Reported by Q).
+ * added FULLV2_10 #if's.
+
+ * struct_def.h, channel.c, s_err.c, s_misc.c: added channel mode `r'.
+
+ * send.c: reference to NULL pointer in sendto_match_servs()
+ (Reported by Core).
+
+ * sys_def.c, chkconf.c: MyFree() redefinitions (from Core).
+
+ * Makefile.in: "make install-server" path problems.
+
+Sun Jul 19 15:32:48 1998 Christophe Kalt <kalt@millennium.stealth.net>
+
+ * s_conf.c, ircd.c: unitialized K line comment in check_pings().
+
+ * channel.c:
+ * beI modes to multiple channels were corrupted.
+ * mode parameters starting with : don't propagate correctly.
+ * !channel creation propagation was broken (reported by Eumel).
+
+ * send.c, struct_def.h, channel.s, res.c, ircd.c, s_auth.c,
+ s_auth_ext.h, s_bsd.c, s_bsd_ext.h, s_conf.c, s_user.c,
+ Makefile.in, config.h.dist: added iauth.
+
+Fri Jun 12 19:00:03 1998 Christophe Kalt <kalt@millennium.stealth.net>
+
+ * ircd.c: fix for inetd support (from Jonathan Chapman
+ <jonathan@clover.net>).
+
+ * parse.c, s_debug.c: more LOCOP_* fixes (from Michael Neumayer).
+
+ * s_user.c: oper counter bugfix (from Magnus Tjernstrom).
+
+ * channel.c:
+ * fixed join #a,#b,.. desynch bug (reported by viha@vip.fi).
+ * fixed netjoin +p/+s desynch problem (same).
+
+Sun May 31 14:18:41 1998 Christophe Kalt <kalt@millennium.stealth.net>
+
+ * send.c, channel.c: '-' leftovers (Michael Neumayer <eumel@42.org>).
+
+Mon May 25 15:13:51 1998 Christophe Kalt <kalt@millennium.stealth.net>
+
+ * struct_def.h, channel.c, hash.c, s_misc.c: changed new channels
+ prefix to ! (instead of -).
+
+ * parse.c: undefining LOCOP_* had no effect (reported by Eumel).
+
+ * s_service.c: SERVICE_WANT_OPER burst fix (from Jonathan Chapman).
+
+ * s_bsd.c: SO_LINGER patch (from Andrew Snare <ajs@pigpond.com>).
+
+ * configure.in: better logic for --resconf.
+
+ * channel.c:
+ * m_invite() fix for &channels.
+ * add_modeid() always used RPL_BANLIST.
+ * bIe modes coming from a server were rejected
+ add_modeid() if another mode with the same pattern existed.
+
+ * c_debug_ext.h, c_debug.c, chkconf.c, s_misc.c, s_zip.c: fixes
+ for DEBUGMODE (from Andrew Snare <ajs@pigpond.com> & Magnus
+ Tjernstrom <d92-mtm@ludd.luth.se>)
+
+ * hash.c: bigger_prime() useless optimization from Magnus :-)
+
+Tue May 5 19:26:25 1998 Christophe Kalt <kalt@millennium.stealth.net>
+
+ * config.h.dist, Makefile.in, struct_def.h, s_externs.h, send.c,
+ channel.c, hash.c, s_debug.c, s_err.c, s_misc.c, s_serv.c,
+ s_user.c: implemented new channels.
+
+ * struct_def.h, parse.c, channel.c, ircd.c, s_debug.c, s_misc.c,
+ s_serv.c, s_user.c, whowas.c, config.h.dist: replaced BIG_NET #define.
+
+Fri Apr 24 20:30:21 1998 Christophe Kalt <kalt@millennium.stealth.net>
+
+ * irc.c: missing refresh() (from Dave Hill <ddhill@zk3.dec.com>).
+
+ * s_conf.c, s_service.c: portability fixes from Avalon.
+
+ * channel.c, s_user.c: adapted undernet's Bquiet.
+
+Sun Apr 5 17:50:08 1998 Christophe Kalt <kalt@millennium.stealth.net>
+
+ * configure, configure.in, config.h.dist: added --logdir option.
+
+ * s_serv.c:
+ * moved user wallops from #wallops to +wallops.
+ * stricter m_server() check for unregistered users.
+
+ * send.c: wallops were sent to services and unregistered clients.
+
+Sat Apr 4 19:05:26 1998 Christophe Kalt <kalt@millennium.stealth.net>
+
+ * struct_def.h, packet.c, s_bsd.c: (never triggered) link
+ compression bugfix (Roger Espel Llima <espel@llaic.u-clermont1.fr>).
+
+ * config.h.dist, ircd.c, s_debug.c: added PREFER_SERVER #define.
+
+ * s_user.c:
+ * m_oper() notice bug fix (Michael 'Eumel' Neumayer).
+ * completely disabled AWAY.
+
+ * struct_def.h, parse.c, channel.c, ircd.c, s_debug.c, s_misc.c,
+ s_serv.c, s_user.c, whowas.c, config.h.dist: added BIG_NET #define.
+
+ * s_misc.c; Y2K fix.
+
+Tue Mar 31 18:52:41 1998 Christophe Kalt <kalt@millennium.stealth.net>
+
+ * s_serv.c: removed now obsolete USE_NJOIN.
+
+ * numeric_def.h, struct_def.h, channel.c, s_debug.c, s_err.c,
+ s_serv.c: added channel modes +e (EFnet's exceptions to bans) and
+ +I (invitations); raised MAXBANS (should be renamed) to 30.
+
+ * support.c: extended make_version().
+
+ * channel.c:
+ * notify user when a ban is rejected because "redundant".
+ * /invite (from chanop) now overrides bans & limit.
+
+ * s_debug.c, s_serv.c: /stats r no longer restricted to DEBUGMODE.
+
+ * s_bsd.c: getrlimit()/setrlimit() is now used regardless of
+ poll() availibility.
+
+Sun Mar 22 14:01:24 1998 Christophe Kalt <kalt@millennium.stealth.net>
+
+ * channel.c: MIRC_KLUDGE sent bogus modes on channel creation.
+
+ * os.h, support.c, s_bsd.c: CYGWIN32 cleanup from Dave Miller.
+
+ * s_user.c: hunt_server() cleanup.
+
+ * s_conf.c: match_ipmask() choked on a.b.c.d/z (reported by Helmut
+ Springer <delta@RUS.Uni-Stuttgart.DE>).
+
+2.9.5
+
+Tue Feb 17 21:25:02 1998 Christophe Kalt
+
+ * s_bsd.c: w32 doesn't have a working fork().
+
+ * ircd.c: deal with "getpwuid(getuid())" returning NULL.
+
+ * configure.in, os.h, support.c: use our own truncate() when
+ needed (CYGWIN32), and CYGWIN32 portability. (Thanks to Dave
+ Miller <yahoo@molalla.net>).
+
+ * config.guess: update.
+
+ * s_user.c: broadcast restriction wasn't right (Yegg).
+
+ * send.c, ircd.c: removed noisy debugging notices.
+
+Sat Feb 7 09:21:52 1998 Christophe Kalt
+
+ * s_user.c:
+ * oper log is now more verbose.
+ * broadcast messages/notices are now less restricted.
+
+ * hash.c: nitpicking (from Magnus Tjernstrom).
+
+ * configure.in: quoting cleanup (from Alain).
+
+ * send_ext.h, s_debug.h: STDARG prototyping cleanup (from Alain).
+
+Fri Jan 23 17:39:17 1998 Christophe Kalt
+
+ * os.h: linux 2.1 implements poll() but the header files are a
+ mess (what did you expect?), kludge to get it work (from Vesa).
+
+ * channel.c: fixes related to MIRC_KLUDGE.
+
+ * s_conf.c:
+ * find_kill() fix and cleanup (mostly from Vesa).
+ * find_bounce() stricter check and fix (from Vesa).
+
+ * parse.c: m_njoin() is only used by the server.
+
+Fri Jan 23 17:38:36 1998 Christophe Kalt
+
+ * channel.c:
+ * buffer overflow fix.
+ * bugfix from Avalon.
+ * join/invite were propagated for &channels. (reported by DLR)
+ * invite/kick were propagated beyond masks. (reported by DLR)
+ * multiple kicks could desynch channels.
+
+ * s_user.c: stricter check on unregistered NICK changes (Avalon).
+
+ * hash.c: hash_find_server() didn't handle z.stealth.net (1
+ letter) masked by *.stealth.net (DLR).
+
+ * msg_def.h, struct_def.h, channel_ext.h, parse.c, channel.c,
+ s_serv.c: added send_channel_members() and m_njoin().
+
+ * send_ext.h, send.c: added sendto_serv_notv().
+
+ * buidm4: yet another m4 booboo. (fix from Mario)
+
+Wed Jan 7 11:40:59 1998 Christophe Kalt
+
+ * s_user.c: strncpy() lameness.
+
+ * s_conf.c: added match_ipmask() (from Vesa).
+
+ * configure.in, send_ext.h: "checking for working stdarg" always
+ failed because of a quoting problem.
+
+Thu Dec 18 21:48:18 1997 Christophe Kalt
+
+ * channel.c: abusive usage of /names now forbidden.
+
+ * class.c: imposed a minimum of 60 seconds for connect frequencies.
+
+ * struct_def.h, s_misc.c, s_serv.c: check_link() tuning and statistics.
+
+Tue Dec 16 17:12:16 1997 Christophe Kalt
+
+ * s_conf.c: finished D lines.
+
+ * numeric_def.h, struct_def.h, list.c, s_err.c, s_serv.c: added
+ check_link() to prevent server links from being flooded by replies
+ to user requests.
+
+ * s_bsd.c: try to prevent the server from flooding with UDP pings.
+
+ * channel.c: #foo:*.tld modes were always sent during the burst.
+
+Wed Nov 12 21:02:15 1997 Christophe Kalt
+
+ * struct_def.h, s_conf_ext.h, s_conf.c, ircd.c, chkconf.c,
+ numeric_def.h, s_err.c , s_serv.c: added D configuration
+ lines. (/stats h)
+
+ * send.c, s_service.c: allocate more dbufs during a service burst
+ if needed.
+
+ * channel.c: cosmetics, and fixed the use of MAXPENALTY in m_kick().
+
+ * s_debug.c: too many parameters in a call to sendto_one().
+
+2.9.4
+
+Sat Oct 18 09:37:33 1997 Christophe Kalt
+
+ * setup.h.in, configure.in: (Alain Nissen)
+ * additional header files checked.
+ * non-blocking system test fixed.
+
+ * os.h: curses/termcap stuff is now only used for the client (AN).
+
+ * swear_ext.h, swear.c: portability issues (Alain Nissen).
+
+ * c_bsd.c, s_bsd.c, os.h: SELECT_FDSET_TYPE (defined in os.h) used
+ as pointer type in select() calls; HPUX compilation problem
+ fixed. (Alain Nissen)
+
+ * buildm4: typo & missing quote. (again!)
+
+Fri Oct 10 23:48:25 1997 Christophe Kalt
+
+ * s_serv.c: improved m_die() and m_restart() in case a service is
+ used for user log.
+
+ * os.h, acconfig.h, configure.in, res.c, s_bsd.c: (Alain Nissen)
+ * kludge to deal with broken hostent declaration in
+ netdb.h on some linux systems.
+ * test for sigaction & sigset functions added back; signal
+ implementation test fixed.
+
+ * s_conf.c:
+ * more explicit K line message when reason specified in
+ ircd.conf.
+ * extended I lines syntax.
+
+ * s_service_ext.h, s_service.c, s_misc.c: faster split handling is
+ possible now that 2.8.x protocol is history.
+
+ * channel.c:
+ * m_join() was unefficient on net joins.
+ * MIRC_KLUDGE would never show +ov modes.
+
+ * s_user.c:
+ * services can now send to channels (if the modes allow it).
+ * prefixes for restricted connections were gone.
+
+ * buildm4: missing quote.
+
+2.9.4b
+
+Wed Oct 1 21:57:45 1997 Christophe Kalt
+
+ * chkconf.c: added knowledge of B lines.
+
+ * s_debug.c: more info on dbufs for better tuning.
+
+ * channel.c: bans on IP are now matched against resolving clients.
+
+ * s_conf.c: K lines on IP can now be matched against resolving clients.
+
+ * buildm4: update for Y and K line macros, and added macros for
+ B,V,i and k lines (Mario Holbe).
+
+ * s_conf.c: Y global limit per host didn't work.
+
+Wed Sep 24 18:25:45 1997 Christophe Kalt
+
+ * acconfig.h, configure.in, setup.h.in, resolv_def.h, res_init.c:
+ added --resconf=FILE option to configure (Alain Nissen).
+
+ * s_conf.c: fixed bug with Y limits.
+
+Tue Sep 23 11:36:30 1997 Christophe Kalt
+
+ * common_def.h: added CHKCONF_COMPILE statement.
+
+ * bsd_ext.h: incorrect declaration for writeb.
+
+ * support_ext.h, support.c: dumpcore() was broken.
+
+ * class_def.h, class_ext.h, class.c, s_conf.c, s_err.c: it's now
+ possible to combine a limit per host and per user@host for the
+ same class.
+
+ * s_user.c:
+ * RPL_ENDOFWHO wasn't correct.
+ * who_find() / m_whois() didn't always respect +a mode.
+ * @ restriction in username could be bypassed.
+ * unlikely but nonetheless possible ghost generation.
+
+ * ircd.c: setgid() was called after setuid() (reported by Nicole
+ Haywood <kole@mail.usyd.edu.au>)
+
+ * parse.c: avoid a match() call if possible.
+
+Sun Sep 14 19:44:27 1997 Christophe Kalt
+
+ * ircd.c: redundant/useless code commented out.
+
+ * struct_def.h, parse.c, s_err.c, s_serv.c: `stats m' is more verbose.
+
+ * os.h, Makefile.in: zlib.h was missing from includes.
+
+ * s_user.c: 2 fixes (a NULL pointer, and a non reinitialized one).
+
+Thu Sep 11 21:43:20 1997 Christophe Kalt
+
+ * class_def.h, class_ext.h, class.c, s_bsd.c, s_conf.c, s_err.c,
+ s_user.c: added 2 fields to Y lines and implemented [u@]h global
+ limits.
+
+ * service_def.h, channel.c, s_service.c: added SERVICE_WANT_VCHANNEL.
+
+ * channel.c: server channels now have a topic.
+
+ * s_conf.c: negative class numbers are now forbidden.
+
+ * s_conf_ext.h, s_conf.c, s_bsd.c: new B lines format.
+
+Sun Sep 7 20:02:50 1997 Christophe Kalt
+
+ * s_conf.c: B lines now catch "unauthorized connections".
+
+ * s_user.c: m_who() limit wasn't coded. fixed this and rewrote
+ m_who() because recursivity and penalty don't go together.
+
+ * s_err.c: REPL_SERVLIST type field is now in hexa.
+
+ * service_def.h, send.c, s_misc.c, s_user.c: extended services
+ capabilities so they can do logging.
+
+ * s_serv.c, s_user.c: added MD5 support for crypt() (from Urvos Juvan).
+
+ * res.c: hostnames containing * or ? are now rejected.
+
+ * s_conf.c: service type field stripped from optional bits (in S
+ lines).
+
+ * s_serv.c: server token wasn't sent to services in m_server_estab().
+
+ * s_service.c: SERVICE_WANT_PREFIX wasn't honored by m_squery().
+
+ * struct_def.h, parse.c, s_serv.c, s_user.c:
+ * added MyService() macro and updated several tests.
+ * next_client() was ignoring services.
+
+Tue Aug 19 08:38:54 1997 Christophe Kalt
+
+ * channel.c: m_names() could still have a truncated reply.
+
+ * more cleaning from Alain.Nissen@ulg.ac.be:
+
+ * struct_def.h, bsd.c, s_bsd.c: removed references to "pyr".
+ * res_comp.c: removed res_getshort() [never used].
+ * removed all references to VMS.
+
+Mon Aug 11 13:34:15 1997 Christophe Kalt
+
+ * The following changes are from Alain.Nissen@ulg.ac.be
+
+ * all files (in short):
+ * include/ was removed.
+ * all .c have a corresponding _ext.h to declare external
+ variables and functions.
+ * [sc]_externs.h are #includes *_ext.h.
+ * [sc]_defines.h are #includes *_def.h.
+ * all .c have the same list of #include.
+ * os.h has all system #includes and portability tests.
+
+ * Also, several bug and portability fixes:
+
+ * c_bsd.c: move renamed in tcap_move (portability).
+ * c_msg.c:
+ * added test on DOCURSES before including it.
+ * various casts.
+ * edit.c:
+ * return type of suspend_irc() changed to RETSIGTYPE.
+ * added int argument to suspend_irc().
+ * use of signal(SIGTSTP,...) now depends on
+ whether the signal exists rather than the OS.
+ * help.c: helplist rewritten properly.
+ * irc.c:
+ * strdup() replaced with mystrdup().
+ * do_log() takes 2 arguments.
+ * return type of quit_intr() changed to RETSIGTYPE.
+ * added int argument to quit_intr().
+ * screen.c: such a mess
+ * LINES is only present under curses.
+ * idem for refresh().
+ * clear_to_eol() is supposed to take 2 arguments,
+ but what are they?
+ * swear.c: added to clients targets
+ * channel.c: delch renamed in del_ch.
+ * chkconf.c, parse.c: newline renamed in irc_newline.
+ * ircd.c: s_monitor(), s_die(), s_rehash(), s_restart()
+ return type changed from VOIDSIG to RETSIGTYPE.
+ * res.c: now using SOCK_LEN_TYPE.
+ * res_comp.c, res_init.c: various portability changes.
+ * s_auth.c: now using SOCK_LEN_TYPE.
+ * s_bsd.c: now using SOCK_LEN_TYPE.
+ * s_conf.c: several portability fixes.
+ * s_err.c: local_replies[] and local_replies[] rewritten.
+ * s_service.c: changed test on USE_STDARG.
+ * bsd.c:
+ * return type for dummy() is now RETSIGTYPE.
+ * dummy() now takes one int argument.
+ * dbuf.c: removed unused DBUF_INIT.
+ * support.c:
+ * many changes concerning #if tests.
+ * added solaris_gethostbyname() to use instead of
+ Solaris 2.3 broken gethostbyname().
+ * added irc_memcmp() to use if system's memcmp()
+ is broken.
+ * nameser.h: now using WORDS_BIGENDIAN.
+ * configure.in:
+ * simpler solaris 2.x detection when looking for zlib.
+ * added test for cursesX.
+ * added check for sys_errlist definition in sys/errno.h
+ * and more...
+ * Makefile.in: CFLAGS split in S_CFLAGS, C_CFLAGS and
+ CC_CFLAGS (ircd, irc, chkconf).
+
+Fri Aug 8 10:51:24 1997 Christophe Kalt
+
+ * channel.c: m_names() behaviour wasn't consistent with m_who()
+ concerning +p channels (Michael 'Eumel' Neumayer).
+
+ * configure.in: minor changes (Alain Nissen).
+
+ * s_user.c: missing argument to err_str() (Kai Seidler).
+
+ * config.h.dist, h.h, struct.h, common.c, channel.c, s_bsd.c,
+ s_debug.c, s_err.c, s_misc.c, s_serv.c, s_service.c, s_user.c:
+ removed support for 2.8 protocol.
+
+ * config.h.dist, msg.h, channel.c, note.c, s_bsd.c, s_debug.c,
+ s_misd.c, s_user.c: removed NOTE.
+
+ * s_bsd.c: wrong argument to bzero().
+
+ * Makefile.in, buildm4: rev.sh replaced by config.guess and
+ buildm4 wasn't ran by `make install-server'.
+
+2.9.3
+
+Wed Jul 23 11:23:30 1997 Christophe Kalt
+
+ * res.c: queries were never resent when reaching timeout (C. Behrens).
+
+ * acconfig.h, configure.in: better sys_errlist test (A. Nissen).
+
+ * version.c.SH.in: portability (A. Nissen).
+
+ * acconfig.h, configure.in, common.h, config.h.dist: AIX cleanup
+ and optimization flags (A. Nissen).
+
+ * configure.in: typo.
+
+Thu Jul 17 23:04:48 1997 Christophe Kalt
+
+ * c_numeric.c, irc.c: fixes from Vesa.
+
+ * send.c: buffer overflow fix.
+
+ * h.h, res_init.c: portability fixes.
+
+Wed Jul 16 21:35:50 1997 Christophe Kalt
+
+ * s_serv.c: m_die() referenced data after freeing it.
+
+ * support.c, res.c: silly changes to make purify happier.
+
+ * s_bsd.c: fixed memory corruption problem.
+
+ * s_user.c: m_whois() voice flag changed back to + (from !).
+
+ * h.h, support.c, configure.in: reverted back: use inet_* if
+ present, use our own inet* if not. Our functions must be
+ different to avoid some crazy clash when bind 8.x is on installed
+ the system. Should we teach configure.in about -lbind?
+
+Tue Jul 15 00:18:01 1997 Christophe Kalt
+
+ * inet_addr.c moved to support.c, renamed functions (inet_addr,
+ inet_aton, inet_ntoa, inet_netof) to avoid clashes; always used
+ even if the system has it.
+
+ * New configure and Makefile from Alain Nissen. (many many files
+ changed, removed, created, rewritten)
+
+ * buildm4: update (Mario Holbe).
+
+ * struct.h, s_bsd.c: fixed the P line rehash bug(?).
+
+ * h.h, ircd.c: let's be nice to SunOS' cc.
+
+Mon Jun 30 21:41:11 1997 Christophe Kalt
+
+ * dbuf.c, send.c: earlier changes broke the client.
+
+ * config.h.dist, struct.h, dbuf.h, dbuf.c: new magic formula to
+ compute BUFFERPOOL. Added MAXSERVERS for this purpose.
+
+ * s_serv.c: buffer overflow (Chris Behrens).
+
+Thu Jun 26 19:18:24 1997 Christophe Kalt
+
+ * struct.h, channel.c, hash.c, parse.c, send.c, s_misc.c,
+ s_service.c:
+ * cleanup.
+ * added &SERVICES.
+
+ * s_bsd.c: wrong buffer size given to getsockopt().
+
+Thu Jun 19 18:35:37 1997 Christophe Kalt
+
+ * h.h, struct.h, s_debug.c, send.c, dbuf.c:
+ * dbuf stats.
+ * send_message() #ifndef SENDQ_ALWAYS was not uptodate,
+ tried to bring it back up to date.
+
+ * res.c: fixed possible buffer overflow.
+
+ * h.h, s_debug.c, send.c: fixes for STDARG (Olivier Galibert)
+
+ * ircd.c: server_reboot() would crash when called because of "out
+ of memory".
+
+Mon Jun 9 20:49:55 1997 Christophe Kalt
+
+ * config.h.dist, h.h, struct.h, send.c, ircd.c, list.c, s_debug.c,
+ s_serv.c, s_user.c: removed #define KRYS, it is now always `defined'.
+
+ * config.h.dist, h.h, common.h, service.h, sys.h, configure.in,
+ send.c, support.c, s_auth.c, s_service.c, s_debug.c, s_conf.c:
+ removed references to varargs, added support for stdargs.
+ It is controlled by #define USE_STDARG set by configure. (adapted
+ from Olivier Galibert)
+
+ * ircd.c: CHROOT is really called CHROOTDIR.
+
+ * s_user.c:
+ * extended m_message() to accept n!u@h as recipient.
+ * removed notice for bogus PONG.
+
+ * s_serv.c: /SQUIT now requires 2 arguments from opers.
+
+Sun Jun 1 16:57:39 1997 Christophe Kalt
+
+ * dbuf.h, dbuf.c: #define DBUF_TAIL is back.
+
+ * s_conf.c: fixed B lines behaviour, port number is now mandatory.
+
+ * send.c: missing arg to dead_link(). (Olivier Galibert)
+
+ * s_serv.c, numeric.h, s_err.c: added /stats B to see B lines (and
+ fixed /stats V reply).
+
+ * service.h, channel.c, s_misc.c, s_service.c, s_serv.c, s_user.c:
+ * numerous bugfixes related to local services (if
+ USE_SERVICES is defined).
+ * extended services option to allow 2.9 NICK syntax, and
+ let them see tokens if they want. (adapted from O.Galibert)
+
+Wed May 21 21:17:51 1997 Christophe Kalt
+
+ * channel.c, s_service.c, service.h: finished service code (whee).
+
+ * s_serv.c: services were incorrectly sent during burst.
+
+ * s_bsd.c: ident MUST be done before anything else is read from a
+ client.
+
+Thu May 15 16:27:13 1997 Christophe Kalt
+
+ * struct.h, s_conf.h, s_serv.c: created k: lines to be able to
+ deny access based on OTHER ident replies.
+
+ * s_user.c: changed 001 reply to return n!u@h (more zen).
+
+ * s_serv.c:
+ * if A: is bogus, trash it and complain instead of crashing.
+ * get_client_name() is non-reentrant. *sigh*
+
+Wed May 7 22:11:04 1997 Christophe Kalt
+
+ * s_user.c: nick chasing kill bug fix. (Chris Behrens)
+
+ * h.h, ircd.c, s_conf.c, s_user.c: K-lined users now exit
+ displaying the Kline comment, if any.
+
+ * s_conf.c: fixed notice ERR_YOUWILLBEBANNED, and don't disconnect
+ then.
+
+ * inet.h, nameser.h, resolv.h, inet_addr.c, portability.h, res.c,
+ res_comp.c, res_init.c, res_mkquery.c: updated. (BIND 4.9.5-P1)
+
+ * channel.c: notice for service could use free'ed memory.
+
+Sun Apr 27 16:40:08 1997 Christophe Kalt
+
+ * send.c: fixed couple buglets (added by Chris Behrens :^).
+
+ * s_user.c: removed dummy m_note() which was unused and buggy, and
+ would let any oper _broadcast_ NOTE queries to the net.
+
+ * m_note.c: Modified m_note() in note.c not to send any NOTE
+ commands to other servers.
+
+ This is lame, someone help me and port note to be a service.
+ Then, I'll finally take it out of the server !! :-)
+
+Thu Apr 24 18:51:25 1997 Christophe Kalt
+
+ * send.c: better (faster) sendto_common_channel() (from Chris Behrens).
+
+ * s_serv.c: fixed connected burst for services with hostmasks.
+
+ * s_user.c: fixed origin check in m_pong().
+
+ * res.c: added a check on hostnames. (From Darren Reed)
+
+Sun Apr 20 20:30:21 1997 Christophe Kalt
+
+ * s_conf.c: find_bounce() had an inversed test. (how could it work
+ when I tested it??)
+
+ * s_serv.c: SERVER message would occasionnally (and incorrectly)
+ be dropped.
+
+ * s_misc.c: simple optimization in exit_client().
+
+ * s_service.c, s_serv.c: things looked wrong, SERVICE syntax
+ inchorent. Minor memory leak.
+
+ * s_bsd.c, s_misc.c: various "typos" fixed. (UDP & non POLL)
+
+ * send.c, h.h: removed sendto_all_butone(). (unused)
+
+Tue Apr 15 19:41:32 1997 Christophe Kalt
+
+ * sock.h: added a check to make sure FD_SETSIZE is big enough.
+
+ * s_bsd.c, struct.h, s_misc.c: added more UDP stats.
+
+ * s_bsd.c: fixed udp_pfd/res_pfd mess, and cleaned the code. (whee)
+
+ * h.h, struct.h, numeric.h, s_err.c, s_conf.c, s_bsd.c: added B lines.
+
+ * channel.c: defining USE_SERVICE would cause buffer corruption
+ when propagating channel modes to servers. (Found by Michael Neumayer)
+
+Wed Apr 2 15:25:54 1997 Christophe Kalt
+
+ * list.c, s_serv.c: added some error notices for users without server.
+
+ * s_bsd.c: fixed UDP port binding when no IP is given.
+
+ * configure.in: add -cckr to CFLAGS on SGI when using cc(1)
+
+Thu Mar 27 19:03:09 1997 Christophe Kalt
+
+ * h.h, send.c, s_bsd.c, s_user.c, s_serv.c: amount of transferred
+ data added to file logs.
+
+ * config.h.dist: define SVR4 if __svr4__ is there.
+
+ * packet.c: drop server sending an unknown command.
+
+ * s_user.c: changed m_who() for better performance (from Chris
+ Behrens), also put a limit on its number of arguments.
+
+ * h.h, struct.h, list.c: better IsMember (from Chris Behrens).
+
+ * s_serv.c: don't let a user introduce a new server.
+
+Fri Mar 21 19:53:36 1997 Christophe Kalt
+
+ * h.h, struct.h, ircd.c, s_conf.c, s_misc.c, s_serv.c,
+ config.h.dist: server can now cache the MOTD in memory (from Chris
+ Behrens). See CACHED_MOTD #define.
+
+ * service.h, channel.c, s_serv.c, s_service.c, s_user.c: additions
+ for services.
+
+ * s_misc.c: added missing parameter for check_service_butone().
+
+ * INSTALL completed and converted to sgml
+
+ * s_serv.c: MyRealloc(NULL, size) isn't portable.
+
+Tue Mar 18 17:59:26 1997 Christophe Kalt
+
+ * 2.9.3b10
+
+ * channel.c, hash.c, res.c, s_serv.c, s_service.c, s_user.c,
+ whowas.c: penalties tuned again. (added Volker Paulsen's anti SPAM
+ hack).
+
+ * s_err.c, s_serv.c: minor changes to RPL_STATS*
+
+ * s_bsd.c: authclnts[] was not always initialized.
+
+ * ircd.c: buffer in ircd_readtune() lacked initialization.
+
+ * s_service.c: fixed buffer overflow.
+
+ * send.c, support.c: # of arguments cleanup.
+
+ * list.c, res.c, s_service.c: casts to suppress warnings.
+
+ * h.h, dbuf.c: bufalloc, dbufblocks, poolsize now
+ unsigned. (some checks might be needed, poolsize can really get
+ big).
+
+ * s_misc.c: removed duplicate code in exit_client().
+
+ * parse.c:
+
+ * Added more notices when generating SQUITs for unknown
+ servers.
+ * removed bogus else.
+
+Fri Feb 28 09:34:36 1997 Christophe Kalt
+
+ * s_err.c, s_serv.c: Added 2 more fields to RPL_TRACELINK.
+
+Thu Feb 27 14:50:37 1997 Christophe Kalt
+
+ * s_serv.c: /connect by servername didn't work for c lines (from Eumel)
+
+Wed Feb 26 16:48:36 1997 Christophe Kalt
+
+ * s_bsd.c: removed (old) redundant code concerning VIF.
+
+ * config.h.dist: CLONE_MAX and CLONE_PERIOD could be undefined.
+
+ * common.c: match() cleanup.
+
+Thu Feb 13 17:27:53 1997 Christophe Kalt
+
+ * res.c, res_init.c, res_mkquery.c, ircd.c, s_bsd.c: renamed
+ res_init() to ircd_res_init() to avoid conflict (ULTRIX).
+
+ * hash.c, struct.c: cleanup of hashing functions.
+
+ * match.c, parse.c, send.c, common.h, channel.c, hash.c, s_bsd.c,
+ s_misc.c, s_serv.c, s_service.c, s_user.c, note.c, ignore.c:
+
+ * _match() changed to match() and the check for maximum
+ "recursion" slightly changed.
+ * match() and matches() removed (stubs from when match
+ was recursive?).
+ * All occurrences of matches() changed to match().
+ * this saves one function call per match.
+
+ * send.c: Added 2 parameters to sendto_serv_butone().
+
+ * s_err.c, s_serv.c: Added one field to RPL_TRACELINK.
+
+Sun Jan 26 20:02:34 EET 1997 Vesa Ruokonen (ruokonen@aapo.it.lut.fi)
+
+ * 2.9.3b8
+
+ * support.c, h.h, list.c: gcc -Wall cleanups.
+ * h.h, struct.h, chkconf.c, s_conf.c, s_serv.c:
+ created V:lines for checking connecting client parameters.
+ passed as PASS command parameters. A matching V:line.
+ refuses the connection (version number & compile flags).
+ * struct.h, channel.c, s_debug.c:
+ penalty threshold used for limiting KICK params.
+ * struct.h: initial QUEUELEN calculation tuned. (->BUFFERPOOL).
+ * c_msg.c: more verbose m_pong().
+ * channel.c, s_serv.c, s_user.c, whowas.c:
+ penalties tuned for commands generating global bcast.
+ * hash.c: converted multiplication to hashtable lookup to speed.
+ up function calls. (from Core)
+ * ircd.c, s_bsd.c: added truncation for non-appended writes. (_root_)
+ * s_user.c: prefix for voice capability in channel list of WHOIS reply
+ changed from '+' to '!'.
+ * s_user.c: drop PONGs with bad origin.
+ store connection parameters from PASS temporarily to info
+ field in contstant locations.
+ * s_user.c: m_umode() fixed (from Core).
+
+Wed Jan 15 14:42:43 1997 Christophe Kalt
+
+ * s_bsd.c:
+
+ * mysk was initialized by empty password in M line.
+
+Tue Jan 14 24:62:34 EET 1997 Vesa Ruokonen (ruokonen@aapo.it.lut.fi)
+
+ * parse.c, channel.c, s_user.c: cleanup of find_functions(),
+ _nickserv replaced by _service.
+ * h.h, : setup_ping() takes aConfItem pointer as parameter now.
+ * sys.h: #elif expanded to #else #if for compability
+ * s_bsd.c: inetport(P:line) changed to support VIFs better.
+ More info about listening ports into /stats l.
+ UDP ping is initialized from M:line, not anymore from P:line.
+ * s_numeric.c: cleanups in numeric processing.
+ * Makefile.in, Makefile.irc, Makefile.ircd: makedepend fix
+ * configure.in: zlib check moved to end, as it can interfere
+ other checks when libs aren't in default paths.
+
+Mon Jan 13 09:11:04 1997 Christophe Kalt
+
+ * ircd.c:
+
+ * made the display of version (flag -v) more verbose.
+
+ * regenerated configure (with autoconf 2.12; thanks digital).
+
+ * s_user.c:
+
+ * fixed, and extended KILL reasons for `standard'
+ collisions. (both victims u@h are now shown).
+
+ * send.c:
+
+ * fixed the logic when sending mass message/notice to a
+ server mask.
+
+ * configure.in, Makefile.in:
+
+ * fixed detection & use of zlib using the environment
+ variable ZLIB_HOME (from Vesa).
+
+Thu Jan 9 13:09:36 1997 Christophe Kalt
+
+ * struct.h, ircd.c:
+
+ * added -b command line switch to let the server start
+ even if the ircd.tune file is corrupted (mostly from
+ Magnus Tjernstrom).
+
+ * s_conf.c:
+
+ * udp listen was setup even if port was defined to be 0.
+
+Wed Jan 8 12:35:03 1997 Christophe Kalt
+
+ * h.h, s_bsd.c, s_conf.c:
+
+ * port field in M configuration line is used again, now to
+ define on which port the server will listen for UDP pings.
+
+ * hash.c:
+
+ * restricted commands to opers (from Vesa).
+
+ * send.c:
+
+ * sendto_match_butone() had a broken behaviour,
+ brought back the old (2.8.21) behaviour.
+
+ * s_bsd.c:
+
+ * fixed negociation of compression for outgoing
+ connections.
+
+ * moved the "rejected connection" notice to &LOCAL.
+
+ * SLOW_ACCEPT #ifdef's changed to #ifndef's to get what
+ one should expect from the define name !
+
+ * made inetport() more readable, and added check on empty
+ string parameter (from Vesa).
+
+ * highfd isn't defined when _DO_POLL_ is defined, so don't
+ use it in debug notices (from Vesa).
+
+ * break changed to continue because ??? (from Vesa).
+
+ * s_user.c:
+
+ * fixed KILL notice sent on nick collision (was using
+ ident reply for remote clients).
+
+ * allowed oper!user@host.foo to send global message/notice
+ to #*.foo
+
+ * s_serv.c, s_user.c, s_bsd.c, s_debug.c:
+
+ * changed the PASS command semantic (from Vesa).
+
+Fri Jan 3 14:47:52 1997 Christophe Kalt
+
+ * s_bsd.c:
+
+ * completed virtual hosts support (M line).
+
+ * config.h.dist:
+
+ * AIX has poll(), use it.
+
+Mon Dec 30 15:08:20 1996 Christophe Kalt
+
+ * s_bsd.c, h.h:
+
+ * added support for virtual hosts (P line).
+
+Wed Dec 18 12:08:29 1996 Christophe Kalt
+
+ * bsd.c:
+
+ * fixed read_message() bugs resulting from the merge.
+
+ * channel.c:
+
+ * limited the number of possible kicks to MAXMODEPARAMS.
+
+Mon Dec 16 09:36:54 1996 Christophe Kalt
+
+ * list.c:
+
+ * don't free serv->user too early.
+
+ * removed duplicated(?) away memory count.
+
+Fri Dec 13 10:28:43 1996 Christophe Kalt - Hmm, Friday the 13th!
+
+ * config.h.dist, s_auth.c, s_user.c, s_debug.c:
+
+ * minor tuning.
+
+Thu Dec 12 10:34:47 1996 Christophe Kalt
+
+ * struct.h, s_auth.c, s_debug.c:
+
+ * added memory usage stats for ident replies.
+
+ * send.c, s_auth.c, s_misc.c:
+
+ * fixed boundaries problems with long ident replies.
+
+Wed Dec 11 17:42:29 1996 Christophe Kalt
+
+ * struct.h, send.c, s_auth.c, s_bsd.c, list.c, s_conf.c, s_misc.c,
+ s_user.c:
+
+ * added auth field to struct Client to eventually store
+ long `OTHER' ident replies. It is only used in logs, and
+ notices (not in matches against configuration lines).
+
+ * config.h.dist:
+
+ * added #define SLOW_ACCEPT (default).
+
+ * added #define CLONE_CHECK (default).
+
+ * s_bsd.c:
+
+ * fixed config line reference counter.
+
+ * added CLONE_CHECK code (check_clones() from
+ pgoncalves@mail.telepac.pt (Pedro Goncalves)).
+
+ * added SLOW_ACCEPT (previous behaviour) code.
+
+ * merged the 2 versions of read_message(), fixing some
+ (buggy) difference between them.
+
+ * merged two for() in read_message().
+
+
+Mon Dec 2 11:02:54 1996 Christophe Kalt
+
+ * s_user.c:
+
+ * changed error notice
+
+ * send.c:
+
+ * #*.mask messages now propagated to other servers.
+
+ * s_service.c:
+
+ * added missing else.
+
+ * config.h.dist, s_debug.c, channel.c:
+
+ * removed all references to V28PlusOnly
+ * made NoV28Link defined by default
+
+Wed Nov 27 18:09:42 1996 Christophe Kalt
+
+ * struct.h, class.c, ircd.c, s_bsd.c, s_conf.c, s_serv.c:
+
+ * added lowercase c config line
+
+Tue Oct 1 22:29:31 1996 Christophe Kalt
+
+ * added config.h to dependancies in Makefile.ircd
+
+ * config.h.dist, h.h, struct.h, packet.c, send.c, ircd.c, s_bsd.c,
+ s_debug.c, s_serv.c, s_user.c, s_err.c, list.c, Makefile.ircd,
+ configure.in:
+
+ * added #define ZIP_LINKS and s_zip.c.
+ * made configure look for the zlib (-lgz).
+ * implemented server-server zlib compression.