+2004-12-15 Michael Poole <dmpoole@troilus.org>
+
+ * doc/example.conf: Remove the example Server blocks since they
+ are no longer used (were merged into Connect).
+
+ * ircd/ircd_res.c (restart_resolver): Fix typo in previous commit.
+
+ * ircd/m_server.c (check_loop_and_lh): Use a different argument to
+ test whether an introduced server is directly connected or not.
+
+2004-12-14 Michael Poole <mdpoole@troilus.org>
+
+ * include/client.h (FLAG_IPV6): New value for enum Flag.
+ (IsIPv6, SetIPv6): Accessor macros for it.
+
+ * include/numnicks.h (iptobase64): Add flag indicating whether to
+ use full IPv6 addresses or fake them in an IPv4-compatible way.
+
+ * ircd/numnicks.c (iptobase64): Use the new flag.
+
+ * include/send.h (sendcmdto_flag_serv_butone): New function to
+ send different lines to servers based on flags (like FLAG_IPV6).
+
+ * ircd/send.c (sendcmdto_flag_serv_butone): Implement it.
+
+ * ircd/s_bsd.c (completed_connection): Advertise IPv6 support in
+ our server flags.
+
+ * ircd/s_serv.c (server_estab): Likewise. Also make sure we send
+ compatible IP addresses for the new server.
+
+ * ircd/s_user.c (register_user): Only send full IPv6 addresses to
+ links that have FLAG_IPV6 set.
+
+2004-12-13 Michael Poole <mdpoole@troilus.org>
+
+ * doc/example.conf: Update General block comment to mention
+ new RESOLVER option and to explain IPv6 support.
+
+ * ircd/ircd_lexer.l: Recognize RESOLVER token.
+
+ * ircd/ircd_parser.y: Declare RESOLVER token and use it in an
+ alternative for generalitem.
+
+ * ircd/ircd_res.c: Define global ResolverAddr variable. If it is
+ valid, use it instead of VirtualHost in restart_resolver().
+
+2004-12-13 Michael Poole <mdpoole@troilus.org>
+
+ * doc/example.conf: Update configuration to move Client block
+ comment after sample Class blocks, and update entries in it.
+
+ * ircd/ircd_lexer.y: Recognize IP and USERNAME tokens.
+
+ * ircd/ircd_parser.y: Add ip and username global variables and IP
+ and USERNAME tokens. Add clientip and clientusername alternatives
+ for clientitem, and update clientblock to correspond.
+
+ * ircd/ircd_res.c (delete_resolver_queries): Do not try to walk
+ the request_list before request_list is initialized.
+ (cres_mem): Likewise.
+
+ * ircd/os_generic.c (sockaddr_from_irc): Improve guessing of
+ proper address family.
+
+ * ircd/s_conf.c (attach_iline): Allow aconf->host == NULL, which
+ means DNS reply is optional. If aconf->addrbits >= 0, test it.
+
+ * tools/crypter: Delete.
+
+2004-12-11 Kevin L Mitchell <klmitch@mit.edu>
+
+ * ircd/*.c: use new assert() in ircd_log.h in preference to system
+ assert()
+
+ * ircd/umkpasswd.c: use new assert in ircd_log.h; add necessary
+ glue so that umkpasswd will successfully compile and link
+
+ * ircd/test/ircd_chattr_t.c: comment out include of assert.h since
+ there are no calls to assert()
+
+ * ircd/ircd_log.c: add sentinel (log_inassert) to prevent assert()
+ from looping should there be an assertion failure somewhere in the
+ logging subsystem
+
+ * include/ircd_log.h: custom implementation of assert() that calls
+ log_write()
+
+2004-11-21 Michael Poole <mdpoole@troilus.org>
+
+ * ircd/channel.c (mode_parse_upass): Allow forced mode changes to
+ be done by non-channel-managers, fixing a crash from OPMODE.
+ (mode_parse_apass): Likewise.
+
+2004-11-20 Michael Poole <mdpoole@troilus.org>
+
+ * ircd/m_create.c (ms_create): Complain if a user tries to CREATE
+ a channel they are already in, but do not add them again.
+
2004-11-09 Michael Poole <mdpoole@troilus.org>
* include/res.h (init_resolver): Delete, and initialize lazily.