# @(#)$Id: RELEASE_NOTES,v 1.82 2008/06/13 16:39:22 chopin Exp $ This is version 2.11.2 of the IRC software. =============================================================================== New features in 2.11.2: * KLINE command (uses seperate file and is undoable other than manual edit of that file and rehash). * MINLOCALNICKLEN to enforce minimum nick len used by local clients. * rehash d to reread resolv.conf * rehash a to restart iauth (to make it reread iauth.conf) * standalone mode (ircd -p standalone) to avoid split mode for users not linking any servers. * ENABLE_CIDR_LIMITS (enabled by default) allows to limit client host counts in any CIDR size (per Y-line); useful for IPv6. * opless channels can be joined by users matching +R, regardless of set channel limits (they still need (if applicable) proper +eI and key). * X-lines got two more fields: one for matching nicks, another for limiting scope of X-line matching user host/ip mask. * services can now have their distribution based on SID (it affects not only visibility, but also scope of information they get). * new oper commands: ETRACE and SIDTRACE. Important changes in 2.11.2 (since 2.11.1): * &CLIENTS format is changed if XLINE is defined (sends first three parameters of client USER command before fourth one). * MAXBANS increased to 64, TOPICLEN increased to 255. * Y-line [user@]host limits are now counted against user IPs, not user hostnames. If you want old behaviour, undefine YLINE_LIMITS_IPHASH. * &LOCAL unauth notices show ips now, not hostnames. Important configuration changes in 2.11.2 (since 2.11.1): * Y-line limits maxlinks behaviour is changed. Now all I-lines share the same maxlink if they are in the same class. If you want old behaviour, define YLINE_LIMITS_OLD_BEHAVIOUR. * Y-lines can have yet another field for CIDR limits. Format: 13/24 (means: 13 clients per each /24). * X-lines got another field, so now it can match also on nicks given during registration. * X-lines got yet another field, so now it can match also on user host/ip mask (narrowing the scope of X-line). * S-lines need to be changed if used for TKLINE service: change type from 0x40000000 to 0x00100000. Service can KLINE now too (0x00200000). This is version 2.11.1 of the IRC software. =============================================================================== New features in 2.11.1: * It is possible to log server channels to a file. * New configure option --with-rundir. * It is possible to remove +r mode from a channel. * Clients can use '~' char in nicknames. Important changes in 2.11.1 (since 2.11.0): * TKLINE command defaults to minutes, not seconds. * All restrictions were unlocked, that means clients can now: - use +R freely (when opped), - use longer nicks, - use [\]{|} chars in nicknames, - use {}~\ in channel names. Important configuration changes in 2.11.1 (since 2.11.0): * It is possible to define two sendq values, one for burst and one for normal work. This is version 2.11.0 of the IRC software. =============================================================================== New features in 2.11.0: * New server-server protocol based on Unique IDs. * When collision occurs, clients get their nicks forcefully changed to their UIDs. (Note: this requires no 2.10 server on the path between these two clients!) * New channel list type: R (aka reop hints). With the same syntax and behaviour as beI, it serves as a hint list for reopping opless channels. * CIDR support in +beIR channelmodes. * New wildcard "#", matching any digit (note that if ban (in nick part) starts with digit, it will match on UID, if with '#', it will match on nickname). * Clients can use "NICK 0" to get their UID as a nick. Works during registration, too. * Channels now keep information of who and when set the topic. * File resolv.conf can have IPv6 servers (this makes ircd fully IPv6). * New "STATS P" to return listeners (removed from "STATS L"). * DELAY_CLOSE is default, this may use some extra fds. * OPER_REMOTE is removed (and server behaves like it was defined). * Resolving slightly changed: when host has CNAMEs, use the name that client IP PTR points to, not the CNAME that points to client IP. * It is now possible to include files in config without need of m4. * New "TKLINE timeformat user@host :reason" and "UNTKLINE user@host" commands, available for services and (depending on O: flag) opers. Timeformat is like 1w2d3h4m5s and defaults to minutes. * New "REHASH t" removes all tklines. * Oper-only (access granted via O: flag) &CLIENTS channel reporting (if defined) clients connects, quits, nickchanges. * New config line X (for excluding users). * "STATS k" (lower case k) returns list of tklines. * New DelayedKill feature to make ircd more responsible on rehash on big servers with many clients and many klines. * Reject reason sent to client can be specified in iauth.conf * C:lines can have negative ports to disable autoconnects; these will be used when "CONNECT" with port "0" is used. * Possibility of using port "0" in manual "CONNECT" (even remote); ircd will use port from ircd.conf. * New "STATS ?" shows quick information about connected servers. * New "STATS f" shows detailed information about client TCP connection (local opers only). * New "SET" command, which makes possible to fine-tune certain ircd values during runtime (like dbuf poolsize, autoconnect and client accepting). * New iauth module: mod_webproxy. * Modules socks and webproxy can work on multiple different ports. * New keyword "delayed" in iauth configuration (shortening time client waits for accepting). * Services can request UIDs (or, rather, UNICKs). * "LUSERS" shows local and global usercounts and maximums (new 265/266 numerics). * "USERS" defaults now to non-rfc1459 compatible variant (shows local and global usercounts and maximums (new 265/266 numerics). * New command "MAP [*.mask] [s]" showing ascii tree version of LINKS and including (with "s" param) user counts and server versions. * Oper-only &OPER channel (if defined, reporting tklines). * Run time parameter -T (tune file) can be empty, no tune file will be used at all then. * Burst includes empty channels (to be locked). Important changes in 2.11.0 (since 2.10.3): * Nicknames of local clients cannot have [\]{|} chars. (Will be removed in 2.11.1). * Channelnames created on 2.11.0 will have chars {}~\ in their name automatically converted to []^|. (Will be removed in 2.11.1). * An irc client is no longer included. * Class usage was moved from end of "TRACE" to "STATS Y". * "DNS" command is now oper only. * Redundant bans are allowed to be set. * New server channel &WALLOPS. * User mode +w is doing nothing: class usage is in "STATS Y" and wallops are sent to &WALLOPS. * "REHASH d" (dns flush) instead of "REHASH q". * Only "STATS K" (upper case K) returns list of klines. * "LIST" (if allowed) does not disconnect if client's sendQ fills. * "WHOIS" now shows the time user signed on. * "INVITE" overriding ban shows inviter's n!u@h in channel notice. * Support for text representation of user modes in USER command during registration. * Operator broadcast message syntax has been changed: add one '$' in front (so NOTICE either $$*mask or $#*mask). * Essential notices were moved from &LOCAL to &NOTICES * Client's username and hostname are strictly checked for valid chars. * "-t" runtime option (foreground mode) available without DEBUGMODE. * "STATS Z" no longer computes real memory stats without DEBUGMODE. * "STATS l" and "STATS L" show counts in Bytes, not KiBytes. * "SERVICE" command has been changed slightly (removed 2nd (stok) and 5th (hopcount) parameters), please update your services. * Format of log files has changed. * Format of KILL logs (including syslog) has changed. * Iauth prints errors to stderr and exits with code 1 if error. * New config.h option to speed up accepting clients (costs CPU). * Increasing poolsize is unlimited by default and it does not increase client sendq while at it. Important configuration changes between 2.10.x and 2.11.0: * ircd.tune must be removed when upgrading from 2.10.x to 2.11.x * M: has a new mandatory field: SID. Please read INSTALL. * A: has a new field: "network name". * H: can have SID masks to accept. * I: requires now both name field and addr field to match. * I: has a new field: flags (D, E, e, F, I, M, N, R); read INSTALL. * P: has a new field: flags ('D' (recommended) and 'S'); read INSTALL. * C: has a new field: outgoing IP (useful for multihomed servers). * O: has a new field: flags; read INSTALL for details. WARNING: no flags means no privileges at all! * o: is deprecated (but still works), please use O: with 'L' flag. * File names and layout changed a bit, be careful: - localstatedir defaults to $(prefix)/var (autoconf did that!) - logdir defaults to $(localstatedir)/log, not $(prefix)/var/log - ircd_var_dir (where .pid and .tune are kept) defaults to $(localstatedir)/run - log files are no longer in $(prefix)/var/log/ircd/, instead they are in $(logdir) - log file names changed from $(logdir)/{users,rejects,auth} to $(logdir)/ircd.{users,rejects,auth} - config and log file names depend on $(IRCD) name. * Module socks no longer has default port, you must explicitly set "port = " in module configuration in iauth.conf. This is version 2.10.3 of the IRC software. =============================================================================== Important changes in 2.10.3p4 (since 2.10.3p2): * ip6.arpa is now default, with defining SIXBONE_HACK we also recognize ip6.int * RESTRICT_HOSTNAMES is default on, allowing client hosts in conformance with RFC 1034, 1035, and 1123 (no '&', '*', '\' or other "strange" characters) * CLONE_CHECK default on, not SLOW_ACCEPT * find_kill() is aware of '+' prefix, so no need to add another K:line for it (or using *username) =============================================================================== Important changes in 2.10.3p2 (since 2.10.3): * u@h limits in Y:lines now default to 1.1, not 0.0 * WHO ** is not special anymore (may break clients depending on it) * CIDR support in O:lines * no need to use :ffff: mapped IPv4 addresses anymore * now ircd reopens logfiles only upon HUP; this means it is not enough to remove (or rename) logfile to stop logging (but we gain a lot!) =============================================================================== New features in 2.10.3: * new options for iauth.conf to better control iauth behaviour * iauth now supports dynamically shared modules. * socks module now checks for both v4 and v5 of the SOCKS protocol. * iauth has a new module: LHEx, see ftp://ftp.irc.org/irc/server/LHEx Important changes in 2.10.3 (since 2.10.2): * default PATHs have changed, see INSTALL file and Makefile. * V line code was fixed, and format slightly changed again. ------ Because of the many changes concerning iauth, it is recommended that this new version of the iauth program not be used with older version of the IRC daemon. =============================================================================== Version 2.10.2 of the software adds support for IPv6. Important changes in 2.10.2 (since 2.10.1): * iauth's socks module now uses an internal cache. * iauth's socks module now checks for SOCKSv4 (rather than v5) proxies. =============================================================================== 2.10 uses a new (server-server) protocol. New features in 2.10.0: * slave process handles authentication (ident lookups, ..). * creation of a collision proof type of channels (prefix !). * opless !channels may be reoped by the server (mode +r). * added channel mode +e (EFnet's exceptions to bans). * added channel mode +I (invitations). * /invite can now be used to override channel bans & limit. * away status is propagated again. (away messages are not). * users need +o (or +v) to speak on a channel where they're banned. Important configuration changes between 2.9.x and 2.10.x: * The V line format has changed! ------ If the irc daemon is unable to bind any socket to listen to for incoming connections, it will die rather than stay alive. =============================================================================== New feature in 2.9.5: * D lines created. ------ 2.9.5 is taking steps to suppress the usage of the 2.9 JOIN format (:nickname JOIN #channel^Gov). Future versions will not generate such joins anymore. In order to make the transition smooth, it is imperative that all servers on the IRC network be upgraded to 2.9.5 when the JOIN syntax is abandonned. Not doing so will result in a considerable increase of the amount of bandwidth used during netjoins. As a result, MIRC_KLUDGE is now defined by default in config.h ------ 2.9.5 can be compiled on a W32 system using the Cygwin32 library (http://www.cygnus.com/misc/gnu-win32/). =============================================================================== 2.9.4 doesn't support 2.8 links anymore. A 2.8.x server cannot be directly linked to a 2.9.4 server. They can however coexist on the same IRC network. ------ Configuration changes between 2.9.3 and 2.9.4: * The format for I lines was extended. * The format for B lines has slightly changed. * The format for Y lines has changed ([user@]host limits). * K lines on IP addresses now match resolving hosts by default. ------ As announced with the 2.9.3 release, the NOTE feature has been removed. A replacement has been written as an independant package, and can be found at the following location: ftp://ftp.cs.tu-berlin.de/pub/net/irc/noteserv/ =============================================================================== 2.9.3 doesn't support 2.7 protocol anymore. Don't run 2.9.3 and 2.7 servers on the same IRC network. ------ New features in 2.9.3: * compression of server links. * virtual IP support. * B lines created. (client redirection) * k lines created. (OTHER ident) * V lines created. (restrict peers' compile time options) * new type of client: services. ------ Important configuration changes between 2.9.2 and 2.9.3: * M and P lines format has changed since 2.9.2, it is important to update your ircd.conf ! * kill lines are now case sensitive (K: and k: are different)