+2007-03-31 Michael Poole <mdpoole@troilus.org>
+
+ * doc/readme.iauth (IAuth M): Document new command.
+
+ * ircd/m_user.c (m_user): Recognize RFC 2812 mode request and a
+ saner usermode request.
+
+ * ircd/s_auth.c (iauth_cmd_usermode): New command.
+ (iauth_parse): Dispatch to it.
+
+ * ircd/s_user.c (set_user_mode): Only broadcast usermode changes
+ for registered clients.
+
+ * tools/iauth-test (127.0.1.3): Test the new M command.
+
+2007-03-31 Michael Poole <mdpoole@troilus.org>
+
+ * ircd/m_mode.c (m_mode): Check and report target/source
+ violations before calling set_user_mode().
+ (ms_mode): Likewise.
+
+ * ircd/s_user.c (set_user_mode): Remove those checks from here.
+
+2007-03-31 Michael Poole <mdpoole@troilus.org>
+
+ * include/ircd_events.h (struct Generators): Convert elements to
+ be struct GenHeader*.
+ (timer_next): Update to match.
+
+ * ircd/ircd_events.c (timer_enqueue): Update to match.
+ (signal_callback): Likewise.
+ (timer_init): Remove a typecast with something slightly safer.
+ (timer_run): Update to deal with new type of Generator.g_timer.
+ (signal_add): Likewise.
+ (socket_add): Likewise.
+
+2007-03-28 Michael Poole <mdpoole@troilus.org>
+
+ * ircd/m_asll.c (ms_asll): Count hits and report at the end, so
+ that a client is told whether any match (and has a hint that only
+ directly linked servers are checked).
+ (mo_asll): Likewise.
+
+2007-03-26 Michael Poole <mdpoole@troilus.org>
+
+ * ircd/s_stats.c (m_stats): Move check for STAT_FLAG_LOCONLY (and
+ the assignment to "param") to the hunted server.
+
+2007-03-26 Michael Poole <mdpoole@troilus.org>
+
+ * ircd/s_auth.c (iauth_parse): Check for missing arguments when
+ parsing the iauth message.
+
+ * tests/bug-1685648.cmd: New file to test this.
+
+ * tests/iauth-test: New file to exercise the code path.
+
+ * tests/ircd.conf: Use the iauth-test helper program.
+
+2007-03-26 Michael Poole <mdpoole@troilus.org>
+
+ * ircd/m_silence.c (forward_silences): Do not try twice to process
+ silences that were both added and deleted.
+
+2007-03-26 Michael Poole <mdpoole@troilus.org>
+
+ * ircd/ircd_parser.y (portblock): Restore old behavior for Port
+ blocks with no host listed.
+
+2007-03-26 Michael Poole <mdpoole@troilus.org>
+
+ * doc/readme.iauth (iauth I): Fix example and syntax.
+
+2007-03-18 Michael Poole <mdpoole@troilus.org>
+
+ * acinclude.m4 (unet_NONBLOCKING): Properly quote function name.
+ (unet_SIGNALS): Likewise.
+ (unet_CHECK_TYPE_SIZES): Likewise.
+ (AC_LIBRARY_NET): Likewise.
+
+2007-03-18 Kevin L. Mitchell <klmitch@mit.edu>
+
+ * ircd/m_gline.c (mo_gline): add permissions checks I kept
+ forgetting to add--remote local modifications require
+ FEAT_CONFIG_OPERCMDS and PRIV_GLINE, local G-lines require
+ PRIV_LOCAL_GLINE, and global G-line changes (excluding local
+ activation/deactivation) require FEAT_CONFIG_OPERCMDS and
+ PRIV_GLINE
+
+2007-03-17 Michael Poole <mdpoole@troilus.org>
+
+ * doc/example.conf (CRule): Document the support for multiple
+ server masks in a single CRule block.
+ (Port): Document the optional additional field for vhost entries.
+ Document the support for multiple vhost entries in a single Port
+ block.
+
+ * ircd/ircd_parser.y (USE_IPV4): Shift up by 16 bytes.
+ (USE_IPV6): Likewise.
+ (portblock): Iterate over hosts rather than using the single host.
+ (portitem): Add portvhostnumber alternative production.
+ (portnumber): Check port number here. If valid, combine address
+ family and port number in "port" variable. If a port-less item
+ exists in "hosts", set its port number.
+ (portvhost): Prepend mask to "hosts" list.
+ (portvhostnumber): New production.
+ (cruleblock): Iterate over hosts rather than using the single
+ host.
+ (cruleserver): Prepend server mask to "hosts" list.
+
+2007-03-17 Michael Poole <mdpoole@troilus.org>
+
+ * ircd/listener.c (add_listener): Only try to create IPv6 sockets
+ for IPv6-compatible addresses; likewise for IPv4.
+
2007-03-17 Michael Poole <mdpoole@troilus.org>
* doc/example.conf (Operator): Update documentation to mention