+2005-06-21 Andrew Miller <a1kmm@amxl.com>
+
+ * ircd/m_list.c (param_parse): Add support for channel wildcards.
+ * ircd/m_list.c (show_usage): Document the new format.
+ * ircd/hash.c (list_next_channels): Check channel wildcard in list.
+ * include/channel.h (ListingArgs): Add the wildcard member.
+
+2005-06-19 Andrew Miller <a1kmm@amxl.com>
+
+ * ircd/ircd_res.c (proc_answer): Deal with unexpected record types more
+ gracefully.
+
+ * ircd/ircd_res.c (res_readreply): Check res_ourserver before walking
+ the pending request list, to make DoS attacks harder.
+
+ * ircd/m_invite.c (m_invite): Give no such channel rather than not on
+ channel when the channel being invited to does not exist.
+
+2005-06-18 Michael Poole <mdpoole@troilus.org>
+
+ * ircd/s_debug.c (count_memory): Consolidate several lines; make
+ initial letter capitalization consistent.
+
+2005-06-19 Andrew Miller <a1kmm@amxl.com>
+
+ * ircd/s_stats.c: Remove the "debug only" label on memusage stats,
+ since it no longer applies.
+
+2005-05-16 Michael Poole <mdpoole@troilus.org>
+
+ * include/channel.h (struct Ban): Make 'who' and 'banstr' direct
+ arrays, rather than pointers.
+
+ * ircd/channel.c (bans_alloc): New variable to count number of ban
+ structures allocated.
+ (bans_inuse): New variable to count number of ban structures
+ currently in use.
+ (set_banmask): Adapt to changes in struct Ban.
+ (make_ban): Likewise, and update ban counts.
+ (free_ban): Likewise.
+ (bans_send_meminfo): New function.
+ (apply_ban): Adapt to changes in struct Ban.
+ (mode_parse_ban): Likewise.
+ (mode_process_bans): Likewise.
+ (mode_parse): Likewise.
+ (RevealDelayedJoin): Fix brace placement.
+ (CheckDelayedJoins): Fix brace placement and whitespace.
+
+ * ircd/list.c (struct liststats): Add new fields to eliminate the
+ separate count variables.
+ (init_list): Adapt to those changes.
+ (alloc_client): Likewise.
+ (dealloc_client): Likewise.
+ (alloc_connection): Likewise.
+ (dealloc_connection): Likewise.
+ (make_server): Likewise.
+ (remove_client_from_list): Likewise.
+ (verify_client_list): Likewise.
+ (make_link): Likewise.
+ (free_link): Likewise.
+ (send_liststats): New function.
+ (send_listinfo): Rewrite to use new struct liststats layout.
+
+ * ircd/m_burst.c (ms_burst): Adapt to changes in struct Ban.
+
+ * ircd/m_clearmode.c (do_clearmode): Adapt to changes in struct
+ Ban.
+
+ * ircd/s_stats.c (stats_meminfo): Define unconditionally and call
+ bans_send_meminfo().
+ (statsinfo): Always give access to stats_meminfo.
+
+2005-06-16 Michael Poole <mdpoole@troilus.org>
+
+ * include/ircd_string.h: Include necessary <string.h> header.
+
+ * ircd/test/.cvsignore: Ignore log output files.
+
+ * ircd/test/Makefile.in: Remove log output files.
+
+ * ircd/test/kill-block-1.cmd: Add sleeps to try to trigger Kills.
+
+ * ircd/test/run-tests.sh: Switch sense of argument. Send an IRC
+ debug dump to log files.
+
+2005-06-13 Michael Poole <mdpoole@troilus.org>
+
+ * ircd/s_user.c (make_user): Unconditionally increment userCount.
+ (free_user): Unconditionally decrement it here.
+
+ * ircd/s_conf.c (make_conf): Unconditionally increment
+ GlobalConfCount.
+ (free_conf): Unconditionally decrement it here.
+
+ * ircd/s_debug.c (count_memory): Fix termination condition for
+ ban-walking loop. Add missing "e" to "members".
+
+
+2005-06-10 Michael Poole <mdpoole@troilus.org>
+
+ * ircd/match.c (check_if_ipmask): Strings that contain '?' cannot
+ be true IP masks.
+
+2005-05-30 Michael Poole <mdpoole@troilus.org>
+
+ * ircd/test/Makefile.in: Add LDFLAGS variable for profiling purposes.
+
+ * ircd/test/ircd_match_t.c: Test recovery from backtracking.
+
+ * ircd/test/channel-1.cmd: Modify to improve code coverage.
+
+ * ircd/test/client-1.cmd: Likewise.
+
+ * ircd/test/gline-1.cmd: Likewise.
+
+ * ircd/test/ircd-t1.conf: Likewise.
+
+ * ircd/test/stats-1.cmd: Likewise.
+
+ * ircd/test/run-tests.sh: Explicitly start ircds. Add new test scripts.
+
+ * ircd/test/test-driver.pl: Silently handle more signals from IRC.
+
+ * ircd/test/commands-1.cmd: New test script.
+
+ * ircd/test/feature-1.cmd: New test script.
+
+ * ircd/test/jupe-1.cmd: New test script.
+
+ * ircd/test/kill-block-1.cmd: New test script.
+
+ * ircd/test/ircd-t1-2.conf: New configuration file for test scripts.
+
+ * ircd/test/ircd-t2.conf: Likewise.
+
+2005-05-30 Michael Poole <mdpoole@troilus.org>
+
+ * ircd/s_debug.c (count_memory): Use count_listener_memory() to
+ report memory used by listener structures.
+
+2005-05-30 Michael Poole <mdpoole@troilus.org>
+
+ * include/class.h (get_con_freq): Remove unused function.
+
+ * include/list.h (find_user_link): Remove unused function.
+
+ * include/class.c (get_con_freq): Remove.
+
+ * ircd/list.c (find_user_link): Remove.
+
+ * include/string.h (string_is_hostname, string_is_address,
+ strnChattr): Remove unused functions.
+ (init_string): Remove function that becomes a noop.
+
+ * ircd/string.h (init_string): Remove.
+ (string_is_hostname, string_is_address, strnChattr): Likewise.
+
+ * ircd/ircd.c (main): Remove call to init_string().
+
+2005-05-30 Michael Poole <mdpoole@troilus.org>
+
+ * include/numeric.h (RPL_TRACELOG, RPL_MYPORTIS,
+ RPL_NOTOPERANYMORE): Undefine unused numeric replies.
+
+ * ircd/s_err.c (replyTable): Fix format fields for certain numeric
+ arguments. Remove some unused entries.
+
+ * ircd/s_stats.c (stats_configured_links): Move invariant
+ parameters to message format string.
+
+2005-05-30 Michael Poole <mdpoole@troilus.org>
+
+ * ircd/client.c (privtab): Add missing LIST_CHAN privilege, move
+ WIDE_GLINE to reflect its enumerated value.
+
+ * ircd/s_debug.c (count_memory): Use user_count_memory() function
+ to count User structs in-use.
+
+ * ircd/m_server.c (mr_server): Change "C:line" to "Connect block".
+
+ * ircd/s_bsd.c (connect_server): Likewise.
+
+ * ircd/s_conf.c (conf_check_server): Likewise.
+
+ * ircd/s_err.c (replyTable): Change "O-lines" to "Operator block".
+
+2005-05-30 Michael Poole <mdpoole@troilus.org>
+
+ * ircd/match.c (match): Rewrite to handle globs that end in an
+ escaped wildcard (and hopefully clarify the code).
+
+ * ircd/test/Makefile.in: Add new ircd_match_t test program.
+
+ * ircd/test/ircd_match_t.c: New file.
+
+ * ircd/test/test_stub.c: Emite newlines after log and debug
+ messages.
+
+2005-05-25 Reed Loden <reed@reedloden.com>
+
+ * ircd/s_err.c (replyTable): Allow for the specification of 'O' or
+ 'o' in RPL_STATSOLINE.
+
+ * ircd/s_stats.c (stats_configured_links): In /stats o/O, display
+ 'O' if either the oper block or the connection class has
+ PRIV_PROPAGATE (global oper) and 'o' if neither has PRIV_PROPAGATE
+ (local oper).
+
+2005-05-30 Michael Poole <mdpoole@troilus.org>
+
+ * ircd/IPcheck.c: Add Debug()s to try to track why the connected
+ count underflows.
+
+ * ircd/m_endburst.c (ms_endofburst): Avoid dereferencing 'chan'
+ after it may be freed (in sub1_from_channel).
+
+ * ircd/s_user.c (register_user): Rearrange code to reduce number
+ of "if (MyConnect(sptr))" checks.
+
+2005-05-12 Michael Poole <mdpoole@troilus.org>
+
+ * configure.in: Do not try to outsmart the default CFLAGS.
+ Simply add parameters explicitly requested by the user.
+
+ * configure: Regenerate.
+
+ * ircd/ircd_crypt_native.c: Use _XOPEN_SOURCE 600 (which is
+ used in os_generic.c) to get crypt() on NetBSD.
+
+2005-05-11 Kevin L. Mitchell <klmitch@mit.edu>
+
+ * ircd/ircd.c: if debugging is enabled (both DEBUGMODE defined and
+ -x given), reserve fd 2 for the use of the debugging log;
+ otherwise, some engines may attempt to use fd 2, which would end
+ up getting closed by debug_init() (actually, by
+ log_debug_reopen(), called by log_debug_init(), called by
+ debug_init())
+
+2005-08-10 Michael Poole <mdpoole@troilus.org>
+
+ * ircd/channel.c (joinbuf_join): Do not send a MODE +o when a
+ local user creates a channel.
+
+ * ircd/umkpasswd.c (crypt_pass): Allocate the proper amount of
+ memory for the tagged output string.
+
+ * ircd/test/test-driver.pl: Add -vhost=... option.
+
+ * ircd/test/ircd-t1.conf: Add new Operator blocks.
+
+ * ircd/test/*.cmd: Rearrange and add more coverage tests.
+
+2005-08-09 Michael Poole <mdpoole@troilus.org>
+
+ * ircd/ircd_parser.y: Move error tokens to top level of parse, and
+ make ';' a synchronizing token for them. This avoids crashes in
+ situations like missing ';' between two Kill blocks. Move several
+ ';'s earlier for earlier detection of syntax errors.
+
+ * ircd/motd.c (motd_memory_count): Use size_t for memory counts to
+ match the format strings used for those variables.
+
+ * ircd/msgq.c (msgq_histogram): tmp.sizes[] is an array of
+ unsigned int, not unsigned long; use correct format string.
+
+ * ircd/s_stats.c (stats_crule_list): Restore display of 'D' vs 'd'
+ based on crule type, rather than query type.
+ (statsinfo): Remove STAT_FLAG_VARPARAM from the "modules" and
+ "help" stats, which don't use the varparam.
+
+ * ircd/test/test-driver.pl: Interpreter for test scripts.b
+
+ * ircd/test/ircd-t1.conf: Configuration file for test scripts.
+
+ * ircd/test/*.cmd: New test scripts for test-driver.pl.
+
+2005-05-08 Jukka Ollila <jaollila@niksula.hut.fi>
+ (Adapted slightly by Michael Poole.)
+
+ * ircd/os_generic.c (sockaddr_to_irc): Change to use v4compat
+ addresses event when !defined(IPV6).
+
+2005-05-07 Michael Poole <mdpoole@troilus.org>
+
+ * ircd/channel.c (joinbuf_join): Be smarter about what source to
+ use when opping a user that joins a channel.
+
+2005-05-04 Reed Loden <reed@reedloden.com>
+
+ * ircd/m_trace.c (do_trace): Show the real nickname instead of the
+ numnick.
+
+2005-05-02 Jan Krueger <jast@heapsort.de>
+
+ * ircd/channel.c (member_can_send_to_channel): if the channel can only
+ be joined by users with accounts (+r), do not allow users without
+ accounts to speak.
+
+2005-05-07 Michael Poole <mdpoole@troilus.org>
+
+ * ircd/numnicks.c (base64toip): Fix bugs in parsing IPv6
+ addresses.
+ * ircd/test/ircd_in_addr_t.c (test_addrs): Add new entry.
+ (test_address): Test base64toip() as well.
+
+2005-05-05 Michael Poole <mdpoole@troilus.org>
+
+ * ircd/s_user.c (umode_str): Only clear the operator flag when not
+ propagating; never set it.
+
+2005-05-04 Michael Poole <mdpoole@troilus.org>
+
+ * ircd/channel.c (joinbuf_join): Include channel manager flag in
+ determination of oplevel. If opping the user for a non-local
+ non-create, include oplevel in message to other servers. Send
+ "MODE +o <client>" to local users whenever opping the client.
+
+ * ircd/m_join.c (m_join): Remove logic that moved into
+ joinbuf_join().
+ (ms_join): Look for level 0 and 1 joins from remote servers
+ and adjust value of 'flags' appropriately.
+
2005-05-04 Michael Poole <mdpoole@troilus.org>
* include/numeric.h: Remap oplevel numerics to new range.