+2004-05-15 Isomer <isomer@undernet.org>
+
+ [Original ChangeLog date: 2003-11-23 -MDP]
+
+ * ircd/os_*.c, ircd/ircd_features.c: Default changing window sizes
+ to off. if an admin is smart enough to understand these features
+ they can enable them manually.
+
+2004-05-15 Isomer <isomer@undernet.org>
+
+ [Original ChangeLog date: 2003-11-18 -MDP]
+
+ * ircd/s_auth.c, ircd/res_libresolv.c, ircd/res_adns.c: Clean up
+ the preregistration subsystem allowing customisation of timers,
+ make the dns resolver stats oper only, and make it much more clear
+ what all the numbers are.
+
+2004-05-15 Spike <spike@undernet.org>
+
+ [Original ChangeLog date: 2003-11-23 -MDP]
+
+ * ircd/IPcheck.c: Make IPcheck constants configurable
+
+2004-05-14 Kevin L Mitchell <klmitch@mit.edu>
+
+ [Original ChangeLog date: 2003-11-22 -MDP]
+
+ * ircd/m_nick.c (m_nick): truncate the nickname to the minimum of
+ the maximum allowed length (NICKLEN) or the allowed nickname
+ length specified as the NICKLEN feature
+
+ * ircd/ircd_features.c: declare NICKLEN and set its default value
+ to 9
+
+ * include/supported.h: add MAXNICKLEN to ISUPPORT and do a little
+ rearranging...
+
+ * include/ircd_features.h: add NICKLEN feature
+
+ * include/ircd_defs.h (NICKLEN): raise max NICKLEN to 15
+
+ * doc/readme.features: document new NICKLEN feature
+
+ * doc/example.conf: list new NICKLEN F-line
+
+2004-05-14 Matthias Crauwels <ultimate_@wol.be>
+
+ [Original ChangeLog date: 2003-06-08 -MDP]
+
+ * ircd/gline.c: fixed the counting bug in gline_memory_count
+
+ * ircd/jupe.c: fixed the counting bug in jupe_memory_count
+
+2004-05-14 Michael Poole <mdpoole@troilus.org>
+
+ * ircd/m_mode.c (ms_mode): Do not always try to call
+ set_user_mode() when parv[1] is a channel name.
+
+2004-05-10 Michael Poole <mdpoole@troilus.org>
+
+ Implement a per-connection-class default usermode option.
+
+ * doc/example.conf: Illustrate how to use the option.
+
+ * include/class.h (struct ConnectionClass): New "default_umode"
+ field.
+ (ConfUmode): New macro.
+
+ * include/client.h (client_get_default_umode): New function.
+
+ * ircd/client.c (client_get_default_umode): Implement it.
+
+ * ircd/ircd_lexer.l (usermode): New token.
+
+ * ircd/ircd_parser.y (classblock, etc): New syntax.
+
+ * ircd/s_user.c (register_user): Set default user modes for user.
+ This sends the new mode to the user, so the explicit send later
+ is no longer necessary.
+
+2004-05-10 Michael Poole <mdpoole@troilus.org>
+
+ Forward port of asuka-topicburst.patch from Quakenet's "Asuka"
+ patch set.
+
+ * include/ircd_features.h (FEAT_TOPIC_BURST): Add new feature.
+
+ * ircd/channel.c (send_channel_modes): If F:TOPIC_BURST:TRUE,
+ also send a TOPIC to the peer.
+
+ * ircd/ircd_features.c (FEAT_TOPIC_BURST): Add new boolean
+ feature, defaulting to FALSE.
+
+ * ircd/m_topic.c (do_settopic): Add argument for topic timestamp,
+ and allow F:HIS_BANWHO to hide the originator of the topic.
+ (ms_topic): Parse optional timestamp arguments to TOPIC, and use
+ them to decide whether to ignore the topic.
+
+2004-05-10 Michael Poole <mdpoole@troilus.org>
+
+ Forward port of delayed-join.patch from Quakenet's "Asuka" patch
+ set (which was a port of code I wrote for the other ircu).
+
+ * include/channel.h (CHFL_DELAYED): New membership flag.
+ (MODE_DELJOINS, MODE_WASDELJOINS): New channel modes.
+ (infochanmodes): Add +D to list of supported channel modes.
+ (IsDelayedJoin, SetDelayedJoin, ClearDelayedJoin): New macros.
+ (member_can_send_to_channel, client_can_send_to_channel): Add
+ "reveal" parameter to indicate whether a request should cause
+ a join-delayed user to become visible.
+ (RevealDelayedJoin, CheckDelayedJoins): New functions.
+
+ * include/numeric.h (RPL_DELNAMREPLY): New numeric.
+
+ * include/s_user.h (NAMES_DEL): New flag for do_names().
+
+ * include/supported.h (FEATURESVALUES2): Add +D to list of
+ supported channel modes.
+
+ * ircd/channel.c (remove_member_from_channel,
+ member_can_send_to_channel, client_can_send_to_channel,
+ joinbuf_join): Handle join-delayed users.
+ (channel_modes, modebuf_flush_int, modebuf_mode, modebuf_flush,
+ modebuf_extract, mode_process_clients, mode_parse_mode,
+ mode_parse): Handle delayed-join channels.
+ (RevealDelayedJoin, CheckDelayedJoins): New functions.
+
+ * ircd/ircd_relay.c (relay_channel_message, relay_channel_notice,
+ server_relay_channel_message, server_relay_channel_notice): Add
+ argument for "reveal" parameter to client_can_send_to_channel().
+
+ * ircd/m_burst.c (ms_burst): Support MODE_DELJOINS channels.
+
+ * ircd/m_clearmode.c (do_clearmode): Support clearing mode +D.
+
+ * ircd/m_join.c (join0): Pass the CHFL_DELAYED flag when parting a
+ channel with JOIN 0.
+
+ * ircd/m_kick.c (m_kick): For join-delayed members, only send the
+ KICK to the kicker and kickee. Then check whether +d can be
+ removed.
+
+ * ircd/m_names.c (do_names): Show join-delayed users if and only
+ if the NAMES_DEL flag is given. If NAMES_DEL is given, also use
+ RPL_DELNAMREPLY instead of RPL_NAMREPLY.
+ (m_names): If NAMES -D, pass NAMES_DEL to do_names().
+
+ * ircd/m_part.c (m_part, ms_part): Add "reveal" argument for
+ member_can_send_to_channel(). Set CHFL_DELAYED join in joinbuf if
+ the user is join-delayed.
+
+ * ircd/m_quit.c (m_quit): Handle join-delayed users and new
+ argument for member_can_send_to_channel().
+
+ * ircd/m_topic.c (do_settopic): If a join-delayed channel member
+ changes the topic, reveal the member.
+
+ * ircd/m_wallchops.c (m_wallchops, ms_wallchops): Add argument for
+ "reveal" parameter to client_can_send_to_channel().
+
+ * ircd/m_wallvoices.c (m_wallvoices, ms_wallvoices): Likewise.
+
+ * ircd/m_who.c (m_who): Skip join-delayed members where we skip
+ zombies.
+
+ * ircd/m_whois.c (do_whois): Use '<' as a prefix for join-delayed
+ users. Use slightly more efficient macros rather than function
+ calls to test for ops and voice.
+
+ * ircd/s_err.c (RPL_DELNAMREPLY): New numeric response string.
+
+ * ircd/s_user.c (hide_hostmask): For users with no modes in a
+ join-delayed channel, do not send JOIN to other members after the
+ QUIT :Registered.
+
+ * ircd/send.c (sendcmdto_common_channels_butone): Skip
+ join-delayed users where we skip zombies.
+
+2004-05-10 Michael Poole <mdpoole@troilus.org>
+
+ * ircd/ircd_events.c: Actually reference and try to use the epoll
+ event engine. Omitted from yesterday's commit.
+
+2004-05-09 Michael Poole <mdpoole@troilus.org>
+
+ Forward port of Paul "Zoot" Chang's pseudo-command.patch and
+ pseudo-support.patch.
+
+ * doc/example.conf: Illustrate how to use the feature.
+
+ * include/handlers.h (m_pseudo): Declare new handler function.
+
+ * include/ircd_features.h (HIS_STATS_R): Add a feature to control
+ user visibility of the pseudo-commands.
+
+ * include/msg.h: Add flag and field for the extra information used
+ to select a pseudo-command's target.
+
+ * include/numeric.h (RPL_STATSRLINE, ERR_SERVICESDOWN): Add
+ definitions.
+
+ * include/parse.h (register_mapping, unregister_mapping): Declare.
+
+ * include/s_conf.h (struct nick_host, struct s_map,
+ GlobalServiceMapList): Define.
+
+ * ircd/Makefile.in: Add m_pseudo.c to IRCD_SRC. Add generated
+ files to "make depend" dependency list. Update dependencies.
+
+ * ircd/ircd_features.c (HIS_STATS_R): Define feature type and
+ default value.
+
+ * ircd/ircd_lexer.l (pseudo, prepend): Recognize new tokens.
+
+ * ircd/ircd_parser.y: Support "Pseudo" configuration blocks.
+
+ * ircd/parse.c (msgtab): Add initializer for field "extra" to all
+ commands.
+ (msg_tree_insert, msg_tree_remove, register_mapping,
+ unregister_mapping): New functions.
+ (parse_client): Implement MFLG_EXTRA extra argument passing.
+
+ * ircd/s_conf.c (GlobalServiceMapList): New variable.
+
+ * ircd/s_err.c (RPL_STATRLINE, ERR_SERVICESDOWN): Add format
+ strings for new numeric responses.
+
+ * ircd/s_stats.c (stats_mapping): New function.
+ (statsinfo): Add entry for /stats R and make old /stats r entry
+ case-sensitive.
+
+2004-05-09 Michael Poole <mdpoole@troilus.org>
+
+ * ircd/ircd_parser.y (parse_error): Convert to being a wrapper for
+ yyerror() so that configuration errors all go to the same place.
+
+ * ircd/s_conf.c: New variables conf_error and conf_already_read.
+ conf_error is cleared by read_configuration_file() and set by
+ yyerror(); conf_already_read is set by read_configuration_file()
+ and never cleared. Make yyerror() display error to stderr before
+ conf_already_read is set. Make configuration errors a fatal
+ condition in init_conf().
+
+2004-05-09 Michael Poole <mdpoole@troilus.org>
+
+ * ircd/Makefile.in: Pass the source directory as an argument to
+ version.c.SH so it knows where to find the source files for an
+ out-of-srcdir build.
+
+ * ircd/version.c.SH: Use that information.
+
+2004-05-09 Michael Poole <mdpoole@troilus.org>
+
+ * Makefile.in: Ensure ${prefix}/include exists, since the adns
+ install puts files in that directory. (The adns Makefile does
+ not use configure's ${includedir}.)
+
+2004-05-09 Michael Poole <mdpoole@troilus.org>
+
+ * doc/readme.features: The logic for F:AUTOHIDE was removed, but
+ not its documentation. Fix that omission.
+
+ * include/ircd_features.h, ircd/ircd_features.c: Remove the unused
+ definitions for FEATURE_AUTOHIDE.
+
+2004-05-09 Michael Poole <mdpoole@troilus.org>
+
+ * doc/readme.who: Document the support for account matching and
+ display in the WHO command.
+
+2004-05-09 Michael Poole <mdpoole@troilus.org>
+
+ * ircd/ircd.c (main): Move check_pid() call until after we read
+ the configuration file so that F:PPATH works correctly.
+
+2004-05-09 Michael Poole <mdpoole@troilus.org>
+
+ * ircd/match.c (match): Use ToLower() instead of tolower() for
+ character comparisons.
+
+2004-05-09 Michael Poole <mdpoole@troilus.org>
+
+ * ircd/s_user.c (register_user): Initialize "flag" (user's old
+ modes) passed to send_umode() so that the real set of modes are
+ sent to the user.
+
+2004-05-09 Michael Poole <mdpoole@troilus.org>
+
+ * ircd/m_server.c (ms_server): Apply +h/+s flags only to the new
+ server, not to a hub between us and the new server.
+
+ * ircd/ircd_relay.c (relay_directed_message): Check FLAG_SERVICE
+ on target server rather than FLAG_CHSERV (so that directed
+ messages work at all).
+
+2004-05-09 Michael Poole <mdpoole@troilus.org>
+
+ * configure.in: Add checks for epoll_* system call family.
+
+ * configure: Regenerate.
+
+ * ircd/engine_epoll.c: New file; forward ported from 2.10.11
+ branch.
+
+2004-05-09 Michael Poole <mdpoole@troilus.org>
+
+ * include/ircd_alloc.h: Add definitions for MyRealloc, since they
+ are needed by kqueue and epoll event engines; kill #if 0'd block.
+
+ * include/memdebug.h: Declare dbg_realloc() helper function.
+
+ * ircd/ircd_alloc.c: Implement DoRealloc() helper function.
+
+ * ircd/memdebug.c: Implement dbg_realloc() helper function.
+
+2004-05-09 Michael Poole <mdpoole@troilus.org>
+
+ * ircd/channel.c (find_no_nickchange_channel): Disallow nick
+ changes on a moderated channel with neither ops nor voice.
+
+ * ircd/s_err.c: Update ERR_BANNICKCHANGE message to match.
+
+2004-01-20 Perry Lorier <isomer@undernet.org>
+
+ * ircd/ircd_parser.y: Fixed parser to work with a more modern bison
+
+2004-01-21 Gavin Grieve <hektik@dimebox.net>
+
+ * ircd/channel.c, include/channel.h: bring forward the IsUserParting()
+ code to resolve the multiple part messages bug written by Entrope.
+
+2003-08-12 Timothy Vogelsang <net@astrolink.org>
+
+ * ircd/match.c: (match) rewrote function based on existing
+ code from the hybrid ircd -- death to goto
+
+2003-07-07 Bas Steendijk <steendijk@xs4all.nl>
+
+ * ircd/s_user.c: invalidate ban cache for user on host hiding/account
+
+2003-07-04 Bas Steendijk <steendijk@xs4all.nl>
+
+ * include/client.h, ircd/m_userhost.c, ircd/m_userip.c, ircd/m_who.c,
+ ircd/m_whois.c, ircd/whocmds.c: the same code, for "can user A see user
+ B is an oper", appeared in a lot of places. made it a define SeeOper.
+
+2003-07-04 Bas Steendijk <steendijk@xs4all.nl>
+ * ircd/s_user.c: umode_str (user modes in N token) internal flags var
+ was not initialized to the user's flags, returned a string with
+ random modes set.
+
+2003-07-01 Bas Steendijk <steendijk@xs4all.nl>
+
+ * ircd/m_names.c: length counter being incremented one too many
+ for each nick, resulting names reply messages are about 50 chars
+ shorter than possible. fixed.
+
+2003-06-29 Bas Steendijk <steendijk@xs4all.nl>
+
+ * ircd/channel.c: don't ever send mode changes for local channels to
+ servers.
+
+2003-06-27 Bas Steendijk <steendijk@xs4all.nl>
+
+ * include/channel.h, include/client.h, ircd/s_user.c, ircd/s_err.c:
+ moved the supported channel/user mode strings of the 004 reply from
+ s_err.c to the header files where the channels/user modes are
+ defined, and show or hide +Au based on OPLEVELS setting.
+
+2003-06-25 Bas Steendijk <steendijk@xs4all.nl>
+
+ * ircd/m_burst.c: Clear topic set by netrider on burst.
+
+2003-08-05 Diane Bruce <db@db.net>
+
+ * ircd/parse.c: Fixed the typo the fix of the typo created
+
+2003-08-01 Diane Bruce <db@db.net>
+
+ * ircd/parse.c: Fixed typo
+
+2003-06-22 Diane Bruce <db@db.net>
+
+ * ircd/parse.c: Completely rewritten June 2, 2003 - Dianora
+
+2003-06-22 Bas Steendijk <steendijk@xs4all.nl>
+
+ * include/ircd_features.h, include/supported.h, ircd/ircd_features.c,
+ ircd/ircd_features.c, ircu2.10/ircd/m_join.c, doc/example.conf:
+ Make ability to create local channels a feature which can be disabled.
+
+2003-06-22 Bas Steendijk <steendijk@xs4all.nl>
+
+ * include/ircd_features.h, ircd/channel.c, ircd/ircd_features.c,
+ ircd/m_kick.c, doc/example.conf: Added OPLEVELS feature, which
+ makes it possible to disable the +Au/oplevels functions.
+
+2003-06-17 Alex Badea <vampire@p16.pub.ro>
+
+ * ircd/res_adns.c: included sys/types.h, for non-Linux
+ headers
+
+>>>>>>> 1.388
+2003-03-06 Kevin L. Mitchell <klmitch@mit.edu>
+
+ * libs/dbprim: database primitives library, including
+ flexible linked lists, auto-resizing hash tables, and sparse
+ matrices. Has a test suite for everything but portions of
+ the sparse matrix routines (I'm lazy; someone help me write
+ them!). Documentation generated by doxygen--feel free to
+ critique, suggest phrasing improvements, etc.
+
+2003-01-22 Kevin L. Mitchell <klmitch@mit.edu>
+ * libs: put third-party libraries in this subdirectory.
+ Started by copying adns into it--will fix the rest and remove
+ the top-level copy later.
+
+2003-01-14 Andrew Miller <a1kmm@mware.virtualave.net>
+ * ircd/m_settime.c: Fixed a minor format string issue.
+
+2003-01-12 Thomas Helvey <tom.helvey@cox.net>
+ * adns/src/check.c, adns/src/transmit.c, ircd/m_opmode.c,
+ ircd/motd.c, ircd/s_user.c: Cleanup warnings, fix precedence
+ bugs in transmit.c and m_opmode.c.
+
+2003-01-12 Thomas Helvey <tom.helvey@cox.net>
+ * include/class.h, include/ircd_string.h, ircd/class.c,
+ ircd/gline.c, ircd_string.c: Fix undefined order
+ of evaluation bug in gline.c, add general purpose hasher for
+ conf entries.
+
+2003-01-11 Thomas Helvey <tom.helvey@cox.net>
+ * include/channel.h, include/ircd_alloc.h, ircd/channel.c,
+ ircd/client.c, ircd/gline.c, ircd/ircd_alloc.c,
+ ircd/ircd_events.c, ircd/ircd_log.c, ircd/ircd_parser.y,
+ ircd/ircd_snprintf.c, ircd/listener.c, ircd/m_nick.c,
+ ircd/m_opmode.c, ircd/m_whois.c, ircd/motd.c,
+ ircd/s_auth.c, ircd/s_bsd.c, ircd/uping.c: Server compiles
+ with g++ again, type safety, const correctness fixes,
+ remove C++ keywords again :/
+
+2003-01-11 Thomas Helvey <tom.helvey@cox.net>
+ * ircd/client.c, ircd/ircd_feature.c: Bugfix, the feature
+ table data was in a different order than the feature data
+ structure, which resulted in a wild index being used in
+ feature_bool. The feature_bool function didn't check it's
+ index before indexing the features array resulting in
+ a core dump on /oper.
+
+2003-01-10 Thomas Helvey <tom.helvey@cox.net>
+ * include/client.h, include/res.h, include/s_bsd.h,
+ ircd/ircd.c, ircd/list.c ircd/m_connect.c, ircd/res_adns.c,
+ ircd/res_libresolv.c, ircd/s_auth.c, ircd/s_bsd.c, ircd/s_conf.c:
+ Remove resolver cache wart, change hostent representation, cleanup
+ resolver clients.
+
+2003-01-10 Thomas Helvey <tom.helvey@cox.net>
+ * ircd/map.c, ircd/Makefile.in, include/map.h: Remove
+ HEAD_IN_SAND macros to get server to build, rebuild dependencies.
+
+2003-01-08 Fredrik Soderblom <froo@quakenet.org>
+ * ircd/s_err.c, ircd/s_user.c (hide_hostmask): Simplify
+ RPL_HOSTHIDDEN and the use of it.
+
+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.